8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-02-02 09:20:39 +01:00

AIX xlC port

This commit is contained in:
alexpeshkoff 2009-05-08 10:41:02 +00:00
parent 4b983e875a
commit d98a326129
2 changed files with 20 additions and 8 deletions

View File

@ -56,14 +56,21 @@
# __unix
# AIX ld option to set run-time library path is -Wl-blibpath:path1:path2
# AIX ld option to set run-time library path is -blibpath:path1:path2
# Additional -blibpath options are not additive! All paths must be provided as a colon separated list.
LIB_PATH_OPTS= -Wl,-blibpath:$(FirebirdInstallPrefix)/lib:$(FirebirdInstallPrefix)/intl:/usr/local/lib:/usr/lib:/lib
LIB_PATH_OPTS= -blibpath:$(FirebirdInstallPrefix)/lib:$(FirebirdInstallPrefix)/intl:/usr/local/lib:/usr/lib:/lib
ifeq ($(STD_ICU),true)
ICU_LIBS= -L/usr/local/lib -licuuc -licudata -licui18n
endif
# non-firebird libraries have .a extension
SHRLIB_FOREIGN_EXT=a
# Flags shared by production and debug build
# -qstaticinline, treat inline functions as static instead of extern
# -qstaticinline removed, interferes with FB's placement new
COMMON_FLAGS= -qchars=signed -qlanglvl=newexcp -qroconst \
COMMON_FLAGS= -qchars=signed -qlanglvl=newexcp -qroconst -qpic \
-D__IBM_ALLOW_OVERRIDE_PLACEMENT_NEW \
$(TLS_OPTIONS)
@ -80,19 +87,23 @@ PROD_FLAGS=$(COMMON_FLAGS) -O3 -qstaticinline -qstrict
DEV_FLAGS=$(COMMON_FLAGS) -g -O0 \
-qcheck -qformat=noall:exarg:zln
LINK_OPTS= $(LDFLAGS) $(THR_FLAGS) $(UNDEF_FLAGS) $(LIB_PATH_OPTS) -Wl,-bbigtoc,-brtl
LIB_LINK_OPTIONS= $(LDFLAGS) $(THR_FLAGS) $(LIB_PATH_OPTS) -bM:SRE -bnoentry -Wl,-G,-bbigtoc,-bexpall
LINK_OPTS= $(LDFLAGS) $(THR_FLAGS) $(UNDEF_FLAGS) $(LIB_PATH_OPTS) -brtl
# -G is shorthand to create shared objects with run-time linking. -G includes
# -berok, -brtl, -bnosymbolic, -bnortllib, -bnoautoexp, -bM:SRE
# -qmkshrobj, need this when creating a C++ shared object
LIB_LINK_OPTIONS= $(LDFLAGS) $(THR_FLAGS) $(LIB_PATH_OPTS) -G -bnoentry -qmkshrobj
# AIX ld uses "export files" to manage symbol visibility. Export files are
# functionally similar to "version files" on ELF systems and are specified
# with the "-Wl,-bE:exportfile.exp" option.
# with the "-bE:exportfile.exp" option.
LINK_FIREBIRD_SYMBOLS=$(LIB_LINK_MAPFILE)$(ROOT)/builds/posix/firebird.exp
LINK_FIREBIRD_EMBED_SYMBOLS=$(LINK_FIREBIRD_SYMBOLS)
LINK_FIREBIRD_CLIENT_SYMBOLS=$(LINK_FIREBIRD_SYMBOLS)
LINK_TRACE_SYMBOLS=$(LIB_LINK_MAPFILE)$(ROOT)/builds/posix/fbtrace.exp
LINK_FBINTL_SYMBOLS=$(LIB_LINK_MAPFILE)$(ROOT)/builds/posix/fbintl.exp
LINK_IBUTIL_SYMBOLS=$(LIB_LINK_MAPFILE)$(ROOT)/builds/posix/ib_util.exp
LIB_LINK_MAPFILE=-Wl,-bE:
LIB_LINK_MAPFILE=-bE:
# These options aren't used by AIX (XCOFF) object files...
LIB_LINK_RPATH=

View File

@ -85,9 +85,10 @@ dnl ibm xlC has many invocations, like xlC, xlc++, or xlc_r7
AR_OPT_CHECK=true
TLS_OPTIONS="-qtls=default"
MAKEFILE_PREFIX=aix_powerpc_xlc
ICU_PLATFORM=AIXPPCXLC
ICU_PLATFORM=AIX4.3VA
else
MAKEFILE_PREFIX=aix_powerpc
ICU_PLATFORM=AIXGCC
fi
MAKEFILE_POSTFIX=aix
PLATFORM=AIX