Index: Makefile.in =================================================================== RCS file: /home/cvsroot/private/yate/Makefile.in,v retrieving revision 1.51 diff -u -r1.51 Makefile.in --- Makefile.in 23 Aug 2007 11:12:50 -0000 1.51 +++ Makefile.in 1 Sep 2007 20:24:38 -0000 @@ -18,8 +18,8 @@ MKDEPS := ./config.status PROGS:= yate -YLIB := libyate.so.@PACKAGE_VERSION@ -SLIBS:= $(YLIB) libyate.so +YLIB := libyate.@so@.@PACKAGE_VERSION@ +SLIBS:= $(YLIB) libyate.@so@ INCS := yateclass.h yatemime.h yatengine.h yatephone.h yatecbase.h GENS := yateversn.h LIBS := @@ -113,27 +113,27 @@ -rm -f configure .PHONY: engine contrib modules clients test apidocs-build apidocs-kdoc apidocs-doxygen check-topdir windows -engine: tables library libyate.so $(PROGS) +engine: tables library libyate.@so@ $(PROGS) apidocs-kdoc: check-topdir @if [ -n "$(DOCGEN_K)" ]; then \ - $(DOCGEN_K) ; \ + "$(DOCGEN_K)" ; \ else \ echo "Executable kdoc is not installed!" ; exit 1 ; \ fi apidocs-doxygen: check-topdir @if [ -n "$(DOCGEN_D)" ]; then \ - $(DOCGEN_D) ; \ + "$(DOCGEN_D)" ; \ else \ echo "Executable doxygen is not installed!" ; exit 1 ; \ fi apidocs-build: @if [ -n "$(DOCGEN)" ]; then \ - cd @srcdir@ ; $(DOCGEN) ; \ + cd @srcdir@ ; "$(DOCGEN)" ; \ else \ - echo "Neither kdoc or doxygen is installed!" ; exit 1 ; \ + echo "Neither kdoc nor doxygen is installed!" ; exit 1 ; \ fi apidocs: @srcdir@/docs/api/index.html @@ -296,10 +296,10 @@ Makefile: @srcdir@/Makefile.in $(MKDEPS) ./config.status -yate: libyate.so $(OBJS) $(LIBS) +yate: libyate.@so@ $(OBJS) $(LIBS) $(LINK) -o $@ $(LIBTHR) $^ -libyate.so: $(YLIB) +libyate.@so@: $(YLIB) ln -sf $^ $@ .PHONY: library Index: configure.in =================================================================== RCS file: /home/cvsroot/private/yate/configure.in,v retrieving revision 1.92 diff -u -r1.92 configure.in --- configure.in 27 Aug 2007 17:26:31 -0000 1.92 +++ configure.in 1 Sep 2007 20:24:38 -0000 @@ -22,6 +22,22 @@ test -x "$uname_os" && uname_os=Unknown AC_MSG_RESULT([$uname_os]) +case "x$uname_os" in + xDarwin) + so="dylib" + LDSHARED="-dynamiclib -current_version $PACKAGE_VERSION" + INSTALL="install" + ;; + *) + so="so" + LDSHARED="-shared" + INSTALL="install -D" + ;; +esac +AC_SUBST(so) +AC_SUBST(LDSHARED) +AC_SUBST(INSTALL) + # Checks for programs. AC_PROG_CXX AC_PROG_CC @@ -201,10 +217,11 @@ INTERNAL_REGEX=no ;; xyes|xenable) + INTERNAL_REGEX=yes ;; xauto) - if [[ "x$uname_os" = "xLinux" ]]; then - INTERNAL_REGEX=no + if [[ "x$uname_os" = "xLinux" -o "x$uname_os" = "xDarwin" ]]; then + INTERNAL_REGEX=no; fi ;; *) @@ -708,11 +725,23 @@ fi fi -MODULE_CFLAGS="-fno-exceptions -fPIC $HAVE_GCC_FORMAT_CHECK" -MODULE_CPPFLAGS="-fno-check-new $RTTI_OPT $MODULE_CFLAGS" -MODULE_LDRELAX="-export-dynamic -shared" -MODULE_LDFLAGS="$MODULE_LDRELAX $GCC_UNRESOLVED_SYMBOLS" -MODULE_SYMBOLS="-Wl,--retain-symbols-file,/dev/null" +case "x$uname_os" in + xDarwin) + MODULE_CFLAGS="-fno-exceptions -fPIC $HAVE_GCC_FORMAT_CHECK" + MODULE_CPPFLAGS="-fno-check-new $RTTI_OPT $MODULE_CFLAGS" + MODULE_LDRELAX="-dynamiclib" + MODULE_LDFLAGS="$MODULE_LDRELAX $GCC_UNRESOLVED_SYMBOLS" + MODULE_SYMBOLS="" + ;; + *) + MODULE_CFLAGS="-fno-exceptions -fPIC $HAVE_GCC_FORMAT_CHECK" + MODULE_CPPFLAGS="-fno-check-new $RTTI_OPT $MODULE_CFLAGS" + MODULE_LDRELAX="-export-dynamic -shared" + MODULE_LDFLAGS="$MODULE_LDRELAX $GCC_UNRESOLVED_SYMBOLS" + MODULE_SYMBOLS="-Wl,--retain-symbols-file,/dev/null" + ;; +esac + AC_SUBST(MODULE_CFLAGS) AC_SUBST(MODULE_CPPFLAGS) AC_SUBST(MODULE_LDRELAX) @@ -753,8 +782,8 @@ AC_CONFIG_FILES([yate.spec yate.pc - yateversn.h - yateiss.inc + yateversn.h + yateiss.inc Makefile engine/Makefile modules/Makefile Index: clients/Makefile.in =================================================================== RCS file: /home/cvsroot/private/yate/clients/Makefile.in,v retrieving revision 1.9 diff -u -r1.9 clients/Makefile.in --- clients/Makefile.in 20 Jun 2006 14:40:27 -0000 1.9 +++ clients/Makefile.in 1 Sep 2007 20:24:39 -0000 @@ -65,7 +65,7 @@ $(if $(MENUFILES),\ @mkdir -p "$(DESTDIR)$(menudir)/" && \ for i in $(MENUFILES) ; do \ - install -D -m 0644 "@srcdir@/$$i" "$(DESTDIR)$(menudir)/$$i" ; \ + @INSTALL@ -m 0644 "@srcdir@/$$i" "$(DESTDIR)$(menudir)/$$i" ; \ done \ ) $(if $(DESKFILES),\ Index: engine/Makefile.in =================================================================== RCS file: /home/cvsroot/private/yate/engine/Makefile.in,v retrieving revision 1.19 diff -u -r1.19 engine/Makefile.in --- engine/Makefile.in 26 Jul 2007 23:44:12 -0000 1.19 +++ engine/Makefile.in 1 Sep 2007 20:24:39 -0000 @@ -17,7 +17,7 @@ LDCONFIG:=true MKDEPS := ../config.status -YLIB:= libyate.so.@PACKAGE_VERSION@ +YLIB:= libyate.@so@.@PACKAGE_VERSION@ CINC := @top_srcdir@/yateclass.h @top_srcdir@/yatemime.h EINC := $(CINC) @top_srcdir@/yatengine.h PINC := $(EINC) @top_srcdir@/yatephone.h @@ -30,7 +30,7 @@ CLIOBJS := Client.o LIBOBJS := $(CLSOBJS) $(ENGOBJS) $(TELOBJS) $(CLIOBJS) -CLEANS = $(LIBOBJS) core +CLEANS = $(LIBOBJS) $(YLIB) core CCOMPILE = $(CC) $(DEFS) $(DEBUG) $(INCLUDES) $(CFLAGS) COMPILE = $(CXX) $(DEFS) $(DEBUG) $(INCLUDES) $(CPPFLAGS) LINK = $(CXX) $(LDFLAGS) @@ -117,5 +117,8 @@ Makefile: @srcdir@/Makefile.in $(MKDEPS) cd .. && ./config.status -../$(YLIB): $(LIBOBJS) $(LIBS) - $(LINK) -shared -o $@ -Wl,--soname=$(YLIB) $(LIBTHR) $^ $(LIBAUX) +$(YLIB): $(LIBOBJS) $(LIBS) + $(LINK) @LDSHARED@ -o $(YLIB) $(LIBTHR) $^ $(LIBAUX) + +../$(YLIB): $(YLIB) + cp $(YLIB) .. Index: engine/Mutex.cpp =================================================================== RCS file: /home/cvsroot/private/yate/engine/Mutex.cpp,v retrieving revision 1.26 diff -u -r1.26 engine/Mutex.cpp --- engine/Mutex.cpp 10 Jun 2006 12:05:16 -0000 1.26 +++ engine/Mutex.cpp 1 Sep 2007 20:24:39 -0000 @@ -32,7 +32,7 @@ #ifdef MUTEX_HACK extern "C" { -#if defined(__FreeBSD__) +#if defined(__FreeBSD__) or defined(__APPLE__) extern int pthread_mutexattr_settype(pthread_mutexattr_t *__attr, int __kind); #define PTHREAD_MUTEX_RECURSIVE_NP PTHREAD_MUTEX_RECURSIVE #else Index: engine/Socket.cpp =================================================================== RCS file: /home/cvsroot/private/yate/engine/Socket.cpp,v retrieving revision 1.29 diff -u -r1.29 engine/Socket.cpp --- engine/Socket.cpp 26 Mar 2007 15:13:07 -0000 1.29 +++ engine/Socket.cpp 1 Sep 2007 20:24:39 -0000 @@ -21,6 +21,9 @@ */ #ifdef FDSIZE_HACK +#ifdef __APPLE__ +#define FD_SETSIZE FDSIZE_HACK +#else #include #if (__GLIBC__ > 2) || (__GLIBC__ == 2 && __GLIBC_MINOR__ >= 2) #include @@ -30,6 +33,7 @@ #error Cannot set FD_SETSIZE on this platform - please ./configure --without-fdsize and hope it works #endif #endif +#endif #include "yateclass.h" Index: modules/Makefile.in =================================================================== RCS file: /home/cvsroot/private/yate/modules/Makefile.in,v retrieving revision 1.68 diff -u -r1.68 modules/Makefile.in --- modules/Makefile.in 22 Jul 2007 17:48:00 -0000 1.68 +++ modules/Makefile.in 1 Sep 2007 20:24:39 -0000 @@ -133,7 +133,7 @@ install: all do-install @mkdir -p "$(DESTDIR)$(moddir)/" && \ for i in $(PROGS) ; do \ - install -D "$$i" "$(DESTDIR)$(moddir)/$$i" ; \ + @INSTALL@ "$$i" "$(DESTDIR)$(moddir)/$$i" ; \ done; .PHONY: uninstall @@ -165,8 +165,8 @@ Makefile: @srcdir@/Makefile.in $(MKDEPS) cd .. && ./config.status -lib%.so: %.o - $(LINK) -shared -o $@ $^ +lib%.@so@: %.o + $(LINK) @LDSHARED@ -o $@ $^ %.yate: @srcdir@/%.cpp $(MKDEPS) $(INCFILES) $(MODCOMP) -o $@ $(LOCALFLAGS) $< $(LOCALLIBS) @@ -182,7 +182,7 @@ wpchan.yate: LOCALFLAGS = @WANPIPE_HWEC_INC@ wpchan.yate: LOCALLIBS = libypri.o -lpri -ysigchan.yate wpcard.yate zapcard.yate: ../libyatess7.so +ysigchan.yate wpcard.yate zapcard.yate: ../libyatess7.@so@ ysigchan.yate wpcard.yate zapcard.yate: LOCALFLAGS = -I../contrib/yss7 ysigchan.yate wpcard.yate zapcard.yate: LOCALLIBS = -lyatess7 @@ -244,7 +244,7 @@ rmanager.yate: LOCALFLAGS = $(COREDUMP_INC) rmanager.yate: LOCALLIBS = $(COREDUMP_LIB) -../libyatess7.so: +../libyatess7.@so@: $(MAKE) -C ../contrib/yss7 ../contrib/yss7/libyatess7.a: $(MAKE) -C ../contrib/yss7 Index: modules/help/Makefile.in =================================================================== RCS file: /home/cvsroot/private/yate/modules/help/Makefile.in,v retrieving revision 1.1 diff -u -r1.1 modules/help/Makefile.in --- modules/help/Makefile.in 11 Jun 2006 14:41:04 -0000 1.1 +++ modules/help/Makefile.in 1 Sep 2007 20:24:39 -0000 @@ -23,7 +23,7 @@ @lst="`cd @srcdir@; ls -1 -d *.yhlp`" ; \ mkdir -p "$(DESTDIR)$(helpdir)/" && \ for i in $$lst ; do \ - install -D -m 0644 "@srcdir@/$$i" "$(DESTDIR)$(helpdir)/$$i" ; \ + @INSTALL@ -m 0644 "@srcdir@/$$i" "$(DESTDIR)$(helpdir)/$$i" ; \ done; uninstall: Index: modules/skin/Makefile.in =================================================================== RCS file: /home/cvsroot/private/yate/modules/skin/Makefile.in,v retrieving revision 1.2 diff -u -r1.2 modules/skin/Makefile.in --- modules/skin/Makefile.in 7 Nov 2005 03:09:23 -0000 1.2 +++ modules/skin/Makefile.in 1 Sep 2007 20:24:39 -0000 @@ -23,7 +23,7 @@ @lst="`cd @srcdir@; ls -1 -d */* | sed '/CVS\|\.orig/d'`" ; \ mkdir -p "$(DESTDIR)$(skindir)/" && \ for i in $$lst ; do \ - install -D -m 0644 "@srcdir@/$$i" "$(DESTDIR)$(skindir)/$$i" ; \ + @INSTALL@ -m 0644 "@srcdir@/$$i" "$(DESTDIR)$(skindir)/$$i" ; \ done; uninstall: