Makefile.incl
上传用户:zhuqijet
上传日期:2013-06-25
资源大小:10074k
文件大小:25k
- #
- # The Apache Software License, Version 1.1
- #
- # Copyright (c) 1999-2001 The Apache Software Foundation. All rights
- # reserved.
- #
- # Redistribution and use in source and binary forms, with or without
- # modification, are permitted provided that the following conditions
- # are met:
- #
- # 1. Redistributions of source code must retain the above copyright
- # notice, this list of conditions and the following disclaimer.
- #
- # 2. Redistributions in binary form must reproduce the above copyright
- # notice, this list of conditions and the following disclaimer in
- # the documentation and/or other materials provided with the
- # distribution.
- #
- # 3. The end-user documentation included with the redistribution,
- # if any, must include the following acknowledgment:
- # "This product includes software developed by the
- # Apache Software Foundation (http://www.apache.org/)."
- # Alternately, this acknowledgment may appear in the software itself,
- # if and wherever such third-party acknowledgments normally appear.
- #
- # 4. The names "Xerces" and "Apache Software Foundation" must
- # not be used to endorse or promote products derived from this
- # software without prior written permission. For written
- # permission, please contact apache@apache.org.
- #
- # 5. Products derived from this software may not be called "Apache",
- # nor may "Apache" appear in their name, without prior written
- # permission of the Apache Software Foundation.
- #
- # THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
- # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
- # OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
- # DISCLAIMED. IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
- # ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
- # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
- # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
- # USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
- # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
- # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
- # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
- # SUCH DAMAGE.
- # ====================================================================
- #
- # This software consists of voluntary contributions made by many
- # individuals on behalf of the Apache Software Foundation, and was
- # originally based on software copyright (c) 1999, International
- # Business Machines, Inc., http://www.ibm.com . For more information
- # on the Apache Software Foundation, please see
- # <http://www.apache.org/>.
- #
- #
- # $Id: Makefile.incl,v 1.41 2003/05/12 09:44:19 gareth Exp $
- #
- ###################################################################
- # 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 = ${XERCESCROOT}/obj
- XML_INCL = -I$(XERCESCROOT)/include
- ifeq (${SYSOVR},OS400)
- PLATFORM = OS400
- endif
- TO = o
- RM2 = rm -f
- ## Compiler switch to embed a library name
- ## default value empty
- LD_SONAME =
- ####################### PLATFORM DEPENDENCIES #####################
- #=============== SOLARIS SPECIFIC OPTIONS =========================
- ifeq (${PLATFORM}, SOLARIS)
- ifeq (${GXX}, yes)
- PLATFORM_COMPILE_OPTIONS = -fPIC -D${PLATFORM} -D_REENTRANT
- MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
- MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
- 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
- else
- PLATFORM_COMPILE_OPTIONS = -KPIC -mt -xs -ptr$(XML_OBJ_DIR)
- -features=rtti -D${PLATFORM} -D_REENTRANT
- MAKE_SHARED = ${CXX} -D${PLATFORM} -G -ptr$(XML_OBJ_DIR) ${LDFLAGS}
- MAKE_SHARED_C = ${CC} -D${PLATFORM} -G ${LDFLAGS}
- ifeq (${TRANSCODER}, ICU)
- ALLLIBS = -mt -licuuc -licudata ${LIBS}
- else
- ALLLIBS = -mt ${LIBS}
- endif
- ifeq (${MESSAGELOADER}, ICU)
- ALLLIBS = -mt -licuuc -licudata -lXercesMessages ${LIBS}
- endif
- endif
- SHLIBSUFFIX=.so
- ## Compiler switch to embed a library name
- LD_SONAME = -h ${SO_NAME}
- endif
- #=============== UNIXWARE SPECIFIC OPTIONS =========================
- ifeq (${PLATFORM}, UNIXWARE)
- ifeq (${GXX}, yes)
- PLATFORM_COMPILE_OPTIONS = -fPIC -D${PLATFORM} -D_REENTRANT
- MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
- MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
- 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
- else
- PLATFORM_COMPILE_OPTIONS = -KPIC -mt -xs
- -D${PLATFORM} -D_REENTRANT
- MAKE_SHARED = ${CXX} -D${PLATFORM} -G ${LDFLAGS}
- MAKE_SHARED_C = ${CC} -D${PLATFORM} -G ${LDFLAGS}
- 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
- endif
- SHLIBSUFFIX=.so
- endif
- #=============== OPENSERVER SPECIFIC OPTIONS =========================
- ifeq (${PLATFORM}, OPENSERVER)
- ifeq (${GXX}, yes)
- COMMON_COMPILE_OPTIONS = -D${PLATFORM} -fPIC
- ifeq (${THREADS}, none)
- PLATFORM_COMPILE_OPTIONS = ${COMMON_COMPILE_OPTIONS}
- else
- PLATFORM_COMPILE_OPTIONS = ${COMMON_COMPILE_OPTIONS} -D_REENTRANT
- endif
- MAKE_SHARED = ${CXX} -D${PLATFORM} -G ${LDFLAGS}
- MAKE_SHARED_C = ${CC} -D${PLATFORM} -G ${LDFLAGS}
- EXTRA_LINK_OPTIONS = -Wl,-h,${LIBNAME}${VER}${SHLIBSUFFIX}
- else
- PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -belf -KPIC
- MAKE_SHARED = ${CXX} -D${PLATFORM} -belf -G ${LDFLAGS}
- MAKE_SHARED_C = ${CC} -D${PLATFORM} -belf -G ${LDFLAGS}
- endif
- ifeq (${TRANSCODER}, ICU)
- ALLLIBS = ${LIBS} -licu-uc -licudata
- else
- ALLLIBS = ${LIBS}
- endif
- SHLIBSUFFIX=.so
- endif
- #================= PTX SPECIFIC OPTIONS ===========================
- ifeq (${PLATFORM}, PTX)
- PLATFORM_CPP_COMPILER = c++
- PLATFORM_C_COMPILER = cc
- ifeq (${TRANSCODER}, ICU)
- PLATFORM_COMPILE_OPTIONS = -KPIC -Kthread -D${PLATFORM}
- ALLLIBS = ${LIBS} -L${ICUROOT}/lib -lm -lgen -licuuc
- else
- PLATFORM_COMPILE_OPTIONS = -KPIC -Kthread -D${PLATFORM}
- ALLLIBS = ${LIBS} -lm -lgen
- endif
- OBJ_OUT=${ALL_OBJECTS_DIR}/
- MAKE_SHARED = ${PLATFORM_CPP_COMPILER} -D${PLATFORM} -G ${LDFLAGS}
- MAKE_SHARED_C = ${PLATFORM_C_COMPILER} -D${PLATFORM} -G ${LDFLAGS}
- EXTRA_LINK_OPTIONS = -lm -lgen
- SHLIBSUFFIX=.so
- endif
- #================= AIX SPECIFIC OPTIONS ===========================
- ifeq (${PLATFORM}, AIX)
- #PLATFORM_CPP_COMPILER = xlC_r
- #PLATFORM_C_COMPILER = xlc_r
- #ifdef ICUROOT
- # ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib -L${ICUROOT}/lib -licuuc -licudata -lbsd
- #else
- # ALLLIBS = -L/usr/lpp/xlC/lib -lbsd
- #endif
- ifeq (${TRANSCODER}, ICU)
- ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib -licuuc24 -licudata24
- else
- ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib
- endif
- ifeq (${MESSAGELOADER}, ICU)
- ALLLIBS = ${LIBS} -L/usr/lpp/xlC/lib -licuuc24 -licudata24 -lXercesMessages
- endif
- PLATFORM_COMPILE_OPTIONS = -qnotempinc -D_THREAD_SAFE
- ifeq (${BITSTOBUILD}, 64)
- MAKE_SHARED = makeC++SharedLib_r -p 5000 -brtl ${LDFLAGS} -X64
- MAKE_SHARED_C = makeC++SharedLib_r -p 5000 -brtl ${LDFLAGS} -X64
- else
- MAKE_SHARED = makeC++SharedLib_r -p 5000 -brtl ${LDFLAGS}
- MAKE_SHARED_C = makeC++SharedLib_r -p 5000 -brtl ${LDFLAGS}
- endif
- EXTRA_LINK_OPTIONS = -bmap:$(XML_OBJ)/${LIBNAME}${SO_TARGET_VERSION}.${SO_TARGET_VERSION_MAJOR}.map
- SHLIBSUFFIX=.so
- ## Compiler switch to embed a library name
- LD_SONAME =
- 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
- MAKE_SHARED = makeC++SharedLib_r -p 5000 ${LDFLAGS}
- MAKE_SHARED_C = makeC++SharedLib_r -p 5000 ${LDFLAGS}
- TO = qwobj
- SHLIBSUFFIX=.a
- else
- PLATFORM_COMPILE_OPTIONS = -qnotempinc -D_MULTI_THREADED -D${PLATFORM}
- PLATFORM_C_COMPILE_OPTIONS = -v -D_MULTI_THREADED -D${PLATFORM}
- MAKE_SHARED = ld -v ${LDFLAGS}
- MAKE_SHARED_C = ld -v ${LDFLAGS}
- SHLIBSUFFIX=.o
- endif
- ifeq (${TRANSCODER}, ICU)
- ifeq (${SYSOVR},OS400)
- EXTRA_LINK_OPTIONS = -licuuc -licudata -lbsd
- else
- EXTRA_LINK_OPTIONS = -lQZUUC
- endif
- endif
- EXTRA_COMPILE_OPTIONS = -I. -g
- EXTRA_LINK_OPTIONS = -q OPTION='*DUPVAR *DUPPROC'
- RM2 = -del
- endif
- #=============== BEOS SPECIFIC OPTIONS =========================
- ifeq (${PLATFORM}, BEOS)
- PLATFORM_COMPILE_OPTIONS = -fPIC -D${PLATFORM} -DAPP_NO_THREADS
- MAKE_SHARED = ${CXX} -D${PLATFORM} -nostart -fPIC ${LDFLAGS}
- MAKE_SHARED_C = ${CC} -D${PLATFORM} -nostart -fPIC ${LDFLAGS}
- 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
- SHLIBSUFFIX=.so
- ## Compiler switch to embed a library name
- LD_SONAME = -Wl,-soname,${SO_NAME}
- endif
- #=============== LINUX SPECIFIC OPTIONS =========================
- ifeq (${PLATFORM}, LINUX)
- PLATFORM_COMPILE_OPTIONS = -fPIC -D${PLATFORM} -D_REENTRANT
- MAKE_SHARED = ${CXX} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
- MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
- 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
- EXTRA_LINK_OPTIONS = -Xlinker -Map -Xlinker $(XML_OBJ)/${SO_NAME}.map
- SHLIBSUFFIX=.so
- ## Compiler switch to embed a library name
- LD_SONAME = -Wl,-soname,${SO_NAME}
- endif
- #=============== QNX SPECIFIC OPTIONS =========================
- ifeq (${PLATFORM}, QNX)
- PLATFORM_COMPILE_OPTIONS = -shared
- MAKE_SHARED = ${CXX} -shared ${LDFLAGS}
- MAKE_SHARED_C = ${CC} -shared ${LDFLAGS}
- 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 =
- SHLIBSUFFIX=.so
- ## Compiler switch to embed a library name
- LD_SONAME = -Wl,-soname,${SO_NAME}
- endif
- #=============== FREEBSD SPECIFIC OPTIONS =========================
- ifeq (${PLATFORM}, FREEBSD)
- MAKE_SHARED = ${CXX} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
- MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
- ifeq (${TRANSCODER}, ICU)
- PLATFORM_COMPILE_OPTIONS = -fPIC -D${PLATFORM} -I/usr/local/include
- ALLLIBS = ${LIBS} -L/usr/local/lib -licuuc -L${ICUROOT} -licudata -lgcc
- else
- PLATFORM_COMPILE_OPTIONS = -fPIC -D${PLATFORM}
- ALLLIBS = ${LIBS}
- endif
- SHLIBSUFFIX=.so
- ## Compiler switch to embed a library name
- LD_SONAME = -Wl,-soname,${SO_NAME}
- endif
- #=============== NETBSD SPECIFIC OPTIONS =========================
- ifeq (${PLATFORM}, NETBSD)
- MAKE_SHARED = ${CXX} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
- MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared -fPIC ${LDFLAGS}
- ifeq (${TRANSCODER}, ICU)
- PLATFORM_COMPILE_OPTIONS = -fPIC -D${PLATFORM} -I/usr/local/include
- ALLLIBS = ${LIBS} -L/usr/local/lib -licuuc -L${ICUROOT} -licudata -lgcc
- else
- PLATFORM_COMPILE_OPTIONS = -fPIC -D${PLATFORM}
- ALLLIBS = ${LIBS}
- endif
- SHLIBSUFFIX=.so
- ## Compiler switch to embed a library name
- LD_SONAME = -Wl,-soname,${SO_NAME}
- endif
- #=============== IRIX SPECIFIC OPTIONS ============================
- ifeq (${PLATFORM}, IRIX)
- PLATFORM_COMPILE_OPTIONS = -LANG:pch -LANG:std -O2
- -D${PLATFORM} -D_REENTRANT
- -I/usr/local/include
- MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
- MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
- ifeq (${TRANSCODER}, ICU)
- ALLLIBS = ${LIBS} -lC -licuuc -licudata
- else
- ALLLIBS = ${LIBS} -lC
- endif
- SHLIBSUFFIX=.so
- endif
- #=============== OS2 SPECIFIC OPTIONS =========================
- ifeq (${PLATFORM}, OS/2)
- #PLATFORM_CPP_COMPILER = icc
- #PLATFORM_C_COMPILER = icc
- 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
- SHLIBSUFFIX= .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 (${CXX}, aCC)
- PLATFORM_COMPILE_OPTIONS = -D_HP_UX -DHPaCC
- -D${OSVERDEFINE} +DAportable +Z
- MAKE_SHARED = ${CXX} -D${PLATFORM} ${LDFLAGS}
- MAKE_SHARED_C = ${CC} -D${PLATFORM} ${LDFLAGS}
- 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,.
- SHLIBSUFFIX=.sl
- else
- TEMPLATESREPOSITORY = ${XML_OBJ_DIR}/ptrepository
- COMMON_COMPILE_OPTIONS = -D_HP_UX -DXERCES_TMPLSINC
- -D${OSVERDEFINE} +DAportable +eh +Z -Z +a1 +d
- ifeq ($(MODULE), dom)
- PLATFORM_COMPILE_OPTIONS = -DDOM_PROJ $(COMMON_COMPILE_OPTIONS)
- else
- PLATFORM_COMPILE_OPTIONS = $(COMMON_COMPILE_OPTIONS) -ptr${TEMPLATESREPOSITORY}
- endif
- MAKE_SHARED = $(CXX) $(PLATFORM_COMPILE_OPTIONS) $(XML_INCL) ${LDFLAGS}
- MAKE_SHARED_C = $(CC) $(PLATFORM_COMPILE_OPTIONS) $(XML_INCL) ${LDFLAGS}
- 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
- SHLIBSUFFIX=.sl
- endif
- ## Compiler switch to embed a library name
- LD_SONAME = -Wl,+h,${SO_NAME}
- endif
- #================ OS/390 SPECIFIC OPTIONS =========================
- ifeq (${PLATFORM}, OS390)
- PLATFORM_CPP_COMPILER = _CXX_CXXSUFFIX="cpp" _CXX_STEPS="-1" c++
- PLATFORM_C_COMPILER = _CXX_CXXSUFFIX="cpp" _CXX_STEPS="-1" cc
- PLATFORM_LIBRARIES=
- ## OS390BATCH
- ifeq (${OS390BATCH},1)
- PLATFORM_COMPILE_OPTIONS =-Wc,dll -W0,"langlvl(extended)" -Wc,"TMPLPARSE(NO)" -Wc,"float(IEEE)" -D${PLATFORM} -DXML_USE_UNICONV390_TRANSCODER -DXML_ALLOW_NELWS -D_OPEN_THREADS -D_XOPEN_SOURCE_EXTENDED -DPROJ_XMLPARSER -DPROJ_XMLUTIL -DPROJ_PARSERS -DPROJ_SAX4C -DPROJ_SAX2 -DPROJ_DOM -DPROJ_VALIDATORS -DOS390BATCH
- else
- PLATFORM_COMPILE_OPTIONS =-Wc,dll -W0,"langlvl(extended)" -Wc,"TMPLPARSE(NO)" -Wc,"float(IEEE)" -D${PLATFORM} -DXML_USE_UNICONV390_TRANSCODER -DXML_ALLOW_NELWS -D_OPEN_THREADS -D_XOPEN_SOURCE_EXTENDED -DPROJ_XMLPARSER -DPROJ_XMLUTIL -DPROJ_PARSERS -DPROJ_SAX4C -DPROJ_SAX2 -DPROJ_DOM -DPROJ_VALIDATORS
- 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}(IXM24UCX)'"
- else
- ALLLIBS = ${ICUROOT}/lib/libicuuc24.0.x
- endif
- else
- ifeq (${TRANSCODER}, Uniconv390)
- ## OS390BATCH
- ifeq (${OS390BATCH},1)
- ALLLIBS = "//'${LOADEXP}(IXM24UCX)'"
- else
- ALLLIBS = ${ICUROOT}/lib/libicuuc24.0.x
- endif
- else
- ALLLIBS =
- endif
- endif
- EXTRA_LINK_OPTIONS =
- SHLIBSUFFIX=.dll
- OS390SIDEDECK=.x
- endif
- #=============== TRU64 SPECIFIC OPTIONS =========================
- ifeq (${PLATFORM}, TRU64)
- SHLIBSUFFIX=.so
- MAKE_SHARED_C = ${CC} -D${PLATFORM} -shared ${LDFLAGS}
- ifeq (${GXX}, yes)
- MAKE_SHARED = ${CXX} -D${PLATFORM} -shared ${LDFLAGS}
- PLATFORM_COMPILE_OPTIONS = -fPIC -D${PLATFORM} -D_REENTRANT
- ifeq (${TRANSCODER}, ICU)
- ALLLIBS = ${LIBS} -licuuc -licudata -lc -lrt
- else
- ALLLIBS = ${LIBS} -lc -lrt
- endif
- else
- MAKE_SHARED = ${CXX} -D${PLATFORM} -shared -ptr ${XERCESCROOT}/.cxx_repository ${LDFLAGS}
- PLATFORM_COMPILE_OPTIONS = -D${PLATFORM} -ptr ${XERCESCROOT}/.cxx_repository
- 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
- endif
- endif
- #=============== MacOS SPECIFIC OPTIONS =========================
- ifeq (${PLATFORM}, MACOSX)
- PLATFORM_LIBRARIES =
- -framework CoreServices
- PLATFORM_COMPILE_OPTIONS =
- -D${PLATFORM}
- -D_REENTRANT
- MAKE_SHARED = ${CXX} -D${PLATFORM} -dynamiclib ${LDFLAGS}
- MAKE_SHARED_C = ${CC} -D${PLATFORM} -dynamiclib ${LDFLAGS}
- ifeq (${TRANSCODER}, ICU)
- ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licu-uc -licud ata -lc
- else
- ALLLIBS = ${LIBS} -L/usr/lib
- endif
- SHLIBSUFFIX=.dylib
- LD_SONAME = -install_name ${SO_NAME}
- endif
- #=============== CygWin SPECIFIC OPTIONS =========================
- ifeq (${PLATFORM}, CYGWIN)
- PLATFORM_COMPILE_OPTIONS =
- -D__${PLATFORM}__
- -I/usr/include
- -I/usr/include/w32api
- MAKE_SHARED = ${CXX} -shared ${LDFLAGS}
- MAKE_SHARED_C = ${CC} -shared ${LDFLAGS}
- ifeq (${TRANSCODER}, ICU)
- ALLLIBS = ${LIBS} -L/usr/lib -L/usr/local/lib -L/usr/ccs/lib -licu-uc -licudata -lc
- else
- ALLLIBS = ${LIBS} -L/usr/lib
- 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
- SHLIBSUFFIX=.dll
- endif
- ###################### 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}
-
- 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}
-
- 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}
- 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}
- 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)
- 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}
-
- 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_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}
- ###################### 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
- AR = ar -cqv
- 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)
- # Tell make where the object files are for proper resolution of suffix rules
- vpath %.$(TO) $(XML_OBJ_DIR)
- .cpp.$(TO):
- $(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)/$(@) $(<)