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