status of the s4 waf build - go to stage 3?
Stefan (metze) Metzmacher
metze at samba.org
Sun Apr 25 03:02:11 MDT 2010
tridge at samba.org schrieb:
> Hi Brad,
>
> > After your encouragement today, I gave this a try.
>
> thanks!
>
> > The libLIBFOO stuff looks a bit strange - perhaps something not getting
> > substituted correctly?
>
> no, that's just what the libraries are called. I kept the same names
> as the old build system. The difference is that most of these libs got
> rolled into the binaries or other libraries as objects in the old
> system, instead of being built as shared libs.
>
> We could certainly rename these libs to use better names :-)
>
> > Also, the pkgconfig files don't have the right filenames (no -samba4 suffix).
> > [bradh-dev at repens lib]$ cat pkgconfig/dcerpc.pc
> > prefix=${prefix}
> > exec_prefix=${prefix}
> > libdir=${prefix}/lib
> > includedir=${prefix}/include
> >
> > Name: dcerpc
> > Description: DCE/RPC client library
> > Requires: ndr
> > Version: 0.0.1
> > Libs: -L${libdir} -ldcerpc
> > Cflags: -I${includedir} -DHAVE_IMMEDIATE_STRUCTURES=1
> >
> > So that isn't going to work for openchange.
>
> The reason this happens is that it is using library bundling, and the
> build system is trying to avoid possible conflicts with installed
> system libraries. So the pkgconfig and library names are actually as
> they are supposed to be.
>
> For libs like libtdb.so, this bundling avoids problems with a
> user-installed tdb library conflicting with a system installed tdb
> library.
>
> I suggest you have a read of this:
>
> http://wiki.samba.org/index.php/Waf#working_with_libraries
>
> which should explain how the library handling works with the waf build.
>
> There are a few ways we could make this work for openchange:
>
> 1) you could use the --bundled-libraries configure option to force
> Samba4 so not use the bundled library extension for the libraries you
> need
>
> 2) we could mark some of these libraries as not needing
> bundling. This means we'd be saying that they will not be packaged
> separately
>
> 3) we could add a configure option to put the bundled library name in
> the pkgconfig file.
>
> Probably (1) is the simplest for your builds. See the web page above
> for more information on this. You may also like to use
> --builtin-libraries to force some of the libraries to be rolled into
> the other libs (as per the old build system).
I think 2) is the correct thing to do for non standalone libraries,
which need to be exposed as public libraries. (all libraries which
provide a .pc file).
metze
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 260 bytes
Desc: OpenPGP digital signature
URL: <http://lists.samba.org/pipermail/samba-technical/attachments/20100425/5c304c86/attachment.pgp>
More information about the samba-technical
mailing list