Hi Jake,

Quoting Jake Goerzen <jgoer...@opencsw.org> from ml.softs.gtk-gnutella.devel:
:./lib/mutex.h:108:16: error: redefinition of 'struct mutex'
:  typedef struct mutex {

OK, renamed it as "struct lmutex" in the library, to avoid this conflict.

:Looks like mutex.h header in gtk-gnutella source is redefining what is 
:in Solaris system headers /usr/include/sys/mutex.h.  I suppose there is 
:no mutex.h in Linux?, so no check is done to look for it as a system header?

No, gtk-gnutella uses its own mutexes, which are built on top of our own
spinlocks.  This allows lots of possibilities for the code:

- Ability to detect deadlocks and dump lock stacks.
- Ability to define safe inter-thread signals.
- Ability to trace where a mutex / spinlock was grabbed.
- Ability to ensure that a memory location is indeed a valid mutex / spinlock.

That's why the library includes this "mutex layer" and I named the structure
"mutex" because it worked on all the systems to which I had access to, namely
Linux, FreeBSD and Windows...  And I also check on OS/X, albeit not directly
because I do not own any OS/X machine.

Thanks for running the "portability test" on Solaris!

Because gtk-gnutella defines its own thread layer on top of POSIX threads,
(and that includes low-level objects such as condition variables, and other
high-level constructs such as safe inter-thread signals) you may discover
some problems when running gtk-gnutella even if the code compiles fine.

Should that happens, I will ask you to use the "thread-test" program (held in
src/lib) to help me diagnose what could be failing.

Cheers,
Raphael

------------------------------------------------------------------------------
Put Bad Developers to Shame
Dominate Development with Jenkins Continuous Integration
Continuously Automate Build, Test & Deployment 
Start a new project now. Try Jenkins in the cloud.
http://p.sf.net/sfu/13600_Cloudbees
_______________________________________________
gtk-gnutella-devel mailing list
gtk-gnutella-devel@lists.sourceforge.net
https://lists.sourceforge.net/lists/listinfo/gtk-gnutella-devel

Reply via email to