]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
add --enable-64 configure flag to build 64 bit with suncc
authorMichael Jerris <mike@jerris.com>
Fri, 16 Nov 2007 04:26:00 +0000 (04:26 +0000)
committerMichael Jerris <mike@jerris.com>
Fri, 16 Nov 2007 04:26:00 +0000 (04:26 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@6297 d0543943-73ff-0310-b7d9-9358b9ac24b2

libs/xmlrpc-c/Makefile.common
libs/xmlrpc-c/Makefile.config.in
libs/xmlrpc-c/configure.in
libs/xmlrpc-c/lib/expat/gennmtab/Makefile
libs/xmlrpc-c/src/xmlrpc_builddecomp.c

index d0e77f04b475b96b6c39fcfcfed001e88f81d25c..bf510401a6282230642e3a714daf96258e9ffd22 100644 (file)
@@ -23,11 +23,15 @@ GCC_C_WARNINGS = $(GCC_WARNINGS) \
 GCC_CXX_WARNINGS = $(GCC_WARNINGS) -Woverloaded-virtual -Wsynth
 
 ifeq ($(C_COMPILER_GNU),yes)
-  CFLAGS_COMMON = $(GCC_C_WARNINGS) -fno-common -g
+  CFLAGS_COMMON = $(GCC_C_WARNINGS) $(COMPILER_CFLAGS) -fno-common -g
+else
+  CFLAGS_COMMON = $(COMPILER_CFLAGS)
 endif
 
 ifeq ($(CXX_COMPILER_GNU),yes)
-  CXXFLAGS_COMMON = $(GCC_CXX_WARNINGS)
+  CXXFLAGS_COMMON = $(GCC_CXX_WARNINGS) $(COMPILER_CXXFLAGS)
+else
+  CXXFLAGS_COMMON = $(COMPILER_CXXFLAGS)
 endif
 
 DISTDIR = $(BUILDDIR)/$(PACKAGE)-$(VERSION)/$(SUBDIR)
index 536805cdd233d9714e3aa7524948b86e0f5502db..efdcf4f8c20cbc77e30bcaf4974200531f9de2e1 100644 (file)
@@ -57,6 +57,8 @@ INSTALL = @INSTALL@
 
 C_COMPILER_GNU = @C_COMPILER_GNU@
 CXX_COMPILER_GNU = @CXX_COMPILER_GNU@
+COMPILER_CFLAGS = @COMPILER_CFLAGS@
+COMPILER_CXXFLAGS = @COMPILER_CXXFLAGS@
 
 # Here are the commands 'make install' uses to install various kinds of files:
 
index d88ef8f2d6160954996ba7b93d926caa405f8e96..3837ccf09df3c3ffcfd4531daf0c0320e05735bb 100644 (file)
@@ -633,6 +633,40 @@ AC_SUBST(CPP_WARN_FLAGS)
 BUILDDIR=`pwd`
 AC_SUBST(BUILDDIR)
 
+
+
+AC_DEFUN([AX_COMPILER_VENDOR],
+[
+AC_CACHE_CHECK([for _AC_LANG compiler vendor], ax_cv_[]_AC_LANG_ABBREV[]_compiler_vendor,
+ [ax_cv_[]_AC_LANG_ABBREV[]_compiler_vendor=unknown
+  # note: don't check for gcc first since some other compilers define __GNUC__
+  for ventest in intel:__ICC,__ECC,__INTEL_COMPILER ibm:__xlc__,__xlC__,__IBMC__,__IBMCPP__ gnu:__GNUC__ sun:__SUNPRO_C,__SUNPRO_CC hp:__HP_cc,__HP_aCC dec:__DECC,__DECCXX,__DECC_VER,__DECCXX_VER borland:__BORLANDC__,__TURBOC__ comeau:__COMO__ cray:_CRAYC kai:__KCC lcc:__LCC__ metrowerks:__MWERKS__ sgi:__sgi,sgi microsoft:_MSC_VER watcom:__WATCOMC__ portland:__PGI; do
+    vencpp="defined("`echo $ventest | cut -d: -f2 | sed 's/,/) || defined(/g'`")"
+    AC_COMPILE_IFELSE([AC_LANG_PROGRAM(,[
+#if !($vencpp)
+      thisisanerror;
+#endif
+])], [ax_cv_]_AC_LANG_ABBREV[_compiler_vendor=`echo $ventest | cut -d: -f1`; break])
+  done
+ ])
+])
+
+AX_COMPILER_VENDOR
+
+#  Enable 64 bit build
+AC_ARG_ENABLE(64,
+[AC_HELP_STRING([--enable-64],[build with 64 bit support])],[enable_64="$enable_64"],[enable_64="no"])
+
+if test "x${ax_cv_c_compiler_vendor}"  =  "xsun" ; then
+    if test "${enable_64}" = "yes"; then
+        COMPILER_CFLAGS=-m64
+        COMPILER_CXXFLAGS=-m64
+    fi
+fi
+
+AC_SUBST(COMPILER_CFLAGS)
+AC_SUBST(COMPILER_CXXFLAGS)
+
 dnl =======================================================================
 dnl Libtool
 dnl =======================================================================
index 8795e72aaea3d06a4c48cf84295dd06a2bbd9521..f39a02351f3925cd0374a058c72b7146651502a3 100644 (file)
@@ -40,6 +40,6 @@ gennmtab.o:%.o:%.c
        $(CC) -c $< -o $@ $(CFLAGS) $(INCLUDES)
 
 gennmtab:%:%.o
-       $(LINK) -o $@ $(LDFLAGS) $^
+       $(LINK) -o $@ $(LDFLAGS) $(CFLAGS) $^
 
 include Makefile.depend
index 95b02ad27305f1c9c0acf09bb04d59e792ed9f9a..e96091691b41b189601862e86110d93cd12318da 100644 (file)
@@ -27,8 +27,12 @@ typedef double va_double;
 #if VA_LIST_IS_ARRAY
 #define VA_LIST_COPY(dest,src) memcpy((dest), (src), sizeof(va_list))
 #else
+#if __sun
+#define VA_LIST_COPY(dest,src) (*(dest) = *(src))
+#else
 #define VA_LIST_COPY(dest,src) ((dest) = (src))
 #endif
+#endif
 
 /*=========================================================================
 **  Creating XML-RPC values.