8
0
mirror of https://github.com/FirebirdSQL/firebird.git synced 2025-01-22 22:43:03 +01:00
firebird-mirror/builds/posix/prefix.hpux_aCC

105 lines
3.7 KiB
Plaintext

# The contents of this file are subject to the Interbase Public
# License Version 1.0 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy
# of the License at http://www.Inprise.com/IPL.html
#
# Software distributed under the License is distributed on an
# "AS IS" basis, WITHOUT WARRANTY OF ANY KIND, either express
# or implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code was created by Inprise Corporation
# and its predecessors. Portions created by Inprise Corporation are
# Copyright (C) Inprise Corporation.
#
# All Rights Reserved.
# Contributor(s): Paul Beach, Jerry Adair, Bill Oliver
#
# Compiler settings for HPUX using aCC
# Notes:
# Firebird requires the HP-UX Atomic APIs ("AtomicAPI" bundle), released as an
# optional Software Pack (SPK) for HP-UX 11i v2 or v3.
# Before attempting the HPUX build, you must export necessary
# CFLAGS and CXXFLAGS to be picked up by the configure process and
# subsequent build. Make sure CC is in the path!
#
# for typical 64-bit build
# export CC=cc
# export CXX=CC
# export CFLAGS="+DD64"
# export CXXFLAGS=$CFLAGS
# Useful predefined macros from HP aCC
# __HP_aCC, identifies the HP aC++ compiler driver version
# __HP_cc, identifies the HP C compiler driver version
# _ILP32, defined for +DD32
# _LP64, defined for +DD64
# __hpux
# __hppa, defined for PA RISC
# __ia64, defined for IA-64
# __unix
# Common flags shared by production and debug build
# Suppress these warnings for now
# 2830, function "operator new..." has no corresponding operator delete
# 4232, conversion to a more strictly aligned type may cause misaligned access
# 749, cast from/to is 'reinterpret_cast'. This operation is non-portable
# 863, result of operation is widened
# 1042, subscript out of range
# 2175, subscript out of range (again)
# 2111, statement is unreachable (used to suppress g++ warnings)
# 2161, unrecognized pragma (mostly FB_COMPILER_MESSAGE)
# 2177, function declared but never referenced
COMMON_FLAGS= -DHP11 -DHPUX -D_XOPEN_SOURCE_EXTENDED -AA -ext \
+W2830,4232,749,863,1042,2175,2111,2161,2177
# Flags specific to production or debug build...
# -z, disallow dereferencing of null pointers at runtime
# -DLIBC_CALLS_NEW, Firebird macro, used when C++ runtime can call
# redefined by us operator new before initialization of global variables.
# Required on IA-64, but evidently only by debug build!?
ifeq ($(shell uname -m),ia64)
# ...for IA-64
PROD_FLAGS= -DNDEBUG +O2 +Onolimit +Ofltacc=strict +Ofenvaccess \
$(COMMON_FLAGS)
DEV_FLAGS= -g -z -DLIBC_CALLS_NEW \
$(COMMON_FLAGS)
else
# ...for PA-RISC
# PA-RISC requires old version of aCC, 3.85, with different flags
PROD_FLAGS= -DNDEBUG +O2 +Onolimit +Olibcalls +Onomoveflops \
$(COMMON_FLAGS)
DEV_FLAGS= -g -z \
$(COMMON_FLAGS)
endif
OS_ServerFiles=inet_server.cpp
# link options for HP-UX linker, /usr/bin/ld
LINK_OPTS= $(LDFLAGS) $(THR_FLAGS) $(UNDEF_FLAGS) $(LIB_PATH_OPTS) -AA -ext -latomic
LINK_LIBS+= -latomic $(ICU_LIBS)
LIB_LINK_OPTIONS= $(LDFLAGS) $(THR_FLAGS) -b -ext -latomic
LINK_UDF_LIBS+=$(ICU_LIBS)
# From original HPUX prefix file
LIB_LINK_RPATH= -Wl,+b,$(1)
LIB_LINK_SONAME= -Wl,+h,$(1)
LIB_LINK_MAPFILE= -Wl,-c,
LINK_FBINTL_SYMBOLS= $(LIB_LINK_MAPFILE)$(ROOT)/builds/posix/fbintl.hpux.vers
LINK_IBUTIL_SYMBOLS= $(LIB_LINK_MAPFILE)$(ROOT)/builds/posix/ib_util.hpux.vers
LINK_FIREBIRD_SYMBOLS= $(LIB_LINK_MAPFILE)$(ROOT)/builds/posix/firebird.hpux.vers
LINK_TRACE_SYMBOLS = $(LIB_LINK_MAPFILE)$(ROOT)/builds/posix/fbtrace.hpux.vers
EMBED_UTIL_TARGETS=gstat gds_relay gsec nbackup fbguard fb_lock_print fbsvcmgr
CLIENT_UTIL_TARGETS=gds_relay gstat gsec nbackup fbguard fbmgr_bin fb_lock_print fbsvcmgr
Physical_IO_Module=unix.cpp
UNDEF_PLATFORM=