Makefile.incl
上传用户:zhuqijet
上传日期:2013-06-25
资源大小:10074k
文件大小:12k
源码类别:

词法分析

开发平台:

Visual C++

  1. #
  2. # The Apache Software License, Version 1.1
  3. #
  4. # Copyright (c) 1999-2001 The Apache Software Foundation.  All rights
  5. # reserved.
  6. #
  7. # Redistribution and use in source and binary forms, with or without
  8. # modification, are permitted provided that the following conditions
  9. # are met:
  10. #
  11. # 1. Redistributions of source code must retain the above copyright
  12. #    notice, this list of conditions and the following disclaimer.
  13. #
  14. # 2. Redistributions in binary form must reproduce the above copyright
  15. #    notice, this list of conditions and the following disclaimer in
  16. #    the documentation and/or other materials provided with the
  17. #    distribution.
  18. #
  19. # 3. The end-user documentation included with the redistribution,
  20. #    if any, must include the following acknowledgment:
  21. #       "This product includes software developed by the
  22. #        Apache Software Foundation (http://www.apache.org/)."
  23. #    Alternately, this acknowledgment may appear in the software itself,
  24. #    if and wherever such third-party acknowledgments normally appear.
  25. #
  26. # 4. The names "Xerces" and "Apache Software Foundation" must
  27. #    not be used to endorse or promote products derived from this
  28. #    software without prior written permission. For written
  29. #    permission, please contact apache@apache.org.
  30. #
  31. # 5. Products derived from this software may not be called "Apache",
  32. #    nor may "Apache" appear in their name, without prior written
  33. #    permission of the Apache Software Foundation.
  34. #
  35. # THIS SOFTWARE IS PROVIDED ``AS IS'' AND ANY EXPRESSED OR IMPLIED
  36. # WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES
  37. # OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
  38. # DISCLAIMED.  IN NO EVENT SHALL THE APACHE SOFTWARE FOUNDATION OR
  39. # ITS CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL,
  40. # SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT
  41. # LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF
  42. # USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND
  43. # ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY,
  44. # OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT
  45. # OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
  46. # SUCH DAMAGE.
  47. # ====================================================================
  48. #
  49. # This software consists of voluntary contributions made by many
  50. # individuals on behalf of the Apache Software Foundation, and was
  51. # originally based on software copyright (c) 1999, International
  52. # Business Machines, Inc., http://www.ibm.com .  For more information
  53. # on the Apache Software Foundation, please see
  54. # <http://www.apache.org/>.
  55. #
  56. #
  57. # $Id: Makefile.incl,v 1.38 2003/05/12 09:44:19 gareth Exp $
  58. #
  59. ################## LIBRARY NAMES AND DIRECTORIES ##################
  60. ifeq (${SYSOVR},OS400)
  61. PLATFORM = OS400
  62. endif
  63. INCLUDES= -I. -I${XERCESCROOT}/include
  64. LIB_DIR=${XERCESCROOT}/lib
  65. ifneq (${PLATFORM},OS400)
  66. LIBNAME=xerces-c
  67. else
  68. LIBNAME=xercesc
  69. endif
  70. THISLIB=${LIB_DIR}/${LIBNAME}
  71. LIBRARY_NAMES=-l${LIBNAME}
  72. LIBRARY_SEARCH_PATHS=-L${LIB_DIR}
  73. TO = o
  74. ####################### PLATFORM DEPENDENCIES #####################
  75. #=============== IRIX SPECIFIC OPTIONS =========================
  76. ifeq (${PLATFORM}, IRIX)
  77.   ifeq (${GXX}, yes)
  78. CMP= -c ${CXXFLAGS}
  79. CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT -fpic
  80. LINK = ${COMPILER} -D${PLATFORM} -fpic ${LDFLAGS}
  81. PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
  82. EXTRA_LINK_OPTIONS=-lc ${EXTRA_LIBS}
  83.   else
  84. CMP= -c ${CXXFLAGS}
  85. CC= CC -c -D${PLATFORM} -LANG:pch -LANG:std -O2 -D_REENTRANT -I/usr/local/include
  86. LINK =  CC -D${PLATFORM} ${LDFLAGS}
  87. PLATFORM_LIB_LINK_OPTIONS=
  88. EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
  89.   endif
  90.   SHLIBSUFFIX=.so
  91. endif
  92. #=============== SOLARIS SPECIFIC OPTIONS =========================
  93. ifeq (${PLATFORM}, SOLARIS)
  94.   ifeq (${GXX}, yes)
  95. CMP= -c ${CXXFLAGS}
  96. CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT -fpic
  97. LINK = ${COMPILER} -D${PLATFORM} -fpic ${LDFLAGS}
  98. PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
  99. EXTRA_LINK_OPTIONS=-lc ${EXTRA_LIBS}
  100.   else
  101. CMP= -c ${CXXFLAGS}
  102. CC= CC -c -D${PLATFORM} -D_REENTRANT -pic
  103.  LINK =  CC -D${PLATFORM} ${LDFLAGS}
  104. PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib
  105. EXTRA_LINK_OPTIONS=-lc -lgen ${EXTRA_LIBS}
  106.   endif
  107.   SHLIBSUFFIX=.so
  108. endif
  109. #=============== OPENSERVER SPECIFIC OPTIONS =========================
  110. ifeq (${PLATFORM}, OPENSERVER)
  111.   CC=${COMPILER} -D${PLATFORM} -fPIC
  112.   CMP=-c ${CXXFLAGS}
  113.   LINK=${CC} ${LDFLAGS}
  114.   EXTRA_LINK_OPTIONS=-lc -lsocket ${EXTRA_LIBS}
  115.   PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
  116.   SHLIBSUFFIX=.so
  117. endif
  118. #=============== UNIXWARE SPECIFIC OPTIONS =========================
  119. ifeq (${PLATFORM}, UNIXWARE)
  120.   CMP= -O2 -c ${CXXFLAGS} -pthread
  121.   CC= ${COMPILER} -O2 -c -D${PLATFORM} -D_REENTRANT -fpic -pthread
  122.   LINK = ${COMPILER} -D${PLATFORM} -fpic -pthread ${LDFLAGS}
  123.   EXTRA_LINK_OPTIONS=-lc -lsocket ${EXTRA_LIBS}
  124.   PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
  125.   SHLIBSUFFIX=.so
  126. endif
  127. #================= PTX SPECIFIC OPTIONS ===========================
  128. ifeq (${PLATFORM}, PTX)
  129. COMPILESWITCH= -KPIC -Kthread -DPTX -w -O
  130. CMP = -c ${COMPILESWITCH}
  131. CC= c++
  132. LINK =  ${CC} -DPTX -Kthread ${LDFLAGS}
  133. PLATFORM_CPP_COMPILER = c++
  134. PLATFORM_C_COMPILER = cc
  135. PLATFORM_LIBRARIES =
  136. PLATFORM_COMPILE_OPTIONS = -KPIC -Kthread -DPTX
  137. MAKE_SHARED = ${PLATFORM_CPP_COMPILER} -DPTX -G
  138. MAKE_SHARED_C = ${PLATFORM_C_COMPILER} -DPTX  -G
  139. PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib -L${XMLINSTALL}/lib
  140. EXTRA_LINK_OPTIONS=-lm -lgen ${EXTRA_LIBS}
  141. SHLIBSUFFIX=.so
  142. endif
  143. #================= AIX SPECIFIC OPTIONS ===========================
  144. ifeq (${PLATFORM}, AIX)
  145. CMP= -c ${CXXFLAGS} -qnotempinc
  146. CC=${COMPILER} -D${PLATFORM}
  147. LINK =  ${COMPILER} -brtl ${LDFLAGS}
  148. # the compiler knows about this two
  149. # PLATFORM_LIB_LINK_OPTIONS=-L/usr/lpp/xlC/lib
  150. # EXTRA_LINK_OPTIONS=-lC ${EXTRA_LIBS}
  151. SHLIBSUFFIX=.a
  152. endif
  153. #=============== OS400 SPECIFIC OPTIONS =========================
  154. ifeq (${PLATFORM}, OS400)
  155. ifeq (${SYSOVR},OS400)
  156. MYCC = cross compiler path here
  157. TO = qwobj
  158. else
  159. MYCC = icc
  160. LINK =  ${CC} -v ${LDFLAGS}
  161. endif
  162. CMP= -c -DOS400 ${CXXFLAGS}
  163. CXX = $(MYCC)
  164. CC = $(MYCC)
  165. #INCLUDES    += -I${ICUROOT}/include
  166. SHLIBSUFFIX=.a
  167. EXTRA_LINK_OPTIONS=-q OPTION='*DUPPROC *DUPVAR' ${EXTRA_LIBS}
  168. endif
  169. #=============== BEOS SPECIFIC OPTIONS =========================
  170. ifeq (${PLATFORM}, BEOS)
  171. CMP= -c ${CXXFLAGS}
  172. CC= ${COMPILER} -c -D${PLATFORM} -DAPP_NO_THREADS -fpic
  173. LINK =  ${COMPILER} -D${PLATFORM} -fpic ${LDFLAGS}
  174. PLATFORM_LIB_LINK_OPTIONS=-L/boot/develop/lib/x86 -L/boot/home/config/lib
  175. EXTRA_LINK_OPTIONS=-lbe ${EXTRA_LIBS}
  176. SHLIBSUFFIX=.so
  177. endif
  178. #=============== LINUX SPECIFIC OPTIONS =========================
  179. ifeq (${PLATFORM}, LINUX)
  180. CMP= -c ${CXXFLAGS}
  181. CC= ${COMPILER} -c -D${PLATFORM} -D_REENTRANT -fpic
  182. LINK =  ${COMPILER} -D${PLATFORM} -fpic ${LDFLAGS}
  183. PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib
  184. EXTRA_LINK_OPTIONS=-lc ${EXTRA_LIBS}
  185. SHLIBSUFFIX=.so
  186. endif
  187. #=============== QNX SPECIFIC OPTIONS =========================
  188. ifeq (${PLATFORM}, QNX)
  189. CMP= -c ${CXXFLAGS}
  190. CC=QCC -c -O -I/usr/local/include
  191. LINK =  ${COMPILER} ${LDFLAGS}
  192. PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib
  193. EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
  194. SHLIBSUFFIX=.so
  195. endif
  196. #=============== CYGWIN SPECIFIC OPTIONS =========================
  197. ifeq (${PLATFORM}, CYGWIN)
  198. CMP= -c ${CXXFLAGS}
  199. CC= ${COMPILER} -c -D__${PLATFORM}__
  200. LINK =  ${COMPILER} -D__${PLATFORM}__ ${LDFLAGS}
  201. PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
  202. EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
  203. SHLIBSUFFIX=.dll
  204. endif
  205. #=============== FREEBSD SPECIFIC OPTIONS =========================
  206. ifeq (${PLATFORM}, FREEBSD)
  207.   CMP= -c ${CXXFLAGS}
  208.   CC= ${COMPILER} -c -D${PLATFORM} -fPIC
  209.   LINK = ${COMPILER} -D${PLATFORM} -fPIC ${LDFLAGS}
  210.   PLATFORM_LIB_LINK_OPTIONS=-Wl,-rpath,${XERCESCROOT}/lib
  211.   ifdef ICUROOT
  212.     PLATFORM_LIB_LINK_OPTIONS+=-L${ICUROOT} -Wl,-rpath,${ICUROOT}
  213.     EXTRA_LINK_OPTIONS=-licudata -lstdc++ ${EXTRA_LIBS}
  214.   else
  215.     EXTRA_LINK_OPTIONS=${EXTRA_LIBS} -lstdc++
  216.   endif
  217.   SHLIBSUFFIX=.so
  218. endif
  219. #=============== NETBSD SPECIFIC OPTIONS =========================
  220. ifeq (${PLATFORM}, NETBSD)
  221.   CMP= -c ${CXXFLAGS}
  222.   CC= ${COMPILER} -c -D${PLATFORM} -fPIC
  223.   LINK = ${COMPILER} -D${PLATFORM} -fPIC ${LDFLAGS}
  224.   PLATFORM_LIB_LINK_OPTIONS=-Wl,-rpath,${XERCESCROOT}/lib
  225.   ifdef ICUROOT
  226.     PLATFORM_LIB_LINK_OPTIONS+=-L${ICUROOT} -Wl,-rpath,${ICUROOT}
  227.     EXTRA_LINK_OPTIONS=-licudata -lstdc++ ${EXTRA_LIBS}
  228.   else
  229.     EXTRA_LINK_OPTIONS=${EXTRA_LIBS} -lstdc++
  230.   endif
  231.   SHLIBSUFFIX=.so
  232. endif
  233. #================= HP SPECIFIC OPTIONS ===========================
  234. ifeq (${PLATFORM}, HPUX)
  235.   ifeq (${COMPILER}, aCC)
  236.     CMP = -c +DAportable $(CXXFLAGS) -D_HP_UX -DHPaCC -w +z
  237.     CC = aCC
  238.     LINK =  ${CC} -Wl,+s -Wl,+b,. ${LDFLAGS}
  239.     PLATFORM_LIB_LINK_OPTIONS=-L/opt/aCC/lib -L/usr/ccs/lib -lpthread
  240.     SHLIBSUFFIX=.sl
  241.   else
  242.     ifneq (${DEBUG}, 1)
  243.       CXXFLAGS = -w +O1
  244.     endif
  245.     APPL_NAME = $(notdir $(shell pwd))
  246.     TEMPLATESDIR = $(XERCESCROOT)/bin/obj/$(APPL_NAME)/ptrepository
  247.     COMMON_CMP = $(CXXFLAGS) -D_HP_UX -DHPCC +DAportable -w +eh +z -z 
  248.         -ptr$(TEMPLATESDIR)
  249.     CMP = -c $(COMMON_CMP)
  250.     CC = CC
  251.     LINK =  ${CC} $(COMMON_CMP) -Wl,+s -Wl,+b,. ${LDFLAGS}
  252.     PLATFORM_LIB_LINK_OPTIONS=-L/opt/CC/lib -L/usr/lib
  253.     SHLIBSUFFIX=.sl
  254.   endif
  255. endif
  256. #================= OS390 SPECIFIC OPTIONS ===========================
  257. ###################################################################
  258. #                    IMPORTANT NOTE                               #
  259. ###################################################################
  260. # Before you try to run the Makefile, make sure you have two      #
  261. # environment variables set.                                      #
  262. #                                                                 #
  263. # export XERCESCROOT=<the directory where you installed XERCES-C> #
  264. #                                                                 #
  265. # If you are going to do the OS390BATCH build, make sure you have #
  266. # the OS390BATCH environment variable set.                        #
  267. #                                                                 #
  268. #   export OS390BATCH=1                                           #
  269. #                                                                 #
  270. # Also,                                                           #
  271. #                                                                 #
  272. #   export LOADMOD=USERID.LOAD                                    #
  273. #   export LOADEXP=SYS1.SIXMEXP or &hlq.SIXMEXP                   #
  274. #                                                                 #
  275. # to specify your LOADMOD and the IXM4C51X definition sidedeck    #
  276. # dataset.     #
  277. ###################################################################
  278. ifeq (${PLATFORM}, OS390)
  279. CMP= -c -DOS390 ${CXXFLAGS}
  280. ## OS390BATCH
  281. ifeq (${OS390BATCH},1)
  282. CC = _CXX_CXXSUFFIX="cpp" _CXX_STEPS="-1" c++ -W0,"langlvl(extended)" -Wc,"TMPLPARSE(NO)" -DOS390 -D_OPEN_THREADS -D_XOPEN_SOURCE_EXTENDED -DOS390BATCH
  283. else
  284. CC = _CXX_CXXSUFFIX="cpp" _CXX_STEPS="-1" c++ -W0,"langlvl(extended)" -Wc,"TMPLPARSE(NO)" -DOS390 -D_OPEN_THREADS -D_XOPEN_SOURCE_EXTENDED
  285. endif
  286. LINK =  ${CC} ${LDFLAGS}
  287. PLATFORM_LIB_LINK_OPTIONS=
  288. EXTRA_LINK_OPTIONS=${EXTRA_LIBS}
  289. SHLIBSUFFIX=.dll
  290. OS390SIDEDECK=.x
  291. ## OS390BATCH
  292. ifeq (${OS390BATCH},1)
  293. LIBRARY_NAMES="//'${LOADEXP}(IXM4C51X)'"
  294. else
  295. LIBRARY_NAMES=${LIB_DIR}/lib${LIBNAME}${VER}${OS390SIDEDECK}
  296. endif
  297. LIBRARY_SEARCH_PATHS=
  298. endif
  299. #=============== TRU64 SPECIFIC OPTIONS =========================
  300. ifeq (${PLATFORM}, TRU64)
  301. CMP= -c ${CXXFLAGS}
  302. CC = ${COMPILER} -c -D${PLATFORM}
  303. LINK = ${COMPILER} -D${PLATFORM} ${LDFLAGS}
  304. PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
  305. SHLIBSUFFIX=.so
  306. endif
  307. #=============== MacOS SPECIFIC OPTIONS =========================
  308. ifeq (${PLATFORM}, MACOSX)
  309. CMP= -c ${CXXFLAGS}
  310. CC= c++ -c -D${PLATFORM} -D_REENTRANT
  311. LINK = c++ -D${PLATFORM} ${LDFLAGS}
  312. PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
  313. SHLIBSUFFIX=.dylib
  314. endif