unofficial mirror of bug-guile@gnu.org 
 help / color / mirror / Atom feed
* Win32/MinGW port
@ 2006-10-02 18:24 Nils Durner
  2006-10-02 20:34 ` Kevin Ryde
  0 siblings, 1 reply; 6+ messages in thread
From: Nils Durner @ 2006-10-02 18:24 UTC (permalink / raw)


Hi,

compiling guile-core-1.8-20061001 under MinGW fails with the following
error message:
---
gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -g -O2 -Wall
-Wmissing-prototypes -W
error -MT libguile_la-scmsigs.lo -MD -MP -MF
.deps/libguile_la-scmsigs.Tpo -c sc
msigs.c  -DDLL_EXPORT -DPIC -o .libs/libguile_la-scmsigs.o
scmsigs.c: In function `signal_delivery_thread':
scmsigs.c:156: warning: implicit declaration of function `sigfillset'
scmsigs.c:157: warning: implicit declaration of function `pthread_sigmask'
scmsigs.c: In function `start_signal_delivery_thread':
scmsigs.c:182: warning: implicit declaration of function `pipe'
make[3]: *** [libguile_la-scmsigs.lo] Error 1
make[3]: Leaving directory `/home/guile-core-1.8-20061001/libguile'
make[2]: *** [all] Error 2
make[2]: Leaving directory `/home/guile-core-1.8-20061001/libguile'
make[1]: *** [all-recursive] Error 1
make[1]: Leaving directory `/home/guile-core-1.8-20061001'
make: *** [all] Error 2
---

After removing do_read_without_guile(), read_without_guile,
signal_delivery_thread() and the content of
start_signal_delivery_thread() from scmsigs.c, the build process fails
at threads.c:
---
 gcc -DHAVE_CONFIG_H -I. -I. -I.. -I.. -I.. -g -O2 -Wall
-Wmissing-prototypes -W
error -MT libguile_la-threads.lo -MD -MP -MF
.deps/libguile_la-threads.Tpo -c th
reads.c  -DDLL_EXPORT -DPIC -o .libs/libguile_la-threads.o
threads.c: In function `thread_print':
threads.c:146: error: aggregate value used where an integer was expected
threads.c: In function `block_self':
threads.c:207: warning: passing arg 3 of `scm_pthread_cond_timedwait'
from incom
patible pointer type
threads.c: At top level:
threads.c:1429: error: conflicting types for 'scm_pthread_cond_timedwait'
../libguile/threads.h:203: error: previous declaration of
'scm_pthread_cond_time
dwait' was here
threads.c:1429: error: conflicting types for 'scm_pthread_cond_timedwait'
../libguile/threads.h:203: error: previous declaration of
'scm_pthread_cond_time
dwait' was here
threads.c: In function `scm_pthread_cond_timedwait':
threads.c:1431: warning: passing arg 3 of `pthread_cond_timedwait' from
incompat
ible pointer type
make[3]: *** [libguile_la-threads.lo] Error 1
---


Please CC me all answers as I'm not subscribed to the list.


Regards,

Nils Durner


_______________________________________________
Bug-guile mailing list
Bug-guile@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-guile


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Win32/MinGW port
  2006-10-02 18:24 Win32/MinGW port Nils Durner
@ 2006-10-02 20:34 ` Kevin Ryde
  2006-10-02 21:24   ` Nils Durner
  0 siblings, 1 reply; 6+ messages in thread
From: Kevin Ryde @ 2006-10-02 20:34 UTC (permalink / raw)
  Cc: bug-guile

Nils Durner <ndurner@web.de> writes:
>
> scmsigs.c:157: warning: implicit declaration of function `pthread_sigmask'

Does it have pthreads?  Did you ask for them, or did configure wrongly
decide to use them?


_______________________________________________
Bug-guile mailing list
Bug-guile@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-guile


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Win32/MinGW port
  2006-10-02 20:34 ` Kevin Ryde
@ 2006-10-02 21:24   ` Nils Durner
  2006-10-04 22:05     ` Kevin Ryde
  0 siblings, 1 reply; 6+ messages in thread
From: Nils Durner @ 2006-10-02 21:24 UTC (permalink / raw)



>> scmsigs.c:157: warning: implicit declaration of function
>> `pthread_sigmask'
>
> Does it have pthreads?
Yes, but some functions are not supported by pthreads-w32.

> Did you ask for them, or did configure wrongly
> decide to use them?
No, I didn't ask.


    Nils



_______________________________________________
Bug-guile mailing list
Bug-guile@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-guile


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Win32/MinGW port
  2006-10-02 21:24   ` Nils Durner
@ 2006-10-04 22:05     ` Kevin Ryde
  2006-10-07 10:29       ` Nils Durner
  0 siblings, 1 reply; 6+ messages in thread
From: Kevin Ryde @ 2006-10-04 22:05 UTC (permalink / raw)
  Cc: bug-guile

Nils Durner <ndurner@web.de> writes:
>
> Yes, but some functions are not supported by pthreads-w32.

How bad are the missing bits?  Should configure reject it because
there's no pthread_sigmask, or is there something the code can do to
cope?


_______________________________________________
Bug-guile mailing list
Bug-guile@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-guile


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Win32/MinGW port
  2006-10-04 22:05     ` Kevin Ryde
@ 2006-10-07 10:29       ` Nils Durner
  2006-10-09  0:46         ` Kevin Ryde
  0 siblings, 1 reply; 6+ messages in thread
From: Nils Durner @ 2006-10-07 10:29 UTC (permalink / raw)



> How bad are the missing bits?
It's not too bad. pthreads-win32 is fairly complete and working.
The mentioned functions are missing because Windows lacks the concept of
signals altogether.

> Should configure reject it because
> there's no pthread_sigmask, or is there something the code can do to
> cope?
As there are no signals on Win32, I *think* it is okay to just "ifndef
MINGW" the code.


Regarding the undefined "pipe()":
the easiest thing to do would be to define pipe() in the following way:

    #include <fcntl.h>
    #define pipe(f) _pipe(f, 1000, _O_BINARY)

_pipe() takes two additional parameters: size in bytes and file mode.
Note that these pipes are blocking.


Nils



_______________________________________________
Bug-guile mailing list
Bug-guile@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-guile


^ permalink raw reply	[flat|nested] 6+ messages in thread

* Re: Win32/MinGW port
  2006-10-07 10:29       ` Nils Durner
@ 2006-10-09  0:46         ` Kevin Ryde
  0 siblings, 0 replies; 6+ messages in thread
From: Kevin Ryde @ 2006-10-09  0:46 UTC (permalink / raw)
  Cc: bug-guile

Nils Durner <ndurner@web.de> writes:
>
> As there are no signals on Win32, I *think* it is okay to just "ifndef
> MINGW" the code.

That might be worth trying.  (But not with ifdef mingw, rather a test
for missing funcs or features.  There's already been mingw-specific
conditionals that became bogus because missing bits have since been
added to the system.)

>     #include <fcntl.h>
>     #define pipe(f) _pipe(f, 1000, _O_BINARY)

Yep, we've got that in another file.  It might be worth sticking in
_scm.h to get it everywhere.


_______________________________________________
Bug-guile mailing list
Bug-guile@gnu.org
http://lists.gnu.org/mailman/listinfo/bug-guile


^ permalink raw reply	[flat|nested] 6+ messages in thread

end of thread, other threads:[~2006-10-09  0:46 UTC | newest]

Thread overview: 6+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2006-10-02 18:24 Win32/MinGW port Nils Durner
2006-10-02 20:34 ` Kevin Ryde
2006-10-02 21:24   ` Nils Durner
2006-10-04 22:05     ` Kevin Ryde
2006-10-07 10:29       ` Nils Durner
2006-10-09  0:46         ` Kevin Ryde

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).