
Hi Anthony ! The latest change to Boost.Thread: URL: http://svn.boost.org/trac/boost/changeset/40348 introduced "feature.feature thrd-api" as "symmetric" feature, adding "thrd-api-pthread" to the build paths on linux. I'd like to have it asymmetric, so build paths will be as short as possible. The problem with the "symmetric" property is that you can't use "feature.set-default" to change the default value so the path element will disappear. Please find "thread.diff" with propose patch attached. Also thread.txt with output without patch and thread2.txt will patched Jamfile.v2. The other thing I noticed is the usage of "os.name" to distinguish between nt/unix/cygwin. I think this should use "target-os" in order to enable cross-compilation, but I don't know how to code this. Therefore cross-post to Boost.Build list in order to get some pointer on how to change if [ os.name ] = NT to if target-os = windows or something similar. Yours, Jürgen -- * Dipl.-Math. Jürgen Hunold ! Ingenieurgesellschaft für * voice: ++49 511 262926 57 ! Verkehrs- und Eisenbahnwesen mbH * fax : ++49 511 262926 99 ! Lister Straße 15 * juergen.hunold@ivembh.de ! www.ivembh.de * * Geschäftsführer: ! Sitz des Unternehmens: Hannover * Prof. Dr.-Ing. Thomas Siefer ! Amtsgericht Hannover, HRB 56965 * PD Dr.-Ing. Alfons Radtke !

Juergen Hunold <juergen.hunold@ivembh.de> writes:
The latest change to Boost.Thread: URL: http://svn.boost.org/trac/boost/changeset/40348
introduced "feature.feature thrd-api" as "symmetric" feature, adding "thrd-api-pthread" to the build paths on linux. I'd like to have it asymmetric, so build paths will be as short as possible. The problem with the "symmetric" property is that you can't use "feature.set-default" to change the default value so the path element will disappear.
OK. I've committed that change.
The other thing I noticed is the usage of "os.name" to distinguish between nt/unix/cygwin. I think this should use "target-os" in order to enable cross-compilation, but I don't know how to code this. Therefore cross-post to Boost.Build list in order to get some pointer on how to change if [ os.name ] = NT
to if target-os = windows
or something similar.
I agree that it's less than ideal. Any pointers on how to do this are much appreciated. The idea is to detect when targetting plain Windows vs Cygwin vs Unix. On plain Windows we default to win32 thread API, and have pthread as an option if and only if the pthread-win32 library is installed. On Cygwin we default to pthread and have win32 as an option. On unix we only have pthread as an option. Anthony -- Anthony Williams Just Software Solutions Ltd - http://www.justsoftwaresolutions.co.uk Registered in England, Company Number 5478976. Registered Office: 15 Carrallack Mews, St Just, Cornwall, TR19 7UL

Hi Anthony ! On Mittwoch 24 Oktober 2007, Anthony Williams wrote:
OK. I've committed that change.
Thanks for the quick fix !
I agree that it's less than ideal. Any pointers on how to do this are much appreciated.
I'll try to fix this. I'd like to try mingw for cross-compilation myself. But this make take some time...
The idea is to detect when targetting plain Windows vs Cygwin vs Unix. On plain Windows we default to win32 thread API, and have pthread as an option if and only if the pthread-win32 library is installed. On Cygwin we default to pthread and have win32 as an option. On unix we only have pthread as an option.
Okay, this the goal. Yours, Jürgen -- * Dipl.-Math. Jürgen Hunold ! Ingenieurgesellschaft für * voice: ++49 511 262926 57 ! Verkehrs- und Eisenbahnwesen mbH * fax : ++49 511 262926 99 ! Lister Straße 15 * juergen.hunold@ivembh.de ! www.ivembh.de * * Geschäftsführer: ! Sitz des Unternehmens: Hannover * Prof. Dr.-Ing. Thomas Siefer ! Amtsgericht Hannover, HRB 56965 * PD Dr.-Ing. Alfons Radtke !
participants (2)
-
Anthony Williams
-
Juergen Hunold