blob: 046d0c19fe9c7f17fbe03a5cac6bd1c15cf01082 [file] [log] [blame]
#
# Licensed to the Apache Software Foundation (ASF) under one or more
# contributor license agreements. See the NOTICE file distributed with
# this work for additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version 2.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.apache.org/licenses/LICENSE-2.0
#
# Unless required by applicable law or agreed to in writing, software
# distributed under the License is distributed on an "AS IS" BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License for the specific language governing permissions and
# limitations under the License.
#
#
#
# $Id: Makefile.incl 571127 2007-08-30 12:09:58Z amassari $
#
###################################################################
# IMPORTANT NOTE #
###################################################################
# Before you try to run the Makefile, make sure you have set #
# the following environment variables properly. #
# #
# export XERCESCROOT=<the directory where you installed XRECES-C> #
# #
# In case you intend to use either the ICU transcoder or the #
# ICU message loader, you must set ICUROOT correctly. #
# export ICUROOT=<the directory where you installed ICU> #
# #
# For netaccessor, if you intend to use libwww, then you must #
# also set another environment variable called LIBWWWROOT #
# export LIBWWWROOT=<the directory where you installed libwww> #
###################################################################
###################################################################
# SPECIAL INSTRUCTIONS FOR OS/390 BATCH MODE #
###################################################################
# If you are going to do the OS390BATCH build, make sure you have #
# the OS390BATCH environment variable set. #
# #
# export OS390BATCH=1 #
# #
# Also, #
# #
# export LOADMOD=USERID.LOAD #
# export LOADEXP=USERID.EXP #
# #
# to specify your LOADMOD and the definition sidedeck dataset. #
###################################################################
ALL: all
XML_BUILD_OPTIONS = ${CXXFLAGS}
XML_LIB_DIR = $(XERCESCROOT)/lib
XML_INC_DIR = $(XERCESCROOT)/include/xercesc
XML_OBJ_DIR = ${XERCESCROOT}/obj/${PLATFORM}
XML_OBJ_DEPDOM_DIR = ${XERCESCROOT}/obj/${PLATFORM}/depdom
XML_OBJ = ${XERCESCROOT}/obj
XML_INCL = -I$(XERCESCROOT)/include
ifeq (${SYSOVR},OS400)
PLATFORM = OS400
endif
TO = o
RM2 = rm -f
MV = mv
## Compiler switch to embed a library name
## default value empty
LD_SONAME =
LD_SODEPDOM =
# Default AR and RANLIB setting if we are building static libraries.
#
ifeq (${LIBTYPE},static)
AR = ar
ARFLAGS = -rc
RANLIB = ranlib
STLIBSUFFIX = .a
endif
####################### PLATFORM DEPENDENCIES #####################
#=============== SOLARIS SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, SOLARIS)
ifeq (${GXX}, yes)
PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
endif
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS += -fPIC
MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib \
-licuuc -licudata -lm -lgen
else
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib \
-lm -lgen
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib \
-licuuc -licudata -lXercesMessages -lm -lgen
endif
## Compiler switch to embed a library name
LD_SONAME = -Wl,-h,${SO_NAME}
LD_SODEPDOM = -Wl,-h,${SO_DEPDOM}
else
PLATFORM_COMPILE_OPTIONS = -xs -ptr$(XML_OBJ_DIR) -features=rtti \
-D${PLATFORM}
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -mt -D_REENTRANT
ALLLIBS = -mt
endif
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS += -KPIC
MAKE_SHARED = ${CXX} -D${PLATFORM} -G -ptr$(XML_OBJ_DIR) ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -G ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS += ${LIBS} -licuuc -licudata
else
ALLLIBS += ${LIBS}
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS += ${LIBS} -licuuc -licudata -lXercesMessages
endif
## Compiler switch to embed a library name
LD_SONAME = -h ${SO_NAME}
LD_SODEPDOM = -h ${SO_DEPDOM}
endif
SHLIBSUFFIX=.so
ICUSHLIBSUFFIX=.so
endif
#=============== UNIXWARE SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, UNIXWARE)
ifeq (${GXX}, yes)
PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
endif
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS += -fPIC
MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib \
-licuuc -licudata -lm -lw -lgen
else
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib \
-lm -lw -lgen
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib \
-licuuc -licudata -lXercesMessages -lm -lw -lgen
endif
else
PLATFORM_COMPILE_OPTIONS = -xs -D${PLATFORM}
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -mt -D_REENTRANT
endif
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS += -KPIC
MAKE_SHARED = ${CXX} -D${PLATFORM} -G ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -G ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -L/usr/local/lib -L/usr/ccs/lib \
-licuuc -licudata -lm -lw -lC -lc -lgen
else
ALLLIBS = ${LIBS} -L/usr/local/lib -L/usr/ccs/lib \
-lm -lw -lC -lc -lgen
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -L/usr/local/lib -L/usr/ccs/lib \
-licuuc -licudata -lXercesMessages -lm -lw -lC -lc -lgen
endif
endif
SHLIBSUFFIX=.so
ICUSHLIBSUFFIX=.so
endif
#=============== OPENSERVER SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, OPENSERVER)
ifeq (${GXX}, yes)
COMMON_COMPILE_OPTIONS = -D${PLATFORM}
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
endif
ifeq (${LIBTYPE},shared)
COMMON_COMPILE_OPTIONS += -fPIC
MAKE_SHARED = ${CXX} -D${PLATFORM} -G ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -G ${LDFLAGS}
EXTRA_LINK_OPTIONS = -Wl,-h,${LIBNAME}${VER}${SHLIBSUFFIX}
DEPDOM_LINK_OPTIONS = -Wl,-h,${LIBDEPDOM}${VER}${SHLIBSUFFIX}
endif
else
PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -belf
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS += -KPIC
MAKE_SHARED = ${CXX} -D${PLATFORM} -belf -G ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -belf -G ${LDFLAGS}
endif
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -licuuc -licudata
else
ALLLIBS = ${LIBS}
endif
SHLIBSUFFIX=.so
ICUSHLIBSUFFIX=.so
endif
#================= PTX SPECIFIC OPTIONS ===========================
ifeq (${PLATFORM}, PTX)
PLATFORM_CPP_COMPILER = c++
PLATFORM_C_COMPILER = cc
PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -Kthread
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -L${ICUROOT}/lib -lm -lgen -licuuc
else
ALLLIBS = ${LIBS} -lm -lgen
endif
OBJ_OUT=${ALL_OBJECTS_DIR}/
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS += -KPIC
MAKE_SHARED = ${PLATFORM_CPP_COMPILER} -D${PLATFORM} -G ${LDFLAGS}
MAKE_SHARED_C = ${PLATFORM_C_COMPILER} -D${PLATFORM} -G ${LDFLAGS}
EXTRA_LINK_OPTIONS = -lm -lgen
DEPDOM_LINK_OPTIONS = -lm -lgen
endif
SHLIBSUFFIX=.so
ICUSHLIBSUFFIX=.so
endif
#================= AIX SPECIFIC OPTIONS ===========================
ifeq (${PLATFORM}, AIX)
ifeq (${GXX}, yes)
PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
endif
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS += -fPIC
MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib \
-licuuc -licudata
else
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib \
-licuuc -licudata -lXercesMessages
endif
else
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib -licuuc -licudata
else
ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib -licuuc -licudata -lXercesMessages
endif
ifeq (${CXXVER}, v5compat)
PLATFORM_COMPILE_OPTIONS = -qnotempinc -qnamemangling=v5
else
PLATFORM_COMPILE_OPTIONS = -qnotempinc -qnamemangling=ansi
endif
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -D_THREAD_SAFE
endif
ifeq (${LIBTYPE},shared)
ifeq (${BITSTOBUILD}, 64)
MAKE_SHARED = makeC++SharedLib_r -p 5000 ${LDFLAGS} -X64
MAKE_SHARED_C = makeC++SharedLib_r -p 5000 ${LDFLAGS} -X64
else
MAKE_SHARED = makeC++SharedLib_r -p 5000 ${LDFLAGS}
MAKE_SHARED_C = makeC++SharedLib_r -p 5000 ${LDFLAGS}
endif
EXTRA_LINK_OPTIONS = -bmap:$(XML_OBJ)/${LIBNAME}${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}.map
DEPDOM_LINK_OPTIONS = -bmap:$(XML_OBJ)/${LIBDEPDOM}${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}.map
endif
endif
SHLIBSUFFIX=.a
ICUSHLIBSUFFIX=.a
## Compiler switch to embed a library name
LD_SONAME =
LD_SODEPDOM =
ifeq (${LIBTYPE},static)
ifeq (${BITSTOBUILD}, 64)
ARFLAGS += -X64
endif
endif
endif
#================= OS400 SPECIFIC OPTIONS ==========================
ifeq (${PLATFORM}, OS400)
ifeq (${SYSOVR},OS400)
MYCC = /afs/rchland.ibm.com/usr2/phkramer/bin/tvcc.pl
else
MYCC = icc
endif
CXX = $(MYCC)
CC = $(MYCC)
JUSTCC = $(MYCC)
XML_INCL += -I${ICUROOT}/include
ifeq (${SYSOVR},OS400)
PLATFORM_COMPILE_OPTIONS = -qnotempinc
ifeq (${LIBTYPE},shared)
MAKE_SHARED = makeC++SharedLib_r -p 5000 ${LDFLAGS}
MAKE_SHARED_C = makeC++SharedLib_r -p 5000 ${LDFLAGS}
endif
TO = qwobj
SHLIBSUFFIX=.a
ICUSHLIBSUFFIX=.a
else
PLATFORM_COMPILE_OPTIONS = -qnotempinc -D${PLATFORM}
PLATFORM_C_COMPILE_OPTIONS = -v -D${PLATFORM}
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -D_MULTI_THREADED
PLATFORM_C_COMPILE_OPTIONS += -D_MULTI_THREADED
endif
ifeq (${LIBTYPE},shared)
MAKE_SHARED = ld -v ${LDFLAGS}
MAKE_SHARED_C = ld -v ${LDFLAGS}
endif
SHLIBSUFFIX=.o
ICUSHLIBSUFFIX=.o
endif
ifeq (${TRANSCODER}, ICU)
ifeq (${SYSOVR},OS400)
EXTRA_LINK_OPTIONS = -licuuc -licudata -lbsd
DEPDOM_LINK_OPTIONS = -licuuc -licudata -lbsd
else
EXTRA_LINK_OPTIONS = -lQZUUC
DEPDOM_LINK_OPTIONS = -lQZUUC
endif
endif
EXTRA_COMPILE_OPTIONS = -I. -g
EXTRA_LINK_OPTIONS = -q OPTION='*DUPVAR *DUPPROC'
DEPDOM_LINK_OPTIONS = -q OPTION='*DUPVAR *DUPPROC'
RM2 = -del
MV = mv
endif
#=============== BEOS SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, BEOS)
ifneq (${THREADS},none)
$(error Xerces-C++ on BE OS can only be built as a single-threaded library)
endif
PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -DAPP_NO_THREADS
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS += -fPIC
MAKE_SHARED = ${CXX} -D${PLATFORM} -nostart -fPIC ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -nostart -fPIC ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -L/boot/develop/lib/x86 -L/boot/home/config/lib -lbe -licuuc -licudata
else
ALLLIBS = ${LIBS} -L/boot/develop/lib/x86 -L/boot/home/config/lib -lbe
endif
EXTRA_LINK_OPTIONS = -Xlinker -Map -Xlinker $(XML_OBJ)/${SO_NAME}.map
DEPDOM_LINK_OPTIONS = -Xlinker -Map -Xlinker $(XML_OBJ)/${SO_DEPDOM}.map
SHLIBSUFFIX=.so
ICUSHLIBSUFFIX=.so
## Compiler switch to embed a library name
LD_SONAME = -Wl,-soname,${SO_NAME}
LD_SODEPDOM = -Wl,-soname,${SO_DEPDOM}
endif
#=============== INTERIX SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, INTERIX)
PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -D_ALL_SOURCE
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
endif
ifeq (${LIBTYPE},shared)
MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
endif
ALLLIBS = ${LIBS}
SHLIBSUFFIX=.so
endif
#=============== MINGW SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, MINGW)
PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -fexceptions -D__GNUWIN32__ -DWIN32 -D_WINDOWS -DNDEBUG -DPLATFORM_WIN32
ifeq (${LIBTYPE},shared)
MAKE_SHARED = dllwrap --export-all-symbols --driver-name ${CXX} ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} ${LDFLAGS}
else
PLATFORM_COMPILE_OPTIONS += -DXML_LIBRARY # switch off import/export
endif
ALLLIBS = ${LIBS}
SHLIBSUFFIX=.dll
endif
#=============== LINUX SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, LINUX)
ifneq ($(filter xlC%,${CXX}),)
PLATFORM_COMPILE_OPTIONS = -qnotempinc -D${PLATFORM}
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
endif
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS += -qpic
MAKE_SHARED = ${CXX} -D${PLATFORM} -qpic -qmkshrobj -G ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -qpic -qmkshrobj -G ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -licuuc -licudata
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -licuuc -licudata -lXercesMessages
endif
## Compiler switch to embed a library name
LD_SONAME = -Wl,-soname,${SO_NAME}
LD_SODEPDOM = -Wl,-soname,${SO_DEPDOM}
else
#non xlC_r
#
PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
endif
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS += -fPIC
MAKE_SHARED = ${CXX} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
endif
ifeq (${BITSTOBUILD}, 64)
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib64 -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata
else
ALLLIBS = ${LIBS} -L/usr/lib64 -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib64 -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata -lXercesMessages
endif
else
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata
else
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata -lXercesMessages
endif
endif
EXTRA_LINK_OPTIONS = -Xlinker -Map -Xlinker $(XML_OBJ)/${SO_NAME}.map
DEPDOM_LINK_OPTIONS = -Xlinker -Map -Xlinker $(XML_OBJ)/${SO_DEPDOM}.map
## Compiler switch to embed a library name
LD_SONAME = -Wl,-soname,${SO_NAME}
LD_SODEPDOM = -Wl,-soname,${SO_DEPDOM}
endif
SHLIBSUFFIX=.so
ICUSHLIBSUFFIX=.so
endif
#=============== QNX SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, QNX)
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS = -shared
MAKE_SHARED = ${CXX} -shared ${LDFLAGS}
MAKE_SHARED_C = ${CC} -shared ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -L/usr/local/lib -licuuc -licudata
else
ALLLIBS = ${LIBS}
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -L/usr/local/lib -licuuc -licudata -lXercesMessages
endif
EXTRA_LINK_OPTIONS =
DEPDOM_LINK_OPTIONS =
SHLIBSUFFIX=.so
ICUSHLIBSUFFIX=.so
## Compiler switch to embed a library name
LD_SONAME = -Wl,-soname,${SO_NAME}
LD_SODEPDOM = -Wl,-soname,${SO_DEPDOM}
endif
#=============== FREEBSD SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, FREEBSD)
PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS += -fPIC
MAKE_SHARED = ${CXX} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
PLATFORM_COMPILE_OPTIONS += -I/usr/local/include
ALLLIBS = ${LIBS} -L/usr/local/lib -L${ICUROOT} -licuuc -licudata -lgcc
else
ALLLIBS = ${LIBS}
endif
SHLIBSUFFIX=.so
ICUSHLIBSUFFIX=.so
## Compiler switch to embed a library name
LD_SONAME = -Wl,-soname,${SO_NAME}
LD_SODEPDOM = -Wl,-soname,${SO_DEPDOM}
endif
#=============== NETBSD SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, NETBSD)
PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS += -fPIC
MAKE_SHARED = ${CXX} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
PLATFORM_COMPILE_OPTIONS += -I/usr/local/include
ALLLIBS = ${LIBS} -L/usr/local/lib -L${ICUROOT} -licuuc -licudata -lgcc
else
ALLLIBS = ${LIBS}
endif
SHLIBSUFFIX=.so
ICUSHLIBSUFFIX=.so
## Compiler switch to embed a library name
LD_SONAME = -Wl,-soname,${SO_NAME}
LD_SODEPDOM = -Wl,-soname,${SO_DEPDOM}
endif
#=============== IRIX SPECIFIC OPTIONS ============================
ifeq (${PLATFORM}, IRIX)
PLATFORM_COMPILE_OPTIONS = -LANG:pch -LANG:std -O2 \
-D${PLATFORM} -no_auto_include \
-I/usr/local/include
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
endif
ifeq (${LIBTYPE},shared)
MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -lC -licuuc -licudata
else
ALLLIBS = ${LIBS} -lC
endif
SHLIBSUFFIX=.so
ICUSHLIBSUFFIX=.so
endif
#=============== OS2 SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, OS/2)
PLATFORM_LIBRARIES= CPPOM30.LIB os2386.lib mmpm2.lib
PLATFORM_COMPILE_OPTIONS = /C+ /Gd- /Ge- /Gm+ /Gs- /Re /J+ /Ms /Sm /Sn /Ss+
MAKE_SHARED = ilink /nofree ${LDFLAGS}
MAKE_SHARED_C = ilink /nofree ${LDFLAGS}
EXTRA_LINK_OPTIONS = /map /nod /noe /noi /packcode /packdata /exepack /align:4
DEPDOM_LINK_OPTIONS = /map /nod /noe /noi /packcode /packdata /exepack /align:4
SHLIBSUFFIX= .dll
ICUSHLIBSUFFIX= .dll
ifneq (${DEBUG}, 1)
XML_BUILD_OPTIONS += -2
endif
endif
#================= HP SPECIFIC OPTIONS ===========================
ifeq (${PLATFORM}, HPUX)
OSVERDEFINE=HPUX11
ifeq (${OSVER}, HPUX10)
OSVERDEFINE=HPUX10
endif
ifeq (${GXX}, yes)
PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
endif
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS += -fPIC
MAKE_SHARED = ${CXX} -D${PLATFORM} -fPIC -shared ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -fPIC -shared ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib \
-licuuc -licudata
else
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib \
-licuuc -licudata -lXercesMessages
endif
else
ifeq (${CXX}, aCC)
ifeq (${CXXVER}, aCC05)
PLATFORM_COMPILE_OPTIONS = -D_HP_UX -DHPaCC -D${OSVERDEFINE}
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -mt
endif
else
PLATFORM_COMPILE_OPTIONS = -D_HP_UX -DHPaCC -D${OSVERDEFINE} +DAportable
endif
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS += +Z
MAKE_SHARED = ${CXX} ${PLATFORM_COMPILE_OPTIONS} -D${PLATFORM} ${LDFLAGS}
MAKE_SHARED_C = ${CC} ${PLATFORM_COMPILE_OPTIONS} -D${PLATFORM} ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -licuuc -licudata
else
ALLLIBS = ${LIBS}
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -licuuc -licudata -lXercesMessages
endif
ifeq (${CXXVER}, aCC05)
EXTRA_LINK_OPTIONS = -b -Wl,+s -Wl,+b,.
DEPDOM_LINK_OPTIONS = -b -Wl,+s -Wl,+b,.
ifneq (${THREADS},none)
EXTRA_LINK_OPTIONS += -mt
DEPDOM_LINK_OPTIONS += -mt
endif
else
EXTRA_LINK_OPTIONS = -b -Wl,+s -Wl,+b,.
DEPDOM_LINK_OPTIONS = -b -Wl,+s -Wl,+b,.
endif
else
TEMPLATESREPOSITORY = ${XML_OBJ_DIR}/ptrepository
COMMON_COMPILE_OPTIONS = -D_HP_UX -DXERCES_TMPLSINC \
-D${OSVERDEFINE} +DAportable +eh -Z +a1 +d
ifeq ($(MODULE), dom)
PLATFORM_COMPILE_OPTIONS = -DDOM_PROJ $(COMMON_COMPILE_OPTIONS)
else
PLATFORM_COMPILE_OPTIONS = $(COMMON_COMPILE_OPTIONS) -ptr${TEMPLATESREPOSITORY}
endif
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS += +Z
MAKE_SHARED = $(CXX) $(PLATFORM_COMPILE_OPTIONS) $(XML_INCL) ${LDFLAGS}
MAKE_SHARED_C = $(CC) $(PLATFORM_COMPILE_OPTIONS) $(XML_INCL) ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -licuuc -licudata
else
ALLLIBS = ${LIBS}
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -licuuc -licudata -lXercesMessages
endif
EXTRA_LINK_OPTIONS = -b -Wl,+s -Wl,+b,. -Wl,-a,shared
DEPDOM_LINK_OPTIONS = -b -Wl,+s -Wl,+b,. -Wl,-a,shared
endif
endif # GXX
# HP-UX on IA64 uses .so and on PA-RISC -- .sl.
#
ifeq (${ARCH},ia64)
SHLIBSUFFIX=.so
ICUSHLIBSUFFIX=.so
else
SHLIBSUFFIX=.sl
ICUSHLIBSUFFIX=.sl
endif
## Compiler switch to embed a library name
LD_SONAME = -Wl,+h,${SO_NAME}
LD_SODEPDOM = -Wl,+h,${SO_DEPDOM}
endif
#================ OS/390 SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, OS390)
PLATFORM_CPP_COMPILER = _CXX_CXXSUFFIX="cpp" c++
PLATFORM_C_COMPILER = _CXX_CXXSUFFIX="cpp" cc
PLATFORM_LIBRARIES=
## OS390BATCH
ifeq (${OS390BATCH},1)
PLATFORM_COMPILE_OPTIONS = -2 -Wc,dll -W0,"langlvl(extended)" -Wc,"TMPLPARSE(NO)" -Wc,"float(IEEE)" -D${PLATFORM} -D_XOPEN_SOURCE_EXTENDED -DXML_ALLOW_NELWS -I${ICUROOT}/include -DOS390BATCH
else
PLATFORM_COMPILE_OPTIONS = -2 -Wc,dll -W0,"langlvl(extended)" -Wc,"TMPLPARSE(NO)" -Wc,"float(IEEE)" -D${PLATFORM} -D_XOPEN_SOURCE_EXTENDED -DXML_ALLOW_NELWS -I${ICUROOT}/include
endif
MAKE_SHARED = ${PLATFORM_CPP_COMPILER} -D${PLATFORM} -W l,dll ${LDFLAGS}
MAKE_SHARED_C = ${PLATFORM_C_COMPILER} -D${PLATFORM} -W l,dll ${LDFLAGS}
ifeq (${TRANSCODER}, ICU)
## OS390BATCH
ifeq (${OS390BATCH},1)
ALLLIBS = "//'${LOADEXP}(IXMI32UC)'"
else
ALLLIBS = ${ICUROOT}/lib/libicuuc32.0.x
endif
else
ifeq (${TRANSCODER}, Uniconv390)
## OS390BATCH
ifeq (${OS390BATCH},1)
ALLLIBS = "//'${LOADEXP}(IXMI32UC)'"
else
ALLLIBS = ${ICUROOT}/lib/libicuuc32.0.x
endif
else
ALLLIBS =
endif
endif
EXTRA_LINK_OPTIONS =
DEPDOM_LINK_OPTIONS =
SHLIBSUFFIX=.dll
ICUSHLIBSUFFIX=.dll
OS390SIDEDECK=.x
endif
#=============== TRU64 SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, TRU64)
SHLIBSUFFIX=.so
ICUSHLIBSUFFIX=.so
ifeq (${GXX}, yes)
PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
endif
ifeq (${LIBTYPE},shared)
PLATFORM_COMPILE_OPTIONS += -fPIC
MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -licuuc -licudata -lrt
else
ALLLIBS = ${LIBS} -lrt
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -licuuc -licudata -lXercesMessages -lrt
endif
else
PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -ptr ${XERCESCROOT}/.cxx_repository
ifeq (${LIBTYPE},shared)
MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
MAKE_SHARED = ${CXX} -D${PLATFORM} -shared -ptr ${XERCESCROOT}/.cxx_repository ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata -lc -lrt
else
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -lc -lrt
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib \
-licuuc -licudata -lXercesMessages -lc -lrt
endif
endif
endif
#=============== MacOS SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, MACOSX)
PLATFORM_LIBRARIES = -framework CoreServices
PLATFORM_COMPILE_OPTIONS = -D${PLATFORM}
ifneq (${THREADS},none)
PLATFORM_COMPILE_OPTIONS += -D_REENTRANT
endif
ifeq (${LIBTYPE},shared)
MAKE_SHARED = ${CXX} -D${PLATFORM} -dynamiclib ${LDFLAGS}
MAKE_SHARED_C = ${CC} -D${PLATFORM} -dynamiclib ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licuuc -licudata
else
ALLLIBS = ${LIBS} -L/usr/lib
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib \
-licuuc -licudata -lXercesMessages
endif
SHLIBSUFFIX=.dylib
ICUSHLIBSUFFIX=.dylib
LD_SONAME = -install_name ${PREFIX}/lib/${SO_NAME}
LD_SODEPDOM = -install_name ${PREFIX}/lib/${SO_DEPDOM}
endif
#=============== CygWin SPECIFIC OPTIONS =========================
ifeq (${PLATFORM}, CYGWIN)
PLATFORM_COMPILE_OPTIONS = \
-D__${PLATFORM}__ \
-I/usr/include \
-I/usr/include/w32api
ifeq (${LIBTYPE},shared)
MAKE_SHARED = ${CXX} -shared ${LDFLAGS}
MAKE_SHARED_C = ${CC} -shared ${LDFLAGS}
endif
ifeq (${TRANSCODER}, ICU)
ALLLIBS = ${LIBS} -licuuc -licudata
else
ALLLIBS = ${LIBS} -L/usr/lib
endif
ifeq (${MESSAGELOADER}, ICU)
ALLLIBS = ${LIBS} -licuuc -licudata -lXercesMessages
endif
EXTRA_LINK_OPTIONS = \
-Xlinker --warn-once \
-Xlinker -Map \
-Xlinker $(XML_LIB_DIR)/${LIBNAME}${SO_TARGET_VERSION}.map \
-Xlinker --output-def \
-Xlinker $(XML_LIB_DIR)/${LIBNAME}${SO_TARGET_VERSION}.def \
-Xlinker --out-implib \
-Xlinker $(XML_LIB_DIR)/${LIBNAME}${SO_TARGET_VERSION}.dll.a
DEPDOM_LINK_OPTIONS = \
-Xlinker --warn-once \
-Xlinker -Map \
-Xlinker $(XML_LIB_DIR)/${LIBDEPDOM}${SO_TARGET_VERSION}.map \
-Xlinker --output-def \
-Xlinker $(XML_LIB_DIR)/${LIBDEPDOM}${SO_TARGET_VERSION}.def \
-Xlinker --out-implib \
-Xlinker $(XML_LIB_DIR)/${LIBDEPDOM}${SO_TARGET_VERSION}.dll.a
SHLIBSUFFIX=.dll
ICUSHLIBSUFFIX=.dll
endif
###################### LIBNAME ####################################
#
#
ifneq (${PLATFORM}, OS400)
ifeq (${PLATFORM}, CYGWIN)
CYGNAME=cygxerces-c
CYGDEPDOM=cygxerces-depdom
endif
LIBNAME=libxerces-c
LINK_LIBNAME=xerces-c
LIBDEPDOM=libxerces-depdom
else
LIBNAME=libxercesc
LINK_LIBNAME=xercesc
LIBDEPDOM=libxercesdepdom
endif
###################### A_NAME ####################################
#
#
ifeq (${LIBTYPE},static)
A_NAME = ${LIBNAME}${STLIBSUFFIX}
A_DEPDOM = ${LIBDEPDOM}${STLIBSUFFIX}
FQ_A_NAME = ${XML_LIB_DIR}/${A_NAME}
FQ_A_DEPDOM = ${XML_LIB_DIR}/$(A_DEPDOM)
RESLIB_REAL_NAME = ${RESLIBNAME}${STLIBSUFFIX}
FQ_RESLIB_REAL_NAME=${XML_LIB_DIR}/${RESLIB_REAL_NAME}
else # dynamic
###################### SO_NAME ####################################
#
#
ifeq (${PLATFORM}, AIX)
#
# LINK_NAME=libxerces-c.so
# SO_NAME =libxerces-c20.so
# REAL_NAME=libxerces-c20.0.so
#
LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
SO_NAME =${LIBNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX}
REAL_NAME=${LIBNAME}${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}${SHLIBSUFFIX}
LINK_DEPDOM=${LIBDEPDOM}${SHLIBSUFFIX}
SO_DEPDOM =${LIBDEPDOM}${SO_TARGET_VERSION}${SHLIBSUFFIX}
REAL_DEPDOM=${LIBDEPDOM}${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}${SHLIBSUFFIX}
RESLIB_LINK_NAME=${RESLIBNAME}${SHLIBSUFFIX}
RESLIB_SO_NAME =${RESLIBNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX}
RESLIB_REAL_NAME=${RESLIBNAME}${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}${SHLIBSUFFIX}
endif
ifeq (${PLATFORM}, OS390)
#
# LINK_NAME=libxerces-c.dll
# SO_NAME =libxerces-c20.dll
# REAL_NAME=libxerces-c2_0_0.dll
#
LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
SO_NAME =${LIBNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX}
REAL_NAME=${LIBNAME}${VER}${SHLIBSUFFIX}
LINK_DEPDOM=${LIBDEPDOM}${SHLIBSUFFIX}
SO_DEPDOM =${LIBDEPDOM}${SO_TARGET_VERSION}${SHLIBSUFFIX}
REAL_DEPDOM=${LIBDEPDOM}${VER}${SHLIBSUFFIX}
RESLIB_LINK_NAME=${RESLIBNAME}${SHLIBSUFFIX}
RESLIB_SO_NAME =${RESLIBNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX}
RESLIB_REAL_NAME=${RESLIBNAME}${VER}${SHLIBSUFFIX}
endif
ifeq (${PLATFORM}, CYGWIN)
#
# LINK_NAME=libxerces-c.dll
# SO_NAME =cygxerces-c20.dll
# REAL_NAME=libxerces-c2_0_0.dll
#
LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
SO_NAME =${CYGNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX}
REAL_NAME=${LIBNAME}${VER}${SHLIBSUFFIX}
LINK_DEPDOM=${LIBDEPDOM}${SHLIBSUFFIX}
SO_DEPDOM =${CYGDEPDOM}${SO_TARGET_VERSION}${SHLIBSUFFIX}
REAL_DEPDOM=${LIBDEPDOM}${VER}${SHLIBSUFFIX}
endif
ifeq (${PLATFORM}, MINGW)
#
# LINK_NAME=libxerces-c.dll
# SO_NAME =libxerces-c20.dll
# REAL_NAME=libxerces-c2_0_0.dll
#
LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
SO_NAME =${LIBNAME}${SO_TARGET_VERSION}${SHLIBSUFFIX}
REAL_NAME=${LIBNAME}${VER}${SHLIBSUFFIX}
LINK_DEPDOM=${LIBDEPDOM}${SHLIBSUFFIX}
SO_DEPDOM =${LIBDEPDOM}${SO_TARGET_VERSION}${SHLIBSUFFIX}
REAL_DEPDOM=${LIBDEPDOM}${VER}${SHLIBSUFFIX}
endif
ifeq (${PLATFORM}, MACOSX)
#
# LINK_NAME=libxerces-c.{suffix}
# SO_NAME =libxerces-c.20.{suffix}
# REAL_NAME=libxerces-c.20.0.{suffix}
#
LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
SO_NAME =${LIBNAME}.${SO_TARGET_VERSION}${SHLIBSUFFIX}
REAL_NAME=${LIBNAME}.${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}${SHLIBSUFFIX}
LINK_DEPDOM=${LIBDEPDOM}${SHLIBSUFFIX}
SO_DEPDOM =${LIBDEPDOM}.${SO_TARGET_VERSION}${SHLIBSUFFIX}
REAL_DEPDOM=${LIBDEPDOM}.${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}${SHLIBSUFFIX}
endif
ifeq (${PLATFORM}, QNX)
#
# LINK_NAME=libxerces-c.{suffix}
# SO_NAME =libxerces-c.20.{suffix}
# REAL_NAME=libxerces-c.20.{suffix}
#
LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
SO_NAME =${LIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}
REAL_NAME=$(SO_NAME)
LINK_DEPDOM=${LIBDEPDOM}${SHLIBSUFFIX}
SO_DEPDOM =${LIBDEPDOM}${SHLIBSUFFIX}.${SO_TARGET_VERSION}
REAL_DEPDOM=$(SO_DEPDOM)
endif
# Default naming (if no special cases above)
ifeq ($(SO_NAME),)
#
# LINK_NAME=libxerces-c.so
# SO_NAME =libxerces-c.so.20
# REAL_NAME=libxerces-c.so.20.0
#
LINK_NAME=${LIBNAME}${SHLIBSUFFIX}
SO_NAME =${LIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}
REAL_NAME=${LIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}
LINK_DEPDOM=${LIBDEPDOM}${SHLIBSUFFIX}
SO_DEPDOM =${LIBDEPDOM}${SHLIBSUFFIX}.${SO_TARGET_VERSION}
REAL_DEPDOM=${LIBDEPDOM}${SHLIBSUFFIX}.${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}
RESLIB_LINK_NAME=${RESLIBNAME}${SHLIBSUFFIX}
RESLIB_SO_NAME =${RESLIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}
RESLIB_REAL_NAME=${RESLIBNAME}${SHLIBSUFFIX}.${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}
endif
FQ_LINK_NAME=${XML_LIB_DIR}/${LINK_NAME}
FQ_SO_NAME =${XML_LIB_DIR}/${SO_NAME}
FQ_REAL_NAME=${XML_LIB_DIR}/${REAL_NAME}
FQ_LINK_DEPDOM=${XML_LIB_DIR}/${LINK_DEPDOM}
FQ_SO_DEPDOM =${XML_LIB_DIR}/${SO_DEPDOM}
FQ_REAL_DEPDOM=${XML_LIB_DIR}/${REAL_DEPDOM}
FQ_RESLIB_LINK_NAME=${XML_LIB_DIR}/${RESLIB_LINK_NAME}
FQ_RESLIB_SO_NAME =${XML_LIB_DIR}/${RESLIB_SO_NAME}
FQ_RESLIB_REAL_NAME=${XML_LIB_DIR}/${RESLIB_REAL_NAME}
endif # dynamic
###################### STANDARD TOOLS #############################
ifeq (${PLATFORM}, OS400)
CP = -cp -fph
else
CP = -cp -fp
endif
ifeq (${PLATFORM}, FREEBSD)
CP = -cp -p
endif
RM = -rm -f
CAT = cat
CD = cd
CC1 = ${CXX} ${PLATFORM_COMPILE_OPTIONS}
JUST_CC = ${CC} -D${PLATFORM}
ECHO = echo
CREATE_DEPENDS_FILE = echo "" > depends
MAKE_DEPEND = ${CC1} -E -xM
##################### HELPER MACROS ###############################
DEPFILE = depends
LINKLIB = $(XML_LIB_DIR)
######################### SUFFIX RULES ############################
.SUFFIXES:
.SUFFIXES: .cpp .c .$(TO) .s
# Tell make where the object files are for proper resolution of suffix rules
vpath %.$(TO) $(XML_OBJ_DIR)
.cpp.$(TO):
ifndef VERBOSE
$Qecho " (C++) $@"
else
$Qecho "$(CC1) -c $(XML_INCL) $(XML_BUILD_OPTIONS) $(XML_DEF) $(EXTRA_COMPILE_OPTIONS) -o $(XML_OBJ_DIR)/$(@) $(<)"
endif
$Q$(CC1) -c $(XML_INCL) $(XML_BUILD_OPTIONS) $(XML_DEF) $(EXTRA_COMPILE_OPTIONS) -o $(XML_OBJ_DIR)/$(@) $(<)
.c.$(TO):
$(JUST_CC) -c $(XML_INCL) $(XML_BUILD_OPTIONS) $(XML_DEF) $(EXTRA_COMPILE_OPTIONS) -o $(XML_OBJ_DIR)/$(@) $(<)
.C.$(TO):
$(JUST_CC) -c $(XML_INCL) $(XML_BUILD_OPTIONS) $(XML_DEF) $(EXTRA_COMPILE_OPTIONS) -o $(XML_OBJ_DIR)/$(@) $(<)
.s.$(TO):
$(JUST_CC) -c -o $(XML_OBJ_DIR)/$(@) $(<)