Thu, 22 Jan 2015 13:21:57 +0100
Incorporate requested changes from Mozilla in review:
https://bugzilla.mozilla.org/show_bug.cgi?id=1123480#c6
michael@0 | 1 | # |
michael@0 | 2 | # This Source Code Form is subject to the terms of the Mozilla Public |
michael@0 | 3 | # License, v. 2.0. If a copy of the MPL was not distributed with this |
michael@0 | 4 | # file, You can obtain one at http://mozilla.org/MPL/2.0/. |
michael@0 | 5 | |
michael@0 | 6 | # Config stuff for AIX. |
michael@0 | 7 | |
michael@0 | 8 | include $(CORE_DEPTH)/coreconf/UNIX.mk |
michael@0 | 9 | |
michael@0 | 10 | # |
michael@0 | 11 | # There are two implementation strategies available on AIX: |
michael@0 | 12 | # pthreads, and pthreads-user. The default is pthreads. |
michael@0 | 13 | # In both strategies, we need to use pthread_user.c, instead of |
michael@0 | 14 | # aix.c. The fact that aix.c is never used is somewhat strange. |
michael@0 | 15 | # |
michael@0 | 16 | # So we need to do the following: |
michael@0 | 17 | # - Default (PTHREADS_USER not defined in the environment or on |
michael@0 | 18 | # the command line): |
michael@0 | 19 | # Set PTHREADS_USER=1, USE_PTHREADS=1 |
michael@0 | 20 | # - PTHREADS_USER=1 set in the environment or on the command line: |
michael@0 | 21 | # Do nothing. |
michael@0 | 22 | # |
michael@0 | 23 | ifeq ($(PTHREADS_USER),1) |
michael@0 | 24 | USE_PTHREADS = # just to be safe |
michael@0 | 25 | IMPL_STRATEGY = _PTH_USER |
michael@0 | 26 | else |
michael@0 | 27 | USE_PTHREADS = 1 |
michael@0 | 28 | PTHREADS_USER = 1 |
michael@0 | 29 | endif |
michael@0 | 30 | |
michael@0 | 31 | DEFAULT_COMPILER = xlc_r |
michael@0 | 32 | |
michael@0 | 33 | CC = xlc_r |
michael@0 | 34 | CCC = xlC_r |
michael@0 | 35 | |
michael@0 | 36 | CPU_ARCH = rs6000 |
michael@0 | 37 | |
michael@0 | 38 | RANLIB = ranlib |
michael@0 | 39 | |
michael@0 | 40 | OS_CFLAGS = -DAIX -DSYSV |
michael@0 | 41 | OS_LIBS += -blibpath:/usr/lib:/lib -lc -lm |
michael@0 | 42 | |
michael@0 | 43 | DSO_LDOPTS = -brtl -bnortllib -bM:SRE -bnoentry |
michael@0 | 44 | MKSHLIB = $(LD) $(DSO_LDOPTS) -blibpath:/usr/lib:/lib -lc -lm |
michael@0 | 45 | |
michael@0 | 46 | AIX_WRAP = $(DIST)/lib/aixwrap.o |
michael@0 | 47 | AIX_TMP = $(OBJDIR)/_aix_tmp.o |
michael@0 | 48 | |
michael@0 | 49 | ifdef MAPFILE |
michael@0 | 50 | DSO_LDOPTS += -bexport:$(MAPFILE) |
michael@0 | 51 | else |
michael@0 | 52 | DSO_LDOPTS += -bexpall |
michael@0 | 53 | endif |
michael@0 | 54 | |
michael@0 | 55 | PROCESS_MAP_FILE = grep -v ';+' $< | grep -v ';-' | \ |
michael@0 | 56 | sed -e 's; DATA ;;' -e 's,;;,,' -e 's,;.*,,' > $@ |
michael@0 | 57 | |
michael@0 | 58 | ifdef BUILD_OPT |
michael@0 | 59 | OPTIMIZER += -qmaxmem=-1 |
michael@0 | 60 | endif |
michael@0 | 61 | |
michael@0 | 62 | ifeq ($(USE_64), 1) |
michael@0 | 63 | OS_CFLAGS += -DAIX_64BIT |
michael@0 | 64 | OBJECT_MODE=64 |
michael@0 | 65 | export OBJECT_MODE |
michael@0 | 66 | endif |
michael@0 | 67 |