diff -ru a/nspr/configure b/nspr/configure --- a/a/nspr/configure 2014-09-29 16:47:42.984012225 +0100 +++ b/b/nspr/configure 2014-09-29 16:50:33.907375937 +0100 @@ -6369,7 +6369,6 @@ AIX_LINK_OPTS='-brtl -bnso -berok' ;; esac - CFLAGS="$CFLAGS -qro -qroconst" AIX_WRAP='$(DIST)/lib/aixwrap.o' AIX_TMP='./_aix_tmp.o' if test -n "$USE_64"; then diff -ru a/nspr/configure.in b/nspr/configure.in --- a/a/nspr/configure.in 2014-09-29 16:46:35.257394860 +0100 +++ b/b/nspr/configure.in 2014-09-29 16:50:33.908375942 +0100 @@ -1229,7 +1229,8 @@ AC_DEFINE(XP_UNIX) AC_DEFINE(AIX) AC_DEFINE(SYSV) - DSO_LDOPTS='-brtl -bnortllib -bM:SRE -bnoentry -bexpall -blibpath:/usr/lib:/lib' + DSO_LDOPTS='-Wl,-brtl -Wl,-bnortllib -Wl,-blibpath:/usr/lib:/lib' + MKSHLIB='$(CCC) -shared $(DSO_LDOPTS) -o $@' AC_CHECK_HEADER(sys/atomic_op.h, AC_DEFINE(AIX_HAVE_ATOMIC_OP_H)) case "${target_os}" in aix3.2*) @@ -1269,10 +1270,9 @@ AC_DEFINE(HAVE_SOCKLEN_T) AC_DEFINE(HAVE_FCNTL_FILE_LOCKING) USE_IPV6=1 - AIX_LINK_OPTS='-brtl -bnso -berok' + AIX_LINK_OPTS='-Wl,-brtl -Wl,-bnso -Wl,-berok' ;; esac - CFLAGS="$CFLAGS -qro -qroconst" AIX_WRAP='$(DIST)/lib/aixwrap.o' AIX_TMP='./_aix_tmp.o' if test -n "$USE_64"; then diff -ru a/nspr/pr/src/Makefile.in b/nspr/pr/src/Makefile.in --- a/a/nspr/pr/src/Makefile.in 2014-09-29 16:46:35.281395079 +0100 +++ b/b/nspr/pr/src/Makefile.in 2014-09-29 16:50:33.909375948 +0100 @@ -74,7 +74,6 @@ endif ifeq ($(OS_ARCH),AIX) -DSO_LDOPTS += -binitfini::_PR_Fini OS_LIBS = -lodm -lcfg ifeq ($(CLASSIC_NSPR),1) ifeq ($(OS_RELEASE),4.1) diff -ru a/nss/cmd/platlibs.mk b/nss/cmd/platlibs.mk --- a/a/nss/cmd/platlibs.mk 2014-09-29 16:47:42.987012253 +0100 +++ b/b/nss/cmd/platlibs.mk 2014-09-29 16:50:33.910375955 +0100 @@ -134,7 +134,7 @@ $(NULL) ifeq ($(OS_ARCH), AIX) -EXTRA_SHARED_LIBS += -brtl +EXTRA_SHARED_LIBS += -Wl,-brtl endif # $(PROGRAM) has NO explicit dependencies on $(EXTRA_SHARED_LIBS) @@ -180,7 +180,7 @@ $(NULL) ifeq ($(OS_ARCH), AIX) -EXTRA_SHARED_LIBS += -brtl +EXTRA_SHARED_LIBS += -Wl,-brtl endif # $(PROGRAM) has NO explicit dependencies on $(EXTRA_SHARED_LIBS) diff -ru a/nss/cmd/shlibsign/Makefile b/nss/cmd/shlibsign/Makefile --- a/a/nss/cmd/shlibsign/Makefile 2014-09-29 16:46:35.139393785 +0100 +++ b/b/nss/cmd/shlibsign/Makefile 2014-09-29 16:50:33.910375955 +0100 @@ -43,6 +43,9 @@ endif +ifeq ($(OS), AIX) +EXTRA_SHARED_LIBS += -lpthreads +endif # sign any and all shared libraries that contain the word freebl ifeq ($(NSS_BUILD_WITHOUT_SOFTOKEN),1) diff -ru a/nss/cmd/shlibsign/mangle/Makefile b/nss/cmd/shlibsign/mangle/Makefile --- a/a/nss/cmd/shlibsign/mangle/Makefile 2014-09-29 16:46:35.139393785 +0100 +++ b/b/nss/cmd/shlibsign/mangle/Makefile 2014-09-29 16:50:33.910375955 +0100 @@ -43,7 +43,9 @@ endif - +ifeq ($(OS), AIX) +EXTRA_SHARED_LIBS += -lpthreads +endif ####################################################################### # (5) Execute "global" rules. (OPTIONAL) # diff -ru a/nss/coreconf/AIX.mk b/nss/coreconf/AIX.mk --- a/a/nss/coreconf/AIX.mk 2014-09-29 16:46:35.040392883 +0100 +++ b/b/nss/coreconf/AIX.mk 2014-09-29 16:50:33.909375948 +0100 @@ -30,35 +30,30 @@ DEFAULT_COMPILER = xlc_r -CC = xlc_r -CCC = xlC_r +CCC = $(CXX) CPU_ARCH = rs6000 RANLIB = ranlib OS_CFLAGS = -DAIX -DSYSV -OS_LIBS += -blibpath:/usr/lib:/lib -lc -lm +OS_LIBS += -Wl,-blibpath:/usr/lib:/lib -lc -lm -DSO_LDOPTS = -brtl -bnortllib -bM:SRE -bnoentry -MKSHLIB = $(LD) $(DSO_LDOPTS) -blibpath:/usr/lib:/lib -lc -lm +DSO_LDOPTS = -Wl,-brtl -Wl,-bnortllib +MKSHLIB = $(CC) --shared $(DSO_LDOPTS) -Wl,-blibpath:/usr/lib:/lib -lc -lm AIX_WRAP = $(DIST)/lib/aixwrap.o AIX_TMP = $(OBJDIR)/_aix_tmp.o ifdef MAPFILE -DSO_LDOPTS += -bexport:$(MAPFILE) +DSO_LDOPTS += -Wl,-bexport:$(MAPFILE) else -DSO_LDOPTS += -bexpall +DSO_LDOPTS += -Wl,-bexpall endif PROCESS_MAP_FILE = grep -v ';+' $< | grep -v ';-' | \ sed -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,,' > $@ -ifdef BUILD_OPT - OPTIMIZER += -qmaxmem=-1 -endif - ifeq ($(USE_64), 1) OS_CFLAGS += -DAIX_64BIT OBJECT_MODE=64