* Building cygwin1.dll
@ 2002-05-26 13:58 CM
2002-05-28 13:52 ` rich-paul
0 siblings, 1 reply; 28+ messages in thread
From: CM @ 2002-05-26 13:58 UTC (permalink / raw)
To: cygwin
I seem to be unable to build the cygwin1.dll from the cygwin sources.
The configuration and compilation go fine, but when make tries to link
the dll, I get errors about undefined symbols:
autoload.o(.wsock32_info+0x0):autoload.cc: undefined reference to
`std_dll_init'
autoload.o(.wsock32_info+0xc):autoload.cc: undefined reference to
`wsock_init'
autoload.o(.wsock32_info+0x18):autoload.cc: undefined reference to
`std_dll_init'
autoload.o(.wsock32_info+0x30):autoload.cc: undefined reference to
`std_dll_init'
autoload.o(.wsock32_info+0x48):autoload.cc: undefined reference to
`std_dll_init'
autoload.o(.wsock32_info+0x60):autoload.cc: undefined reference to
`std_dll_init'
autoload.o(.wsock32_info+0x78):autoload.cc: undefined reference to
`std_dll_init'
autoload.o(.wsock32_info+0x90):autoload.cc: more undefined references to
`std_dll_init' follow
autoload.o(.ws2_32_info+0xc):autoload.cc: undefined reference to
`wsock_init'
autoload.o(.ws2_32_info+0x17):autoload.cc: undefined reference to
`std_dll_init'
autoload.o(.ws2_32_info+0x2e):autoload.cc: undefined reference to
`std_dll_init'
autoload.o(.ws2_32_info+0x45):autoload.cc: undefined reference to
`std_dll_init'
autoload.o(.ws2_32_info+0x5c):autoload.cc: undefined reference to
`std_dll_init'
autoload.o(.ws2_32_info+0x73):autoload.cc: undefined reference to
`std_dll_init'
autoload.o(.ws2_32_info+0x8a):autoload.cc: more undefined references to
`std_dll_init' follow
net.o(.text+0x26c6):net.cc: undefined reference to `_wsock32_handle'
I have used nm and grep to look through all the cygwin objects and
libraries and can't seem to find where the symbols are defined. Could
somebody please tell where I am going wrong? To build cygwin, all I did
was, extract the tarball, cd into the directory, make a new directory
inside it called build, cd into that, execute a ../configure, and hit
make. Was there something else I was supposed to do?
Thanks,
CM
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll
2002-05-26 13:58 Building cygwin1.dll CM
@ 2002-05-28 13:52 ` rich-paul
2002-05-28 13:58 ` Larry Hall (RFK Partners, Inc)
0 siblings, 1 reply; 28+ messages in thread
From: rich-paul @ 2002-05-28 13:52 UTC (permalink / raw)
To: cygwin
First, a question for the list: Are problems with building
cygwin on-topic for this list? I know y'all don't like custom
setups, and custom building may be worse!
I don't know if this is related to your problem, I am currently
checking to see if I can find that routine on my system, but I do
know a couple of things:
1) Cygwin rarely seems to build in my environement without
hacking
2) Many packages that require an out-of-tree experience to
build say don't make the build tree under the source
tree. Generally with these packages (e.g. gcc) I'll cd
into the unpacked directory, make a dir called 'src',
move * to src, and then make a dir called bld. That's
just my style, the other common way is to use
/usr/src/xxx and /usr/src/xxx-bld
3) Many of the problems I have run into have been 'solved'
by doing a rm -fr of the src tree that is failing. The
winsup build builds many things, and I only needed to
build the actual dll
Let me know if you need more info, I, personally, don't like
using I can't build. I seem to remember my physics teacher
saying something about 'thinking you can apply a formula you
cannot derive'. If the feeling is that this is not on-topic for
the list, we'll talk via personal email.
On Sun, May 26, 2002 at 01:50:35PM +0100, CM wrote:
> I seem to be unable to build the cygwin1.dll from the cygwin sources.
> The configuration and compilation go fine, but when make tries to link
> the dll, I get errors about undefined symbols:
>
> autoload.o(.wsock32_info+0x0):autoload.cc: undefined reference to
> `std_dll_init'
> autoload.o(.wsock32_info+0xc):autoload.cc: undefined reference to
> `wsock_init'
> autoload.o(.wsock32_info+0x18):autoload.cc: undefined reference to
> `std_dll_init'
> autoload.o(.wsock32_info+0x30):autoload.cc: undefined reference to
> `std_dll_init'
> autoload.o(.wsock32_info+0x48):autoload.cc: undefined reference to
> `std_dll_init'
> autoload.o(.wsock32_info+0x60):autoload.cc: undefined reference to
> `std_dll_init'
> autoload.o(.wsock32_info+0x78):autoload.cc: undefined reference to
> `std_dll_init'
> autoload.o(.wsock32_info+0x90):autoload.cc: more undefined references to
> `std_dll_init' follow
> autoload.o(.ws2_32_info+0xc):autoload.cc: undefined reference to
> `wsock_init'
> autoload.o(.ws2_32_info+0x17):autoload.cc: undefined reference to
> `std_dll_init'
> autoload.o(.ws2_32_info+0x2e):autoload.cc: undefined reference to
> `std_dll_init'
> autoload.o(.ws2_32_info+0x45):autoload.cc: undefined reference to
> `std_dll_init'
> autoload.o(.ws2_32_info+0x5c):autoload.cc: undefined reference to
> `std_dll_init'
> autoload.o(.ws2_32_info+0x73):autoload.cc: undefined reference to
> `std_dll_init'
> autoload.o(.ws2_32_info+0x8a):autoload.cc: more undefined references to
> `std_dll_init' follow
> net.o(.text+0x26c6):net.cc: undefined reference to `_wsock32_handle'
>
> I have used nm and grep to look through all the cygwin objects and
> libraries and can't seem to find where the symbols are defined. Could
> somebody please tell where I am going wrong? To build cygwin, all I did
> was, extract the tarball, cd into the directory, make a new directory
> inside it called build, cd into that, execute a ../configure, and hit
> make. Was there something else I was supposed to do?
>
> Thanks,
> CM
>
>
>
>
> --
> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
> Bug reporting: http://cygwin.com/bugs.html
> Documentation: http://cygwin.com/docs.html
> FAQ: http://cygwin.com/faq/
>
--
Got freedom? Vote Libertarian: http://www.lp.org
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll
2002-05-28 13:52 ` rich-paul
@ 2002-05-28 13:58 ` Larry Hall (RFK Partners, Inc)
2002-05-28 14:09 ` Christopher Faylor
2002-05-29 4:16 ` rich-paul
0 siblings, 2 replies; 28+ messages in thread
From: Larry Hall (RFK Partners, Inc) @ 2002-05-28 13:58 UTC (permalink / raw)
To: rich-paul, cygwin
At 12:03 PM 5/28/2002, rich-paul@rich-paul.net wrote:
>First, a question for the list: Are problems with building
>cygwin on-topic for this list? I know y'all don't like custom
>setups, and custom building may be worse!
I'm not sure what "custom building" means but issues with building
the Cygwin DLL are on-topic for this list. Generally speaking though,
the process should be as described in the FAQ entry:
How do I rebuild the tools on my NT box?
http://cygwin.com/faq/faq_4.html#SEC102
Larry Hall lhall@rfk.com
RFK Partners, Inc. http://www.rfk.com
838 Washington Street (508) 893-9779 - RFK Office
Holliston, MA 01746 (508) 893-9889 - FAX
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll
2002-05-28 13:58 ` Larry Hall (RFK Partners, Inc)
@ 2002-05-28 14:09 ` Christopher Faylor
2002-05-28 14:11 ` Larry Hall (RFK Partners, Inc)
2002-05-29 4:03 ` rich-paul
2002-05-29 4:16 ` rich-paul
1 sibling, 2 replies; 28+ messages in thread
From: Christopher Faylor @ 2002-05-28 14:09 UTC (permalink / raw)
To: cygwin
On Tue, May 28, 2002 at 12:28:04PM -0400, Larry Hall (RFK Partners, Inc) wrote:
>At 12:03 PM 5/28/2002, rich-paul@rich-paul.net wrote:
>>First, a question for the list: Are problems with building cygwin
>>on-topic for this list? I know y'all don't like custom setups, and
>>custom building may be worse!
>
>I'm not sure what "custom building" means but issues with building the
>Cygwin DLL are on-topic for this list. Generally speaking though, the
>process should be as described in the FAQ entry:
>
>How do I rebuild the tools on my NT box?
>http://cygwin.com/faq/faq_4.html#SEC102
Yeah, but I have a lot of problems with those instructions. I've found
that I generally have to convert all of the C code to Modula 3 and
rewrite the Makefiles as c-shell scripts before I can rebuild anything.
Sometimes I have to hand-compile stuff, too. That's pretty tedious.
Of course, maybe this is just my own personal preferences showing
through.
cgf
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll
2002-05-28 14:09 ` Christopher Faylor
@ 2002-05-28 14:11 ` Larry Hall (RFK Partners, Inc)
2002-05-28 14:17 ` Christopher Faylor
2002-05-29 4:03 ` rich-paul
1 sibling, 1 reply; 28+ messages in thread
From: Larry Hall (RFK Partners, Inc) @ 2002-05-28 14:11 UTC (permalink / raw)
To: cygwin
At 01:12 PM 5/28/2002, Christopher Faylor wrote:
>On Tue, May 28, 2002 at 12:28:04PM -0400, Larry Hall (RFK Partners, Inc) wrote:
> >At 12:03 PM 5/28/2002, rich-paul@rich-paul.net wrote:
> >>First, a question for the list: Are problems with building cygwin
> >>on-topic for this list? I know y'all don't like custom setups, and
> >>custom building may be worse!
> >
> >I'm not sure what "custom building" means but issues with building the
> >Cygwin DLL are on-topic for this list. Generally speaking though, the
> >process should be as described in the FAQ entry:
> >
> >How do I rebuild the tools on my NT box?
> >http://cygwin.com/faq/faq_4.html#SEC102
>
>Yeah, but I have a lot of problems with those instructions. I've found
>that I generally have to convert all of the C code to Modula 3 and
>rewrite the Makefiles as c-shell scripts before I can rebuild anything.
>Sometimes I have to hand-compile stuff, too. That's pretty tedious.
<humor>
I'd direct you to the email list archives but you'd probably be overwhelmed
by the number of posts with people saying they do the same thing. Of course
when you run into this kind of problem, the best thing to do is send email
to this list about it and repeat it many times. Most of the folks on this
list that could help you have allot of free time so they prefer to read
multiple repeat posts. However, sometimes the best course of action when
you encounter a problem like this is to drop back to version B14 of Cygwin.
Either that or just use DOS or CPM. These often work much better than the
current version of Cygwin. But since you're a newbie, Chris, we can't
expect you to know that.
</humor>
Larry Hall lhall@rfk.com
RFK Partners, Inc. http://www.rfk.com
838 Washington Street (508) 893-9779 - RFK Office
Holliston, MA 01746 (508) 893-9889 - FAX
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll
2002-05-28 14:11 ` Larry Hall (RFK Partners, Inc)
@ 2002-05-28 14:17 ` Christopher Faylor
2002-05-28 14:40 ` Larry Hall (RFK Partners, Inc)
0 siblings, 1 reply; 28+ messages in thread
From: Christopher Faylor @ 2002-05-28 14:17 UTC (permalink / raw)
To: cygwin
On Tue, May 28, 2002 at 01:49:38PM -0400, Larry Hall (RFK Partners, Inc) wrote:
>At 01:12 PM 5/28/2002, Christopher Faylor wrote:
>>On Tue, May 28, 2002 at 12:28:04PM -0400, Larry Hall (RFK Partners, Inc) wrote:
>> >At 12:03 PM 5/28/2002, rich-paul@rich-paul.net wrote:
>> >>First, a question for the list: Are problems with building cygwin
>> >>on-topic for this list? I know y'all don't like custom setups, and
>> >>custom building may be worse!
>> >
>> >I'm not sure what "custom building" means but issues with building the
>> >Cygwin DLL are on-topic for this list. Generally speaking though, the
>> >process should be as described in the FAQ entry:
>> >
>> >How do I rebuild the tools on my NT box?
>> >http://cygwin.com/faq/faq_4.html#SEC102
>>
>>Yeah, but I have a lot of problems with those instructions. I've found
>>that I generally have to convert all of the C code to Modula 3 and
>>rewrite the Makefiles as c-shell scripts before I can rebuild anything.
>>Sometimes I have to hand-compile stuff, too. That's pretty tedious.
>
>
><humor>
>I'd direct you to the email list archives but you'd probably be overwhelmed
>by the number of posts with people saying they do the same thing. Of course
>when you run into this kind of problem, the best thing to do is send email
>to this list about it and repeat it many times. Most of the folks on this
>list that could help you have allot of free time so they prefer to read
>multiple repeat posts. However, sometimes the best course of action when
>you encounter a problem like this is to drop back to version B14 of Cygwin.
>Either that or just use DOS or CPM. These often work much better than the
>current version of Cygwin. But since you're a newbie, Chris, we can't
>expect you to know that.
></humor>
UNSUBSCRIBE
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll
2002-05-28 14:17 ` Christopher Faylor
@ 2002-05-28 14:40 ` Larry Hall (RFK Partners, Inc)
0 siblings, 0 replies; 28+ messages in thread
From: Larry Hall (RFK Partners, Inc) @ 2002-05-28 14:40 UTC (permalink / raw)
To: cygwin
At 01:57 PM 5/28/2002, Christopher Faylor wrote:
>On Tue, May 28, 2002 at 01:49:38PM -0400, Larry Hall (RFK Partners, Inc) wrote:
> >At 01:12 PM 5/28/2002, Christopher Faylor wrote:
> >>On Tue, May 28, 2002 at 12:28:04PM -0400, Larry Hall (RFK Partners, Inc) wrote:
> >> >At 12:03 PM 5/28/2002, rich-paul@rich-paul.net wrote:
> >> >>First, a question for the list: Are problems with building cygwin
> >> >>on-topic for this list? I know y'all don't like custom setups, and
> >> >>custom building may be worse!
> >> >
> >> >I'm not sure what "custom building" means but issues with building the
> >> >Cygwin DLL are on-topic for this list. Generally speaking though, the
> >> >process should be as described in the FAQ entry:
> >> >
> >> >How do I rebuild the tools on my NT box?
> >> >http://cygwin.com/faq/faq_4.html#SEC102
> >>
> >>Yeah, but I have a lot of problems with those instructions. I've found
> >>that I generally have to convert all of the C code to Modula 3 and
> >>rewrite the Makefiles as c-shell scripts before I can rebuild anything.
> >>Sometimes I have to hand-compile stuff, too. That's pretty tedious.
> >
> >
> ><humor>
> >I'd direct you to the email list archives but you'd probably be overwhelmed
> >by the number of posts with people saying they do the same thing. Of course
> >when you run into this kind of problem, the best thing to do is send email
> >to this list about it and repeat it many times. Most of the folks on this
> >list that could help you have allot of free time so they prefer to read
> >multiple repeat posts. However, sometimes the best course of action when
> >you encounter a problem like this is to drop back to version B14 of Cygwin.
> >Either that or just use DOS or CPM. These often work much better than the
> >current version of Cygwin. But since you're a newbie, Chris, we can't
> >expect you to know that.
> ></humor>
>
>UNSUBSCRIBE
LOL!
Sometimes, less is really more! :-)
Larry Hall lhall@rfk.com
RFK Partners, Inc. http://www.rfk.com
838 Washington Street (508) 893-9779 - RFK Office
Holliston, MA 01746 (508) 893-9889 - FAX
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll
2002-05-28 14:09 ` Christopher Faylor
2002-05-28 14:11 ` Larry Hall (RFK Partners, Inc)
@ 2002-05-29 4:03 ` rich-paul
1 sibling, 0 replies; 28+ messages in thread
From: rich-paul @ 2002-05-29 4:03 UTC (permalink / raw)
To: cygwin
Real programmers use cat > a.out. xxd is for wimps.
On Tue, May 28, 2002 at 01:12:41PM -0400, Christopher Faylor wrote:
> On Tue, May 28, 2002 at 12:28:04PM -0400, Larry Hall (RFK Partners, Inc) wrote:
> >At 12:03 PM 5/28/2002, rich-paul@rich-paul.net wrote:
> >>First, a question for the list: Are problems with building cygwin
> >>on-topic for this list? I know y'all don't like custom setups, and
> >>custom building may be worse!
> >
> >I'm not sure what "custom building" means but issues with building the
> >Cygwin DLL are on-topic for this list. Generally speaking though, the
> >process should be as described in the FAQ entry:
> >
> >How do I rebuild the tools on my NT box?
> >http://cygwin.com/faq/faq_4.html#SEC102
>
> Yeah, but I have a lot of problems with those instructions. I've found
> that I generally have to convert all of the C code to Modula 3 and
> rewrite the Makefiles as c-shell scripts before I can rebuild anything.
> Sometimes I have to hand-compile stuff, too. That's pretty tedious.
>
> Of course, maybe this is just my own personal preferences showing
> through.
>
> cgf
>
> --
> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
> Bug reporting: http://cygwin.com/bugs.html
> Documentation: http://cygwin.com/docs.html
> FAQ: http://cygwin.com/faq/
>
--
Got freedom? Vote Libertarian: http://www.lp.org
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll
2002-05-28 13:58 ` Larry Hall (RFK Partners, Inc)
2002-05-28 14:09 ` Christopher Faylor
@ 2002-05-29 4:16 ` rich-paul
2002-05-29 4:36 ` Christopher Faylor
2002-05-29 5:01 ` Building cygwin1.dll Larry Hall (RFK Partners, Inc)
1 sibling, 2 replies; 28+ messages in thread
From: rich-paul @ 2002-05-29 4:16 UTC (permalink / raw)
To: cygwin
I meant that what I have built, I did not install through
setup.exe ...
The faq entry is good as far as it goes, but generally there are
problems. With my current download I believe they involved a
present but empty directory (perhaps windows32api?), and a couple
of other things. I just removed the subtrees that didn't built,
and was able to patch and build what I needed.
On Tue, May 28, 2002 at 12:28:04PM -0400, Larry Hall (RFK Partners, Inc) wrote:
> At 12:03 PM 5/28/2002, rich-paul@rich-paul.net wrote:
> >First, a question for the list: Are problems with building
> >cygwin on-topic for this list? I know y'all don't like custom
> >setups, and custom building may be worse!
>
>
> I'm not sure what "custom building" means but issues with building
> the Cygwin DLL are on-topic for this list. Generally speaking though,
> the process should be as described in the FAQ entry:
>
>
> How do I rebuild the tools on my NT box?
> http://cygwin.com/faq/faq_4.html#SEC102
>
>
>
> Larry Hall lhall@rfk.com
> RFK Partners, Inc. http://www.rfk.com
> 838 Washington Street (508) 893-9779 - RFK Office
> Holliston, MA 01746 (508) 893-9889 - FAX
>
>
> --
> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
> Bug reporting: http://cygwin.com/bugs.html
> Documentation: http://cygwin.com/docs.html
> FAQ: http://cygwin.com/faq/
>
--
Got freedom? Vote Libertarian: http://www.lp.org
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll
2002-05-29 4:16 ` rich-paul
@ 2002-05-29 4:36 ` Christopher Faylor
2002-05-29 9:27 ` rich-paul
2002-05-29 5:01 ` Building cygwin1.dll Larry Hall (RFK Partners, Inc)
1 sibling, 1 reply; 28+ messages in thread
From: Christopher Faylor @ 2002-05-29 4:36 UTC (permalink / raw)
To: cygwin
On Tue, May 28, 2002 at 07:02:38PM -0400, rich-paul@rich-paul.net wrote:
>I meant that what I have built, I did not install through
>setup.exe ...
>
>The faq entry is good as far as it goes, but generally there are
>problems. With my current download I believe they involved a
>present but empty directory (perhaps windows32api?), and a couple
>of other things. I just removed the subtrees that didn't built,
>and was able to patch and build what I needed.
I'll remove the empty subdirectories from future source tar balls.
cgf
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll
2002-05-29 4:16 ` rich-paul
2002-05-29 4:36 ` Christopher Faylor
@ 2002-05-29 5:01 ` Larry Hall (RFK Partners, Inc)
1 sibling, 0 replies; 28+ messages in thread
From: Larry Hall (RFK Partners, Inc) @ 2002-05-29 5:01 UTC (permalink / raw)
To: rich-paul, cygwin
At 07:02 PM 5/28/2002, rich-paul@rich-paul.net wrote:
>I meant that what I have built, I did not install through
>setup.exe ...
Ah-ha! You're the one! We can't allow this subversion! You will be
forever banished!! ;-)
I'd hope that anyone who's capable enough to build Cygwin from source
would also be capable enough to handle basic configuration issues that
setup helps to automate. I think people can use their best judgement
about asking questions in this regard. But I'd be surprised to see
any thoughtful question about building Cygwin shot-down based on the
premise that it's off-topic because setup hasn't been used. I think
the person involved here has a different goal than those who are just
looking to install Cygwin. This list can accommodate both of these
"types" IMO.
>The faq entry is good as far as it goes, but generally there are
>problems. With my current download I believe they involved a
>present but empty directory (perhaps windows32api?), and a couple
>of other things. I just removed the subtrees that didn't built,
>and was able to patch and build what I needed.
>
>
>On Tue, May 28, 2002 at 12:28:04PM -0400, Larry Hall (RFK Partners, Inc) wrote:
> > At 12:03 PM 5/28/2002, rich-paul@rich-paul.net wrote:
> > >First, a question for the list: Are problems with building
> > >cygwin on-topic for this list? I know y'all don't like custom
> > >setups, and custom building may be worse!
> >
> >
> > I'm not sure what "custom building" means but issues with building
> > the Cygwin DLL are on-topic for this list. Generally speaking though,
> > the process should be as described in the FAQ entry:
> >
> >
> > How do I rebuild the tools on my NT box?
> > http://cygwin.com/faq/faq_4.html#SEC102
> >
> >
> >
> > Larry Hall lhall@rfk.com
> > RFK Partners, Inc. http://www.rfk.com
> > 838 Washington Street (508) 893-9779 - RFK Office
> > Holliston, MA 01746 (508) 893-9889 - FAX
> >
> >
> > --
> > Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
> > Bug reporting: http://cygwin.com/bugs.html
> > Documentation: http://cygwin.com/docs.html
> > FAQ: http://cygwin.com/faq/
> >
>
>--
>Got freedom? Vote Libertarian: http://www.lp.org
>
>--
>Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
>Bug reporting: http://cygwin.com/bugs.html
>Documentation: http://cygwin.com/docs.html
>FAQ: http://cygwin.com/faq/
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll
2002-05-29 4:36 ` Christopher Faylor
@ 2002-05-29 9:27 ` rich-paul
2002-05-29 10:31 ` Christopher Faylor
0 siblings, 1 reply; 28+ messages in thread
From: rich-paul @ 2002-05-29 9:27 UTC (permalink / raw)
To: cygwin
Thanks!
I'm finding some more problems, but haven't had time to really
document them. I'm leaving the notes which I started taking in
this editor here, in case anyone's interested, but don't flame me
for giving you raw ramblings, and letting you sort it out ...
I'll clean 'em up and submit 'em as a patch when I get a chance.
They're just there if anyone wants to read 'em.
Anyway, I'll let you know if/when I get through it, I've had this
editor open forever. I'll try to get you enough patch that the
next version can compile 'out of the box'. <G>
<ramble mode on>
I noticed that removing that directory exposes another problem,
the makefile wants to make a target called w32api, but there are
no rules for such a target. Of course, make hapilly thought
it had already made it, in the form of a directory, so didn't
complain.
I removed the dependencies from four lines, and am trying again
...
Hmmm ... switching the lib directories to use the installed
mingw32/win32api
OK, got farther, added a check for the cross-directory
libkernel32.a dependency ....
At this point, started dying of 'parse error before symbol
__gnuc_va_list' in stdio.h. It does include stdarg.h, but
perhaps whatever keeps stdio.h from exposing va_list, as the
comment in the gnuc stdio says, is the culpret. Anyway, I didn't
want to dig too deeply, so I played with making .i files for
a while, and resorted to commenting out the conditionals at
line 143, so that __VALIST would be #defined to char*.
That may come back to haunt me when I try to compile some
c++, but I'm not sure ... can't recall is varargs fns require
c linkage or not.
Well, c linkage aside, it haunted me ... 'new' c++ void*
casting rules. Oh, well, let's try void* instead. <ramble
mode off>
On Tue, May 28, 2002 at 07:29:30PM -0400, Christopher Faylor
wrote:
> On Tue, May 28, 2002 at 07:02:38PM -0400,
> rich-paul@rich-paul.net wrote:
> >I meant that what I have built, I did not install through
> >setup.exe ...
> >
> >The faq entry is good as far as it goes, but generally there
> >are problems. With my current download I believe they involved
> >a present but empty directory (perhaps windows32api?), and a
> >couple of other things. I just removed the subtrees that
> >didn't built, and was able to patch and build what I needed.
>
> I'll remove the empty subdirectories from future source tar
> balls.
>
> cgf
>
> -- Unsubscribe info:
> http://cygwin.com/ml/#unsubscribe-simple Bug reporting:
> http://cygwin.com/bugs.html Documentation:
> http://cygwin.com/docs.html FAQ:
> http://cygwin.com/faq/
>
-- Got freedom? Vote Libertarian: http://www.lp.org
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll
2002-05-29 9:27 ` rich-paul
@ 2002-05-29 10:31 ` Christopher Faylor
2002-06-01 22:04 ` rich-paul
0 siblings, 1 reply; 28+ messages in thread
From: Christopher Faylor @ 2002-05-29 10:31 UTC (permalink / raw)
To: cygwin
On Wed, May 29, 2002 at 09:17:28AM -0400, rich-paul@rich-paul.net wrote:
> I noticed that removing that directory exposes another problem,
> the makefile wants to make a target called w32api, but there are
> no rules for such a target. Of course, make hapilly thought
> it had already made it, in the form of a directory, so didn't
> complain.
That's because you *need* the directory to be populated.
> I removed the dependencies from four lines, and am trying again
> ...
Wrong "solution".
> Hmmm ... switching the lib directories to use the installed
> mingw32/win32api
Wrong "solution".
> OK, got farther, added a check for the cross-directory
> libkernel32.a dependency ....
>
> At this point, started dying of 'parse error before symbol
> __gnuc_va_list' in stdio.h. It does include stdarg.h, but
> perhaps whatever keeps stdio.h from exposing va_list, as the
> comment in the gnuc stdio says, is the culpret. Anyway, I didn't
> want to dig too deeply, so I played with making .i files for
> a while, and resorted to commenting out the conditionals at
> line 143, so that __VALIST would be #defined to char*.
Something is wrong in your installation.
When, you think about this problem, think about it from the point of
view that many people (me, for instance) are building cygwin. We don't
build it by hacking at the Makefile. We build it by having the complete
sources installed.
If you have to start editing things, you're obviously going down the
wrong track.
cgf
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll
2002-05-29 10:31 ` Christopher Faylor
@ 2002-06-01 22:04 ` rich-paul
2002-06-01 22:36 ` ..
2002-06-01 23:28 ` Christopher Faylor
0 siblings, 2 replies; 28+ messages in thread
From: rich-paul @ 2002-06-01 22:04 UTC (permalink / raw)
To: cygwin
OK, why don't I start over:
My assumption, from the previous discussion, was that the directions
in the FAQ were, in theory, sufficient to actually perform the task.
Therefore, I assumed that cygwin-1.3.10-1-src.tar.bz2 was supposed
to be able to build alone, and that it's inability to do so was
brokenness on it's part, which has been hidden because it's
generally only compiled as part of the larger 'net-release',
which contains other things.
This was bolstered by being able to compile a working cygwin1.dll
using, I assume, my installed version of w32api in place of the one
that belongs in the source tree. It may be, however, that doing
this worked "by accident" and should not be assumed to be a workable
thing in the future.
But if there are other packages that *SHOULD* be required to build
cygwin1.dll, then my assumption was invalid. My next instict was to
say "OK, the brokenness is in the FAQ". But having re-read that
entry, I cannot say that it's technically wrong. It merely says to
put "the sources" into /src. It does not say what constitutes "The
sources". It was *my* assumption that the only sources required to
build cygwin1.dll were contained in cygwin-1.3.10-1-src.tar.bz2.
So now the question becomes, what is the minimum subset of the
source distribution that must be unpacked into /src in order for
following the directions in the FAQ to work, and how should they be
put there. I assume that the three empty directories, w32api, mingw,
and cinstall should be filled, so I'll start with them and see if
that produces a dll.
Another question: Are there any directions as to how to use the
mknetrel package from the cygwin-apps cvs tree? I've read some of
the script, and it looks like it might make life easier, but it
appears to need things mounted in particular absolute directories.
If there are no such docs, would you be interested in having some?
On Wed, May 29, 2002 at 10:36:18AM -0400, Christopher Faylor wrote:
> On Wed, May 29, 2002 at 09:17:28AM -0400, rich-paul@rich-paul.net wrote:
> > I noticed that removing that directory exposes another problem,
> > the makefile wants to make a target called w32api, but there are
> > no rules for such a target. Of course, make hapilly thought
> > it had already made it, in the form of a directory, so didn't
> > complain.
>
> That's because you *need* the directory to be populated.
>
> > I removed the dependencies from four lines, and am trying again
> > ...
>
> Wrong "solution".
>
> > Hmmm ... switching the lib directories to use the installed
> > mingw32/win32api
>
> Wrong "solution".
>
> > OK, got farther, added a check for the cross-directory
> > libkernel32.a dependency ....
> >
> > At this point, started dying of 'parse error before symbol
> > __gnuc_va_list' in stdio.h. It does include stdarg.h, but
> > perhaps whatever keeps stdio.h from exposing va_list, as the
> > comment in the gnuc stdio says, is the culpret. Anyway, I didn't
> > want to dig too deeply, so I played with making .i files for
> > a while, and resorted to commenting out the conditionals at
> > line 143, so that __VALIST would be #defined to char*.
>
> Something is wrong in your installation.
>
> When, you think about this problem, think about it from the point of
> view that many people (me, for instance) are building cygwin. We don't
> build it by hacking at the Makefile. We build it by having the complete
> sources installed.
>
> If you have to start editing things, you're obviously going down the
> wrong track.
>
> cgf
>
> --
> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
> Bug reporting: http://cygwin.com/bugs.html
> Documentation: http://cygwin.com/docs.html
> FAQ: http://cygwin.com/faq/
>
--
Got freedom? Vote Libertarian: http://www.lp.org
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll
2002-06-01 22:04 ` rich-paul
@ 2002-06-01 22:36 ` ..
2002-06-01 23:28 ` Christopher Faylor
1 sibling, 0 replies; 28+ messages in thread
From: .. @ 2002-06-01 22:36 UTC (permalink / raw)
To: cygwin
rich-paul@rich-paul.net wrote:
>
> OK, why don't I start over:
>
> My assumption, from the previous discussion, was that the directions
> in the FAQ were, in theory, sufficient to actually perform the task.
Not yet. I myself whish that this was more refined, but it might
take a while for those that by their concentrated experiance consider
points to be trivial to understand to the extent to which documentation
is required to adapt that experiance to your or another's needs.
--
--=<> Dr. Clue (A.K.A. Ian A. Storms) <>=--
--=<[]>=- http://www.drclue.net
--=<[]>=- C++ HTML JavaScript DHTML CGI TCP/IP SQL JAVA VRML NSAPI
--=<[]>=- http://www.drclue.net/F1.cgi/HTML/HTML.html (My famous
HTML/CGI guide.)
--=<[]>=- http://www.drclue.net/beta (My X-BROWSER DHTML library.)
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll
2002-06-01 22:04 ` rich-paul
2002-06-01 22:36 ` ..
@ 2002-06-01 23:28 ` Christopher Faylor
2002-06-02 4:44 ` rich-paul
1 sibling, 1 reply; 28+ messages in thread
From: Christopher Faylor @ 2002-06-01 23:28 UTC (permalink / raw)
To: cygwin
On Sun, Jun 02, 2002 at 12:47:47AM -0400, rich-paul@rich-paul.net wrote:
>Another question: Are there any directions as to how to use the
>mknetrel package from the cygwin-apps cvs tree? I've read some of the
>script, and it looks like it might make life easier, but it appears to
>need things mounted in particular absolute directories. If there are
>no such docs, would you be interested in having some?
I never say no to documentation.
cgf
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll
2002-06-01 23:28 ` Christopher Faylor
@ 2002-06-02 4:44 ` rich-paul
2002-06-03 2:50 ` Building cygwin1.dll and mknetrel linguist-cygwin
0 siblings, 1 reply; 28+ messages in thread
From: rich-paul @ 2002-06-02 4:44 UTC (permalink / raw)
To: cygwin
Great, can anyone here provide any tips as to starting points in using
the mknetrel package? I'll reverse engineer it if need be or to fill in
the blanks, but I'm guessing somebody knows something. <G>
What I know so far, is before you start using mknetrel, you've gotta
install getopt.
C'mon, lay it on me, I promise they won't make you sleep with the
fishes.
On Sun, Jun 02, 2002 at 02:28:24AM -0400, Christopher Faylor wrote:
> On Sun, Jun 02, 2002 at 12:47:47AM -0400, rich-paul@rich-paul.net wrote:
> >Another question: Are there any directions as to how to use the
> >mknetrel package from the cygwin-apps cvs tree? I've read some of the
> >script, and it looks like it might make life easier, but it appears to
> >need things mounted in particular absolute directories. If there are
> >no such docs, would you be interested in having some?
>
> I never say no to documentation.
>
> cgf
>
> --
> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
> Bug reporting: http://cygwin.com/bugs.html
> Documentation: http://cygwin.com/docs.html
> FAQ: http://cygwin.com/faq/
>
--
Got freedom? Vote Libertarian: http://www.lp.org
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Building cygwin1.dll and mknetrel
2002-06-02 4:44 ` rich-paul
@ 2002-06-03 2:50 ` linguist-cygwin
2002-06-03 4:55 ` rich-paul
2002-06-03 22:56 ` Christopher Faylor
0 siblings, 2 replies; 28+ messages in thread
From: linguist-cygwin @ 2002-06-03 2:50 UTC (permalink / raw)
To: cygwin
Here are some observations of building cygwin1.dll with the mknetrel
package. I have not yet looked enough at the innards to be able to
document how to add an 'extras' file, which is how mknetrel overrides
the normal build procedure for some packages. All in all, it looks like
a pretty elegant package made up mostly of shell scripts, which
themselves are made up mostly of shell functions. It may be copied into
the FAQ or anywhere else you may like. There's even a company in Oragon
that will print in onto a roll of toilet paper for you. ;-> If it
doesn't end up on the official web, I'll probably just throw it on my
site.
For testing of this script, I made a fresh install with setup, and
installed the following packages:
ash bash binutils bzip2 crypt
cvs cygwin diffutils ed fileutils
findutils gawk gcc gdbm grep
gzip libbz2_1 libintl1 libncurses5 libncurses6
libpng libreadline4 libreadline5 make mingw-runtime
pcre *perl sed sh-utils tar
terminfo *tetex-beta texinfo textutils *getopt
This appears to be close to the minimum set. Perl may not be needed.
tetex-beta really isn't needed, it is installed just for readlink. The
command, I think, could be replaced with:
| #!/usr/bin/perl
| $x = readlink $ARGV[0];
| exit 1 unless defined $x;
| print $x, "\n";
| exit 0;
or maybe
|#!/bin/bash
|find "$1" -type l -maxdepth 0 -printf '%l\n'
getopt is not a cygwin package. My copy came out of a copy of smail on
my linux box, it's PD from AT&T, and compiled out of the box on cygwin.
It could probably be replaced with a shell script/function.
After installing the system, and adding getopt, the following script was
sufficient to build cygwin; it ended up in a lovely tarball in
/netrel/uploads.
|PATH=/netrel/mknetrel/bin:/bin
|cd /bin
|for name in c++ ar ranlib g++ dlltool as windres nm strip; do
| do ln -s $name i686-pc-cygwin-$name
|done
|cd /
|mkdir netrel
|cd netrel
|cvs -d :pserver:anoncvs@sources.redhat.com:/cvs/cygwin-apps co
|mknetrel
|mkdir src inst build uploads extra
|cd src
|
|tar -xjf $SETUPDIR/release/cygwin/*-src.tar.bz2
|tar -xjf $SETUPDIR/release/mingw-runtime/*-src.tar.bz2
|tar -xjf $SETUPDIR/release/w32api/*-src.tar.bz2
|
|cd cygwin*/winsup
|rm -fr mingw cinstall w32api
|ln -s /netrel/src/mingw-runtime-*/ mingw
|ln -s /netrel/src/w32api-*/ w32api
|
|cd /netrel
|mknetrel cygwin 2>&1 | tee mknetrel.cygwin.out
Notes:
* The first time you connect to the CVS server, you're going to
have to do a cvs login
* mknetrel has hardcoded absolute paths. your build tree must be
in /netrel exactly.
* mknetrel, it appears, can build most but not all cygwin
packages. vim, for example, looses, because the build must be
done in the src directory. It looks like an 'extras' script
could be produced to accomidate vim, either with a link tree (I
seem to recall the vim build supports this) or some other hack.
* On my production system, I had to change the '#!/bin/sh' to
'#!/bin/bash' on one of the mknetrel shell scripts
to get the shell to accept the usage of getopts ... but on the
fresh install, I did not. (This is the bash getopts builtin,
not the standalone and singular 'getopt' discussed above)
* The fact that mknetrel uses i686-pc-cygwin-xxx as it's tools
during the build implies that it may work with a cross compiler
as well, or may have been developed to cross compile. I haven't
yet had time to prove this.
* I use wildcards in some places to avoid explicitly stating
package versions. The drawback to this approach is that it will
break in the presence of dup package versions.
* Some of my test builds produced a linux version of libiberty as
an added bonus. I don't know why, but it didn't seem to hurt
anything
--
Got freedom? Vote Libertarian: http://www.lp.org
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll and mknetrel
2002-06-03 2:50 ` Building cygwin1.dll and mknetrel linguist-cygwin
@ 2002-06-03 4:55 ` rich-paul
2002-06-03 5:12 ` egor duda
2002-06-03 22:56 ` Christopher Faylor
1 sibling, 1 reply; 28+ messages in thread
From: rich-paul @ 2002-06-03 4:55 UTC (permalink / raw)
To: cygwin
Well, I don't want to give the list a flow of conciousness on this
thing, but I will note that you can avoid the linux packages my setting
up a ~/.mknetrel file as a shell script that defines build_config_opts.
By default, it explicitly sets the build system to be a linux box.
Also, you can set a series of variables like build_cxx, build_cc,
build_ranlib, etc rather than creating the i686-cygwin symbolic links.
And lastly, I was wrong about /netrel, it is a default, not hardcoded.
Anyway, some of this was added within the last few days.
On Mon, Jun 03, 2002 at 05:33:25AM -0400, linguist-cygwin@rich-paul.net wrote:
> Here are some observations of building cygwin1.dll with the mknetrel
> package. I have not yet looked enough at the innards to be able to
> document how to add an 'extras' file, which is how mknetrel overrides
> the normal build procedure for some packages. All in all, it looks like
> a pretty elegant package made up mostly of shell scripts, which
> themselves are made up mostly of shell functions. It may be copied into
> the FAQ or anywhere else you may like. There's even a company in Oragon
> that will print in onto a roll of toilet paper for you. ;-> If it
> doesn't end up on the official web, I'll probably just throw it on my
> site.
>
>
> For testing of this script, I made a fresh install with setup, and
> installed the following packages:
>
> ash bash binutils bzip2 crypt
> cvs cygwin diffutils ed fileutils
> findutils gawk gcc gdbm grep
> gzip libbz2_1 libintl1 libncurses5 libncurses6
> libpng libreadline4 libreadline5 make mingw-runtime
> pcre *perl sed sh-utils tar
> terminfo *tetex-beta texinfo textutils *getopt
>
> This appears to be close to the minimum set. Perl may not be needed.
> tetex-beta really isn't needed, it is installed just for readlink. The
> command, I think, could be replaced with:
>
> | #!/usr/bin/perl
> | $x = readlink $ARGV[0];
> | exit 1 unless defined $x;
> | print $x, "\n";
> | exit 0;
>
> or maybe
> |#!/bin/bash
> |find "$1" -type l -maxdepth 0 -printf '%l\n'
>
>
> getopt is not a cygwin package. My copy came out of a copy of smail on
> my linux box, it's PD from AT&T, and compiled out of the box on cygwin.
> It could probably be replaced with a shell script/function.
>
> After installing the system, and adding getopt, the following script was
> sufficient to build cygwin; it ended up in a lovely tarball in
> /netrel/uploads.
>
> |PATH=/netrel/mknetrel/bin:/bin
> |cd /bin
> |for name in c++ ar ranlib g++ dlltool as windres nm strip; do
> | do ln -s $name i686-pc-cygwin-$name
> |done
> |cd /
> |mkdir netrel
> |cd netrel
> |cvs -d :pserver:anoncvs@sources.redhat.com:/cvs/cygwin-apps co
> |mknetrel
> |mkdir src inst build uploads extra
> |cd src
> |
> |tar -xjf $SETUPDIR/release/cygwin/*-src.tar.bz2
> |tar -xjf $SETUPDIR/release/mingw-runtime/*-src.tar.bz2
> |tar -xjf $SETUPDIR/release/w32api/*-src.tar.bz2
> |
> |cd cygwin*/winsup
> |rm -fr mingw cinstall w32api
> |ln -s /netrel/src/mingw-runtime-*/ mingw
> |ln -s /netrel/src/w32api-*/ w32api
> |
> |cd /netrel
> |mknetrel cygwin 2>&1 | tee mknetrel.cygwin.out
>
> Notes:
> * The first time you connect to the CVS server, you're going to
> have to do a cvs login
>
> * mknetrel has hardcoded absolute paths. your build tree must be
> in /netrel exactly.
>
> * mknetrel, it appears, can build most but not all cygwin
> packages. vim, for example, looses, because the build must be
> done in the src directory. It looks like an 'extras' script
> could be produced to accomidate vim, either with a link tree (I
> seem to recall the vim build supports this) or some other hack.
>
> * On my production system, I had to change the '#!/bin/sh' to
> '#!/bin/bash' on one of the mknetrel shell scripts
> to get the shell to accept the usage of getopts ... but on the
> fresh install, I did not. (This is the bash getopts builtin,
> not the standalone and singular 'getopt' discussed above)
>
> * The fact that mknetrel uses i686-pc-cygwin-xxx as it's tools
> during the build implies that it may work with a cross compiler
> as well, or may have been developed to cross compile. I haven't
> yet had time to prove this.
>
> * I use wildcards in some places to avoid explicitly stating
> package versions. The drawback to this approach is that it will
> break in the presence of dup package versions.
>
> * Some of my test builds produced a linux version of libiberty as
> an added bonus. I don't know why, but it didn't seem to hurt
> anything
>
> --
> Got freedom? Vote Libertarian: http://www.lp.org
>
> --
> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
> Bug reporting: http://cygwin.com/bugs.html
> Documentation: http://cygwin.com/docs.html
> FAQ: http://cygwin.com/faq/
>
--
Got freedom? Vote Libertarian: http://www.lp.org
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll and mknetrel
2002-06-03 4:55 ` rich-paul
@ 2002-06-03 5:12 ` egor duda
0 siblings, 0 replies; 28+ messages in thread
From: egor duda @ 2002-06-03 5:12 UTC (permalink / raw)
To: rich-paul; +Cc: cygwin
Hi!
Monday, 03 June, 2002 rich-paul@rich-paul.net rich-paul@rich-paul.net wrote:
rprpn> Well, I don't want to give the list a flow of conciousness on this
rprpn> thing, but I will note that you can avoid the linux packages my setting
rprpn> up a ~/.mknetrel file as a shell script that defines build_config_opts.
rprpn> By default, it explicitly sets the build system to be a linux box.
rprpn> Also, you can set a series of variables like build_cxx, build_cc,
rprpn> build_ranlib, etc rather than creating the i686-cygwin symbolic links.
rprpn> And lastly, I was wrong about /netrel, it is a default, not hardcoded.
rprpn> Anyway, some of this was added within the last few days.
exactly. see thread
http://sources.redhat.com/ml/cygwin-apps/2002-05/msg00313.html
Egor. mailto:deo@logos-m.ru ICQ 5165414 FidoNet 2:5020/496.19
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll and mknetrel
2002-06-03 2:50 ` Building cygwin1.dll and mknetrel linguist-cygwin
2002-06-03 4:55 ` rich-paul
@ 2002-06-03 22:56 ` Christopher Faylor
2002-06-03 23:27 ` egor duda
2002-06-04 12:45 ` rich-paul
1 sibling, 2 replies; 28+ messages in thread
From: Christopher Faylor @ 2002-06-03 22:56 UTC (permalink / raw)
To: cygwin
On Mon, Jun 03, 2002 at 05:33:25AM -0400, linguist-cygwin@rich-paul.net wrote:
> * mknetrel, it appears, can build most but not all cygwin
> packages. vim, for example, looses, because the build must be
> done in the src directory. It looks like an 'extras' script
> could be produced to accomidate vim, either with a link tree (I
> seem to recall the vim build supports this) or some other hack.
mknetrel is, AFAIK, only used by myself for producing net release packages. Egor
Duda has obviously been experimenting with it (possibly for use in building gcc)
but he doesn't use it for package maintenance yet, AFAIK.
> * On my production system, I had to change the '#!/bin/sh' to
> '#!/bin/bash' on one of the mknetrel shell scripts
> to get the shell to accept the usage of getopts ... but on the
> fresh install, I did not. (This is the bash getopts builtin,
> not the standalone and singular 'getopt' discussed above)
Yes, I have never run this under cygwin, actually. It was intended as a
cross-compilation environment. I'm surprised that it works on cygwin
with so few changes.
> * The fact that mknetrel uses i686-pc-cygwin-xxx as it's tools
> during the build implies that it may work with a cross compiler
> as well, or may have been developed to cross compile. I haven't
> yet had time to prove this.
Yep.
> * I use wildcards in some places to avoid explicitly stating
> package versions. The drawback to this approach is that it will
> break in the presence of dup package versions.
You should be able to say "mknetrel cygwin" to have it build the latest version.
Again, I'm surprised that it would actually work with explicit versions.
> * Some of my test builds produced a linux version of libiberty as
> an added bonus. I don't know why, but it didn't seem to hurt
> anything
"That's the way it works" (tm)
cgf
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll and mknetrel
2002-06-03 22:56 ` Christopher Faylor
@ 2002-06-03 23:27 ` egor duda
2002-06-04 4:42 ` Nicholas Wourms
` (2 more replies)
2002-06-04 12:45 ` rich-paul
1 sibling, 3 replies; 28+ messages in thread
From: egor duda @ 2002-06-03 23:27 UTC (permalink / raw)
To: Christopher Faylor; +Cc: linguist-cygwin
[-- Attachment #1: Type: text/plain, Size: 957 bytes --]
Hi!
Tuesday, 04 June, 2002 Christopher Faylor cgf@redhat.com wrote:
>> * On my production system, I had to change the '#!/bin/sh' to
>> '#!/bin/bash' on one of the mknetrel shell scripts
>> to get the shell to accept the usage of getopts ... but on the
>> fresh install, I did not. (This is the bash getopts builtin,
>> not the standalone and singular 'getopt' discussed above)
CF> Yes, I have never run this under cygwin, actually. It was intended as a
CF> cross-compilation environment. I'm surprised that it works on cygwin
CF> with so few changes.
I'm running it on cygwin. All i need is to build getopt.exe and
readlink.exe from two attached source files. readlink.c is taken from
OpenBSD cvs, and getopt.c is slightly patched version of getopt.c from
linux-utils. They both can be built out-of-the-box.
Egor. mailto:deo@logos-m.ru ICQ 5165414 FidoNet 2:5020/496.19
[-- Attachment #2: readlink.c --]
[-- Type: application/octet-stream, Size: 2511 bytes --]
/*
* $OpenBSD: readlink.c,v 1.18 1998/08/24 14:45:33 kstailey Exp $
*
* Copyright (c) 1997
* Kenneth Stailey (hereinafter referred to as the author)
*
* Redistribution and use in source and binary forms, with or without
* modification, are permitted provided that the following conditions
* are met:
* 1. Redistributions of source code must retain the above copyright
* notice, this list of conditions and the following disclaimer.
* 2. Redistributions in binary form must reproduce the above copyright
* notice, this list of conditions and the following disclaimer in the
* documentation and/or other materials provided with the distribution.
* 3. The name of the author may not be used to endorse or promote products
* derived from this software without specific prior written permission.
*
* THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR
* IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
* OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED.
* IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT,
* INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT
* NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE,
* DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY
* THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF
* THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
#include <limits.h>
#include <errno.h>
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
int
main(argc, argv)
int argc;
char **argv;
{
char buf[PATH_MAX];
int n, ch, nflag = 0, fflag = 0;
extern int optind;
while ((ch = getopt(argc, argv, "fn")) != -1)
switch (ch) {
case 'f':
fflag = 1;
break;
case 'n':
nflag = 1;
break;
default:
(void)fprintf(stderr,
"usage: readlink [-n] [-f] symlink\n");
exit(1);
}
argc -= optind;
argv += optind;
if (argc != 1) {
fprintf(stderr, "usage: readlink [-n] [-f] symlink\n");
exit(1);
}
n = strlen(argv[0]);
if (n > PATH_MAX - 1) {
fprintf(stderr,
"readlink: filename longer than PATH_MAX-1 (%d)\n",
PATH_MAX - 1);
exit(1);
}
if (fflag)
realpath(argv[0], buf);
else {
if ((n = readlink(argv[0], buf, sizeof buf-1)) < 0)
exit(1);
buf[n] = '\0';
}
printf("%s", buf);
if (!nflag)
putchar('\n');
exit(0);
}
[-- Attachment #3: getopt.c --]
[-- Type: application/octet-stream, Size: 13278 bytes --]
/*
getopt.c - Enhanced implementation of BSD getopt(1)
Copyright (c) 1997, 1998, 1999, 2000 Frodo Looijaard <frodol@dds.nl>
This program is free software; you can redistribute it and/or modify
it under the terms of the GNU General Public License as published by
the Free Software Foundation; either version 2 of the License, or
(at your option) any later version.
This program is distributed in the hope that it will be useful,
but WITHOUT ANY WARRANTY; without even the implied warranty of
MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
GNU General Public License for more details.
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 675 Mass Ave, Cambridge, MA 02139, USA.
*/
/*
* Version 1.0-b4: Tue Sep 23 1997. First public release.
* Version 1.0: Wed Nov 19 1997.
* Bumped up the version number to 1.0
* Fixed minor typo (CSH instead of TCSH)
* Version 1.0.1: Tue Jun 3 1998
* Fixed sizeof instead of strlen bug
* Bumped up the version number to 1.0.1
* Version 1.0.2: Thu Jun 11 1998 (not present)
* Fixed gcc-2.8.1 warnings
* Fixed --version/-V option (not present)
* Version 1.0.5: Tue Jun 22 1999
* Make -u option work (not present)
* Version 1.0.6: Tue Jun 27 2000
* No important changes
*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <unistd.h>
#include <ctype.h>
#if LIBCGETOPT
#include <getopt.h>
#else
#include "getopt.h"
#endif
#define _(x) x
/* NON_OPT is the code that is returned when a non-option is found in '+'
mode */
#define NON_OPT 1
/* LONG_OPT is the code that is returned when a long option is found. */
#define LONG_OPT 2
/* The shells recognized. */
typedef enum {BASH,TCSH} shell_t;
/* Some global variables that tells us how to parse. */
shell_t shell=BASH; /* The shell we generate output for. */
int quiet_errors=0; /* 0 is not quiet. */
int quiet_output=0; /* 0 is not quiet. */
int quote=1; /* 1 is do quote. */
#ifdef HAVE_GETOPT_LONG_ONLY
int alternative=0; /* 0 is getopt_long, 1 is getopt_long_only */
#endif
/* Function prototypes */
void *our_malloc(size_t size);
void *our_realloc(void *ptr, size_t size);
const char *normalize(const char *arg);
int generate_output(char * argv[],int argc,const char *optstr,
const struct option *longopts);
int main(int argc, char *argv[]);
void parse_error(const char *message);
void add_long_options(char *options);
void add_longopt(const char *name,int has_arg);
void print_help(void);
void set_shell(const char *new_shell);
void set_initial_shell(void);
void *our_malloc(size_t size)
{
void *ret=malloc(size);
if (! ret) {
fprintf(stderr,_("%s: Out of memory!\n"),"getopt");
exit(3);
}
return(ret);
}
void *our_realloc(void *ptr, size_t size)
{
void *ret=realloc(ptr,size);
if (! ret && size) {
fprintf(stderr,_("%s: Out of memory!\n"),"getopt");
exit(3);
}
return(ret);
}
/*
* This function 'normalizes' a single argument: it puts single quotes around
* it and escapes other special characters. If quote is false, it just
* returns its argument.
* Bash only needs special treatment for single quotes; tcsh also recognizes
* exclamation marks within single quotes, and nukes whitespace.
* This function returns a pointer to a buffer that is overwritten by
* each call.
*/
const char *normalize(const char *arg)
{
static char *BUFFER=NULL;
const char *argptr=arg;
char *bufptr;
if (BUFFER != NULL)
free(BUFFER);
if (!quote) { /* Just copy arg */
BUFFER=our_malloc(strlen(arg)+1);
strcpy(BUFFER,arg);
return BUFFER;
}
/* Each character in arg may take upto four characters in the result:
For a quote we need a closing quote, a backslash, a quote and an
opening quote! We need also the global opening and closing quote,
and one extra character for '\0'. */
BUFFER=our_malloc(strlen(arg)*4+3);
bufptr=BUFFER;
*bufptr++='\'';
while (*argptr) {
if (*argptr == '\'') {
/* Quote: replace it with: '\'' */
*bufptr++='\'';
*bufptr++='\\';
*bufptr++='\'';
*bufptr++='\'';
} else if (shell==TCSH && *argptr=='!') {
/* Exclamation mark: replace it with: \! */
*bufptr++='\'';
*bufptr++='\\';
*bufptr++='!';
*bufptr++='\'';
} else if (shell==TCSH && *argptr=='\n') {
/* Newline: replace it with: \n */
*bufptr++='\\';
*bufptr++='n';
} else if (shell==TCSH && isspace(*argptr)) {
/* Non-newline whitespace: replace it with \<ws> */
*bufptr++='\'';
*bufptr++='\\';
*bufptr++=*argptr;
*bufptr++='\'';
} else
/* Just copy */
*bufptr++=*argptr;
argptr++;
}
*bufptr++='\'';
*bufptr++='\0';
return BUFFER;
}
/*
* Generate the output. argv[0] is the program name (used for reporting errors).
* argv[1..] contains the options to be parsed. argc must be the number of
* elements in argv (ie. 1 if there are no options, only the program name),
* optstr must contain the short options, and longopts the long options.
* Other settings are found in global variables.
*/
int generate_output(char * argv[],int argc,const char *optstr,
const struct option *longopts)
{
int exit_code = 0; /* We assume everything will be OK */
int opt;
int longindex;
const char *charptr;
if (quiet_errors) /* No error reporting from getopt(3) */
opterr=0;
optind=0; /* Reset getopt(3) */
#ifdef HAVE_GETOPT_LONG_ONLY
while ((opt = (alternative?
getopt_long_only(argc,argv,optstr,longopts,&longindex):
#else
while ((opt = (
#endif
getopt_long(argc,argv,optstr,longopts,&longindex)))
!= EOF)
if (opt == '?' || opt == ':' )
exit_code = 1;
else if (!quiet_output)
{
if (opt == LONG_OPT) {
printf(" --%s",longopts[longindex].name);
if (longopts[longindex].has_arg)
printf(" %s",
normalize(optarg?optarg:""));
} else if (opt == NON_OPT)
printf(" %s",normalize(optarg));
else {
printf(" -%c",opt);
charptr = strchr(optstr,opt);
if (charptr != NULL && *++charptr == ':')
printf(" %s",
normalize(optarg?optarg:""));
}
}
if (! quiet_output) {
printf(" --");
while (optind < argc)
printf(" %s",normalize(argv[optind++]));
printf("\n");
}
return exit_code;
}
/*
* Report an error when parsing getopt's own arguments.
* If message is NULL, we already sent a message, we just exit with a helpful
* hint.
*/
void parse_error(const char *message)
{
if (message)
fprintf(stderr,"getopt: %s\n",message);
fputs(_("Try `getopt --help' for more information.\n"),stderr);
exit(2);
}
static struct option *long_options=NULL;
static int long_options_length=0; /* Length of array */
static int long_options_nr=0; /* Nr of used elements in array */
#define LONG_OPTIONS_INCR 10
#define init_longopt() add_longopt(NULL,0)
/* Register a long option. The contents of name is copied. */
void add_longopt(const char *name,int has_arg)
{
char *tmp;
if (!name) { /* init */
free(long_options);
long_options=NULL;
long_options_length=0;
long_options_nr=0;
}
if (long_options_nr == long_options_length) {
long_options_length += LONG_OPTIONS_INCR;
long_options=our_realloc(long_options,
sizeof(struct option) *
long_options_length);
}
long_options[long_options_nr].name=NULL;
long_options[long_options_nr].has_arg=0;
long_options[long_options_nr].flag=NULL;
long_options[long_options_nr].val=0;
if (long_options_nr) { /* Not for init! */
long_options[long_options_nr-1].has_arg=has_arg;
long_options[long_options_nr-1].flag=NULL;
long_options[long_options_nr-1].val=LONG_OPT;
tmp = our_malloc(strlen(name)+1);
strcpy(tmp,name);
long_options[long_options_nr-1].name=tmp;
}
long_options_nr++;
}
/*
* Register several long options. options is a string of long options,
* separated by commas or whitespace.
* This nukes options!
*/
void add_long_options(char *options)
{
int arg_opt;
char *tokptr=strtok(options,", \t\n");
while (tokptr) {
arg_opt=no_argument;
if (strlen(tokptr) > 0) {
if (tokptr[strlen(tokptr)-1] == ':') {
if (tokptr[strlen(tokptr)-2] == ':') {
tokptr[strlen(tokptr)-2]='\0';
arg_opt=optional_argument;
} else {
tokptr[strlen(tokptr)-1]='\0';
arg_opt=required_argument;
}
if (strlen(tokptr) == 0)
parse_error(_("empty long option after "
"-l or --long argument"));
}
add_longopt(tokptr,arg_opt);
}
tokptr=strtok(NULL,", \t\n");
}
}
void set_shell(const char *new_shell)
{
if (!strcmp(new_shell,"bash"))
shell=BASH;
else if (!strcmp(new_shell,"tcsh"))
shell=TCSH;
else if (!strcmp(new_shell,"sh"))
shell=BASH;
else if (!strcmp(new_shell,"csh"))
shell=TCSH;
else
parse_error(_("unknown shell after -s or --shell argument"));
}
void print_help(void)
{
fputs(_("Usage: getopt optstring parameters\n"),stderr);
fputs(_(" getopt [options] [--] optstring parameters\n"),stderr);
fputs(_(" getopt [options] -o|--options optstring [options] [--]\n"),stderr);
fputs(_(" parameters\n"),stderr);
#ifdef HAVE_GETOPT_LONG_ONLY
fputs(_(" -a, --alternative Allow long options starting with single -\n"),stderr);
#endif
fputs(_(" -h, --help This small usage guide\n"),stderr);
fputs(_(" -l, --longoptions=longopts Long options to be recognized\n"),stderr);
fputs(_(" -n, --name=progname The name under which errors are reported\n"),stderr);
fputs(_(" -o, --options=optstring Short options to be recognized\n"),stderr);
fputs(_(" -q, --quiet Disable error reporting by getopt(3)\n"),stderr);
fputs(_(" -Q, --quiet-output No normal output\n"),stderr);
fputs(_(" -s, --shell=shell Set shell quoting conventions\n"),stderr);
fputs(_(" -T, --test Test for getopt(1) version\n"),stderr);
fputs(_(" -u, --unqote Do not quote the output\n"),stderr);
fputs(_(" -V, --version Output version information\n"),stderr);
exit(2);
}
/* Exit codes:
* 0) No errors, succesful operation.
* 1) getopt(3) returned an error.
* 2) A problem with parameter parsing for getopt(1).
* 3) Internal error, out of memory
* 4) Returned for -T
*/
static struct option longopts[]={ {"options",required_argument,NULL,'o'},
{"longoptions",required_argument,NULL,'l'},
{"quiet",no_argument,NULL,'q'},
{"quiet-output",no_argument,NULL,'Q'},
{"shell",required_argument,NULL,'s'},
{"test",no_argument,NULL,'T'},
{"unquoted",no_argument,NULL,'u'},
{"help",no_argument,NULL,'h'},
#ifdef HAVE_GETOPT_LONG_ONLY
{"alternative",no_argument,NULL,'a'},
#endif
{"name",required_argument,NULL,'n'},
{"version",no_argument,NULL,'V'},
{NULL,0,NULL,0}
};
/* Stop scanning as soon as a non-option argument is found! */
static const char *shortopts="+ao:l:n:qQs:TuhV";
int main(int argc, char *argv[])
{
char *optstr=NULL;
char *name=NULL;
int opt;
int compatible=0;
init_longopt();
if (getenv("GETOPT_COMPATIBLE"))
compatible=1;
if (argc == 1)
{
if (compatible) {
/* For some reason, the original getopt gave no error
when there were no arguments. */
printf(" --\n");
exit(0);
}
else
parse_error(_("missing optstring argument"));
}
if (argv[1][0] != '-' || compatible) {
quote=0;
optstr=our_malloc(strlen(argv[1])+1);
strcpy(optstr,argv[1]+strspn(argv[1],"-+"));
argv[1]=argv[0];
exit(generate_output(argv+1,argc-1,optstr,long_options));
}
while ((opt=getopt_long(argc,argv,shortopts,longopts,NULL)) != EOF)
switch (opt) {
#ifdef HAVE_GETOPT_LONG_ONLY
case 'a':
alternative=1;
break;
#endif
case 'h':
print_help();
exit(0);
case 'o':
if (optstr)
free(optstr);
optstr=our_malloc(strlen(optarg)+1);
strcpy(optstr,optarg);
break;
case 'l':
add_long_options(optarg);
break;
case 'n':
if (name)
free(name);
name=our_malloc(strlen(optarg)+1);
strcpy(name,optarg);
break;
case 'q':
quiet_errors=1;
break;
case 'Q':
quiet_output=1;
break;
case 's':
set_shell(optarg);
break;
case 'T':
exit(4);
case 'u':
quote=0;
break;
case 'V':
printf(_("getopt (enhanced) 1.1.2\n"));
exit(0);
case '?':
case ':':
parse_error(NULL);
default:
parse_error(_("internal error, contact the author."));
}
if (!optstr)
{
if (optind >= argc)
parse_error(_("missing optstring argument"));
else {
optstr=our_malloc(strlen(argv[optind])+1);
strcpy(optstr,argv[optind]);
optind++;
}
}
if (name)
argv[optind-1]=name;
else
argv[optind-1]=argv[0];
exit(generate_output(argv+optind-1,argc-optind+1,optstr,long_options));
}
[-- Attachment #4: Type: text/plain, Size: 214 bytes --]
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll and mknetrel
2002-06-03 23:27 ` egor duda
@ 2002-06-04 4:42 ` Nicholas Wourms
2002-06-04 8:56 ` Charles Wilson
2002-06-04 9:49 ` Christopher Faylor
2 siblings, 0 replies; 28+ messages in thread
From: Nicholas Wourms @ 2002-06-04 4:42 UTC (permalink / raw)
To: egor duda; +Cc: linguist-cygwin
Egor,
Thanks for the utils, very helpful indeed! Perhaps Charles should add
them to Cygutils since, ATM, they don't fit anywhere else but do serve a
useful purpose?
Cheers,
Nicholas
--- egor duda <deo@logos-m.ru> wrote:
> Hi!
>
> Tuesday, 04 June, 2002 Christopher Faylor cgf@redhat.com wrote:
>
> >> * On my production system, I had to change the
> '#!/bin/sh' to
> >> '#!/bin/bash' on one of the mknetrel shell scripts
> >> to get the shell to accept the usage of getopts ... but
> on the
> >> fresh install, I did not. (This is the bash getopts
> builtin,
> >> not the standalone and singular 'getopt' discussed
> above)
>
> CF> Yes, I have never run this under cygwin, actually. It was intended
> as a
> CF> cross-compilation environment. I'm surprised that it works on
> cygwin
> CF> with so few changes.
>
> I'm running it on cygwin. All i need is to build getopt.exe and
> readlink.exe from two attached source files. readlink.c is taken from
> OpenBSD cvs, and getopt.c is slightly patched version of getopt.c from
> linux-utils. They both can be built out-of-the-box.
>
> Egor. mailto:deo@logos-m.ru ICQ 5165414 FidoNet 2:5020/496.19
> ATTACHMENT part 2 application/octet-stream name=readlink.c
> ATTACHMENT part 3 application/octet-stream name=getopt.c
> --
> Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
> Bug reporting: http://cygwin.com/bugs.html
> Documentation: http://cygwin.com/docs.html
> FAQ: http://cygwin.com/faq/
__________________________________________________
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll and mknetrel
2002-06-03 23:27 ` egor duda
2002-06-04 4:42 ` Nicholas Wourms
@ 2002-06-04 8:56 ` Charles Wilson
2002-06-04 17:11 ` Nicholas Wourms
2002-06-04 9:49 ` Christopher Faylor
2 siblings, 1 reply; 28+ messages in thread
From: Charles Wilson @ 2002-06-04 8:56 UTC (permalink / raw)
To: egor duda; +Cc: linguist-cygwin, cygwin
egor duda wrote:
> Hi!
>
> Tuesday, 04 June, 2002 Christopher Faylor cgf@redhat.com wrote:
>
>
>>> * On my production system, I had to change the '#!/bin/sh' to
>>> '#!/bin/bash' on one of the mknetrel shell scripts
>>> to get the shell to accept the usage of getopts ... but on the
>>> fresh install, I did not. (This is the bash getopts builtin,
>>> not the standalone and singular 'getopt' discussed above)
>>>
>
> CF> Yes, I have never run this under cygwin, actually. It was intended as a
> CF> cross-compilation environment. I'm surprised that it works on cygwin
> CF> with so few changes.
>
> I'm running it on cygwin. All i need is to build getopt.exe and
> readlink.exe from two attached source files. readlink.c is taken from
> OpenBSD cvs, and getopt.c is slightly patched version of getopt.c from
> linux-utils. They both can be built out-of-the-box.
Hmm...these seem like useful additions, and since getopt.exe is from
linux-utils:
should readlink and getopt be added to cygutils? </fear full.exe>
--Chuck
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll and mknetrel
2002-06-03 23:27 ` egor duda
2002-06-04 4:42 ` Nicholas Wourms
2002-06-04 8:56 ` Charles Wilson
@ 2002-06-04 9:49 ` Christopher Faylor
2 siblings, 0 replies; 28+ messages in thread
From: Christopher Faylor @ 2002-06-04 9:49 UTC (permalink / raw)
To: cygwin
On Tue, Jun 04, 2002 at 10:25:57AM +0400, egor duda wrote:
>Hi!
>
>Tuesday, 04 June, 2002 Christopher Faylor cgf@redhat.com wrote:
>
>>> * On my production system, I had to change the '#!/bin/sh' to
>>> '#!/bin/bash' on one of the mknetrel shell scripts
>>> to get the shell to accept the usage of getopts ... but on the
>>> fresh install, I did not. (This is the bash getopts builtin,
>>> not the standalone and singular 'getopt' discussed above)
>
>CF> Yes, I have never run this under cygwin, actually. It was intended as a
>CF> cross-compilation environment. I'm surprised that it works on cygwin
>CF> with so few changes.
>
>I'm running it on cygwin. All i need is to build getopt.exe and
>readlink.exe from two attached source files. readlink.c is taken from
>OpenBSD cvs, and getopt.c is slightly patched version of getopt.c from
>linux-utils. They both can be built out-of-the-box.
FWIW, I've eliminated the need for getopt and (I hope) readlink in the
cvs version of mknetrel.
cgf
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll and mknetrel
2002-06-03 22:56 ` Christopher Faylor
2002-06-03 23:27 ` egor duda
@ 2002-06-04 12:45 ` rich-paul
1 sibling, 0 replies; 28+ messages in thread
From: rich-paul @ 2002-06-04 12:45 UTC (permalink / raw)
To: cygwin
> Yes, I have never run this under cygwin, actually. It was intended as a
> cross-compilation environment. I'm surprised that it works on cygwin
> with so few changes.
Great work, my shell scripts require alot of TLC and SSH b4 they work on
more than one platform. <G>
> You should be able to say "mknetrel cygwin" to have it build the latest version.
> Again, I'm surprised that it would actually work with explicit versions.
I'm sorry, I didn't use explicit versions when calling mknetrel. I was
saying that the wildcards in the shell snippets above (e.g. cd
cygwin*/winsup) would break if there was, for example, more than one dir
called 'cygwin*'. Actually, it's worse than I thought, I didn't put a
dash b4 the glob, so even a package called cygwinfoo-2-3 would break the
cd!
--
Got freedom? Vote Libertarian: http://www.lp.org
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll and mknetrel
2002-06-04 8:56 ` Charles Wilson
@ 2002-06-04 17:11 ` Nicholas Wourms
2002-06-04 17:19 ` Nicholas Wourms
0 siblings, 1 reply; 28+ messages in thread
From: Nicholas Wourms @ 2002-06-04 17:11 UTC (permalink / raw)
To: Charles Wilson, egor duda; +Cc: linguist-cygwin, cygwin
--- Charles Wilson <cwilson@ece.gatech.edu> wrote:
>
>
> egor duda wrote:
>
> > Hi!
> >
> > Tuesday, 04 June, 2002 Christopher Faylor cgf@redhat.com wrote:
> >
> >
> >>> * On my production system, I had to change the
> '#!/bin/sh' to
> >>> '#!/bin/bash' on one of the mknetrel shell scripts
> >>> to get the shell to accept the usage of getopts ... but
> on the
> >>> fresh install, I did not. (This is the bash getopts
> builtin,
> >>> not the standalone and singular 'getopt' discussed
> above)
> >>>
> >
> > CF> Yes, I have never run this under cygwin, actually. It was
> intended as a
> > CF> cross-compilation environment. I'm surprised that it works on
> cygwin
> > CF> with so few changes.
> >
> > I'm running it on cygwin. All i need is to build getopt.exe and
> > readlink.exe from two attached source files. readlink.c is taken from
> > OpenBSD cvs, and getopt.c is slightly patched version of getopt.c from
> > linux-utils. They both can be built out-of-the-box.
>
>
> Hmm...these seem like useful additions, and since getopt.exe is from
> linux-utils:
>
> should readlink and getopt be added to cygutils? </fear full.exe>
>
Chuck,
As I mentioned earlier, they probably should, as they are YAE of those
small miscellaneous shell utilities you probably never think you'll use
but then one day realize you need them for some script you are writing :).
Seriously, though, it would probably be useful to have these, not quite
as useful as a full port of glibc, but, nonetheless, useful in their own
way. Anyone else feel this way?
Cheers,
Nicholas
__________________________________________________
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
* Re: Building cygwin1.dll and mknetrel
2002-06-04 17:11 ` Nicholas Wourms
@ 2002-06-04 17:19 ` Nicholas Wourms
0 siblings, 0 replies; 28+ messages in thread
From: Nicholas Wourms @ 2002-06-04 17:19 UTC (permalink / raw)
To: Charles Wilson, egor duda; +Cc: linguist-cygwin, cygwin
--- Charles Wilson <cwilson@ece.gatech.edu> wrote:
>
>
> egor duda wrote:
>
> > Hi!
> >
> > Tuesday, 04 June, 2002 Christopher Faylor cgf@redhat.com wrote:
> >
> >
> >>> * On my production system, I had to change the
> '#!/bin/sh' to
> >>> '#!/bin/bash' on one of the mknetrel shell scripts
> >>> to get the shell to accept the usage of getopts ... but
> on the
> >>> fresh install, I did not. (This is the bash getopts
> builtin,
> >>> not the standalone and singular 'getopt' discussed
> above)
> >>>
> >
> > CF> Yes, I have never run this under cygwin, actually. It was
> intended as a
> > CF> cross-compilation environment. I'm surprised that it works on
> cygwin
> > CF> with so few changes.
> >
> > I'm running it on cygwin. All i need is to build getopt.exe and
> > readlink.exe from two attached source files. readlink.c is taken from
> > OpenBSD cvs, and getopt.c is slightly patched version of getopt.c from
> > linux-utils. They both can be built out-of-the-box.
>
>
> Hmm...these seem like useful additions, and since getopt.exe is from
> linux-utils:
>
> should readlink and getopt be added to cygutils? </fear full.exe>
>
Chuck,
As I mentioned earlier, they probably should, as they are YAE of those
small miscellaneous shell utilities you probably never think you'll use
but then one day realize you need them for some script you are writing :).
Seriously, though, it would probably be useful to have these, not quite
as useful as a full port of glibc, but, nonetheless, useful in their own
way. Anyone else feel this way?
Cheers,
Nicholas
__________________________________________________
Do You Yahoo!?
Yahoo! - Official partner of 2002 FIFA World Cup
http://fifaworldcup.yahoo.com
--
Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple
Bug reporting: http://cygwin.com/bugs.html
Documentation: http://cygwin.com/docs.html
FAQ: http://cygwin.com/faq/
^ permalink raw reply [flat|nested] 28+ messages in thread
end of thread, other threads:[~2002-06-04 23:26 UTC | newest]
Thread overview: 28+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2002-05-26 13:58 Building cygwin1.dll CM
2002-05-28 13:52 ` rich-paul
2002-05-28 13:58 ` Larry Hall (RFK Partners, Inc)
2002-05-28 14:09 ` Christopher Faylor
2002-05-28 14:11 ` Larry Hall (RFK Partners, Inc)
2002-05-28 14:17 ` Christopher Faylor
2002-05-28 14:40 ` Larry Hall (RFK Partners, Inc)
2002-05-29 4:03 ` rich-paul
2002-05-29 4:16 ` rich-paul
2002-05-29 4:36 ` Christopher Faylor
2002-05-29 9:27 ` rich-paul
2002-05-29 10:31 ` Christopher Faylor
2002-06-01 22:04 ` rich-paul
2002-06-01 22:36 ` ..
2002-06-01 23:28 ` Christopher Faylor
2002-06-02 4:44 ` rich-paul
2002-06-03 2:50 ` Building cygwin1.dll and mknetrel linguist-cygwin
2002-06-03 4:55 ` rich-paul
2002-06-03 5:12 ` egor duda
2002-06-03 22:56 ` Christopher Faylor
2002-06-03 23:27 ` egor duda
2002-06-04 4:42 ` Nicholas Wourms
2002-06-04 8:56 ` Charles Wilson
2002-06-04 17:11 ` Nicholas Wourms
2002-06-04 17:19 ` Nicholas Wourms
2002-06-04 9:49 ` Christopher Faylor
2002-06-04 12:45 ` rich-paul
2002-05-29 5:01 ` Building cygwin1.dll Larry Hall (RFK Partners, Inc)
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).