modules.awk 10 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248249250251252253254255256257258259260261262263264265266267268269270271272273274275276277278279280281282283284285286287288289290291292293294295296297298299300301302303304305306307308309310311312313314315316317318319320321322323324325326327328329330331332333334335336337338339340341342343344345346347348349350351352353354355356357358359360361362363364365366367368369370371372373374375376377378379380381382383384385386387388389390391392393394395396397398399400401402403404405406407408409410411412413414415416417418419420421422423424425426427428429430431432433434435436437438439440441442443444445446447448449450451
  1. #
  2. # BEGIN COPYRIGHT BLOCK
  3. # Copyright 2001 Sun Microsystems, Inc.
  4. # Portions copyright 1999, 2001-2003 Netscape Communications Corporation.
  5. # All rights reserved.
  6. # END COPYRIGHT BLOCK
  7. #
  8. # modules.mk: defines rules for each module that any part of the systems
  9. # will require in dependency lists.
  10. #
  11. # The current module will not be defined, you must have set the variable
  12. # MODULE before this file is included.
  13. NS_LIBDIR=$(NSROOT)/lib
  14. MCOM_LIBDIR=$(MCOM_ROOT)/lib
  15. HTTPD=$(NSROOT)/httpd
  16. PROXY=$(NSROOT)/proxy
  17. BATMAN=$(NSROOT)/batman
  18. MAIL=$(NSROOT)/mailserv2
  19. NEWS=$(NSROOT)/news
  20. CMS=$(NSROOT)/species
  21. ROGUE=$(MCOM_ROOT)/lw/rogue
  22. # Ari's definitions for MCOM libraries, these should have if statements
  23. # around them to make sure they only apply to the proxy
  24. ifeq ($(PRODUCT), "Netscape Proxy Server")
  25. ifeq ($(ARCH), HPUX)
  26. MCL_CFLAGS="-DMCC_PROXY -I../ldapserver/include -D_HPUX_SOURCE -Aa +DA1.0 +z"
  27. else
  28. MCL_CFLAGS="-DMCC_PROXY -I../ldapserver/include"
  29. endif
  30. endif
  31. # We need to customize how libnet works for the Catalog Server...
  32. ifeq ($(PRODUCT), "Netscape Catalog Server")
  33. MCL_CFLAGS="-DSEND_FROM_FEILD"
  34. endif
  35. # ------------------------------- Modules --------------------------------
  36. ifneq ($(MODULE), LibRegex)
  37. LIBREGEX=regex
  38. LIBRARY regex $(NS_LIBDIR)/libregex
  39. endif
  40. ifeq ($(PRODUCT), "Netscape Proxy Server")
  41. ifneq ($(MODULE), LibBase)
  42. BASE=base $(LIBREGEX) $(LIBSI18N)
  43. BASE_SSL=base-ssl $(LIBREGEX)
  44. LIBRARY base $(NS_LIBDIR)/base regex
  45. endif
  46. else
  47. ifneq ($(MODULE), LibBase)
  48. BASE=base $(LIBSI18N)
  49. BASE_SSL=base-ssl
  50. LIBRARY base $(NS_LIBDIR)/base
  51. endif
  52. endif
  53. ifneq ($(MODULE), LibAccess)
  54. LIBACCESS=access $(BASE) $(LIBSI18N)
  55. LIBRARY libaccess $(NS_LIBDIR)/libaccess
  56. endif
  57. ifneq ($(MODULE), LibLdapUtil)
  58. LIBLDAPU=ldapu $(BASE)
  59. LIBRARY libldapu $(NS_LIBDIR)/ldaputil
  60. endif
  61. ifneq ($(MODULE), LibHttpDaemon)
  62. HTTPDAEMON=httpdaemon
  63. HTTPDAEMON_SSL=httpdaemon-ssl
  64. LIBRARY libhttpdaemon $(NS_LIBDIR)/httpdaemon
  65. endif
  66. ifneq ($(MODULE), LibFrame)
  67. FRAME=frame $(BASE)
  68. FRAME_SSL=frame-ssl $(BASE_SSL)
  69. LIBRARY frame $(NS_LIBDIR)/frame
  70. endif
  71. ifneq ($(MODULE), LibProxy)
  72. LIBPROXY=libproxy
  73. LIBPROXY_SSL=libproxy-ssl
  74. LIBRARY libproxy $(NS_LIBDIR)/libproxy
  75. endif
  76. ifneq ($(MODULE), LibSNMP)
  77. LIBSNMP=libsnmp
  78. LIBSNMP_SSL=libsnmp-ssl
  79. LIBRARY libsnmp $(NS_LIBDIR)/libsnmp
  80. endif
  81. ifneq ($(MODULE), LibSAFs)
  82. SAFS=safs
  83. SAFS_SSL=safs-ssl
  84. LIBRARY safs $(NS_LIBDIR)/safs
  85. endif
  86. ifneq ($(MODULE), LibAR)
  87. LIBARES=ares
  88. LIBRARY libares
  89. endif
  90. ifneq ($(MODULE), CGIUtils)
  91. CGIUTILS=cgiutils
  92. LIBRARY cgiutils $(NS_LIBDIR)/cgiutils
  93. endif
  94. ifneq ($(MODULE), LibAdmin)
  95. LIBADMIN=admin
  96. LIBRARY admin $(NS_LIBDIR)/libadmin
  97. endif
  98. ifneq ($(MODULE), LibAdminUtil)
  99. #LIBADMINUTIL=adminutil
  100. LIBRARY adminutil $(NS_LIBDIR)/libadminutil
  101. endif
  102. ifneq ($(MODULE), LibCrypt)
  103. LIBCRYPT=crypt
  104. LIBRARY crypt $(NS_LIBDIR)/libcrypt
  105. endif
  106. ifneq ($(MODULE), LibMessages)
  107. LIBMESSAGES=messages
  108. LIBRARY messages $(NS_LIBDIR)/libmessages
  109. endif
  110. ifneq ($(MODULE), LibNSCore)
  111. LIBNSCORE=nscore
  112. LIBRARY nscore $(NS_LIBDIR)/libnscore
  113. endif
  114. ifneq ($(MODULE), LibMsgDisp)
  115. LIBNSCORE=msgdisp
  116. LIBRARY msgdisp $(NS_LIBDIR)/libmsgdisp
  117. endif
  118. ifneq ($(MODULE), LibMetaData)
  119. LIBNSCORE=metadata
  120. LIBRARY metadata $(NS_LIBDIR)/libmetadata
  121. endif
  122. ifneq ($(MODULE), LibIr)
  123. LIBNSCORE=ir
  124. LIBRARY ir $(NS_LIBDIR)/libir
  125. endif
  126. ifneq ($(MODULE), LibDocLdr)
  127. LIBNSCORE=docldr
  128. LIBRARY docldr $(NS_LIBDIR)/libdocldr
  129. endif
  130. ifneq ($(MODULE), LibVLdr)
  131. LIBNSCORE=vldr
  132. LIBRARY vldr $(NS_LIBDIR)/libvldr
  133. endif
  134. ifneq ($(MODULE), LibsI18N)
  135. LIBSI18N=si18n
  136. LIBRARY si18n $(NS_LIBDIR)/libsi18n
  137. endif
  138. ifneq ($(MODULE), LibINN)
  139. LIBINN=inn
  140. LIBRARY inn $(NS_LIBDIR)/libinn
  141. endif
  142. #ifeq ($(ARCH), WINNT)
  143. #ifneq ($(MODULE), LibNSPR)
  144. #ifeq ($(DEBUG), purify)
  145. #LIBNSPR=$(NSCP_DISTDIR)/lib/$(NSPR_BASENAME).$(LIB_SUFFIX)
  146. #else
  147. #LIBNSPR=$(NSCP_DISTDIR)/lib/$(NSPR_BASENAME).$(LIB_SUFFIX)
  148. #endif
  149. #NSPRDIR=nspr20
  150. #DISTLIB libnspr $(MCOM_ROOT)/$(NSPRDIR)
  151. #endif
  152. #else
  153. #ifneq ($(MODULE), LibNSPR)
  154. #ifeq ($(DEBUG), purify)
  155. #LIBNSPR=$(NSCP_DISTDIR)/lib/purelibnspr.$(LIB_SUFFIX)
  156. #SHLIBNSPR=$(NSCP_DISTDIR)/lib/purelibnspr$(DLL_PRESUF).$(DLL_SUFFIX)
  157. #else
  158. #LIBNSPR=$(NSCP_DISTDIR)/lib/$(NSPR_BASENAME).$(LIB_SUFFIX)
  159. #SHLIBNSPR=$(NSCP_DISTDIR)/lib/$(NSPR_BASENAME)$(DLL_PRESUF).$(DLL_SUFFIX)
  160. #endif
  161. #NSPRDIR=nspr20
  162. #DISTLIB libnspr $(MCOM_ROOT)/$(NSPRDIR)
  163. #endif
  164. #endif
  165. #
  166. #ifneq ($(MODULE), LibSSLio)
  167. #LIBSSLIO=$(NSCP_DISTDIR)/lib/libsslio.$(LIB_SUFFIX)
  168. #DISTLIB libsslio $(MCOM_ROOT)/$(NSPRDIR)/lib/sslio libsslio
  169. #endif
  170. ifneq ($(MODULE), LibDirMon)
  171. LIBDIRMON=$(NSCP_DISTDIR)/lib/libdirmon.$(LIB_SUFFIX)
  172. #DISTLIB libdirmon $(MCOM_ROOT)/$(NSPRDIR)/lib/dirmon libdirmon
  173. DISTLIB libdirmon $(MCOM_ROOT)/nspr20/lib/dirmon libdirmon
  174. endif
  175. #LibAres and LibPRstrm are from NSPR20 BIN release
  176. #ifneq ($(MODULE), LibAres)
  177. #LIBARES=$(NSCP_DISTDIR)/lib/libares.$(LIB_SUFFIX)
  178. #DISTLIB libares $(MCOM_ROOT)/$(NSPRDIR)/lib/arlib libares
  179. #endif
  180. #ifneq ($(MODULE), LibPRstrm)
  181. #LIBPRSTRMS=$(NSCP_DISTDIR)/lib/libprstrms.$(LIB_SUFFIX)
  182. #DISTLIB libprstrms $(MCOM_ROOT)/$(NSPRDIR)/lib/prstreams libprstrms
  183. #endif
  184. #ifneq ($(MODULE), LibXP)
  185. #LIBXP=$(MCOM_LIBDIR)/xp/$(NSOBJDIR_NAME)/libxp.$(LIB_SUFFIX)
  186. #DISTLIB libxp $(MCOM_LIBDIR)/xp libnspr
  187. #DISTLIB libxp $(MCOM_LIBDIR)/xp
  188. #endif
  189. #ifneq ($(MODULE), LibDBM)
  190. #LIBDBM=$(MCOM_LIBDIR)/libdbm/$(NSOBJDIR_NAME)/libdbm.$(LIB_SUFFIX)
  191. #DISTLIB libdbm $(MCOM_LIBDIR)/libdbm libnspr
  192. #endif
  193. ifneq ($(MODULE), LibNT)
  194. LIBNT=$(MCOM_LIBDIR)/libnt/$(NSOBJDIR_NAME)/libnt.$(LIB_SUFFIX)
  195. DISTLIB libnt $(MCOM_LIBDIR)/libnt
  196. endif
  197. #ifneq ($(MODULE), LibSecurity)
  198. #ifeq ($(SECURITY), domestic)
  199. #WHICHA=us
  200. #else
  201. #WHICHA=export
  202. #endif
  203. #LIBSEC=$(MCOM_LIBDIR)/libsec/$(NSOBJDIR_NAME)/libsec-$(WHICHA).$(LIB_SUFFIX) $(LIBDBM) $(LIBXP)
  204. #LIBSECNAME=libsec-$(WHICHA)
  205. #libsec: $(LIBSECNAME)
  206. #DISTLIB libsec-$(WHICHA) $(MCOM_LIBDIR)/libsec libnspr libdbm libxp
  207. #endif
  208. ifdef FORTEZZA
  209. ifeq ($(ARCH), WINNT)
  210. LIBSEC += $(MCOM_LIBDIR)/../dist/$(NSOBJDIR_NAME)/lib/tssp32.lib
  211. else
  212. FORTEZZA_DRIVER = $(MCOM_LIBDIR)/../dist/$(NSOBJDIR_NAME)/lib/libci.a
  213. endif
  214. LIBSEC += $(FORTEZZA_DRIVER)
  215. endif
  216. ifneq ($(MODULE), LibNet)
  217. LIBNET=$(MCOM_LIBDIR)/libnet/$(NSOBJDIR_NAME)/libnet.$(LIB_SUFFIX)
  218. DISTLIB libnet.$(LIB_SUFFIX) $(MCOM_LIBDIR)/libnet
  219. endif
  220. ifneq ($(MODULE), LibCS)
  221. LIBCS=libcs
  222. LIBRARY libcs $(NS_LIBDIR)/libcs
  223. endif
  224. ifneq ($(MODULE), LibRobotAPI)
  225. LIBROBOTAPI=librobotapi
  226. LIBRARY librobotapi $(BATMAN)/rds/api
  227. endif
  228. ifneq ($(MODULE), httpdAdminHTML)
  229. MODULE httpd-adm-html $(HTTPD)/newadmin/html
  230. endif
  231. ifneq ($(MODULE), httpdAdminIcons)
  232. MODULE httpd-adm-icons $(HTTPD)/newadmin/icons
  233. endif
  234. ifeq ($(ARCH), WINNT)
  235. ifneq ($(MODULE), httpdAdminBin)
  236. # the admin binaries link with the Server DLL
  237. MODULE httpd-adm-bin $(HTTPD)/newadmin/src
  238. endif
  239. endif
  240. ifneq ($(MODULE), httpdAdminBin)
  241. ifneq ($(ARCH), WINNT)
  242. MODULE httpd-adm-bin $(HTTPD)/newadmin/src
  243. endif
  244. endif
  245. ifneq ($(MODULE), httpdInstall)
  246. MODULE httpd-inst $(HTTPD)/newinst
  247. endif
  248. ifneq ($(MODULE), httpdBinary)
  249. MODULE httpd-bin $(HTTPD)/src
  250. endif
  251. ifneq ($(MODULE), httpdExtrasDatabase)
  252. MODULE httpd-extra-db libxp
  253. endif
  254. ifneq ($(MODULE), httpSubagtBinary)
  255. MODULE http-subagt-bin $(HTTPD)/plugins/snmp
  256. endif
  257. ifneq ($(MODULE), proxyExtras)
  258. MODULE proxy-extra libxp
  259. endif
  260. ifneq ($(MODULE), proxyAdminHTML)
  261. MODULE proxy-adm-html $(PROXY)/newadmin/html
  262. endif
  263. ifneq ($(MODULE), proxyAdminIcons)
  264. MODULE proxy-adm-icons $(PROXY)/newadmin/icons
  265. endif
  266. ifneq ($(MODULE), proxyAdminBin)
  267. MODULE proxy-adm-bin $(PROXY)/newadmin/src
  268. endif
  269. ifneq ($(MODULE), proxyInstallHTML)
  270. MODULE proxy-inst-html $(PROXY)/newinst/html
  271. endif
  272. ifneq ($(MODULE), proxyInstallBin)
  273. MODULE proxy-inst-bin $(PROXY)/newinst/src
  274. endif
  275. ifneq ($(MODULE), proxyBinary)
  276. MODULE proxy-bin $(PROXY)/src
  277. endif
  278. ifneq ($(MODULE), admservBinary)
  279. MODULE admin-server $(NSROOT)/admserv libnspr frame safs libsnmp libadmin libadminutil libsec-$(WHICHA)
  280. endif
  281. ifneq ($(MODULE), mailServer)
  282. MODULE mail-server $(NSROOT)/mailserv2/code libnspr
  283. endif
  284. ifneq ($(MODULE), mailAdmin)
  285. MODULE mail-admin $(NSROOT)/mailserv2/admin libnspr frame libsec-$(WHICHA) admin
  286. endif
  287. ifneq ($(MODULE), mailInstall)
  288. MODULE mail-inst $(NSROOT)/mailserv2/install libnspr cgiutils regex frame
  289. endif
  290. ifneq ($(MODULE), nnrpdBinary)
  291. MODULE news-nnrpd $(NSROOT)/news/nnrpd libnspr inn base libsec-$(WHICHA)
  292. endif
  293. ifneq ($(MODULE), inndBinary)
  294. MODULE news-innd $(NSROOT)/news/innd libnspr inn base libsec-$(WHICHA)
  295. endif
  296. ifneq ($(MODULE), innBackEnds)
  297. MODULE news-backends $(NSROOT)/news/backends libnspr inn base libsec-$(WHICHA)
  298. endif
  299. ifneq ($(MODULE), innExpire)
  300. MODULE news-expire $(NSROOT)/news/expire libnspr inn
  301. endif
  302. ifneq ($(MODULE), innFrontEnds)
  303. MODULE news-frontends $(NSROOT)/news/frontends libnspr inn
  304. endif
  305. ifneq ($(MODULE), innInstall)
  306. MODULE news-install $(NSROOT)/news/newinst libnspr inn admin base
  307. endif
  308. ifneq ($(MODULE), innAdmin)
  309. MODULE news-admin $(NSROOT)/news/admin libnspr inn admin base
  310. endif
  311. ifneq ($(MODULE), innSiteFiles)
  312. MODULE news-site $(NSROOT)/news/site libnspr inn
  313. endif
  314. ifneq ($(MODULE), batmanDS)
  315. MODULE batman-ds $(BATMAN)/ds libcs
  316. endif
  317. ifneq ($(MODULE), batmanClient)
  318. MODULE batman-client $(BATMAN)/client libcs
  319. endif
  320. ifneq ($(MODULE), batmanRDS)
  321. MODULE batman-rds $(BATMAN)/rds libnspr libcs regex libxp libdbm libnet.$(LIB_SUFFIX) libsec-$(WHICHA) base frame
  322. endif
  323. ifneq ($(MODULE), batmanMiniRDS)
  324. MODULE batman-minirds $(BATMAN)/minirds
  325. endif
  326. ifneq ($(MODULE), batmanDBA)
  327. MODULE batman-dba $(BATMAN)/dba libcs libdbm
  328. endif
  329. ifneq ($(MODULE), batmanTaxonomy)
  330. MODULE batman-taxonomy $(BATMAN)/tax libcs
  331. endif
  332. ifneq ($(MODULE), httpd-extras)
  333. MODULE httpd-extras $(HTTPD)/extras
  334. endif
  335. ifneq ($(MODULE), httpd-mc-icons)
  336. MODULE httpd-mc-icons $(NSROOT)/mc-icons
  337. endif
  338. ifneq ($(MODULE), cms-rogue)
  339. MODULE cms-rogue $(ROGUE)
  340. endif
  341. ifneq ($(MODULE), cms-cert)
  342. MODULE cms-cert $(MCOM_ROOT)/certsvc
  343. endif
  344. ifneq ($(MODULE), ns-config)
  345. MODULE ns-config $(MCOM_ROOT)/config
  346. endif
  347. # httpd-bin first so the dll gets built
  348. ifeq ($(ARCH), WINNT)
  349. PACKAGE httpd httpd-adm-bin httpd-adm-html httpd-adm-icons httpd-inst
  350. else
  351. PACKAGE httpd httpd-bin
  352. endif
  353. PACKAGE proxy proxy-bin proxy-adm-html proxy-adm-bin proxy-adm-icons proxy-inst-html proxy-inst-bin
  354. PACKAGE mail mail-server mail-admin mail-inst
  355. PACKAGE news news-backends news-expire news-frontends news-innd news-install news-admin news-nnrpd news-site
  356. PACKAGE admserv admin-server
  357. PACKAGE batman batman-rds batman-minirds batman-ds batman-client batman-taxonomy
  358. PACKAGE cms-httpd httpd-adm-bin httpd-adm-html httpd-adm-icons httpd-mc-icons httpd-extras httpd-inst
  359. # base frame admin libaccess cgiutils
  360. PACKAGE cms-server ns-config libnspr libdbm libsec-$(WHICHA) libxp cms-rogue cms-cert