On Wed, 2009-06-10 at 17:22 +0200, Jérôme Flesch wrote: > >>>>>> I think the LDL part needs to be in some user defined flag in the > >>>>>> configure.ac. The #if BSD with defining LDL is a bit hacky. I'm not > >>>>>> sure where it should go however, so perhaps Jim or Fabio could > >>>>>> comment. > >>>>>> If Jim or Fabio give that part the thumbs up, then this patch > >>>>>> should be > >>>>>> good to go in. > >>>>>> > >>>>>> the if defined semun wont work because unions are not defines. That > >>>>>> entire code segment is wrong. Can you try the attached patch on > >>>>>> bsd for > >>>>>> me? > >>>>>> > >>>>> I think you misunderstood my problem: semun *is* already defined on > >>>>> FreeBSD, but the #if !defined(semun) doesn't work on my system > >>>>> (probably due to a GCC version difference ?) and the compiler ends > >>>>> up with a redefinition of semun. > >>>>> > >>>>> Is there actually any system where semun is not already defined ? > >>>>> > >>>>> > >>>> Linux doesn't define it and Solaris doesn't even have a description of > >>>> the definition. Do you have _SEM_SEMUN_UNDEFINED in your header files? > >>>> Or SEM_SEMUN_DEFINED? That can be used to do an if defined test. > >>>> > >>> I haven't found any of them in the FreeBSD headers :/ > >>> > >> > >> I believe the proper thing to do is put the union in ifdefs around > >> _SEM_SEMUN_UNDEFINED and define them in configure.ac for Solaris. > >> > >> Can you try this patch on your os? > >> > > Works for me :) > > > Btw, just so you know: I've finally been able to make our programs work > with Corosync (remaining problems were actually due to things specific > to our devices). Everything looks fine now and OpenAIS worked > out-of-the-box :) >
Thats great news. Mind if I ask which services you are using? Regards -steve > > > > > > > >> Regards > >> -steve > >> > >>>> Regards > >>>> -steve > >>>> > >>>> > >>>> > >>>> > >>>> > >>> plain text document attachment (patch-fix-bsd-compilation) > >>> diff --git a/configure.ac b/configure.ac > >>> index de1ac78..b0b7c87 100644 > >>> --- configure.ac > >>> +++ configure.ac > >>> @@ -194,6 +194,7 @@ AC_ARG_WITH([socket-dir], > >>> # OS detection > >>> # THIS SECTION MUST DIE! > >>> CP=cp > >>> +OS_LDL="-ldl" > >>> case "$host_os" in > >>> *linux*) > >>> AC_DEFINE_UNQUOTED([COROSYNC_LINUX], [1], > >>> @@ -225,11 +226,14 @@ case "$host_os" in > >>> *bsd*) > >>> AC_DEFINE_UNQUOTED([COROSYNC_BSD], [1], > >>> [Compiling for BSD platform]) > >>> + AC_DEFINE_UNQUOTED([MAP_ANONYMOUS], [MAP_ANON], > >>> + [Shared memory define for Darwin platform]) > >>> OS_CFLAGS="" > >>> OS_CPPFLAGS="-I/usr/local/include" > >>> OS_LDFLAGS="-L/usr/local/lib" > >>> OS_DYFLAGS="-export-dynamic" > >>> DARWIN_OPTS="" > >>> + OS_LDL="" > >>> ;; > >>> *solaris*) > >>> AC_DEFINE_UNQUOTED([COROSYNC_SOLARIS], [1], > >>> diff --git a/lib/Makefile.am b/lib/Makefile.am > >>> index 37afffd..31e8664 100644 > >>> --- lib/Makefile.am > >>> +++ lib/Makefile.am > >>> @@ -114,7 +114,7 @@ libconfdb.so.$(SONAME): confdb.o sa-confdb.o > >>> ../lcr/lcr_ifact.o libcoroipcc.so.$ > >>> $(CC) -shared -o $@ \ > >>> -Wl,-soname=libconfdb.so.$(SOMAJOR) \ > >>> -Wl,-version-script=$(srcdir)/libconfdb.versions \ > >>> - $^ $(LDFLAGS) $(OS_DYFLAGS) -ldl $(AM_LDFLAGS) > >>> + $^ $(LDFLAGS) $(OS_DYFLAGS) $(OS_LDL) $(AM_LDFLAGS) > >>> ln -sf libconfdb.so.$(SONAME) libconfdb.so > >>> ln -sf libconfdb.so.$(SONAME) libconfdb.so.$(SOMAJOR) > >>> > > > > ------------------------------------------------------------------------ > > > > _______________________________________________ > > Openais mailing list > > [email protected] > > https://lists.linux-foundation.org/mailman/listinfo/openais _______________________________________________ Openais mailing list [email protected] https://lists.linux-foundation.org/mailman/listinfo/openais
