home *** CD-ROM | disk | FTP | other *** search
/ Tools / WinSN5.0Ver.iso / NETSCAP.50 / WIN1998.ZIP / ns / cmd / stubfe / Makefile < prev    next >
Encoding:
Makefile  |  1998-04-08  |  43.6 KB  |  1,419 lines

  1. #! gmake
  2. #
  3. # The contents of this file are subject to the Netscape Public License
  4. # Version 1.0 (the "NPL"); you may not use this file except in
  5. # compliance with the NPL.  You may obtain a copy of the NPL at
  6. # http://www.mozilla.org/NPL/
  7. #
  8. # Software distributed under the NPL is distributed on an "AS IS" basis,
  9. # WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
  10. # for the specific language governing rights and limitations under the
  11. # NPL.
  12. #
  13. # The Initial Developer of this code under the NPL is Netscape
  14. # Communications Corporation.  Portions created by Netscape are
  15. # Copyright (C) 1998 Netscape Communications Corporation.  All Rights
  16. # Reserved.
  17. #
  18. ##########################################################################
  19. #
  20. # Makefile for the Mozilla X front end.
  21. #
  22. # There are N dimensions to a full complement of netscape binaries:
  23. #
  24. #    - target architecture
  25. #    - debug vs optimize
  26. #    - normal vs vendor-cobranded version (number, anim, etc)
  27. #    - normal vs purified
  28. #
  29. # A directory is needed for each of the first two dimensions (target
  30. # and debug) but executables for all of the others will then be built
  31. # in the same directory from the same .o files.  The files have names
  32. # as follows:
  33. #
  34. #    netscape-export            2.0
  35. #    netscape-nis-export        2.0  (SunOS 4 only)
  36. #    netscape-sgi-export        2.0S (Irix5 only)
  37. #    netscape-export.pure        2.0  (SunOS 4 and Solaris only)
  38. #     ...etc...
  39. #
  40. # The only difference in the executables is which version of config-*.o
  41. # is linked in, and whether or not -lresolv is used.
  42. #
  43. # The "release" target will create a release/ subdirectory, and N subdirs
  44. # of that in which the various tar files will go.  The tar files will be
  45. # uniquely named, though the executables in them are all called "netscape".
  46. #
  47. # The exception to this is that the -nis versions don't get their own tar
  48. # files, they are lumped in with the normal SunOS 4 package with the names
  49. # "netscape" (for the NIS version) and "netscape_dns" (for the -lresolv
  50. # version.)
  51. #
  52.  
  53. DEPTH        = ../..
  54.  
  55. MODULE        = moz
  56.  
  57. USE_3PANE    = 1
  58. USE_SPELLCHECK    = 1
  59.  
  60. REQUIRES    = addr \
  61.           applet \
  62.           img \
  63.           edtplug \
  64.           jtools \
  65.           lay \
  66.           layer \
  67.           js \
  68.           libfont \
  69.           mariner \
  70.           msg \
  71.           $(NULL)
  72. ifdef NSPR20
  73. REQUIRES          += plds \
  74.           nspr20 \
  75.           $(NULL)
  76. else
  77. REQUIRES          += nspr \
  78.           $(NULL)
  79. endif
  80. REQUIRES          += parse \
  81.           plug \
  82.           hook \
  83.           pref \
  84.           rdf \
  85.           security \
  86.           softupdt \
  87.           libreg \
  88.           style \
  89.           util \
  90.           java \
  91.           ldap \
  92.           $(NULL)
  93.  
  94. CSRCS        = \
  95.           main.c \
  96.           stubbm.c \
  97.           stubctxt.c \
  98.           stubdlgs.c \
  99.           stubedit.c \
  100.           stubenc.c \
  101.           stubform.c \
  102.           stubgrid.c \
  103.           stubhelp.c \
  104.           stubimg.c \
  105.           stublay.c \
  106.           stubloc.c \
  107.           stubmail.c \
  108.           stubplug.c \
  109.           stubps.c \
  110.           stubrdf.c \
  111.           stubrgn.c \
  112.           stubsec.c \
  113.           stubstr.c \
  114.           stubtime.c \
  115.           $(NULL)
  116.  
  117. ifndef MOZ_LITE
  118. XFE_PROGNAME    := mozilla
  119. DSO_PROGNAME    := moz
  120. PRODUCT_NAME    := Communicator
  121. NETHELP_DIR    := comm
  122. else
  123. XFE_PROGNAME    := mozilla-lite
  124. DSO_PROGNAME    := moz-lite
  125. PRODUCT_NAME    := Navigator
  126. NETHELP_DIR    := ratbert
  127. CSRCS        += rat_stubs.c
  128. endif
  129.  
  130. X_RELEASES    = release-YYY \
  131.           release-net-YYY \
  132.           release-sgi-YYY \
  133.           $(NULL)
  134.  
  135. EXPORT_RELEASES    = $(subst YYY,export,$(X_RELEASES))
  136. FRANCE_RELEASES    = $(subst YYY,france,$(X_RELEASES))
  137. US_RELEASES    = $(subst YYY,us,$(X_RELEASES))
  138.  
  139. RELEASES    = $(EXPORT_RELEASES) $(FRANCE_RELEASES) $(US_RELEASES)
  140.  
  141. GUESS_CONFIG    := $(shell $(DEPTH)/config/config.guess | sed 's/i[23456]86/x86/')
  142.  
  143. ifdef BUILD_INTL
  144. README_FILE    = $(DEPTH)/l10n/us/xfe/README.intl
  145. else
  146. README_FILE    = $(OBJDIR)/README
  147. endif
  148.  
  149. BUILD_NUMBER    = $(DEPTH)/build/build_number
  150. LICENSE_DIR    = $(DEPTH)/l10n/us/xp
  151.  
  152. LICENSES    = $(LICENSE_DIR)/LICENSE-alpha \
  153.           $(LICENSE_DIR)/LICENSE-export-beta \
  154.           $(LICENSE_DIR)/LICENSE-export \
  155.           $(NULL)
  156.  
  157. COMMON_REL_DEPS    = versionn.h \
  158.           make-release \
  159.           $(OBJDIR)/LICENSE \
  160.           $(EXTRA_REL_FILES) \
  161.           $(TEST_PLUGIN) \
  162.           $(AUTOADMIN_DSO) \
  163.           $(README_FILE) \
  164.           $(DEPTH)/tpubs/$(NETHELP_DIR)/nethelp.tar.gz \
  165.           $(DIST)/bin/zigbert$(BIN_SUFFIX)
  166.  
  167. ifdef USE_SPELLCHECK
  168. COMMON_REL_DEPS    += \
  169.           $(DEPTH)/modules/spellchk/data/spellchk.tar.gz \
  170.           $(NULL)
  171. endif
  172.  
  173. MOZILLA_ZIP    = java/applet \
  174.           java/awt \
  175.           java/awt/image \
  176.           java/awt/peer \
  177.           java/io \
  178.           java/lang \
  179.           java/lang/reflect \
  180.           java/net \
  181.           java/util \
  182.           java/text \
  183.           java/text/resources \
  184.           netscape/context \
  185.           netscape/applet \
  186.           netscape/console \
  187.           netscape/debug \
  188.           netscape/plugin \
  189.           netscape/javascript \
  190.           netscape/util \
  191.           netscape/application \
  192.           netscape/constructor \
  193.           netscape/security \
  194.           netscape/softupdate \
  195.           netscape/net \
  196.           netscape/misc \
  197.           netscape/ldap/ber/stream \
  198.           netscape/ldap/util \
  199.           netscape/ldap/client/opers \
  200.           netscape/ldap/client \
  201.           netscape/ldap \
  202.           sun/io \
  203.           sun/audio \
  204.           sun/awt \
  205.           sun/awt/image \
  206.           sun/awt/motif \
  207.           sun/misc/Cache.class \
  208.           sun/misc/Ref.class \
  209.           META-INF \
  210.           $(NULL)
  211.  
  212. ALL_CLASS_DEPS    = $(shell find $(XPDIST)/classes -type f \( -name "*.class" -o -name "*.gif" -o -name "*.mf" -o -name "*.sf" -o -name "*.rsa" -o -name "*.properties*" \) -print)
  213.  
  214. #######################################################################
  215.  
  216. include $(DEPTH)/config/config.mk
  217.  
  218. CCLD        = $(CCC)
  219. LDFLAGS        = $(CFLAGS)
  220. NOMD_LDFLAGS    = $(NOMD_CFLAGS)
  221.  
  222. ifdef MOZILLA_GPROF
  223. CSRCS        += gmon.c
  224. LDFLAGS        = $(OPTIMIZER)
  225. $(OBJDIR)/gmon.o:    gmon.c gmon.h
  226.     $(CC) -O -c -o $@ $<
  227. endif
  228.  
  229. ifeq ($(OS_ARCH),HP-UX)
  230.  
  231. # HP requires C++ programs to have main() in a C++ file.
  232. CPPSRCS        = cplusplusmain.cc
  233. CFLAGS        += -DCPLUSPLUS_LINKAGE
  234.  
  235. ifeq ($(OS_RELEASE),B.10)
  236. HPUX_EXTRA_DIRS    = Xmu
  237. endif 
  238.  
  239. endif
  240.  
  241. OBJS        = $(CSRCS:.c=.o) $(CPPSRCS:.cc=.o)
  242.  
  243. GARBAGE        += $(wildcard java_40*) e_kit_resources.h cxxlink-filter
  244.  
  245. ifdef FORTEZZA
  246. CI_LIB        = $(DIST)/lib/libci.a
  247. else
  248. CI_LIB        =
  249. endif
  250.  
  251. SEC_LIBS    = $(DIST)/lib/lib$(LITE_PREFIX)secnav.a \
  252.           $(DIST)/lib/libssl.a \
  253.           $(DIST)/lib/libcert.a \
  254.           $(DIST)/lib/libpkcs12.a \
  255.           $(DIST)/lib/libpkcs7.a \
  256.           $(DIST)/lib/libsecmod.a \
  257.           $(DIST)/lib/libkey.a \
  258.           $(DIST)/lib/libcrypto.a \
  259.           $(DIST)/lib/libsecutil.a \
  260.           $(DIST)/lib/libhash.a \
  261.           $(DIST)/lib/libhtmldlgs.a \
  262.           $(NULL)
  263.  
  264. ifndef MOZ_LITE
  265. SEC_LIBS    += $(DIST)/lib/libldap.a $(DIST)/lib/liblber.a
  266. endif
  267.  
  268. SEC_LIBS    += $(CI_LIB)
  269.  
  270. US_LIB        = $(SEC_LIBS) $(DIST)/lib/libdomestic.a
  271. EXPORT_LIB    = $(SEC_LIBS) $(DIST)/lib/libexport.a 
  272. FRANCE_LIB    = $(SEC_LIBS) $(DIST)/lib/libfrance.a 
  273.  
  274. ifeq ($(OS_ARCH),AIX)
  275. NSPR_LIB    = 
  276. else
  277. ifdef NSPR20
  278. NSPR_LIB    = $(DIST)/lib/libplds21.a
  279. NSPR_LIB    += $(DIST)/lib/libplc21.a
  280. NSPR_LIB    += $(DIST)/lib/libmsgc21.a
  281. NSPR_LIB    += $(DIST)/lib/libnspr21.a
  282. else
  283. NSPR_LIB    = $(DIST)/lib/libnspr.a
  284. endif
  285. endif
  286.  
  287. ifdef DBMALLOC
  288. NSPR_LIB    += $(DIST)/lib/libdbmalloc.a
  289. endif
  290.  
  291. ifndef DISABLE_MARINER
  292. CFLAGS        += -DENABLE_MARINER
  293. endif
  294.  
  295. #
  296. # We need libnet.a in there twice because libmsg and libnet have circular
  297. # dependencies on functions.
  298. #
  299. BASIC_LIBS    = $(DIST)/lib/lib$(LITE_PREFIX)net.a \
  300.           $(DIST)/lib/lib$(LITE_PREFIX)lay.a \
  301.           $(DIST)/lib/libimg.a \
  302.           $(DIST)/lib/libpng.a \
  303.           $(DIST)/lib/libli.a \
  304.           $(DIST)/lib/libjmc.a \
  305.           $(DIST)/lib/libjpeg.a \
  306.           $(DIST)/lib/libhook.a \
  307.           $(DIST)/lib/libparse.a \
  308.           $(DIST)/lib/lib$(LITE_PREFIX)pref.a \
  309.           $(DIST)/lib/lib$(LITE_PREFIX)i18n.a \
  310.           $(DIST)/lib/libpics.a \
  311.           $(DIST)/lib/libpwcac.a \
  312.           $(DIST)/lib/libdbm.a
  313.  
  314. ifndef MOZ_LITE
  315. BASIC_LIBS    += $(DIST)/lib/libmsg.a \
  316.           $(DIST)/lib/libnet.a \
  317.           $(DIST)/lib/libmisc.a \
  318.           $(DIST)/lib/libaddr.a \
  319.           $(DIST)/lib/libneo.a \
  320.           $(DIST)/lib/libmime.a \
  321.           $(NULL)
  322. else
  323. BASIC_LIBS    += $(DIST)/lib/lib$(LITE_PREFIX)misc.a
  324. endif
  325.  
  326. BASIC_LIBS    += $(DIST)/lib/libxlate.a \
  327.            $(DIST)/lib/lib$(LITE_PREFIX)plug.a \
  328.            $(DIST)/lib/libutil.a \
  329.            $(NULL)
  330.  
  331. ifndef MOZ_LITE
  332. ifdef USE_SPELLCHECK_STATIC
  333. BASIC_LIBS    += $(DIST)/lib/libspellchk.a
  334. endif
  335. endif
  336.  
  337. BASIC_LIBS    += $(DIST)/lib/libfont.a \
  338.           $(DIST)/lib/libprgrss.a
  339.  
  340. ifndef NO_LAYERS
  341. BASIC_LIBS    += $(DIST)/lib/liblayer.a
  342. endif
  343.  
  344. ifndef NO_JAVA
  345.  
  346.  
  347. BASIC_LIBS    += $(DIST)/lib/lib$(LITE_PREFIX)applet.a \
  348.           $(DIST)/lib/libjrt.a \
  349.           $(DIST)/lib/libjmd.a \
  350.           $(NULL)
  351.  
  352. ifndef MOZ_LITE
  353. BASIC_LIBS    += $(DIST)/lib/libedtplug.a
  354. endif
  355.  
  356. BASIC_LIBS    += $(DIST)/lib/libnsn.a \
  357.           $(DIST)/lib/libjsl.a \
  358.           $(DIST)/lib/libnsc.a \
  359.           $(DIST)/lib/libjpw.a \
  360.           $(DIST)/lib/libzpw.a \
  361.           $(DIST)/lib/libreg.a \
  362.           $(DIST)/lib/libmmedia.a \
  363.           $(DIST)/lib/libsoftupdate.a \
  364.           $(DIST)/lib/libcon.a \
  365.           $(DIST)/lib/libjbn.a \
  366.           $(DIST)/lib/lib$(LITE_PREFIX)xp.a \
  367.           $(DIST)/lib/librdf.a \
  368.           $(DIST)/lib/libmariner.a \
  369.           $(NULL)
  370.  
  371. BASIC_LIBS    += $(DIST)/lib/libzlib.a \
  372.         $(NULL)
  373. endif
  374.  
  375. ifndef NO_MOCHA
  376. BASIC_LIBS    += $(DIST)/lib/libjs.a $(DIST)/lib/libjsj.a $(DIST)/lib/libmocha.a $(DIST)/lib/libimg.a \
  377.            $(DIST)/lib/lib$(LITE_PREFIX)lay.a
  378. endif
  379.  
  380. # Post-Java libs
  381. BASIC_LIBS    += $(DIST)/lib/libstyle.a $(DIST)/lib/libjar.a
  382.  
  383. ifndef NO_UNIX_LDAP
  384. BASIC_LIBS    += $(DIST)/lib/libldap.a $(DIST)/lib/liblber.a 
  385. endif
  386.  
  387. LOCALES        = $(LOCALE_MAP) $(MAIL_IM_HACK) $(NEWS_IM_HACK)
  388.  
  389. ALL_US_LIBS    = $(BASIC_LIBS) $(US_LIB) $(BASIC_LIBS_2) $(NSPR_LIB)
  390. ALL_EXPORT_LIBS    = $(BASIC_LIBS) $(EXPORT_LIB) $(BASIC_LIBS_2) $(NSPR_LIB)
  391. ALL_FRANCE_LIBS    = $(BASIC_LIBS) $(FRANCE_LIB) $(BASIC_LIBS_2) $(NSPR_LIB)
  392.  
  393. ALL_US_DSOS    = $(ALL_US_LIBS:$(DIST)/lib/lib%.a=-l%)
  394. ALL_EXPORT_DSOS    = $(ALL_EXPORT_LIBS:$(DIST)/lib/lib%.a=-l%)
  395. ALL_FRANCE_DSOS    = $(ALL_FRANCE_LIBS:$(DIST)/lib/lib%.a=-l%)
  396.  
  397. PLUGIN_DSO    = $(DIST)/bin/libnullplugin.so
  398. WEBFONT_DSO    = $(DIST)/bin/libTrueDoc.so
  399.  
  400. ifndef MOZ_LITE
  401. JSD_DSO        = $(DIST)/bin/libjsd.$(DLL_SUFFIX)
  402. endif
  403.  
  404. ifdef BUILD_UNIX_PLUGINS
  405. ifdef BUILD_OFFICIAL
  406. EXTRA_REL_FILES    += $(PLUGIN_DSO)
  407. ifdef MKSHLIB
  408. EXTRA_REL_FILES    += $(JSD_DSO)
  409. endif
  410. AUTOADMIN_DSO    = $(DIST)/bin/libAutoAdmin.so
  411. endif
  412. TEST_PLUGIN    = $(DIST)/bin/libtextplugin.so
  413. endif
  414.  
  415. #
  416. # Only build the export binary by default, so the Security folks
  417. # will be happy.  Release builds will build all three binaries.
  418. #
  419. # Defining NO_BUILD_EXPORT will _disable_ export builds, and
  420. # defining BUILD_FRANCE and BUILD_US will enable france and us
  421. # builds, respectively.  These can be set in the environment,
  422. # on the command-line, or in myconfig.mk.
  423. #
  424. ifdef BUILD_OFFICIAL
  425. BUILD_FRANCE    = 1
  426. BUILD_US    = 1
  427. endif
  428.  
  429. ifdef MKSHLIB
  430. ifndef NO_NETSCAPE_SHARED
  431. ifndef NO_BUILD_EXPORT
  432. TARGETS        += $(OBJDIR)/$(DSO_PROGNAME)-export
  433. endif
  434. ifdef BUILD_FRANCE
  435. TARGETS        += $(OBJDIR)/$(DSO_PROGNAME)-france
  436. endif
  437. ifdef BUILD_US
  438. TARGETS        += $(OBJDIR)/$(DSO_PROGNAME)-us
  439. endif
  440. endif
  441. endif
  442.  
  443. ifndef NO_NETSCAPE_STATIC
  444. ifndef NO_BUILD_EXPORT
  445. TARGETS        += $(OBJDIR)/$(XFE_PROGNAME)-export
  446. endif
  447. ifdef BUILD_FRANCE
  448. TARGETS        += $(OBJDIR)/$(XFE_PROGNAME)-france
  449. endif
  450. ifdef BUILD_US
  451. TARGETS        += $(OBJDIR)/$(XFE_PROGNAME)-us
  452. endif
  453. endif
  454.  
  455. #######################################################################
  456.  
  457. include $(DEPTH)/config/rules.mk
  458.  
  459. DEFINES        += -DNEW_DECODERS
  460.  
  461. #######################################################################
  462. #
  463. # Set defaults for all platforms.  Each OS_ARCH will override this if
  464. # necessary.
  465. #
  466.  
  467. ifdef BUILD_OFFICIAL
  468. EXTRA_REL_FILES    += $(DIST)/bin/vreg $(DEPTH)/l10n/us/xp/bookmark.htm
  469. endif
  470.  
  471. ifndef BUILD_OFFICIAL
  472. #
  473. # Developers won't need libTrueDoc.so.  No point having a dependency
  474. # on this when only official builds (release builds) need this.
  475. #
  476. NO_WEBFONTS    = 1
  477. endif
  478.  
  479. # Only SunOS4 needs two versions NIS and DNS.
  480. NIS_SRC        =
  481. NIS_OBJS    =
  482. NIS_LIB        =
  483. DNS_LIB        =
  484.  
  485. # Only SunOS4 needs separate YP versions.
  486. NEED_YP_VERSION    = 0
  487.  
  488. # Only BSDI, Linux, and SunOS4 need the nls directory.
  489. NEED_NLS    = 0
  490.  
  491. # Only SunOS5 (Solaris) has MCS.
  492. MCS_CMD        = true
  493.  
  494. # Only IRIX 5.x uses this.
  495. EXTRA_POST_LINK_CMD    = echo
  496.  
  497. EXPORT_LDFLAGS    = $(BASIC_LIBS) $(EXPORT_LIB) $(BASIC_LIBS_2) $(OTHER_LIBS) $(NSPR_LIB)
  498. EXPORT_DEPLIBS    = $(BASIC_LIBS) $(EXPORT_LIB) $(BASIC_LIBS_2) $(NSPR_LIB)
  499.  
  500. FRANCE_LDFLAGS    = $(BASIC_LIBS) $(FRANCE_LIB) $(BASIC_LIBS_2) $(OTHER_LIBS) $(NSPR_LIB)
  501. FRANCE_DEPLIBS    = $(BASIC_LIBS) $(FRANCE_LIB) $(BASIC_LIBS_2) $(NSPR_LIB)
  502.  
  503. US_LDFLAGS    = $(BASIC_LIBS) $(US_LIB) $(BASIC_LIBS_2) $(OTHER_LIBS) $(NSPR_LIB)
  504. US_DEPLIBS    = $(BASIC_LIBS) $(US_LIB) $(BASIC_LIBS_2) $(NSPR_LIB)
  505.  
  506. DSO_EX_LIBS    = $(EXPORT_LDFLAGS:$(DIST)/lib/lib%.a=-l%)
  507. DSO_EX_LIBS    = $(FRANCE_LDFLAGS:$(DIST)/lib/lib%.a=-l%)
  508. DSO_US_LIBS    = $(US_LDFLAGS:$(DIST)/lib/lib%.a=-l%)
  509.  
  510. #######################################################################
  511. #
  512. # Adjust build based on OS_ARCH.
  513. #
  514.  
  515. ########################################
  516. # IBM Machines
  517. ifeq ($(OS_ARCH),AIX)
  518. CCLD        = svxlC -+
  519. #LDFLAGS        = -bGhooksyslibs -bGlibpathexec -bGnoproc
  520. LDFLAGS        =  -bGnoproc
  521. OTHER_LIBS    =
  522. US_LDFLAGS    += $(AIX_NSPR_LINK)
  523. EXPORT_LDFLAGS    += $(AIX_NSPR_LINK)
  524. FRANCE_LDFLAGS    += $(AIX_NSPR_LINK)
  525. # Grab the NSPR shared library and the "Patched especially for Netscape" version of libsvld.a
  526. EXTRA_REL_FILES    += $(AIX_NSPR) \
  527.            $(DEPTH)/config/AIX4.1_libsvld.a \
  528.            $(DEPTH)/config/AIX4.1_libc.a \
  529.            $(DEPTH)/config/AIX4.2_libc.a \
  530.            $(DEPTH)/config/AIX4.1_run_netscape
  531.  
  532. ifndef NO_WEBFONTS
  533. EXTRA_REL_FILES += $(WEBFONT_DSO)
  534. endif
  535.  
  536. endif
  537.  
  538. ########################################
  539. # FreeBSD
  540. ifeq ($(OS_ARCH),FreeBSD)
  541. OTHER_LIBS    = -lm $(OS_LIBS)
  542. endif
  543.  
  544. ########################################
  545. # BSDI
  546. ifeq ($(OS_ARCH),BSD_OS)
  547. OTHER_LIBS    = -lm $(OS_LIBS)
  548.  
  549. ifeq ($(OS_RELEASE),2.1)
  550. OTHER_LIBS    += -lipc
  551. endif
  552.  
  553. NEED_NLS    = 1
  554.  
  555. endif
  556.  
  557. ########################################
  558. # HP Machines
  559. ifeq ($(OS_ARCH),HP-UX)
  560.  
  561. ifeq ($(OS_RELEASE),B.10)
  562. INCLUDES    += -I.
  563. endif
  564.  
  565. HPUX_RESOURCE_HACK    = -Wp,-H16384
  566.  
  567. OTHER_LIBS    = -L$(DIST)/lib $(OS_LIBS)
  568.  
  569. ifndef NO_EDITOR
  570. EXPORT_DEPLIBS    += cxxlink-filter
  571. US_DEPLIBS    += cxxlink-filter
  572. CCLD        = CC -tl,./cxxlink-filter
  573.  
  574. ifndef NO_WEBFONTS
  575. EXTRA_REL_FILES    += $(WEBFONT_DSO)
  576. endif
  577.  
  578. #
  579. # On HP, enable SHLIB_PATH
  580. #
  581. EXTRA_POST_LINK_CMD    = chatr +s enable
  582.  
  583. endif
  584.  
  585. endif
  586.  
  587. ########################################
  588. # SGI Machines
  589. ifeq ($(OS_ARCH),IRIX)
  590.  
  591. #
  592. # Linker will report that '-lSgm' does not resolve any symbols, but it
  593. # should not be removed. SGI dynamically opens the library depending on
  594. # the setting of some resources (e.g. "useEnhancedFSB")
  595. #
  596. OTHER_LIBS    = -lgen -laudio -lm $(OS_LIBS)
  597.  
  598. #
  599. # On Irix, tag the executable for use by the Indigo Magic Desktop.
  600. # This magic number comes from /usr/lib/filetype/install/netscape.ftr
  601. # shipped by SGI along with their n.nnS version of Mozilla.
  602. #
  603. ifeq ($(OS_RELEASE),5)
  604. EXTRA_POST_LINK_CMD    = /usr/sbin/tag 67150
  605. endif
  606.  
  607. #
  608. # If we are using gtscc, we must use it as the linker, and we
  609. # can only build statically (no shared libs).
  610. #
  611. CCLD        = CC
  612. ifdef USE_GTSCC
  613. ifndef NO_GTSCC
  614. CCLD        = $(DIST)/bin/gtscc $(GTSCC_LD_OPTIONS) -gtsfile $(DEPTH)/config/$(OBJDIR)/db.gts -gtsrootdir $(DEPTH)
  615. TARGETS        = $(OBJDIR)/$(XFE_PROGNAME)-export
  616. endif
  617. endif
  618.  
  619. ifndef NO_WEBFONTS
  620. EXTRA_REL_FILES += $(WEBFONT_DSO)
  621. endif
  622.  
  623. endif
  624.  
  625. ########################################
  626. # Linux
  627. ifeq ($(OS_ARCH),Linux)
  628.  
  629. OTHER_LIBS    = /usr/lib/libm.a -ldl
  630.  
  631. US_LDFLAGS    += -lc
  632. EXPORT_LDFLAGS    += -lc
  633. FRANCE_LDFLAGS    += -lc
  634.  
  635. endif
  636.  
  637. ########################################
  638. # NCR SYSV 4.0
  639. ifeq ($(OS_ARCH),NCR)
  640. OTHER_LIBS    = -lgen -lm $(OS_LIBS)
  641. endif
  642.  
  643. ########################################
  644. # NEC SYSV 4.2
  645. ifeq ($(OS_ARCH),NEC)
  646. OTHER_LIBS    = -lresolv -lgen -lm $(OS_LIBS)
  647. endif
  648.  
  649. ########################################
  650. # Dec Machines
  651. ifeq ($(OS_ARCH),OSF1)
  652.  
  653. # We would like to link OSF1 static.
  654. # This is because of motif problems (BadMatch errors on non-default visual)
  655. # on 3.2 and 3.0 (and not on 2.0).
  656. # and you get warnings and core dump when pasting into Mozilla.
  657. # Also, libXm must be dynamic, otherwise Japanese text widgets hang
  658. # the process.
  659. # What a delightful state of affairs. -- erik
  660.  
  661. OTHER_LIBS    = -ldnet_stub -lm -lots $(OS_LIBS)
  662.  
  663. EXPORT_LDFLAGS    = $(BASIC_LIBS) $(EXPORT_LIB) $(BASIC_LIBS_2) $(NSPR_LIB) $(OTHER_LIBS)
  664. FRANCE_LDFLAGS    = $(BASIC_LIBS) $(FRANCE_LIB) $(BASIC_LIBS_2) $(NSPR_LIB) $(OTHER_LIBS)
  665. US_LDFLAGS    = $(BASIC_LIBS) $(US_LIB) $(BASIC_LIBS_2) $(NSPR_LIB) $(OTHER_LIBS)
  666.  
  667. ifndef NO_EDITOR
  668. #
  669. # OSF's cxx link command will link in _dynamic_ version of two C++
  670. # libraries. This is bad, they are not shipped on a base system.
  671. # So, we call this special hacked driver script to do the job.
  672. #
  673. #   NOT TRUE FOR DIGITAL UNIX 4.0 OR GREATER
  674. #CCLD        = ./cxxlink-driver -cxx_platform OSF1 -cxx_command cxx
  675.  
  676. # Hack to add a dependency for executable.
  677. #EXPORT_DEPLIBS    += cxxlink-driver
  678. #FRANCE_DEPLIBS    += cxxlink-driver
  679. #US_DEPLIBS    += cxxlink-driver
  680.  
  681. # This will also work, but will probably break easily as more C++
  682. # *features* get used (like static constructors - gasp!)
  683. #CCLD        = cc
  684. #OTHER_LIBS    += /usr/lib/cmplrs/cxx/libcxx.a /usr/lib/cmplrs/cxx/libexc.a
  685. endif
  686.  
  687. endif
  688.  
  689. ########################################
  690. # SNI ReliantUNIX (SINIX)
  691. ifeq ($(OS_ARCH),ReliantUNIX)
  692. OTHER_LIBS    = $(OS_LIBS)
  693. endif
  694. ifeq ($(OS_ARCH),SINIX-N)
  695. OTHER_LIBS    = $(OS_LIBS)
  696. endif
  697.  
  698. ########################################
  699. # SCO OpenServer
  700. ifeq ($(OS_ARCH),SCOOS)
  701. OTHER_LIBS    = -lm -lPW $(OS_LIBS)
  702.  
  703. ifdef NEED_XMOS
  704. LIB_XMOS    = $(OBJDIR)/Xmos.o
  705. endif
  706.  
  707. endif
  708.  
  709. ########################################
  710. # Sun Machines
  711. ifeq ($(OS_ARCH),SunOS)
  712.  
  713. ifeq ($(OS_RELEASE),4.1)
  714.  
  715. ALL_TARGETS  += $(OBJDIR)/$(XFE_PROGNAME)-nis-export    \
  716.         $(OBJDIR)/$(XFE_PROGNAME)-nis-net-export \
  717.         $(OBJDIR)/$(XFE_PROGNAME)-nis-france    \
  718.         $(OBJDIR)/$(XFE_PROGNAME)-nis-net-france \
  719.         $(OBJDIR)/$(XFE_PROGNAME)-nis-us    \
  720.         $(OBJDIR)/$(XFE_PROGNAME)-nis-net-us \
  721.         $(NULL)
  722.  
  723. OTHER_LIBS    = 
  724.  
  725. ifndef NO_WEBFONTS
  726. EXTRA_REL_FILES += $(WEBFONT_DSO)
  727. endif
  728.  
  729. ifndef NO_EDITOR
  730. OTHER_LIBS    += -L/tools/ns/lib
  731.  
  732. #
  733. # Need this guy because the one in libg++.a is broken.
  734. #
  735. BASIC_LIBS    += $(OBJDIR)/regex.o
  736. $(OBJDIR)/regex.o:    /lib/libc.a
  737.     ar x /lib/libc.a regex.o && mv regex.o $@
  738. endif
  739. #
  740. # Need our own popen to fix the SunOS popen problem
  741. #
  742. BASIC_LIBS += $(OBJDIR)/popen.o
  743. CSRCS    += popen.c
  744.  
  745. US_LDFLAGS    += -lm
  746. EXPORT_LDFLAGS    += -lm
  747. FRANCE_LDFLAGS    += -lm
  748.  
  749. # SunOS had 2 executables. Only the non-nis version need this
  750. NIS_OBJS    = $(OBJDIR)/dns-stub.o
  751. NIS_SRCS    = dns-stub.c
  752. NIS_LIB        = $(NIS_OBJS)
  753. DNS_LIB        = -lresolv
  754.  
  755. # For release only.
  756. # This is only for SunOS as it has both nis and non-nis
  757. # version of the browser packaged together.
  758. EXTRA_EXPORT_OBJS    = $(XFE_PROGNAME)-nis-export
  759. EXTRA_FRANCE_OBJS    = $(XFE_PROGNAME)-nis-france
  760. EXTRA_US_OBJS        = $(XFE_PROGNAME)-nis-us
  761. EXTRA_NETEXPORT_OBJS    = $(XFE_PROGNAME)-nis-net-export
  762.  
  763. NEED_YP_VERSION    = 1
  764. NEED_NLS    = 1
  765.  
  766. endif
  767.  
  768. ########################################
  769. ifneq (,$(filter 5 5.5,$(OS_RELEASE)))
  770.  
  771. USRLIBDIR    := /usr/openwin/lib
  772. MCS_CMD        = mcs -d
  773.  
  774. ifeq ($(CPU_ARCH),sparc)
  775. OTHER_LIBS    = $(OS_LIBS) -lgen -lresolv -lm
  776. ifndef NO_WEBFONTS
  777. EXTRA_REL_FILES += $(WEBFONT_DSO)
  778. endif
  779. else
  780. OTHER_LIBS    = $(OS_LIBS) -lm
  781. LDFLAGS        = $(NOMD_CFLAGS)
  782. endif
  783.  
  784. US_LDFLAGS    = -z defs -L$(USRLIBDIR) \
  785.           -R$(USRLIBDIR) $(BASIC_LIBS) $(US_LIB) $(BASIC_LIBS_2) \
  786.           $(OTHER_LIBS) $(NSPR_LIB)
  787. EXPORT_LDFLAGS    = -z defs -L$(USRLIBDIR) \
  788.           -R$(USRLIBDIR) $(BASIC_LIBS) $(EXPORT_LIB) $(BASIC_LIBS_2) \
  789.           $(OTHER_LIBS) $(NSPR_LIB)
  790. FRANCE_LDFLAGS    = -z defs -L$(USRLIBDIR) \
  791.           -R$(USRLIBDIR) $(BASIC_LIBS) $(FRANCE_LIB) $(BASIC_LIBS_2) \
  792.           $(OTHER_LIBS) $(NSPR_LIB)
  793.  
  794. endif
  795.  
  796. endif
  797.  
  798. ########################################
  799. # SCO Unixware 2.1
  800. ifeq ($(OS_ARCH),UNIXWARE)
  801.  
  802. ifdef NEED_XMOS
  803. LIB_XMOS    = $(OBJDIR)/Xmos.o
  804. endif
  805.  
  806. OTHER_LIBS    = -lm
  807.  
  808. US_LDFLAGS    += -lresolv -lsocket -lc /usr/ucblib/libucb.a
  809. EXPORT_LDFLAGS    += -lresolv -lsocket -lc /usr/ucblib/libucb.a
  810. FRANCE_LDFLAGS    += -lresolv -lsocket -lc /usr/ucblib/libucb.a
  811.  
  812. endif
  813.  
  814. #######################################################################
  815.  
  816. # Rules to build the special MOZ_LITE *.o files
  817.  
  818. $(TARGETS): $(OBJS)
  819.  
  820. #
  821. # I moved this to ns/config/rules.mk  -mcafee
  822. #
  823.  
  824.  
  825. #######################################################################
  826. # Rules to build config*.o files
  827.  
  828. #- export
  829.  
  830. $(OBJDIR)/$(LITE_PREFIX)config-export.o: config.c versionn.h Makefile $(OBJS) $(EXPORT_DEPLIBS)
  831.     @echo Generating $@ from config.c...;                      \
  832.     X=' ';                                      \
  833.     VN=`sed -n$$X 's/^#define VERSION_NUMBER[     ]*\(.*\)$$/\1/p' versionn.h` ; \
  834.     $(CC) -c $(CFLAGS) -o $@ config.c                      \
  835.         -DCONFIG="$(GUESS_CONFIG)"                      \
  836.         -DDATE="`date +%d-%h-%y`"                      \
  837.         -DVERSION=$${VN}                          \
  838.         -UHAVE_NIS -UFRANCE_VERSION -DEXPORT_VERSION -UUS_VERSION -UVENDOR_ANIM
  839.  
  840. $(OBJDIR)/config-net-export.o: config.c versionn.h Makefile $(OBJS) $(EXPORT_DEPLIBS)
  841.     @echo Generating $@ from config.c...;                      \
  842.     X=' ';                                      \
  843.     VN=`sed -n$$X 's/^#define VERSION_NUMBER[     ]*\(.*\)$$/\1/p' versionn.h` ; \
  844.     $(CC) -c $(CFLAGS) -o $@ config.c                      \
  845.         -DCONFIG="$(GUESS_CONFIG)"                      \
  846.         -DDATE="`date +%d-%h-%y`"                      \
  847.         -DVERSION=$${VN}N                          \
  848.         -UHAVE_NIS -UFRANCE_VERSION -DEXPORT_VERSION -UUS_VERSION -UVENDOR_ANIM
  849.  
  850. $(OBJDIR)/$(LITE_PREFIX)config-nis-export.o: config.c versionn.h Makefile $(OBJS) $(NIS_OBJS) $(EXPORT_DEPLIBS)
  851.     @echo Generating $@ from config.c...;                      \
  852.     X=' ';                                      \
  853.     VN=`sed -n$$X 's/^#define VERSION_NUMBER[     ]*\(.*\)$$/\1/p' versionn.h` ; \
  854.     $(CC) -c $(CFLAGS) -o $@ config.c                      \
  855.         -DCONFIG="$(GUESS_CONFIG)"                      \
  856.         -DDATE="`date +%d-%h-%y`"                      \
  857.         -DVERSION=$${VN}                          \
  858.         -DHAVE_NIS -UFRANCE_VERSION -DEXPORT_VERSION -UUS_VERSION -UVENDOR_ANIM
  859.  
  860. $(OBJDIR)/config-nis-net-export.o: config.c versionn.h Makefile $(OBJS) $(NIS_OBJS) $(EXPORT_DEPLIBS)
  861.     @echo Generating $@ from config.c...;                      \
  862.     X=' ';                                      \
  863.     VN=`sed -n$$X 's/^#define VERSION_NUMBER[     ]*\(.*\)$$/\1/p' versionn.h` ; \
  864.     $(CC) -c $(CFLAGS) -o $@ config.c                      \
  865.         -DCONFIG="$(GUESS_CONFIG)"                      \
  866.         -DDATE="`date +%d-%h-%y`"                      \
  867.         -DVERSION=$${VN}N                          \
  868.         -DHAVE_NIS -UFRANCE_VERSION -DEXPORT_VERSION -UUS_VERSION -UVENDOR_ANIM
  869.  
  870. $(OBJDIR)/config-sgi-export.o: config.c versionn.h Makefile $(OBJS) $(EXPORT_DEPLIBS)
  871.     @echo Generating $@ from config.c...;                      \
  872.     X=' ';                                      \
  873.     VN=`sed -n$$X 's/^#define VERSION_NUMBER[     ]*\(.*\)$$/\1/p' versionn.h` ; \
  874.     $(CC) -c $(CFLAGS) -o $@ config.c                      \
  875.         -DCONFIG="$(GUESS_CONFIG)"                      \
  876.         -DDATE="`date +%d-%h-%y`"                      \
  877.         -DVERSION=$${VN}S                          \
  878.         -UHAVE_NIS -UFRANCE_VERSION -DEXPORT_VERSION -UUS_VERSION -DVENDOR_ANIM
  879.  
  880. #- france
  881.  
  882. $(OBJDIR)/$(LITE_PREFIX)config-france.o: config.c versionn.h Makefile $(OBJS) $(FRANCE_DEPLIBS)
  883.     @echo Generating $@ from config.c...;                      \
  884.     X=' ';                                      \
  885.     VN=`sed -n$$X 's/^#define VERSION_NUMBER[     ]*\(.*\)$$/\1/p' versionn.h` ; \
  886.     $(CC) -c $(CFLAGS) -o $@ config.c                      \
  887.         -DCONFIG="$(GUESS_CONFIG)"                      \
  888.         -DDATE="`date +%d-%h-%y`"                      \
  889.         -DVERSION=$${VN}                          \
  890.         -UHAVE_NIS -DFRANCE_VERSION -UEXPORT_VERSION -UUS_VERSION -UVENDOR_ANIM
  891.  
  892. $(OBJDIR)/config-net-france.o: config.c versionn.h Makefile $(OBJS) $(FRANCE_DEPLIBS)
  893.     @echo Generating $@ from config.c...;                      \
  894.     X=' ';                                      \
  895.     VN=`sed -n$$X 's/^#define VERSION_NUMBER[     ]*\(.*\)$$/\1/p' versionn.h` ; \
  896.     $(CC) -c $(CFLAGS) -o $@ config.c                      \
  897.         -DCONFIG="$(GUESS_CONFIG)"                      \
  898.         -DDATE="`date +%d-%h-%y`"                      \
  899.         -DVERSION=$${VN}N                          \
  900.         -UHAVE_NIS -DFRANCE_VERSION -UEXPORT_VERSION -UUS_VERSION -UVENDOR_ANIM
  901.  
  902. $(OBJDIR)/$(LITE_PREFIX)config-nis-france.o: config.c versionn.h Makefile $(OBJS) $(NIS_OBJS) $(FRANCE_DEPLIBS)
  903.     @echo Generating $@ from config.c...;                      \
  904.     X=' ';                                      \
  905.     VN=`sed -n$$X 's/^#define VERSION_NUMBER[     ]*\(.*\)$$/\1/p' versionn.h` ; \
  906.     $(CC) -c $(CFLAGS) -o $@ config.c                      \
  907.         -DCONFIG="$(GUESS_CONFIG)"                      \
  908.         -DDATE="`date +%d-%h-%y`"                      \
  909.         -DVERSION=$${VN}                          \
  910.         -DHAVE_NIS -DFRANCE_VERSION -UEXPORT_VERSION -UUS_VERSION -UVENDOR_ANIM
  911.  
  912. $(OBJDIR)/config-nis-net-france.o: config.c versionn.h Makefile $(OBJS) $(NIS_OBJS) $(FRANCE_DEPLIBS)
  913.     @echo Generating $@ from config.c...;                      \
  914.     X=' ';                                      \
  915.     VN=`sed -n$$X 's/^#define VERSION_NUMBER[     ]*\(.*\)$$/\1/p' versionn.h` ; \
  916.     $(CC) -c $(CFLAGS) -o $@ config.c                      \
  917.         -DCONFIG="$(GUESS_CONFIG)"                      \
  918.         -DDATE="`date +%d-%h-%y`"                      \
  919.         -DVERSION=$${VN}N                          \
  920.         -DHAVE_NIS -DFRANCE_VERSION -UEXPORT_VERSION -UUS_VERSION -UVENDOR_ANIM
  921.  
  922. $(OBJDIR)/config-sgi-france.o: config.c versionn.h Makefile $(OBJS) $(FRANCE_DEPLIBS)
  923.     @echo Generating $@ from config.c...;                      \
  924.     X=' ';                                      \
  925.     VN=`sed -n$$X 's/^#define VERSION_NUMBER[     ]*\(.*\)$$/\1/p' versionn.h` ; \
  926.     $(CC) -c $(CFLAGS) -o $@ config.c                      \
  927.         -DCONFIG="$(GUESS_CONFIG)"                      \
  928.         -DDATE="`date +%d-%h-%y`"                      \
  929.         -DVERSION=$${VN}S                          \
  930.         -UHAVE_NIS -DFRANCE_VERSION -UEXPORT_VERSION -UUS_VERSION -DVENDOR_ANIM
  931.  
  932. #- us
  933.  
  934. $(OBJDIR)/$(LITE_PREFIX)config-us.o: config.c versionn.h Makefile $(OBJS) $(US_DEPLIBS)
  935.     @echo Generating $@ from config.c...;                      \
  936.     X=' ';                                      \
  937.     VN=`sed -n$$X 's/^#define VERSION_NUMBER[     ]*\(.*\)$$/\1/p' versionn.h` ; \
  938.     $(CC) -c $(CFLAGS) -o $@ config.c                      \
  939.         -DCONFIG="$(GUESS_CONFIG)"                      \
  940.         -DDATE="`date +%d-%h-%y`"                      \
  941.         -DVERSION=$${VN}                          \
  942.         -UHAVE_NIS -UFRANCE_VERSION -UEXPORT_VERSION -DUS_VERSION -UVENDOR_ANIM
  943.  
  944. $(OBJDIR)/config-net-us.o: config.c versionn.h Makefile $(OBJS) $(US_DEPLIBS)
  945.     @echo Generating $@ from config.c...;                      \
  946.     X=' ';                                      \
  947.     VN=`sed -n$$X 's/^#define VERSION_NUMBER[     ]*\(.*\)$$/\1/p' versionn.h` ; \
  948.     $(CC) -c $(CFLAGS) -o $@ config.c                      \
  949.         -DCONFIG="$(GUESS_CONFIG)"                      \
  950.         -DDATE="`date +%d-%h-%y`"                      \
  951.         -DVERSION=$${VN}N                          \
  952.         -UHAVE_NIS -UFRANCE_VERSION -UEXPORT_VERSION -DUS_VERSION -UVENDOR_ANIM
  953.  
  954. $(OBJDIR)/$(LITE_PREFIX)config-nis-us.o: config.c versionn.h Makefile $(OBJS) $(NIS_OBJS) $(US_DEPLIBS)
  955.     @echo Generating $@ from config.c...;                      \
  956.     X=' ';                                      \
  957.     VN=`sed -n$$X 's/^#define VERSION_NUMBER[     ]*\(.*\)$$/\1/p' versionn.h` ; \
  958.     $(CC) -c $(CFLAGS) -o $@ config.c                      \
  959.         -DCONFIG="$(GUESS_CONFIG)"                      \
  960.         -DDATE="`date +%d-%h-%y`"                      \
  961.         -DVERSION=$${VN}                          \
  962.         -DHAVE_NIS -UFRANCE_VERSION -UEXPORT_VERSION -DUS_VERSION -UVENDOR_ANIM
  963.  
  964. $(OBJDIR)/config-nis-net-us.o: config.c versionn.h Makefile $(OBJS) $(NIS_OBJS) $(US_DEPLIBS)
  965.     @echo Generating $@ from config.c...;                      \
  966.     X=' ';                                      \
  967.     VN=`sed -n$$X 's/^#define VERSION_NUMBER[     ]*\(.*\)$$/\1/p' versionn.h` ; \
  968.     $(CC) -c $(CFLAGS) -o $@ config.c                      \
  969.         -DCONFIG="$(GUESS_CONFIG)"                      \
  970.         -DDATE="`date +%d-%h-%y`"                      \
  971.         -DVERSION=$${VN}N                          \
  972.         -DHAVE_NIS -UFRANCE_VERSION -UEXPORT_VERSION -DUS_VERSION -UVENDOR_ANIM
  973.  
  974. $(OBJDIR)/config-sgi-us.o: config.c versionn.h Makefile $(OBJS) $(US_DEPLIBS)
  975.     @echo Generating $@ from config.c...;                      \
  976.     X=' ';                                      \
  977.     VN=`sed -n$$X 's/^#define VERSION_NUMBER[     ]*\(.*\)$$/\1/p' versionn.h` ; \
  978.     $(CC) -c $(CFLAGS) -o $@ config.c                      \
  979.         -DCONFIG="$(GUESS_CONFIG)"                      \
  980.         -DDATE="`date +%d-%h-%y`"                      \
  981.         -DVERSION=$${VN}S                          \
  982.         -UHAVE_NIS -UFRANCE_VERSION -UEXPORT_VERSION -DUS_VERSION -DVENDOR_ANIM
  983.  
  984. #######################################################################
  985. # Rules to build license.o files
  986.  
  987. $(OBJDIR)/license.o: $(OBJDIR)/LICENSE.c Makefile
  988.     $(CC) -c -o $@ $<
  989.  
  990. $(OBJDIR)/LICENSE.c: Makefile $(LICENSES) make-license
  991.     @./make-license $@ $(LICENSE_DIR) "" export
  992.  
  993. $(OBJDIR)/LICENSE: $(OBJDIR)/license.o make-license
  994.     @./make-license $@ $(LICENSE_DIR) "" export
  995.  
  996. #######################################################################
  997. # Rules to build README files ( release specific )
  998.  
  999. $(OBJDIR)/README: README.tmpl versionn.h
  1000.     @rm -f $@
  1001.     @echo "Generating $@ from $<...";                \
  1002.     CLASS="Netscape";                        \
  1003.     NAME="Netscape";                        \
  1004.     PROGNAME="netscape";                        \
  1005.     PRODUCT="$(PRODUCT_NAME)";                    \
  1006.     VN=`sed -n 's/^#define VERSION_NUMBER *\(.*\)$$/\1/p' versionn.h`; \
  1007.     VERS=`echo $$VN$$vsuffix`;                    \
  1008.     sed     "s/@NAME@/$$NAME/g;                    \
  1009.          s/@CLASS@/$$CLASS/g;                    \
  1010.          s/@PROGNAME@/$$PROGNAME/g;                \
  1011.          s/@PRODUCT@/$$PRODUCT/g;                \
  1012.          s/@VERSION@/$$VERS/g;                    \
  1013.          s/@URLVERSION@/$$VERS/g" $< > $@
  1014.  
  1015. #######################################################################
  1016. # Rules to build resources
  1017.  
  1018. .SUFFIXES: .ad
  1019.  
  1020. # DO NOT CHANGE THE ORDER OF THE DEPENDENCIES.  Add new ones to the end.
  1021. resources-%.o: RESOURCES-%.c Makefile
  1022.     $(CC) -c $(HPUX_RESOURCE_HACK) -o $@ $<
  1023.  
  1024. RESOURCES-%.c: Netscape-%.ad ad2c Makefile
  1025.     @echo 'char *fe_fallbackResources[] = {' > $@; \
  1026.     ./ad2c $< >> $@; \
  1027.     echo '0};' >> $@
  1028.  
  1029. # Explicit dependency list to ensure that e_kit_resources.h gets built.
  1030. $(OBJDIR)/e_kit.o:    e_kit.c e_kit_resources.h
  1031.  
  1032. # Turn ekit app-defaults into a C file
  1033. e_kit_resources.h: e_kit.ad
  1034.     @echo 'char* fe_ekitDefaultDatabase = ' > $@
  1035.     cat $< | tr '[\001-\272]' '[\106-\377]' | \
  1036.         od -b | sed 's/^[0-7][0-7]* *\(.*\)/\\\1/; \
  1037.         s/ /\\/g;s/\(.*\)/ "\1"/;s/^ *"\\"$$//' >> $@
  1038.     @echo ';' >> $@
  1039.  
  1040. #- export
  1041.  
  1042. $(OBJDIR)/Netscape-nis-export.ad $(OBJDIR)/Netscape-export.ad: Makefile resources versionn.h strs make-resources $(LOCALE_MAP)
  1043.     @./make-resources $@ Netscape Netscape "" export $(LOCALES)
  1044.  
  1045. $(OBJDIR)/Netscape-nis-net-export.ad $(OBJDIR)/Netscape-net-export.ad: Makefile resources versionn.h strs make-resources $(LOCALE_MAP)
  1046.     @./make-resources $@ Netscape Netscape "N" export $(LOCALES)
  1047.  
  1048. $(OBJDIR)/Netscape-sgi-export.ad: Makefile resources versionn.h strs make-resources $(LOCALE_MAP)
  1049.     @./make-resources $@ Netscape Netscape "S" export $(LOCALES)
  1050.  
  1051. #- france
  1052.  
  1053. $(OBJDIR)/Netscape-nis-france.ad $(OBJDIR)/Netscape-france.ad: Makefile resources versionn.h strs make-resources $(LOCALE_MAP)
  1054.     @./make-resources $@ Netscape Netscape "" france $(LOCALES)
  1055.  
  1056. $(OBJDIR)/Netscape-nis-net-france.ad $(OBJDIR)/Netscape-net-france.ad: Makefile resources versionn.h strs make-resources $(LOCALE_MAP)
  1057.     @./make-resources $@ Netscape Netscape "N" france $(LOCALES)
  1058.  
  1059. $(OBJDIR)/Netscape-sgi-france.ad: Makefile resources versionn.h strs make-resources $(LOCALE_MAP)
  1060.     @./make-resources $@ Netscape Netscape "S" france $(LOCALES)
  1061.  
  1062. #- us
  1063.  
  1064. $(OBJDIR)/Netscape-nis-us.ad $(OBJDIR)/Netscape-us.ad: Makefile resources versionn.h strs make-resources $(LOCALE_MAP)
  1065.     @./make-resources $@ Netscape Netscape "" us $(LOCALES)
  1066.  
  1067. $(OBJDIR)/Netscape-nis-net-us.ad $(OBJDIR)/Netscape-net-us.ad: Makefile resources versionn.h strs make-resources $(LOCALE_MAP)
  1068.     @./make-resources $@ Netscape Netscape "N" us $(LOCALES)
  1069.  
  1070. $(OBJDIR)/Netscape-sgi-us.ad: Makefile resources versionn.h strs make-resources $(LOCALE_MAP)
  1071.     @./make-resources $@ Netscape Netscape "S" us $(LOCALES)
  1072.  
  1073. #######################################################################
  1074. #         The "-export"  DSO targets follow 
  1075.  
  1076. $(OBJDIR)/$(DSO_PROGNAME)-export: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
  1077.     @$(MAKE_OBJDIR)
  1078.     rm -f $@
  1079.     $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(EXPORT_OBJS) -L$(DIST)/bin -L$(DIST)/lib $(DSO_EX_LIBS) $(DNS_LIB)
  1080.     @$(EXTRA_POST_LINK_CMD) $@
  1081.  
  1082. $(OBJDIR)/$(DSO_PROGNAME)-export.mcv: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
  1083.     @$(MAKE_OBJDIR)
  1084.     rm -f $@
  1085.     $(CCLD) -o $@ $(CFLAGS) $(OBJS) $(EXPORT_OBJS) -L$(DIST)/bin -L$(DIST)/lib $(DSO_EX_LIBS) $(DNS_LIB) -lmalloc_cv
  1086.     @$(EXTRA_POST_LINK_CMD) $@
  1087.  
  1088. $(OBJDIR)/$(DSO_PROGNAME)-export.pure: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
  1089.     @$(MAKE_OBJDIR)
  1090.     rm -f $@
  1091.     $(PURIFY) $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(EXPORT_OBJS) -L$(DIST)/bin -L$(DIST)/lib $(DSO_EX_LIBS) $(DNS_LIB)
  1092.     @$(EXTRA_POST_LINK_CMD) $@
  1093.  
  1094. $(OBJDIR)/$(DSO_PROGNAME)-export.quantify: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
  1095.     @$(MAKE_OBJDIR)
  1096.     rm -f $@
  1097.     $(QUANTIFY) $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(EXPORT_OBJS) -L$(DIST)/bin -L$(DIST)/lib $(DSO_EX_LIBS) $(DNS_LIB)
  1098.     @$(EXTRA_POST_LINK_CMD) $@
  1099.  
  1100. #------------------ the "-us" DSO link targets follow ------------------- #
  1101.  
  1102. $(OBJDIR)/$(DSO_PROGNAME)-us: $(OBJS) $(US_OBJS) $(US_DEPLIBS)
  1103.     @$(MAKE_OBJDIR)
  1104.     rm -f $@
  1105.     $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(US_OBJS) -L$(DIST)/bin -L$(DIST)/lib $(DSO_US_LIBS) $(DNS_LIB)
  1106.     @$(EXTRA_POST_LINK_CMD) $@
  1107.  
  1108. $(OBJDIR)/$(DSO_PROGNAME)-us.pure: $(OBJS) $(US_OBJS) $(US_DEPLIBS)
  1109.     @$(MAKE_OBJDIR)
  1110.     rm -f $@
  1111.     $(PURIFY) $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(US_OBJS) -L$(DIST)/bin -L$(DIST)/lib $(DSO_US_LIBS) $(DNS_LIB) @$(EXTRA_POST_LINK_CMD) $@
  1112.  
  1113. #------------------ the "-export" XFE link targets follow ------------------- #
  1114.  
  1115. $(OBJDIR)/$(XFE_PROGNAME)-export: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
  1116.     @$(MAKE_OBJDIR)
  1117.     rm -f $@
  1118.     $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(EXPORT_OBJS) $(EXPORT_LDFLAGS) $(DNS_LIB)
  1119.     @$(EXTRA_POST_LINK_CMD) $@
  1120.  
  1121. $(OBJDIR)/$(XFE_PROGNAME)-export.pure: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
  1122.     @$(MAKE_OBJDIR)
  1123.     rm -f $@
  1124.     $(PURIFY) $(CCLD) -o $@ $(NOMD_LDFLAGS) $(OBJS) $(EXPORT_OBJS) $(EXPORT_LDFLAGS) $(DNS_LIB)
  1125.     @$(EXTRA_POST_LINK_CMD) $@
  1126.  
  1127. $(OBJDIR)/$(XFE_PROGNAME)-export.quantify: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
  1128.     @$(MAKE_OBJDIR)
  1129.     rm -f $@
  1130.     $(QUANTIFY) $(CCLD) -o $@ $(NOMD_LDFLAGS) $(OBJS) $(EXPORT_OBJS) $(EXPORT_LDFLAGS) $(DNS_LIB)
  1131.     @$(EXTRA_POST_LINK_CMD) $@
  1132.  
  1133. $(OBJDIR)/$(XFE_PROGNAME)-export.prof: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
  1134.     @$(MAKE_OBJDIR)
  1135.     rm -f $@
  1136.     $(CCLD) -p -o $@ $(LDFLAGS) $(OBJS) $(EXPORT_OBJS) $(EXPORT_LDFLAGS) $(DNS_LIB)
  1137.     @$(EXTRA_POST_LINK_CMD) $@
  1138.  
  1139. #------------------ the "-france" XFE targets follow ---------------- #
  1140.  
  1141. ifndef USE_WACKER
  1142.  
  1143. $(OBJDIR)/$(XFE_PROGNAME)-france: $(OBJS) $(FRANCE_OBJS) $(FRANCE_DEPLIBS)
  1144.     @$(MAKE_OBJDIR)
  1145.     rm -f $@
  1146.     $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(FRANCE_OBJS) $(FRANCE_LDFLAGS) $(DNS_LIB)
  1147.     @$(EXTRA_POST_LINK_CMD) $@
  1148.  
  1149. else
  1150.  
  1151. $(OBJDIR)/$(XFE_PROGNAME)-france: $(OBJDIR)/$(XFE_PROGNAME)-export $(XPDIST)/xpdist/france.txt $(DIST)/bin/patcher
  1152.     @$(MAKE_OBJDIR)
  1153.     rm -f $@
  1154.     $(DIST)/bin/patcher $(XPDIST)/xpdist/france.txt $(OBJDIR)/$(XFE_PROGNAME)-export $@
  1155.  
  1156. endif
  1157.  
  1158. #------------------ the "-us" link XFE targets follow ------------------- #
  1159.  
  1160. $(OBJDIR)/$(XFE_PROGNAME)-us: $(OBJS) $(US_OBJS) $(US_DEPLIBS)
  1161.     @$(MAKE_OBJDIR)
  1162.     rm -f $@
  1163.     $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(US_OBJS) $(US_LDFLAGS) $(DNS_LIB)
  1164.     @$(EXTRA_POST_LINK_CMD) $@
  1165.  
  1166. $(OBJDIR)/$(XFE_PROGNAME)-us-ld: $(OBJS) $(US_OBJS) $(US_DEPLIBS)
  1167.     @$(MAKE_OBJDIR)
  1168.     rm -f $@
  1169.     $(LD) -o $@ $(OBJS) $(US_OBJS) $(US_LDFLAGS) $(DNS_LIB)
  1170.     @$(EXTRA_POST_LINK_CMD) $@
  1171.  
  1172. $(OBJDIR)/$(XFE_PROGNAME)-us.pure: $(OBJS) $(US_OBJS) $(US_DEPLIBS)
  1173.     @$(MAKE_OBJDIR)
  1174.     rm -f $@
  1175.     $(PURIFY) $(CCLD) -o $@ $(NOMD_LDFLAGS) $(OBJS) $(US_OBJS) $(US_LDFLAGS) $(DNS_LIB)
  1176.     @$(EXTRA_POST_LINK_CMD) $@
  1177.  
  1178. #------------------ the "-net" XFE link targets follow ------------------- #
  1179.  
  1180.  
  1181. $(OBJDIR)/$(XFE_PROGNAME)-net-export: $(OBJS) $(NET_EXPORT_OBJS) $(EXPORT_DEPLIBS)
  1182.     @$(MAKE_OBJDIR)
  1183.     rm -f $@
  1184.     $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(NET_EXPORT_OBJS) $(EXPORT_LDFLAGS) $(DNS_LIB)
  1185.     @$(EXTRA_POST_LINK_CMD) $@
  1186.  
  1187. $(OBJDIR)/$(XFE_PROGNAME)-net-us: $(OBJS) $(NET_US_OBJS) $(US_DEPLIBS)
  1188.     @$(MAKE_OBJDIR)
  1189.     rm -f $@
  1190.     $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(NET_US_OBJS) $(US_LDFLAGS) $(DNS_LIB)
  1191.     @$(EXTRA_POST_LINK_CMD) $@
  1192.  
  1193. ifndef USE_WACKER
  1194.  
  1195. $(OBJDIR)/$(XFE_PROGNAME)-net-france: $(OBJS) $(NET_FRANCE_OBJS) $(FRANCE_DEPLIBS)
  1196.     @$(MAKE_OBJDIR)
  1197.     rm -f $@
  1198.     $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(NET_FRANCE_OBJS) $(FRANCE_LDFLAGS) $(DNS_LIB)
  1199.     @$(EXTRA_POST_LINK_CMD) $@
  1200.  
  1201. else
  1202.  
  1203. $(OBJDIR)/$(XFE_PROGNAME)-net-france: $(OBJDIR)/$(XFE_PROGNAME)-net-export $(XPDIST)/xpdist/france.txt $(DIST)/bin/patcher
  1204.     @$(MAKE_OBJDIR)
  1205.     rm -f $@
  1206.     $(DIST)/bin/patcher $(XPDIST)/xpdist/france.txt $(OBJDIR)/$(XFE_PROGNAME)-net-export $@
  1207.  
  1208. endif
  1209.  
  1210. #------------------ the "-nis" XFE link targets follow ------------------- #
  1211.  
  1212. $(OBJDIR)/$(XFE_PROGNAME)-nis-export: $(OBJS) $(NIS_EXPORT_OBJS) $(NIS_OBJS) $(EXPORT_DEPLIBS)
  1213.     @$(MAKE_OBJDIR)
  1214.     rm -f $@
  1215.     $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(NIS_EXPORT_OBJS) $(EXPORT_LDFLAGS) $(NIS_LIB)
  1216.     @$(EXTRA_POST_LINK_CMD) $@
  1217.  
  1218. $(OBJDIR)/$(XFE_PROGNAME)-nis-france: $(OBJS) $(NIS_FRANCE_OBJS) $(NIS_OBJS) $(FRANCE_DEPLIBS)
  1219.     @$(MAKE_OBJDIR)
  1220.     rm -f $@
  1221.     $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(NIS_FRANCE_OBJS) $(EXPORT_LDFLAGS) $(NIS_LIB)
  1222.     @$(EXTRA_POST_LINK_CMD) $@
  1223.  
  1224. $(OBJDIR)/$(XFE_PROGNAME)-nis-us: $(OBJS) $(NIS_US_OBJS) $(NIS_OBJS) $(US_DEPLIBS)
  1225.     @$(MAKE_OBJDIR)
  1226.     rm -f $@
  1227.     $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(NIS_US_OBJS) $(US_LDFLAGS) $(NIS_LIB)
  1228.     @$(EXTRA_POST_LINK_CMD) $@
  1229.  
  1230. $(OBJDIR)/$(XFE_PROGNAME)-nis-net-export: $(OBJS) $(NIS_EXPORT_OBJS) $(NIS_OBJS) $(EXPORT_DEPLIBS)
  1231.     @$(MAKE_OBJDIR)
  1232.     rm -f $@
  1233.     $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(NIS_EXPORT_OBJS) $(EXPORT_LDFLAGS) $(NIS_LIB)
  1234.     @$(EXTRA_POST_LINK_CMD) $@
  1235.  
  1236. #------------------ the "-nis-net" XFE link targets follow ---------------- #
  1237.  
  1238. $(OBJDIR)/$(XFE_PROGNAME)-nis-net-us: $(OBJS) $(NIS_US_OBJS) $(NIS_OBJS) $(US_DEPLIBS)
  1239.     @$(MAKE_OBJDIR)
  1240.     rm -f $@
  1241.     $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(NIS_US_OBJS) $(US_LDFLAGS) $(NIS_LIB)
  1242.     @$(EXTRA_POST_LINK_CMD) $@
  1243.  
  1244. #-------------- SGI versions of the navigator (no nis, no net) ------------#
  1245.  
  1246. $(OBJDIR)/$(XFE_PROGNAME)-sgi-export: $(OBJS) $(SGI_EXPORT_OBJS) $(EXPORT_DEPLIBS)
  1247.     @$(MAKE_OBJDIR)
  1248.     rm -f $@
  1249.     $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(SGI_EXPORT_OBJS) $(EXPORT_LDFLAGS) $(DNS_LIB)
  1250.     @$(EXTRA_POST_LINK_CMD) $@
  1251.  
  1252. $(OBJDIR)/$(XFE_PROGNAME)-sgi-us: $(OBJS) $(SGI_US_OBJS) $(US_DEPLIBS)
  1253.     @$(MAKE_OBJDIR)
  1254.     rm -f $@
  1255.     $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(SGI_US_OBJS) $(US_LDFLAGS) $(DNS_LIB)
  1256.     @$(EXTRA_POST_LINK_CMD) $@
  1257.  
  1258. ifndef USE_WACKER
  1259.  
  1260. $(OBJDIR)/$(XFE_PROGNAME)-sgi-france: $(OBJS) $(SGI_FRANCE_OBJS) $(FRANCE_DEPLIBS)
  1261.     @$(MAKE_OBJDIR)
  1262.     rm -f $@
  1263.     $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(SGI_FRANCE_OBJS) $(FRANCE_LDFLAGS) $(DNS_LIB)
  1264.     @$(EXTRA_POST_LINK_CMD) $@
  1265.  
  1266. else
  1267.  
  1268. $(OBJDIR)/$(XFE_PROGNAME)-sgi-france: $(OBJDIR)/$(XFE_PROGNAME)-sgi-export $(XPDIST)/xpdist/france.txt $(DIST)/bin/patcher
  1269.     @$(MAKE_OBJDIR)
  1270.     rm -f $@
  1271.     $(DIST)/bin/patcher $(XPDIST)/xpdist/france.txt $(OBJDIR)/$(XFE_PROGNAME)-sgi-export $@
  1272.  
  1273. endif
  1274.  
  1275. #---------------- Misc link targets follow ----------------------#
  1276.  
  1277. # Make a dynamic export executable using malloc_cv by default.
  1278. mcv:    $(OBJDIR)/$(DSO_PROGNAME)-export $(OBJDIR)/$(DSO_PROGNAME)-export.mcv
  1279.  
  1280. # Make a purified, static export executable by default.
  1281. pure:    $(OBJDIR)/$(XFE_PROGNAME)-export $(OBJDIR)/$(XFE_PROGNAME)-export.pure
  1282.  
  1283. # Trying out quantify.
  1284. quantify:    $(OBJDIR)/$(XFE_PROGNAME)-export $(OBJDIR)/$(XFE_PROGNAME)-export.quantify
  1285.  
  1286. # Use gtscc to find dead code globals.
  1287. unreferenced: $(OBJS) $(NET_EXPORT_OBJS) $(BASIC_LIBS) $(EXPORT_LIB) $(BASIC_LIBS_2) $(NSPR_LIB) $(DIST)/bin/gtscc 
  1288.     @$(MAKE_OBJDIR)
  1289.     rm -f $@
  1290.     $(DIST)/bin/gtscc -gtsrootdir $(DEPTH) -gtsdump -gtsnorecompile -gtsnolink $(DEPTH) $(OBJS) $(NET_EXPORT_OBJS) $(BASIC_LIBS) $(EXPORT_LIB) $(BASIC_LIBS_2) $(NSPR_LIB) | awk -n '/ 0 0 / { print $$5 " " $$1 }' | sort > $@
  1291.  
  1292. # Some dependencies that -MDupdate isn't getting.
  1293. $(OBJDIR)/strids.o:    xfe_err.h
  1294. $(OBJDIR)/strings.o:    xfe_err.h
  1295.  
  1296. ifeq ($(OS_ARCH),AIX)
  1297. AIX_HACK    := $(notdir $(AIX_NSPR))
  1298.  
  1299. # Install nspr dynamic library for AIX.
  1300. $(AIX_HACK): $(AIX_NSPR)
  1301.     $(INSTALL) -m 644 $< .
  1302. endif
  1303.  
  1304. install:: $(AIX_HACK) $(EXTRA_REL_FILES) $(TARGETS)
  1305. ifdef TARGETS
  1306.     $(INSTALL) $(TARGETS) $(DIST)/bin
  1307. endif
  1308.  
  1309. #######################################################################
  1310. # Release target
  1311.  
  1312. ifdef AUTOADMIN_DSO
  1313. $(AUTOADMIN_DSO):
  1314.     @cd $(DEPTH)/modules/libpref/admin; $(MAKE) POLARIS=1 polaris
  1315. endif
  1316.  
  1317. $(PLUGIN_DSO):
  1318.     @cd plugins/nullplugin; $(MAKE)
  1319.  
  1320. ifdef TEST_PLUGIN
  1321. $(TEST_PLUGIN):
  1322.     @cd plugins/textplugin; $(MAKE)
  1323. endif
  1324.  
  1325. $(DIST)/bin/zigbert$(BIN_SUFFIX):
  1326.     @cd $(DEPTH)/security/cmd/lib; $(MAKE)
  1327.     @cd $(DEPTH)/security/cmd/jar; $(MAKE)
  1328.  
  1329. $(DEPTH)/tpubs/$(NETHELP_DIR)/nethelp.tar.gz:
  1330.     @cd $(DEPTH)/tpubs/$(NETHELP_DIR); $(MAKE) release
  1331.  
  1332. ifdef USE_SPELLCHECK
  1333. $(DEPTH)/modules/spellchk/data/spellchk.tar.gz:
  1334.     @cd $(DEPTH)/modules/spellchk/data; $(MAKE) release
  1335. endif
  1336.  
  1337. release:: $(RELEASES)
  1338.  
  1339. release-us: $(XFE_PROGNAME)-us $(EXTRA_US_OBJS) $(COMMON_REL_DEPS)
  1340.     ./make-release $(OBJDIR) $(XFE_PROGNAME) Netscape "" us $(GUESS_CONFIG) $(NEED_YP_VERSION) "$(MCS_CMD)" $(NEED_NLS) "$(EXTRA_US_BINARY) $(EXTRA_REL_FILES)" $(README_FILE)
  1341.  
  1342. release-export: $(XFE_PROGNAME)-export $(EXTRA_EXPORT_OBJS) $(COMMON_REL_DEPS)
  1343.     ./make-release $(OBJDIR) $(XFE_PROGNAME) Netscape "" export $(GUESS_CONFIG) $(NEED_YP_VERSION) "$(MCS_CMD)" $(NEED_NLS) "$(EXTRA_EXPORT_BINARY) $(EXTRA_REL_FILES)" $(README_FILE)
  1344.  
  1345. release-france: $(XFE_PROGNAME)-france $(EXTRA_FRANCE_OBJS) $(COMMON_REL_DEPS)
  1346.     ./make-release $(OBJDIR) $(XFE_PROGNAME) Netscape "" france $(GUESS_CONFIG) $(NEED_YP_VERSION) "$(MCS_CMD)" $(NEED_NLS) "$(EXTRA_FRANCE_BINARY) $(EXTRA_REL_FILES)" $(README_FILE)
  1347.  
  1348. #---------------- release-net targets follow --------------------#
  1349.  
  1350. release-net-us: $(XFE_PROGNAME)-net-us $(COMMON_REL_DEPS)
  1351.     ./make-release $(OBJDIR) $(XFE_PROGNAME) Netscape "N" net-us $(GUESS_CONFIG) $(NEED_YP_VERSION) "$(MCS_CMD)" $(NEED_NLS) "$(EXTRA_REL_FILES)" $(README_FILE)
  1352.  
  1353. release-net-export: $(XFE_PROGNAME)-net-export $(EXTRA_NETEXPORT_OBJS) $(COMMON_REL_DEPS)
  1354.     ./make-release $(OBJDIR) $(XFE_PROGNAME) Netscape "N" net-export $(GUESS_CONFIG) $(NEED_YP_VERSION) "$(MCS_CMD)" $(NEED_NLS) "$(EXTRA_REL_FILES)" $(README_FILE)
  1355.  
  1356. release-net-france: $(XFE_PROGNAME)-net-france $(EXTRA_NETEXPORT_OBJS) $(COMMON_REL_DEPS)
  1357.     ./make-release $(OBJDIR) $(XFE_PROGNAME) Netscape "N" net-france $(GUESS_CONFIG) $(NEED_YP_VERSION) "$(MCS_CMD)" $(NEED_NLS) "$(EXTRA_REL_FILES)" $(README_FILE)
  1358.  
  1359. #---------------- release-sgi targets follow --------------------#
  1360.  
  1361. release-sgi-us: $(XFE_PROGNAME)-sgi-us $(COMMON_REL_DEPS)
  1362.     ./make-release $(OBJDIR) $(XFE_PROGNAME) Netscape "S" sgi-us $(GUESS_CONFIG) $(NEED_YP_VERSION) "$(MCS_CMD)" $(NEED_NLS) $(EXTRA_REL_FILES) $(README_FILE)
  1363.  
  1364. release-sgi-export: $(XFE_PROGNAME)-sgi-export $(COMMON_REL_DEPS)
  1365.     ./make-release $(OBJDIR) $(XFE_PROGNAME) Netscape "S" sgi-export $(GUESS_CONFIG) $(NEED_YP_VERSION) "$(MCS_CMD)" $(NEED_NLS) "$(EXTRA_REL_FILES)" $(README_FILE)
  1366.  
  1367. release-sgi-france: $(XFE_PROGNAME)-sgi-france $(COMMON_REL_DEPS)
  1368.     ./make-release $(OBJDIR) $(XFE_PROGNAME) Netscape "S" sgi-france $(GUESS_CONFIG) $(NEED_YP_VERSION) "$(MCS_CMD)" $(NEED_NLS) "$(EXTRA_REL_FILES)" $(README_FILE)
  1369.  
  1370. #######################################################################
  1371. # Java Jar File
  1372. #
  1373. # The definative shipping JAR files are now made in the win32 build
  1374. # this is just for developers
  1375.  
  1376. zips: $(JAR_NAME)
  1377.  
  1378. $(XPDIST)/classes/$(JAR_NAME): $(BUILD_NUMBER) Makefile $(ALL_CLASS_DEPS)
  1379.     @rm -rf $@
  1380.     @echo "Building `basename $@`"
  1381.     cd $(XPDIST)/classes;                    \
  1382.     if test ! -d META-INF; then mkdir META-INF; fi;        \
  1383.     for d in $(MOZILLA_ZIP); do                \
  1384.         files=`find $$d \( -name '*.class' -o -name '*.gif' -o -name '*.props' -o -name '*.mf' -o -name '*.sf' -o -name '*.rsa' -o -name '*.properties*' \) -print`;            \
  1385.         if test -n $${files:-''}; then $(ZIP) $@ $$files ; fi;    \
  1386.     done;                            \
  1387.  
  1388. $(JAR_NAME): $(XPDIST)/classes/$(JAR_NAME)
  1389.  
  1390. #
  1391. # symbols.gts for Irix, used by gtscc driver. The file needs to
  1392. # be stored in ns/config/symbols.gts. There should be a version
  1393. # checked in there. Use this rule only if you get link errors for
  1394. # C++ members functions which you reference globally.
  1395. # This rule is designed to work on IRIX or Solaris. If it works
  1396. # elsewhere fine, but...  djw Feb/14/97
  1397. #
  1398. $(OBJDIR)/symbols.gts: $(OBJS) $(US_OBJS) $(US_DEPLIBS)
  1399.     @$(MAKE_OBJDIR)
  1400.     rm -f $@
  1401.     nm -p $(OBJS) $(US_OBJS) $(US_DEPLIBS) > $(OBJDIR)/gts_a
  1402.     sed -n 's%.* T \(.*\)%\1%p' $(OBJDIR)/gts_a | sort -u > $(OBJDIR)/gts_d
  1403.     sed -n 's%.* U \(.*\)%\1%p' $(OBJDIR)/gts_a | sort -u > $(OBJDIR)/gts_u
  1404.     comm -23 $(OBJDIR)/gts_d $(OBJDIR)/gts_u > $@
  1405.     rm -f $(OBJDIR)/gts_d $(OBJDIR)/gts_u $(OBJDIR)/gts_a
  1406.  
  1407. symbols.gts: $(OBJDIR)/symbols.gts
  1408.  
  1409. export:: $(JAR_NAME)
  1410.  
  1411. $(VERSION_OBJS): versionn.h
  1412.  
  1413. everything:    all $(ALL_TARGETS)
  1414.  
  1415. symbols:
  1416.     @echo "ALL_TARGETS = $(ALL_TARGETS)"
  1417.     @echo "RELEASES    = $(RELEASES)"
  1418.     @echo "OS_ARCH     = $(OS_ARCH)"
  1419.