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 ? > AC_SUBST([COVERAGE_CFLAGS], [$COMPILER_FLAGS]) > AC_SUBST([COVERAGE_LDFLAGS], [$COMPILER_FLAGS]) > COMPILER_FLAGS= > Index: qemud/internal.h > =================================================================== > RCS file: /data/cvs/libvirt/qemud/internal.h,v > retrieving revision 1.41 > diff -u -r1.41 internal.h > --- qemud/internal.h 5 Dec 2007 18:21:27 -0000 1.41 > +++ qemud/internal.h 23 Jan 2008 13:21:42 -0000 > @@ -25,6 +25,10 @@ > #ifndef QEMUD_INTERNAL_H__ > #define QEMUD_INTERNAL_H__ > > +#include <config.h> > + > +#include "../src/socketcompat.h" > + > #include <gnutls/gnutls.h> > #include <gnutls/x509.h> > #include "../src/gnutls_1_0_compat.h" > @@ -43,7 +47,6 @@ > #include <rpc/types.h> > #include <rpc/xdr.h> > #include "remote_protocol.h" > -#include "../config.h" Looks like a good change > #ifdef __GNUC__ > #ifdef HAVE_ANSIDECL_H > Index: qemud/qemud.c > =================================================================== > RCS file: /data/cvs/libvirt/qemud/qemud.c,v > retrieving revision 1.76 > diff -u -r1.76 qemud.c > --- qemud/qemud.c 11 Dec 2007 21:57:29 -0000 1.76 > +++ qemud/qemud.c 23 Jan 2008 13:21:43 -0000 > @@ -47,6 +47,7 @@ > #include <assert.h> > #include <fnmatch.h> > #include <grp.h> > +#include <signal.h> > > #include "libvirt/virterror.h" looks safe too > =================================================================== > 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. > Index: src/sexpr.c > =================================================================== > RCS file: /data/cvs/libvirt/src/sexpr.c,v > retrieving revision 1.12 > diff -u -r1.12 sexpr.c > --- src/sexpr.c 21 Jan 2008 14:22:15 -0000 1.12 > +++ src/sexpr.c 23 Jan 2008 13:21:44 -0000 > @@ -13,7 +13,7 @@ > #include "config.h" > > #include <stdio.h> > -#include <malloc.h> > +#include <stdlib.h> > #include <string.h> > #include <ctype.h> > #include <errno.h> portability++ > Index: src/socketcompat.h > =================================================================== > RCS file: /data/cvs/libvirt/src/socketcompat.h,v > retrieving revision 1.1 > diff -u -r1.1 socketcompat.h > --- src/socketcompat.h 5 Jan 2008 16:06:36 -0000 1.1 > +++ src/socketcompat.h 23 Jan 2008 13:21:44 -0000 > @@ -28,6 +28,7 @@ > #ifndef HAVE_WINSOCK2_H /* Unix & Cygwin. */ > > #include <sys/socket.h> > +#include <sys/un.h> > #include <net/if.h> > #include <netinet/in.h> > #include <netinet/tcp.h> we already include sys/un.h in xend_internal.c and proxy_internal.c so this can't break anything, looks safe. Daniel -- Red Hat Virtualization group http://redhat.com/virtualization/ Daniel Veillard | virtualization library http://libvirt.org/ veillard@xxxxxxxxxx | libxml GNOME XML XSLT toolkit http://xmlsoft.org/ http://veillard.com/ | Rpmfind RPM search engine http://rpmfind.net/ -- Libvir-list mailing list Libvir-list@xxxxxxxxxx https://www.redhat.com/mailman/listinfo/libvir-list