modules.awk 12 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451452453454455456457458459460
  1. #
  2. # BEGIN COPYRIGHT BLOCK
  3. # This Program is free software; you can redistribute it and/or modify it under
  4. # the terms of the GNU General Public License as published by the Free Software
  5. # Foundation; version 2 of the License.
  6. #
  7. # This Program is distributed in the hope that it will be useful, but WITHOUT
  8. # ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
  9. # FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details.
  10. #
  11. # You should have received a copy of the GNU General Public License along with
  12. # this Program; if not, write to the Free Software Foundation, Inc., 59 Temple
  13. # Place, Suite 330, Boston, MA 02111-1307 USA.
  14. #
  15. # In addition, as a special exception, Red Hat, Inc. gives You the additional
  16. # right to link the code of this Program with code not covered under the GNU
  17. # General Public License ("Non-GPL Code") and to distribute linked combinations
  18. # including the two, subject to the limitations in this paragraph. Non-GPL Code
  19. # permitted under this exception must only link to the code of this Program
  20. # through those well defined interfaces identified in the file named EXCEPTION
  21. # found in the source code files (the "Approved Interfaces"). The files of
  22. # Non-GPL Code may instantiate templates or use macros or inline functions from
  23. # the Approved Interfaces without causing the resulting work to be covered by
  24. # the GNU General Public License. Only Red Hat, Inc. may make changes or
  25. # additions to the list of Approved Interfaces. You must obey the GNU General
  26. # Public License in all respects for all of the Program code and other code used
  27. # in conjunction with the Program except the Non-GPL Code covered by this
  28. # exception. If you modify this file, you may extend this exception to your
  29. # version of the file, but you are not obligated to do so. If you do not wish to
  30. # provide this exception without modification, you must delete this exception
  31. # statement from your version and license this file solely under the GPL without
  32. # exception.
  33. #
  34. #
  35. # Copyright (C) 2001 Sun Microsystems, Inc. Used by permission.
  36. # Copyright (C) 2005 Red Hat, Inc.
  37. # All rights reserved.
  38. # END COPYRIGHT BLOCK
  39. #
  40. # modules.mk: defines rules for each module that any part of the systems
  41. # will require in dependency lists.
  42. #
  43. # The current module will not be defined, you must have set the variable
  44. # MODULE before this file is included.
  45. NS_LIBDIR=$(BUILD_ROOT)/lib
  46. MCOM_LIBDIR=$(BUILD_ROOT)/lib
  47. HTTPD=$(BUILD_ROOT)/httpd
  48. PROXY=$(BUILD_ROOT)/proxy
  49. BATMAN=$(BUILD_ROOT)/batman
  50. MAIL=$(BUILD_ROOT)/mailserv2
  51. NEWS=$(BUILD_ROOT)/news
  52. CMS=$(BUILD_ROOT)/species
  53. ROGUE=$(BUILD_ROOT)/lw/rogue
  54. # ------------------------------- Modules --------------------------------
  55. ifneq ($(MODULE), LibRegex)
  56. LIBREGEX=regex
  57. LIBRARY regex $(NS_LIBDIR)/libregex
  58. endif
  59. ifneq ($(MODULE), LibBase)
  60. BASE=base $(LIBSI18N)
  61. BASE_SSL=base-ssl
  62. LIBRARY base $(NS_LIBDIR)/base
  63. endif
  64. ifneq ($(MODULE), LibAccess)
  65. LIBACCESS=access $(BASE) $(LIBSI18N)
  66. LIBRARY libaccess $(NS_LIBDIR)/libaccess
  67. endif
  68. ifneq ($(MODULE), LibLdapUtil)
  69. LIBLDAPU=ldapu $(BASE)
  70. LIBRARY libldapu $(NS_LIBDIR)/ldaputil
  71. endif
  72. ifneq ($(MODULE), LibHttpDaemon)
  73. HTTPDAEMON=httpdaemon
  74. HTTPDAEMON_SSL=httpdaemon-ssl
  75. LIBRARY libhttpdaemon $(NS_LIBDIR)/httpdaemon
  76. endif
  77. ifneq ($(MODULE), LibFrame)
  78. FRAME=frame $(BASE)
  79. FRAME_SSL=frame-ssl $(BASE_SSL)
  80. LIBRARY frame $(NS_LIBDIR)/frame
  81. endif
  82. ifneq ($(MODULE), LibProxy)
  83. LIBPROXY=libproxy
  84. LIBPROXY_SSL=libproxy-ssl
  85. LIBRARY libproxy $(NS_LIBDIR)/libproxy
  86. endif
  87. ifneq ($(MODULE), LibSNMP)
  88. LIBSNMP=libsnmp
  89. LIBSNMP_SSL=libsnmp-ssl
  90. LIBRARY libsnmp $(NS_LIBDIR)/libsnmp
  91. endif
  92. ifneq ($(MODULE), LibSAFs)
  93. SAFS=safs
  94. SAFS_SSL=safs-ssl
  95. LIBRARY safs $(NS_LIBDIR)/safs
  96. endif
  97. ifneq ($(MODULE), LibAR)
  98. LIBARES=ares
  99. LIBRARY libares
  100. endif
  101. ifneq ($(MODULE), CGIUtils)
  102. CGIUTILS=cgiutils
  103. LIBRARY cgiutils $(NS_LIBDIR)/cgiutils
  104. endif
  105. ifneq ($(MODULE), LibAdmin)
  106. LIBADMIN=admin
  107. LIBRARY admin $(NS_LIBDIR)/libadmin
  108. endif
  109. ifneq ($(MODULE), LibAdminUtil)
  110. #LIBADMINUTIL=adminutil
  111. LIBRARY adminutil $(NS_LIBDIR)/libadminutil
  112. endif
  113. ifneq ($(MODULE), LibCrypt)
  114. LIBCRYPT=crypt
  115. LIBRARY crypt $(NS_LIBDIR)/libcrypt
  116. endif
  117. ifneq ($(MODULE), LibMessages)
  118. LIBMESSAGES=messages
  119. LIBRARY messages $(NS_LIBDIR)/libmessages
  120. endif
  121. ifneq ($(MODULE), LibNSCore)
  122. LIBNSCORE=nscore
  123. LIBRARY nscore $(NS_LIBDIR)/libnscore
  124. endif
  125. ifneq ($(MODULE), LibMsgDisp)
  126. LIBNSCORE=msgdisp
  127. LIBRARY msgdisp $(NS_LIBDIR)/libmsgdisp
  128. endif
  129. ifneq ($(MODULE), LibMetaData)
  130. LIBNSCORE=metadata
  131. LIBRARY metadata $(NS_LIBDIR)/libmetadata
  132. endif
  133. ifneq ($(MODULE), LibIr)
  134. LIBNSCORE=ir
  135. LIBRARY ir $(NS_LIBDIR)/libir
  136. endif
  137. ifneq ($(MODULE), LibDocLdr)
  138. LIBNSCORE=docldr
  139. LIBRARY docldr $(NS_LIBDIR)/libdocldr
  140. endif
  141. ifneq ($(MODULE), LibVLdr)
  142. LIBNSCORE=vldr
  143. LIBRARY vldr $(NS_LIBDIR)/libvldr
  144. endif
  145. ifneq ($(MODULE), LibsI18N)
  146. LIBSI18N=si18n
  147. LIBRARY si18n $(NS_LIBDIR)/libsi18n
  148. endif
  149. ifneq ($(MODULE), LibINN)
  150. LIBINN=inn
  151. LIBRARY inn $(NS_LIBDIR)/libinn
  152. endif
  153. #ifeq ($(ARCH), WINNT)
  154. #ifneq ($(MODULE), LibNSPR)
  155. #ifeq ($(DEBUG), purify)
  156. #LIBNSPR=$(NSCP_DISTDIR)/lib/$(NSPR_BASENAME).$(LIB_SUFFIX)
  157. #else
  158. #LIBNSPR=$(NSCP_DISTDIR)/lib/$(NSPR_BASENAME).$(LIB_SUFFIX)
  159. #endif
  160. #NSPRDIR=nspr20
  161. #DISTLIB libnspr $(BUILD_ROOT)/$(NSPRDIR)
  162. #endif
  163. #else
  164. #ifneq ($(MODULE), LibNSPR)
  165. #ifeq ($(DEBUG), purify)
  166. #LIBNSPR=$(NSCP_DISTDIR)/lib/purelibnspr.$(LIB_SUFFIX)
  167. #SHLIBNSPR=$(NSCP_DISTDIR)/lib/purelibnspr$(DLL_PRESUF).$(DLL_SUFFIX)
  168. #else
  169. #LIBNSPR=$(NSCP_DISTDIR)/lib/$(NSPR_BASENAME).$(LIB_SUFFIX)
  170. #SHLIBNSPR=$(NSCP_DISTDIR)/lib/$(NSPR_BASENAME)$(DLL_PRESUF).$(DLL_SUFFIX)
  171. #endif
  172. #NSPRDIR=nspr20
  173. #DISTLIB libnspr $(BUILD_ROOT)/$(NSPRDIR)
  174. #endif
  175. #endif
  176. #
  177. #ifneq ($(MODULE), LibSSLio)
  178. #LIBSSLIO=$(NSCP_DISTDIR)/lib/libsslio.$(LIB_SUFFIX)
  179. #DISTLIB libsslio $(BUILD_ROOT)/$(NSPRDIR)/lib/sslio libsslio
  180. #endif
  181. ifneq ($(MODULE), LibDirMon)
  182. LIBDIRMON=$(NSCP_DISTDIR)/lib/libdirmon.$(LIB_SUFFIX)
  183. #DISTLIB libdirmon $(BUILD_ROOT)/$(NSPRDIR)/lib/dirmon libdirmon
  184. DISTLIB libdirmon $(BUILD_ROOT)/nspr20/lib/dirmon libdirmon
  185. endif
  186. #LibAres and LibPRstrm are from NSPR20 BIN release
  187. #ifneq ($(MODULE), LibAres)
  188. #LIBARES=$(NSCP_DISTDIR)/lib/libares.$(LIB_SUFFIX)
  189. #DISTLIB libares $(BUILD_ROOT)/$(NSPRDIR)/lib/arlib libares
  190. #endif
  191. #ifneq ($(MODULE), LibPRstrm)
  192. #LIBPRSTRMS=$(NSCP_DISTDIR)/lib/libprstrms.$(LIB_SUFFIX)
  193. #DISTLIB libprstrms $(BUILD_ROOT)/$(NSPRDIR)/lib/prstreams libprstrms
  194. #endif
  195. #ifneq ($(MODULE), LibXP)
  196. #LIBXP=$(MCOM_LIBDIR)/xp/$(NSOBJDIR_NAME)/libxp.$(LIB_SUFFIX)
  197. #DISTLIB libxp $(MCOM_LIBDIR)/xp libnspr
  198. #DISTLIB libxp $(MCOM_LIBDIR)/xp
  199. #endif
  200. #ifneq ($(MODULE), LibDBM)
  201. #LIBDBM=$(MCOM_LIBDIR)/libdbm/$(NSOBJDIR_NAME)/libdbm.$(LIB_SUFFIX)
  202. #DISTLIB libdbm $(MCOM_LIBDIR)/libdbm libnspr
  203. #endif
  204. ifneq ($(MODULE), LibNT)
  205. LIBNT=$(MCOM_LIBDIR)/libnt/$(NSOBJDIR_NAME)/libnt.$(LIB_SUFFIX)
  206. DISTLIB libnt $(MCOM_LIBDIR)/libnt
  207. endif
  208. #ifneq ($(MODULE), LibSecurity)
  209. #ifeq ($(SECURITY), domestic)
  210. #WHICHA=us
  211. #else
  212. #WHICHA=export
  213. #endif
  214. #LIBSEC=$(MCOM_LIBDIR)/libsec/$(NSOBJDIR_NAME)/libsec-$(WHICHA).$(LIB_SUFFIX) $(LIBDBM) $(LIBXP)
  215. #LIBSECNAME=libsec-$(WHICHA)
  216. #libsec: $(LIBSECNAME)
  217. #DISTLIB libsec-$(WHICHA) $(MCOM_LIBDIR)/libsec libnspr libdbm libxp
  218. #endif
  219. ifdef FORTEZZA
  220. ifeq ($(ARCH), WINNT)
  221. LIBSEC += $(MCOM_LIBDIR)/../dist/$(NSOBJDIR_NAME)/lib/tssp32.lib
  222. else
  223. FORTEZZA_DRIVER = $(MCOM_LIBDIR)/../dist/$(NSOBJDIR_NAME)/lib/libci.a
  224. endif
  225. LIBSEC += $(FORTEZZA_DRIVER)
  226. endif
  227. ifneq ($(MODULE), LibNet)
  228. LIBNET=$(MCOM_LIBDIR)/libnet/$(NSOBJDIR_NAME)/libnet.$(LIB_SUFFIX)
  229. DISTLIB libnet.$(LIB_SUFFIX) $(MCOM_LIBDIR)/libnet
  230. endif
  231. ifneq ($(MODULE), LibCS)
  232. LIBCS=libcs
  233. LIBRARY libcs $(NS_LIBDIR)/libcs
  234. endif
  235. ifneq ($(MODULE), LibRobotAPI)
  236. LIBROBOTAPI=librobotapi
  237. LIBRARY librobotapi $(BATMAN)/rds/api
  238. endif
  239. ifneq ($(MODULE), httpdAdminHTML)
  240. MODULE httpd-adm-html $(HTTPD)/newadmin/html
  241. endif
  242. ifneq ($(MODULE), httpdAdminIcons)
  243. MODULE httpd-adm-icons $(HTTPD)/newadmin/icons
  244. endif
  245. ifeq ($(ARCH), WINNT)
  246. ifneq ($(MODULE), httpdAdminBin)
  247. # the admin binaries link with the Server DLL
  248. MODULE httpd-adm-bin $(HTTPD)/newadmin/src
  249. endif
  250. endif
  251. ifneq ($(MODULE), httpdAdminBin)
  252. ifneq ($(ARCH), WINNT)
  253. MODULE httpd-adm-bin $(HTTPD)/newadmin/src
  254. endif
  255. endif
  256. ifneq ($(MODULE), httpdInstall)
  257. MODULE httpd-inst $(HTTPD)/newinst
  258. endif
  259. ifneq ($(MODULE), httpdBinary)
  260. MODULE httpd-bin $(HTTPD)/src
  261. endif
  262. ifneq ($(MODULE), httpdExtrasDatabase)
  263. MODULE httpd-extra-db libxp
  264. endif
  265. ifneq ($(MODULE), httpSubagtBinary)
  266. MODULE http-subagt-bin $(HTTPD)/plugins/snmp
  267. endif
  268. ifneq ($(MODULE), proxyExtras)
  269. MODULE proxy-extra libxp
  270. endif
  271. ifneq ($(MODULE), proxyAdminHTML)
  272. MODULE proxy-adm-html $(PROXY)/newadmin/html
  273. endif
  274. ifneq ($(MODULE), proxyAdminIcons)
  275. MODULE proxy-adm-icons $(PROXY)/newadmin/icons
  276. endif
  277. ifneq ($(MODULE), proxyAdminBin)
  278. MODULE proxy-adm-bin $(PROXY)/newadmin/src
  279. endif
  280. ifneq ($(MODULE), proxyInstallHTML)
  281. MODULE proxy-inst-html $(PROXY)/newinst/html
  282. endif
  283. ifneq ($(MODULE), proxyInstallBin)
  284. MODULE proxy-inst-bin $(PROXY)/newinst/src
  285. endif
  286. ifneq ($(MODULE), proxyBinary)
  287. MODULE proxy-bin $(PROXY)/src
  288. endif
  289. ifneq ($(MODULE), admservBinary)
  290. MODULE admin-server $(BUILD_ROOT)/admserv libnspr frame safs libsnmp libadmin libadminutil libsec-$(WHICHA)
  291. endif
  292. ifneq ($(MODULE), mailServer)
  293. MODULE mail-server $(BUILD_ROOT)/mailserv2/code libnspr
  294. endif
  295. ifneq ($(MODULE), mailAdmin)
  296. MODULE mail-admin $(BUILD_ROOT)/mailserv2/admin libnspr frame libsec-$(WHICHA) admin
  297. endif
  298. ifneq ($(MODULE), mailInstall)
  299. MODULE mail-inst $(BUILD_ROOT)/mailserv2/install libnspr cgiutils regex frame
  300. endif
  301. ifneq ($(MODULE), nnrpdBinary)
  302. MODULE news-nnrpd $(BUILD_ROOT)/news/nnrpd libnspr inn base libsec-$(WHICHA)
  303. endif
  304. ifneq ($(MODULE), inndBinary)
  305. MODULE news-innd $(BUILD_ROOT)/news/innd libnspr inn base libsec-$(WHICHA)
  306. endif
  307. ifneq ($(MODULE), innBackEnds)
  308. MODULE news-backends $(BUILD_ROOT)/news/backends libnspr inn base libsec-$(WHICHA)
  309. endif
  310. ifneq ($(MODULE), innExpire)
  311. MODULE news-expire $(BUILD_ROOT)/news/expire libnspr inn
  312. endif
  313. ifneq ($(MODULE), innFrontEnds)
  314. MODULE news-frontends $(BUILD_ROOT)/news/frontends libnspr inn
  315. endif
  316. ifneq ($(MODULE), innInstall)
  317. MODULE news-install $(BUILD_ROOT)/news/newinst libnspr inn admin base
  318. endif
  319. ifneq ($(MODULE), innAdmin)
  320. MODULE news-admin $(BUILD_ROOT)/news/admin libnspr inn admin base
  321. endif
  322. ifneq ($(MODULE), innSiteFiles)
  323. MODULE news-site $(BUILD_ROOT)/news/site libnspr inn
  324. endif
  325. ifneq ($(MODULE), batmanDS)
  326. MODULE batman-ds $(BATMAN)/ds libcs
  327. endif
  328. ifneq ($(MODULE), batmanClient)
  329. MODULE batman-client $(BATMAN)/client libcs
  330. endif
  331. ifneq ($(MODULE), batmanRDS)
  332. MODULE batman-rds $(BATMAN)/rds libnspr libcs regex libxp libdbm libnet.$(LIB_SUFFIX) libsec-$(WHICHA) base frame
  333. endif
  334. ifneq ($(MODULE), batmanMiniRDS)
  335. MODULE batman-minirds $(BATMAN)/minirds
  336. endif
  337. ifneq ($(MODULE), batmanDBA)
  338. MODULE batman-dba $(BATMAN)/dba libcs libdbm
  339. endif
  340. ifneq ($(MODULE), batmanTaxonomy)
  341. MODULE batman-taxonomy $(BATMAN)/tax libcs
  342. endif
  343. ifneq ($(MODULE), httpd-extras)
  344. MODULE httpd-extras $(HTTPD)/extras
  345. endif
  346. ifneq ($(MODULE), httpd-mc-icons)
  347. MODULE httpd-mc-icons $(BUILD_ROOT)/mc-icons
  348. endif
  349. ifneq ($(MODULE), cms-rogue)
  350. MODULE cms-rogue $(ROGUE)
  351. endif
  352. ifneq ($(MODULE), cms-cert)
  353. MODULE cms-cert $(BUILD_ROOT)/certsvc
  354. endif
  355. ifneq ($(MODULE), ns-config)
  356. MODULE ns-config $(BUILD_ROOT)/config
  357. endif
  358. # httpd-bin first so the dll gets built
  359. ifeq ($(ARCH), WINNT)
  360. PACKAGE httpd httpd-adm-bin httpd-adm-html httpd-adm-icons httpd-inst
  361. else
  362. PACKAGE httpd httpd-bin
  363. endif
  364. PACKAGE proxy proxy-bin proxy-adm-html proxy-adm-bin proxy-adm-icons proxy-inst-html proxy-inst-bin
  365. PACKAGE mail mail-server mail-admin mail-inst
  366. PACKAGE news news-backends news-expire news-frontends news-innd news-install news-admin news-nnrpd news-site
  367. PACKAGE admserv admin-server
  368. PACKAGE batman batman-rds batman-minirds batman-ds batman-client batman-taxonomy
  369. PACKAGE cms-httpd httpd-adm-bin httpd-adm-html httpd-adm-icons httpd-mc-icons httpd-extras httpd-inst
  370. # base frame admin libaccess cgiutils
  371. PACKAGE cms-server ns-config libnspr libdbm libsec-$(WHICHA) libxp cms-rogue cms-cert