Makefile.incl
上传用户:huihehuasu
上传日期:2007-01-10
资源大小:6948k
文件大小:10k
源码类别:

xml/soap/webservice

开发平台:

C/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.17 2001/12/06 14:35:26 tng 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}${VER}
  72. LIBRARY_SEARCH_PATHS=-L${LIB_DIR}
  73. TO = o
  74. ####################### PLATFORM DEPENDENCIES #####################
  75. #=============== IRIX SPECIFIC OPTIONS =========================
  76. ifeq (${PLATFORM}, IRIX)
  77.   ifeq (${COMPILER}, g++)
  78. CMP= -c ${CXXFLAGS}
  79. CC= g++ -c -D${PLATFORM} -D_REENTRANT -fpic -instances=static
  80. LINK = g++ -D${PLATFORM} -fpic
  81. PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
  82. EXTRA_LINK_OPTIONS=-lc
  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}
  87. PLATFORM_LIB_LINK_OPTIONS=
  88. EXTRA_LINK_OPTIONS=
  89.   endif
  90.   SHLIBSUFFIX=.so
  91. endif
  92. #=============== SOLARIS SPECIFIC OPTIONS =========================
  93. ifeq (${PLATFORM}, SOLARIS)
  94.   ifeq (${COMPILER}, g++)
  95. CMP= -c ${CXXFLAGS}
  96. CC= g++ -c -D${PLATFORM} -D_REENTRANT -fpic
  97.  LINK = g++ -D${PLATFORM} -fpic ${LDFLAGS}
  98. PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
  99. EXTRA_LINK_OPTIONS=-lc
  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
  106.   endif
  107.   SHLIBSUFFIX=.so
  108. endif
  109. #=============== UNIXWARE SPECIFIC OPTIONS =========================
  110. ifeq (${PLATFORM}, UNIXWARE)
  111.   CMP= -O2 -c ${CXXFLAGS} -pthread
  112.   CC= g++ -O2 -c -D${PLATFORM} -D_REENTRANT -fpic -pthread
  113.   LINK = g++ -D${PLATFORM} -fpic -pthread
  114.   EXTRA_LINK_OPTIONS=-lc -lsocket
  115.   PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
  116.   SHLIBSUFFIX=.so
  117. endif
  118. #================= PTX SPECIFIC OPTIONS ===========================
  119. ifeq (${PLATFORM}, PTX)
  120. COMPILESWITCH= -KPIC -Kthread -DPTX -w -O
  121. CMP = -c ${COMPILESWITCH}
  122. CC= c++
  123. LINK =  ${CC} -DPTX -Kthread
  124. PLATFORM_CPP_COMPILER = c++
  125. PLATFORM_C_COMPILER = cc
  126. PLATFORM_LIBRARIES =
  127. PLATFORM_COMPILE_OPTIONS = -KPIC -Kthread -DPTX
  128. MAKE_SHARED = ${PLATFORM_CPP_COMPILER} -DPTX -G
  129. MAKE_SHARED_C = ${PLATFORM_C_COMPILER} -DPTX  -G
  130. PLATFORM_LIB_LINK_OPTIONS=-L/usr/local/lib -L${XMLINSTALL}/lib
  131. EXTRA_LINK_OPTIONS=-lm -lgen
  132. SHLIBSUFFIX=.so
  133. endif
  134. #================= AIX SPECIFIC OPTIONS ===========================
  135. ifeq (${PLATFORM}, AIX)
  136. CMP= -c ${CXXFLAGS} -qnotempinc
  137. CC=${COMPILER} -D${PLATFORM}
  138. LINK =  ${COMPILER}
  139. # the compiler knows about this two
  140. # PLATFORM_LIB_LINK_OPTIONS=-L/usr/lpp/xlC/lib
  141. # EXTRA_LINK_OPTIONS=-lC
  142. SHLIBSUFFIX=.a
  143. endif
  144. #=============== OS400 SPECIFIC OPTIONS =========================
  145. ifeq (${PLATFORM}, OS400)
  146. ifeq (${SYSOVR},OS400)
  147. MYCC = cross compiler path here
  148. TO = qwobj
  149. else
  150. MYCC = icc
  151. LINK =  ${CC} -v
  152. endif
  153. CMP= -c -DOS400 ${CXXFLAGS}
  154. CXX = $(MYCC)
  155. CC = $(MYCC)
  156. #INCLUDES    += -I${ICUROOT}/include
  157. SHLIBSUFFIX=.a
  158. EXTRA_LINK_OPTIONS=-q OPTION='*DUPPROC *DUPVAR'
  159. endif
  160. #=============== LINUX SPECIFIC OPTIONS =========================
  161. ifeq (${PLATFORM}, LINUX)
  162. CMP= -c ${CXXFLAGS}
  163. CC= g++ -c -D${PLATFORM} -D_REENTRANT -fpic
  164. LINK =  g++ -D${PLATFORM} -fpic
  165. PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
  166. EXTRA_LINK_OPTIONS=-lc
  167. SHLIBSUFFIX=.so
  168. endif
  169. #=============== FREEBSD SPECIFIC OPTIONS =========================
  170. ifeq (${PLATFORM}, FREEBSD)
  171.   CMP= -c ${CXXFLAGS}
  172.   CC= g++ -c -D${PLATFORM} -fPIC
  173.   LINK = g++ -D${PLATFORM} -fPIC
  174.   ifdef ICUROOT
  175.     PLATFORM_LIB_LINK_OPTIONS=-L$(ICUROOT)
  176.     EXTRA_LINK_OPTIONS=-licudata -lstdc++ -pthread
  177.   else
  178.     PLATFORM_LIB_LINK_OPTIONS=
  179.     EXTRA_LINK_OPTIONS=-lstdc++ -pthread
  180.   endif
  181.   SHLIBSUFFIX=.so
  182. endif
  183. #================= HP SPECIFIC OPTIONS ===========================
  184. ifeq (${PLATFORM}, HPUX)
  185.   ifeq (${COMPILER}, aCC)
  186.     CMP = -c $(CXXFLAGS) -D_HP_UX -DHPaCC +DAportable -w +z
  187.     CC = aCC
  188.     LINK =  ${CC} -Wl,+s
  189.     PLATFORM_LIB_LINK_OPTIONS=-L/opt/aCC/lib -L/usr/ccs/lib
  190.     SHLIBSUFFIX=.sl
  191.   else
  192.     ifneq (${DEBUG}, 1)
  193.       CXXFLAGS = -w +O1
  194.     endif
  195.     APPL_NAME = $(notdir $(shell pwd))
  196.     TEMPLATESDIR = $(XERCESCROOT)/bin/obj/$(APPL_NAME)/ptrepository
  197.     COMMON_CMP = $(CXXFLAGS) -D_HP_UX -DHPCC +DAportable -w +eh +z -z 
  198.         -ptr$(TEMPLATESDIR)
  199.     CMP = -c $(COMMON_CMP)
  200.     CC = CC
  201.     LINK =  ${CC} $(COMMON_CMP) -Wl,+s
  202.     PLATFORM_LIB_LINK_OPTIONS=-L/opt/CC/lib -L/usr/lib
  203.     SHLIBSUFFIX=.sl
  204.   endif
  205. endif
  206. #================= OS390 SPECIFIC OPTIONS ===========================
  207. ###################################################################
  208. #                    IMPORTANT NOTE                               #
  209. ###################################################################
  210. # Before you try to run the Makefile, make sure you have two      #
  211. # environment variables set.                                      #
  212. #                                                                 #
  213. # export XERCESCROOT=<the directory where you installed XERCES-C> #
  214. #                                                                 #
  215. # If you are going to do the OS390BATCH build, make sure you have #
  216. # the OS390BATCH environment variable set.                        #
  217. #                                                                 #
  218. #   export OS390BATCH=1                                           #
  219. #                                                                 #
  220. # Also,                                                           #
  221. #                                                                 #
  222. #   export LOADMOD=USERID.LOAD                                    #
  223. #   export LOADEXP=SYS1.SIXMEXP or &hlq.SIXMEXP                   #
  224. #                                                                 #
  225. # to specify your LOADMOD and the IXM4C31 definition sidedeck     #
  226. # dataset.     #
  227. ###################################################################
  228. ifeq (${PLATFORM}, OS390)
  229. CMP= -c -DOS390 ${CXXFLAGS}
  230. ## OS390BATCH
  231. ifeq (${OS390BATCH},1)
  232. CC = _CXX_CXXSUFFIX="cpp" _CXX_STEPS="-1" c++ -W0,"langlvl(extended)" -DOS390 -DOPEN_THREADS -D_XOPEN_SOURCE_EXTENDED -DOS390BATCH
  233. else
  234. CC = _CXX_CXXSUFFIX="cpp" _CXX_STEPS="-1" c++ -W0,"langlvl(extended)" -DOS390 -DOPEN_THREADS -D_XOPEN_SOURCE_EXTENDED
  235. endif
  236. LINK =  ${CC}
  237. PLATFORM_LIB_LINK_OPTIONS=
  238. EXTRA_LINK_OPTIONS =
  239. SHLIBSUFFIX=.dll
  240. OS390SIDEDECK=.x
  241. ## OS390BATCH
  242. ifeq (${OS390BATCH},1)
  243. LIBRARY_NAMES="//'${LOADEXP}(IXM4C35)'"
  244. else
  245. LIBRARY_NAMES=${LIB_DIR}/lib${LIBNAME}${VER}${OS390SIDEDECK}
  246. endif
  247. LIBRARY_SEARCH_PATHS=
  248. endif
  249. #=============== TRU64 SPECIFIC OPTIONS =========================
  250. ifeq (${PLATFORM}, TRU64)
  251. CMP= -c ${CXXFLAGS}
  252. CC = ${COMPILER} -c -D${PLATFORM}
  253. LINK = ${COMPILER} -D${PLATFORM}
  254. PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
  255. SHLIBSUFFIX=.so
  256. endif
  257. #=============== MacOS SPECIFIC OPTIONS =========================
  258. ifeq (${PLATFORM}, MACOSX)
  259. CMP= -c ${CXXFLAGS}
  260. CC= c++ -c -D${PLATFORM} -D_REENTRANT
  261. LINK = c++ -D${PLATFORM}
  262. PLATFORM_LIB_LINK_OPTIONS=-L/usr/lib -L/usr/local/lib
  263. SHLIBSUFFIX=.dylib
  264. endif