[Top][All Lists]

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [Axiom-developer] build-improvements on cygwin

From: Gabriel Dos Reis
Subject: Re: [Axiom-developer] build-improvements on cygwin
Date: 28 Nov 2006 17:06:01 +0100

"Bill Page" <address@hidden> writes:


| > So untarred noweb using cygwin, modified the makefile using cygwin,
| > then invoked make [all install] under mingw.
| Usually mixing cygwin and MSYS/MinGW tools is a *bad* idea because

I'm not so sure.  The combination let me move through the
shortcomings of both individual systems that popped up.  Of course,
you have to know the conventions.

| > I had a functional noweb installed.
| > Next, the modified build-improvement's configure completed (under
| > mingw).  Make stopped on bsdsignal.c.  Which prompted me to look
| > into, and get out horrified: Axiom has a tendency of checking for
| > platforms, when in fact it is interested in functionalities most
| > of the time. I changed bsdsignal.c to test for availability of
| > sigaction(), SA_RESTART, SA_INTERRUPT, etc.  The build proceeded
| > till func_key.c which has some calls to fork() and wait().  At

sorry, this should read fnct_key.c.

| > that point, I decided that I had enough experience for tonight
| > and tackle daytime job things.
| I am surprised that bsdsignal.c compiled. I think Windows has fewer
| and different signals than unix.

Well, onece you understand what bsdSignal was supposed to implement, it
is not hard to rewrite it in a way that it "works".  As a matter of
fact, it is a straightforward variation on an example in the classical
"Advanced Programming in the Unix Environment" book by Stevens.

In particular for MSYS, bsdSinal was not (originally) supposed to do
anything terribly useful, except to systematically report an error.
Note however that MSYS has a minimal <signal.h> (old style) that could
be used. Again, this requires to abstract over the irritating testing
for platforms, when one is interested in functionbality.

| There is no fork() or wait() under native Windows so that was a
| good place to suspend your testing. :-)

A few other filess compile.  bsdsignal.c does not use fork and wait.
it is fnct_key.c.

| > I'll install a cross-compiling environment linux-x-mingw and
| > use that for further investigation.
| I suspect that you will find this even less likely to succeed
| but I am interested in seeing how far you get.

Most definitely, I don't want to have to switch to
windows while I'm testing ideas on both linux (pirmary) and
mingw/cygwin (secondary).

| > And I'll tackle the mingw/cygwin issue much later when time
| > permits.
| > 
| I keep hoping that some day the Axiom project will attract
| a really experienced Windows Developer...

I too hope -- because I have no intention to become an experienced
Windows developer (I don't have the time).

-- Gaby

reply via email to

[Prev in Thread] Current Thread [Next in Thread]