diff --git a/config/autoconf.mk.in b/config/autoconf.mk.in index c6665094b6e..c8a5b417204 100644 --- a/config/autoconf.mk.in +++ b/config/autoconf.mk.in @@ -184,7 +184,6 @@ XLIBS = @XLIBS@ CYGWIN_WRAPPER = @CYGWIN_WRAPPER@ CYGDRIVE_MOUNT = @CYGDRIVE_MOUNT@ -AIX_SHLIB_BIN = @AIX_SHLIB_BIN@ AR = @AR@ AR_FLAGS = @AR_FLAGS@ AR_EXTRACT = @AR_EXTRACT@ diff --git a/configure.in b/configure.in index 17a44bd5647..dce07b72a4f 100644 --- a/configure.in +++ b/configure.in @@ -802,19 +802,36 @@ dnl System overrides of the defaults for target dnl ======================================================== case "$target" in *-aix*) + AC_DEFINE(AIX) if test ! "$GNU_CC"; then - # DSO_LDOPTS='-ldl -bM:SRE -p1 -brtl -bso -bexpall -bnoentry' - DSO_LDOPTS='-ldl -p1 -brtl -bso -bsymbolic -bnortllib' - DSO_CFLAGS='-qflag=w:w' - DSO_PIC_CFLAGS='-DPIC' + DSO_LDOPTS='-qmkshrobj=1 -G -bnoentry' + DSO_CFLAGS='-qflag=w:w' + DSO_PIC_CFLAGS= + LDFLAGS="$LDFLAGS -Wl,-brtl -blibpath:/usr/lib:/lib" + MKSHLIB='$(CXX) $(DSO_LDOPTS) -o $@' + MKCSHLIB='$(CC) $(DSO_LDOPTS) -o $@' + AC_LANG_SAVE + AC_LANG_CPLUSPLUS + AC_MSG_CHECKING([for VisualAge C++ compiler version >= 5.0.2.0]) + AC_TRY_COMPILE([], + [#if (__IBMCPP__ < 520) + #error "Bad compiler" + #endif], + _BAD_COMPILER=,_BAD_COMPILER=1) + if test -n "$_BAD_COMPILER"; then + AC_MSG_RESULT([no]) + AC_MSG_ERROR([VisualAge C++ version 5.0.2.0 or higher is required to build.]) + else + AC_MSG_RESULT([yes]) + fi + AC_LANG_RESTORE fi case "${target_os}" in aix4.1*) DLL_SUFFIX='_shr.a' ;; esac - MKSHLIB='$(AIX_SHLIB_BIN) $(DSO_LDOPTS) -o $@' - MKCSHLIB='$(AIX_SHLIB_BIN) $(DSO_LDOPTS) -o $@' + AC_CHECK_HEADERS(sys/inttypes.h) AC_DEFINE(NSCAP_DISABLE_DEBUG_PTR_TYPES) ;; @@ -4635,42 +4652,6 @@ if test -n "$MOZ_STATIC_COMPONENTS" && test -n "$MOZ_META_COMPONENTS"; then AC_MSG_ERROR([Simultaneous use of meta-module-components & meta-components is not supported.]) fi -case "$target" in - *-*-aix*) - if test -z "${BUILD_STATIC_LIBS}" -o -n "${BUILD_SHARED_LIBS}"; then - if test -f /usr/lpp/xlC/bin/makeC++SharedLib_r; then - AIX_SHLIB_BIN='/usr/lpp/xlC/bin/makeC++SharedLib_r' - elif test -f /usr/vacpp/bin/makeC++SharedLib_r; then - AIX_SHLIB_BIN='/usr/vacpp/bin/makeC++SharedLib_r' - elif test -f /usr/ibmcxx/bin/makeC++SharedLib_r; then - AIX_SHLIB_BIN='/usr/ibmcxx/bin/makeC++SharedLib_r' - fi - AC_PATH_PROG(AIX_SHLIB_BIN, makeC++SharedLib_r, :) - if test ! -n "$AIX_SHLIB_BIN"; then - echo - echo "*** Unable to locate makeC++SharedLib_r, needed for creation of shared" - echo "*** libraries on AIX. You will only be able to build static libraries." - echo - BUILD_STATIC_LIBS=1 - BUILD_SHARED_LIBS= - fi - fi - AC_SUBST(AIX_SHLIB_BIN) - - dnl ======================================================== - dnl Figure out if we are using a pre-5.0x version of the - dnl xlC compiler and if so, set flag - dnl ======================================================== - - if test ! "$GNU_CC" && test "$ac_cv_cpp_reinterpret_cast" = no ; then - CXXFLAGS="$CXXFLAGS -DAIX_XLC_364" - CFLAGS="$CFLAGS -DAIX_XLC_364" - fi - - ;; - -esac - MOZ_COMPONENTLIB= MOZ_ARG_ENABLE_BOOL(componentlib, [ --enable-componentlib Build a shared library containing all of the components], diff --git a/js/src/jsotypes.h b/js/src/jsotypes.h index ac71e2b51f5..1440963093a 100644 --- a/js/src/jsotypes.h +++ b/js/src/jsotypes.h @@ -89,7 +89,7 @@ typedef JSIntn intn; * So we don't define these four types here to avoid conflicts in case * the code also includes sys/types.h. */ -#ifdef AIX4_3 +#if defined(AIX) && defined(HAVE_SYS_INTTYPES_H) #include #else typedef JSInt64 int64; @@ -106,7 +106,7 @@ typedef long int32; typedef JSInt16 int16; typedef JSInt8 int8; #endif /* HPUX */ -#endif /* AIX4_3 */ +#endif /* AIX && HAVE_SYS_INTTYPES_H */ #endif /* XP_BEOS */ diff --git a/layout/generic/nsLineLayout.h b/layout/generic/nsLineLayout.h index 1384fd8ff19..71467b7a9e4 100644 --- a/layout/generic/nsLineLayout.h +++ b/layout/generic/nsLineLayout.h @@ -398,9 +398,6 @@ protected: PerFrameData* mFrameFreeList; PRInt32 mInitialFramesFreed; -#if defined(AIX_XLC_364) -public: -#endif struct PerSpanData { union { PerSpanData* mParent; @@ -436,9 +433,6 @@ public: mLastFrame = pfd; } }; -#if defined(AIX_XLC_364) -protected: -#endif PerSpanData mSpanDataBuf[NS_LINELAYOUT_NUM_SPANS]; PerSpanData* mSpanFreeList; PRInt32 mInitialSpansFreed; diff --git a/layout/html/base/src/nsLineLayout.h b/layout/html/base/src/nsLineLayout.h index 1384fd8ff19..71467b7a9e4 100644 --- a/layout/html/base/src/nsLineLayout.h +++ b/layout/html/base/src/nsLineLayout.h @@ -398,9 +398,6 @@ protected: PerFrameData* mFrameFreeList; PRInt32 mInitialFramesFreed; -#if defined(AIX_XLC_364) -public: -#endif struct PerSpanData { union { PerSpanData* mParent; @@ -436,9 +433,6 @@ public: mLastFrame = pfd; } }; -#if defined(AIX_XLC_364) -protected: -#endif PerSpanData mSpanDataBuf[NS_LINELAYOUT_NUM_SPANS]; PerSpanData* mSpanFreeList; PRInt32 mInitialSpansFreed;