On Wed, Jan 23, 2008 at 09:33:04AM -0500, Daniel Veillard wrote:
On Wed, Jan 23, 2008 at 01:21:29PM +0000, Richard W.M. Jones wrote:
> I got a little bit further with this, my current patch is attached.
>
> At the moment, it gets as far as building libvirt & virsh, but fails to
> build the Python bindings. However virsh doesn't run, apparently
> because of a simple dynamic linking problem because of where the
> libraries are (not yet) installed. I'm afraid that my understanding of
> how to build and install applications on Mac OS X ends around here. In
> particular I have no idea how to get the detailed abort trace that
> Andrew showed up in his previous email.
maybe some parts of it should be checked in purely as cleanup/portability
enhancement, see comment below
> dnl Availability of various common headers (non-fatal if missing).
> AC_CHECK_HEADERS([pwd.h paths.h sys/syslimits.h sys/utsname.h sys/wait.h
winsock2.h])
>
> -dnl Need -lrpc or -lxdr? (Cygwin and MinGW resp. need this)
> -AC_SEARCH_LIBS(xdrmem_create,[rpc xdr])
> +dnl Where are the XDR functions?
> +dnl If portablexdr is installed, prefer that.
> +dnl Otherwise try -lrpc (Cygwin) -lxdr (some MinGW) or none (most Unix)
> +AC_CHECK_LIB([portablexdr],[xdrmem_create],[],[
> + AC_SEARCH_LIBS([xdrmem_create],[rpc xdr])
> + ])
Should be fine I think
> dnl Do we have rpcgen?
> AC_PATH_PROG(RPCGEN, rpcgen, no)
> @@ -621,8 +625,8 @@
> [enableval=no])
>
> if test "${enableval}" = yes; then
> - gl_COMPILER_FLAGS(-fprofile-arcs)
> - gl_COMPILER_FLAGS(-ftest-coverage)
> + dnl gl_COMPILER_FLAGS(-fprofile-arcs)
> + dnl gl_COMPILER_FLAGS(-ftest-coverage)
We really shouldn't assume such recent features of gcc, I understand
it's useful from for coverage reports, but it really can't get in the
way for normal compilations, maybe this need to be refined a bit so that
we can keep it. I would have assumed that if --enable-test-coverage wasn't
explicitely asked for, then those bits would not need to be disabled, right ?
The whole point of the gl_COMPILER_FLAGS macro is that it *tests*
each flag to see if it is supported or not. So we won't end up
using the flags if they're not supported by the compiler. I
don't know what rich commented out this block ... ?
>
===================================================================
> RCS file: /data/cvs/libvirt/src/Makefile.am,v
> retrieving revision 1.62
> diff -u -r1.62 Makefile.am
> --- src/Makefile.am 5 Jan 2008 16:06:36 -0000 1.62
> +++ src/Makefile.am 23 Jan 2008 13:21:44 -0000
> @@ -66,7 +66,7 @@
> libvirt_la_SOURCES = $(CLIENT_SOURCES) $(SERVER_SOURCES)
> libvirt_la_LIBADD = $(LIBXML_LIBS) $(GNUTLS_LIBS) $(SASL_LIBS) \
> @CYGWIN_EXTRA_LIBADD@ ../gnulib/lib/libgnu.la
> -libvirt_la_LDFLAGS = -Wl,--version-script=$(srcdir)/libvirt_sym.version \
> +libvirt_la_LDFLAGS = \
> -version-info @LIBVIRT_VERSION_INFO@ \
> $(COVERAGE_CFLAGS:-f%=-Wc,-f%) \
> @CYGWIN_EXTRA_LDFLAGS@ @MINGW_EXTRA_LDFLAGS@
Hum, we really rely on libvirt_sym.version to define the exported list,
someone may be able to help on how to do this on OS X, but as is we can't
apply it seems.
Some linkers have different ways todo this - I don't see it as a huge
issue if we can't filter this on Mac OS-X. This is just a layer of
protection to discourage people who don't read docs.
Dan.
--
|=- Red Hat, Engineering, Emerging Technologies, Boston. +1 978 392 2496 -=|
|=- Perl modules:
http://search.cpan.org/~danberr/ -=|
|=- Projects:
http://freshmeat.net/~danielpb/ -=|
|=- GnuPG: 7D3B9505 F3C9 553F A1DA 4AC2 5648 23C1 B3DF F742 7D3B 9505 -=|