#
# The contents of this file are subject to the Netscape Public License
# Version 1.0 (the "NPL"); you may not use this file except in
# compliance with the NPL.  You may obtain a copy of the NPL at
# http://www.mozilla.org/NPL/
#
# Software distributed under the NPL is distributed on an "AS IS" basis,
# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the NPL
# for the specific language governing rights and limitations under the
# NPL.
#
# The Initial Developer of this code under the NPL is Netscape
# Communications Corporation.  Portions created by Netscape are
# Copyright (C) 1998 Netscape Communications Corporation.  All Rights
# Reserved.
#
##########################################################################
#
# Makefile for the Mozilla X front end.
#
# There are N dimensions to a full complement of binaries:
#
#	- target architecture
#	- debug   vs  optimized
#	- normal  vs  "lite"
#	- normal  vs  purified
#   - dynamic vs  statically linked
#
# A directory is needed for each of the first two dimensions (target
# and debug), but executables for all of the others will then be built
# in the same directory from the same .o files.  The files have names
# as follows:
#
#   moz-export          (Dynamically linked with libs in 
#                        ../../dist/<objdir>/bin)
#	mozilla-export      (Statically linked)
#	mozilla-nis-export	(SunOS 4 only)
#	mozilla-export.pure	(SunOS 4 and Solaris only)
#	 ...etc...
#
# The only difference in the executables is which version of config-*.o
# is linked in, and whether or not -lresolv is used.
#
##########################################################################

DEPTH		= ../..
MODULE		= xfe

USE_3PANE	= 1

MICROLINE_LIB	= $(DIST)/lib/libXmL.a

#
# XFE2_DIR:
#
# HPUX_XMU_EXTRA_DIRS: On some HP-UX releases there is no Xmu.  So you
#                      you might need to build your own.  See ftp://ftp.x.org
#
# MOTIF_HACK_DIRS:     Some bug fixes require Motif source code access.
#                      Such hackery cannot be released because of OSF/Motif
#                      licensing restrictions.
#

include $(DEPTH)/config/config.mk
include $(DEPTH)/cmd/unixfe/config/unixfe.mk
include $(DEPTH)/cmd/unixfe/config/motif.mk

DIRS		= \
		  $(XFE2_DIR) \
		  $(HPUX_XMU_EXTRA_DIRS) \
		  $(MOTIF_HACK_DIRS) \
		  icons \
		  DtWidgets \
		  XfeWidgets \
		  Microline3.0/XmL \
		  $(NULL)

REQUIRES	= \
		  XfeWidgets \
		  XfeBm \
		  XfeToolBar \
		  XfeToolTip \
		  XfeComboBox \
		  Microline \
		  addr \
		  applet \
		  xpcom \
		  caps \
		  img \
		  edtplug \
		  jtools \
		  lay \
		  layer \
		  js \
		  libfont \
		  mariner \
		  plds \
		  nspr20 \
		  parse \
		  plugin \
		  plugimpl \
		  hook \
		  pref \
		  rdf \
		  xml \
		  security \
		  softupdt \
		  libreg \
		  style \
		  util \
		  java \
		  $(NULL)

ifdef MOZ_LDAP
REQUIRES	+= ldap
endif

ifdef MOZ_MAIL_NEWS
REQUIRES	+= msg
else
ifdef MOZ_MAIL_COMPOSE
REQUIRES	+= mailto
endif
endif

REQUIRES	+= \
		  xfeicons \
		  progress \
		  privacy \
		  $(NULL)

ifdef MOZ_FULLCIRCLE
REQUIRES	+= fullsoft
endif

ifdef OJI
REQUIRES	+= oji ojiimpl
endif

CSRCS		= \
		  pref_helpers.c \
		  colors.c \
		  colorpicker.c \
		  altmail.c \
		  dragdrop.c \
		  e_kit.c \
		  fonts.c \
		  forms.c \
		  locale.c \
		  menu.c \
		  new_manage.c \
		  outline.c \
		  passwd.c \
		  scroller.c \
		  strids.c \
		  strings.c \
		  visual.c \
		  MozillaWm.c \
		  commands.c \
		  dialogs.c \
		  icons.c \
		  images.c \
		  lay.c \
		  mozilla.c \
		  prefs.c \
		  prefdialogs.c \
		  remote-s.c \
		  scroll.c \
		  selection.c \
		  xfe.c \
		  editor.c \
		  editordialogs.c \
		  addrbk.c \
		  $(NULL)

ifndef MOZ_MAIL_NEWS
CSRCS		+= lite_stubs.c \
		  $(NULL)
endif

ifdef MOZ_MAIL_NEWS
CSRCS		+= \
		  mailattach.c \
		  mailcompose.c \
		  movemail.c \
		  $(NULL)
else
ifdef MOZ_MAIL_COMPOSE
CSRCS		+= \
		  mailattach.c \
		  mailcompose.c \
		  $(NULL)
endif
endif

ifndef NO_UNIX_ASYNC_DNS
CSRCS		+= xfe-dns.c
endif

XFE_PROGNAME	:= mozilla
DSO_PROGNAME	:= moz

GUESS_CONFIG	:= $(shell $(DEPTH)/config/config.guess | sed 's/i[23456]86/x86/')

#######################################################################

CCLD		= $(CCC)
LDFLAGS		= $(CFLAGS)
NOMD_LDFLAGS	= $(NOMD_CFLAGS)
BASIC_DSOS	= -L$(DIST)/bin

ifdef MOZILLA_GPROF
CSRCS		+= gmon.c
LDFLAGS		= $(OPTIMIZER)
$(OBJDIR)/gmon.o:	gmon.c gmon.h
	$(CC) -O -c -o $@ $<
endif

ifdef SUB_UI
CSRCS		+= subui.c	
endif

ifndef NO_LAYERS
CSRCS		+= region.c
endif

ifeq ($(OS_ARCH),HP-UX)
#
# HP requires C++ programs to have main() in a C++ file.
#
CPPSRCS		= cplusplusmain.cc
CFLAGS		+= -DCPLUSPLUS_LINKAGE
endif

OBJS		= $(CSRCS:.c=.o) $(CPPSRCS:.cc=.o)

GARBAGE		+= e_kit_resources.h cxxlink-filter

ICONS_LIB	= $(DIST)/lib/lib$(LITE_PREFIX)xfeicons.a

DTWIDGETS_LIB				= $(DIST)/lib/libDtWidgets.a
XFE_WIDGETS_LIB				= $(DIST)/lib/libXfeWidgets.a
XFE_WIDGETS_BM_LIB			= $(DIST)/lib/libXfeBm.a
XFE_WIDGETS_COMBO_BOX_LIB	= $(DIST)/lib/libXfeComboBox.a
XFE_WIDGETS_CAPTION_LIB		= $(DIST)/lib/libXfeCaption.a
XFE_WIDGETS_TOOL_BAR_LIB	= $(DIST)/lib/libXfeToolBar.a
XFE_WIDGETS_TOOL_TIP_LIB	= $(DIST)/lib/libXfeToolTip.a

ifneq ($(OS_ARCH),IRIX) 
ifneq ($(OS_ARCH),FreeBSD)
DYNAMIC_SYMBOLS_F	= -rdynamic # default
endif
endif
ifeq ($(OS_ARCH),SunOS) 
ifdef NS_USE_NATIVE
DYNAMIC_SYMBOLS_F	= -Bdynamic
else
DYNAMIC_SYMBOLS_F	= # nothing for gcc
endif
endif
ifeq ($(OS_ARCH),OSF1)
DYNAMIC_SYMBOLS_F	=
endif

ifeq ($(OS_ARCH),AIX)
NSPR_LIB	= 
else
# XXX To a DSO...
ifdef FULL_STATIC_BUILD
NSPR_LIB	= $(DIST)/lib/libplds21.a $(DIST)/lib/libplc21.a $(DIST)/lib/libnspr21.a
else
BASIC_DSOS	+= -lplds21 -lplc21 -lnspr21
endif
endif

ifdef DBMALLOC
NSPR_LIB	+= $(DIST)/lib/libdbmalloc.a
endif

XFE2_DIR	= src
XFE2_LIB	= $(DIST)/lib/lib$(LITE_PREFIX)xfe2.a

ifndef DISABLE_MARINER
CFLAGS		+= -DENABLE_MARINER
endif

#
# We need libnet.a in there twice because libmsg and libnet have circular
# dependencies on functions.
#
BASIC_LIBS	= \
		  $(XFE2_LIB) \
		  $(MICROLINE_LIB) \
		  $(ICONS_LIB) \
		  $(DTWIDGETS_LIB) \
		  $(XFE_WIDGETS_BM_LIB) \
		  $(XFE_WIDGETS_TOOL_BAR_LIB) \
		  $(XFE_WIDGETS_TOOL_TIP_LIB) \
		  $(XFE_WIDGETS_COMBO_BOX_LIB) \
		  $(XFE_WIDGETS_LIB) \
		  $(DIST)/lib/libxlate.a \
		  $(DIST)/lib/libmimetype.a \
		  $(DIST)/lib/libnetwork.a	\
		  $(DIST)/lib/libnetcache.a	\
		  $(DIST)/lib/libnetcnvts.a	\
		  $(DIST)/lib/libnetutil.a \
		  $(DIST)/lib/libnetcnvts.a	\
		  $(DIST)/lib/libcnetinit.a	\
		  $(DIST)/lib/libabouturl.a	\
		  $(DIST)/lib/libdataurl.a	\
		  $(DIST)/lib/libfileurl.a	\
		  $(DIST)/lib/libftpurl.a	\
		  $(DIST)/lib/libgophurl.a	\
		  $(DIST)/lib/libhttpurl.a	\
		  $(DIST)/lib/libjsurl.a	\
		  $(DIST)/lib/libmarimurl.a	\
		  $(DIST)/lib/libremoturl.a	\
		  $(DIST)/lib/lib$(LITE_PREFIX)rdf.a \
		  $(DIST)/lib/lib$(LITE_PREFIX)xml.a \
		  $(DIST)/lib/lib$(LITE_PREFIX)lay.a \
		  $(DIST)/lib/libmariner.a \
		  $(DIST)/lib/libimg.a \
		  $(DIST)/lib/libnetwork.a	\
		  $(DIST)/lib/libprivacy.a \
		  $(NULL)

ifdef MOZ_LOC_INDEP
BASIC_LIBS	+= $(DIST)/lib/libli.a
endif

ifdef JAVA_OR_NSJVM
JAVA_JMC	= $(DIST)/lib/libjmc.a	# XXX To be removed...
endif

BASIC_LIBS	+= \
		  $(JAVA_JMC) \
		  $(DIST)/lib/libhook.a \
		  $(DIST)/lib/libparse.a \
		  $(DIST)/lib/lib$(LITE_PREFIX)pref.a \
		  $(DIST)/lib/lib$(LITE_PREFIX)i18n.a \
		  $(DIST)/lib/libpics.a \
		  $(DIST)/lib/libpwcac.a \
		  $(DIST)/lib/libreg.a \
		  $(NULL)

BASIC_LIBS_2	= \
		  $(DIST)/lib/lib$(LITE_PREFIX)xp.a \
		  $(DIST)/lib/libdbm.a \
		  $(DIST)/lib/libcaps.a \
		  $(DIST)/lib/libxpcom.a \
		  $(DIST)/lib/lib$(LITE_PREFIX)rdf.a \
		  $(NULL)

# jwz: link in libmime all the time.
# but it needs to be before libnetutil, and I don't know how to do that,
# so just link against libnetutil twice.

BASIC_LIBS	+= \
		  $(DIST)/lib/libmime.a \
		  $(DIST)/lib/libnetutil.a \
		  $(NULL)

ifdef MOZ_MAIL_NEWS
ifdef MOZ_SECURITY
BASIC_LIBS	+= $(DIST)/lib/libns_mime.a
endif
BASIC_LIBS_2	+= $(DIST)/lib/libldap.a
endif

# Do we need libns_mime.a here if MOZ_MAIL_COMPOSE and MOZ_SECURITY?
#ifdef MOZ_MAIL_COMPOSE
#ifdef MOZ_SECURITY
#BASIC_LIBS	+= $(DIST)/lib/libns_mime.a
#endif
#endif

BASIC_LIBS	+= \
		  $(DIST)/lib/libmisc.a \
		  $(DIST)/lib/libprgrss.a \
		  $(NULL)

ifdef MOZ_LDAP
BASIC_LIBS	+= \
		$(DIST)/lib/libldap.a \
		$(DIST)/lib/liblber.a \
		$(NULL)
endif

ifdef MOZ_MAIL_NEWS
BASIC_LIBS	+= \
		  $(DIST)/lib/libmozmsg.a \
		  $(NULL)
ifdef MOZ_SECURITY
BASIC_LIBS	+= $(DIST)/lib/libmsg.a \
		$(NULL)
endif
BASIC_LIBS	+= $(DIST)/lib/libaddr.a \
		  $(DIST)/lib/libneo.a \
		  $(DIST)/lib/libaddr.a \
		  $(NULL)
endif

ifdef MOZ_MAIL_COMPOSE
BASIC_LIBS	+= $(DIST)/lib/libmailto.a \
		  $(DIST)/lib/libmime.a \
		  $(DIST)/lib/libsmtpurl.a	\
		$(NULL)
endif

ifdef MOZ_MAIL_NEWS
BASIC_LIBS	+= $(DIST)/lib/libnntpurl.a \
		  $(DIST)/lib/libsmtpurl.a	\
		  $(DIST)/lib/libimap4url.a	\
		  $(DIST)/lib/libpop3url.a	\
		  $(DIST)/lib/libmailbxurl.a	\
		  $(DIST)/lib/libcrtldurl.a	\
		  $(NULL)
endif

ifdef MOZ_MAIL_NEWS
ifdef MOZ_LDAP
BASIC_LIBS	+= $(DIST)/lib/libldapurl.a \
		  $(NULL)
endif
endif

ifdef MOZ_CALENDAR
BASIC_LIBS	+= \
		  $(DIST)/lib/libjulian.a \
		  $(DIST)/lib/libnscnv30.a \
		  $(DIST)/lib/libnsuni30.a \
		  $(DIST)/lib/libnsfmt30.a \
		  $(NULL)
endif

BASIC_LIBS	+= \
		  $(DIST)/lib/lib$(LITE_PREFIX)plug.a \
		  $(DIST)/lib/libutil.a \
		  $(DIST)/lib/libfont.a \
		  $(NULL)

ifndef NO_LAYERS
BASIC_LIBS	+= $(DIST)/lib/liblayer.a
endif

########################################################################
# Java
#

ifdef MOZ_JAVA
#
# Monolithic Java
#

BASIC_LIBS	+= \
		  $(DIST)/lib/lib$(LITE_PREFIX)applet.a \
		  $(DIST)/lib/libjrt.a \
		  $(DIST)/lib/libjmd.a \
		  $(NULL)

ifdef MOZ_EDITOR
BASIC_LIBS	+= $(DIST)/lib/libedtplug.a
endif

BASIC_LIBS	+= \
		  $(DIST)/lib/libnsn.a \
		  $(DIST)/lib/libnsc.a \
		  $(DIST)/lib/libjpw.a \
		  $(DIST)/lib/libzpw.a \
		  $(DIST)/lib/libiawt.a \
		  $(DIST)/lib/libmmedia.a \
		  $(DIST)/lib/libsoftupdate.a \
		  $(DIST)/lib/libprgrss.a \
		  $(DIST)/lib/libcon.a \
		  $(DIST)/lib/libjbn.a \
		  $(NULL)

ifdef MOZ_SMARTUPDATE
BASIC_LIBS	+= $(DIST)/lib/libsoftupdate.a $(DIST)/lib/libprgrss.a
endif

ifdef MOZ_SECURITY
BASIC_LIBS	+= $(DIST)/lib/libjsl.a
endif

ifdef MOZ_MAIL_NEWS
BASIC_LIBS	+= $(DIST)/lib/libjsl.a
endif

BASIC_LIBS	+= $(DIST)/lib/libjrt.a

else # !MOZ_JAVA

#
# OJI
#
ifdef MOZ_OJI

BASIC_LIBS	+= $(DIST)/lib/liboji.a

ifdef NSJVM

ifdef MOZ_EDITOR
BASIC_LIBS	+= $(DIST)/lib/libedtplug.a
endif
else # !NSJVM
BASIC_LIBS	+= \
		  $(DIST)/lib/libstubsj.a \
		  $(DIST)/lib/libstubnj.a \
		  $(NULL)
endif # !NSJVM

BASIC_LIBS	+= $(DIST)/lib/libprgrss.a

else  # !MOZ_OJI
# No Monolithic Java, no OJI, just stubs.

BASIC_LIBS	+= \
		  $(DIST)/lib/libstubsj.a \
		  $(DIST)/lib/libstubnj.a \
		  $(NULL)

endif  # !MOZ_OJI
endif  # !MOZ_JAVA

##
## Graphics libs.  See mozilla/cmd/unixfe/config/unixfe.mk.
## 
BASIC_LIBS += \
			$(XFE_PNG_LIB) \
			$(XFE_ZLIB_LIB) \
			$(XFE_JPEG_LIB) \
			$(NULL)

##
## Graphics libs.  See unixfe.mk.
## 
BASIC_DSOS += \
			$(XFE_PNG_DSO) \
			$(XFE_ZLIB_DSO) \
			$(XFE_JPEG_DSO) \
			$(NULL)

ifndef NO_MOCHA
# XXX To a DSO...
ifdef FULL_STATIC_BUILD
BASIC_LIBS	+= $(DIST)/lib/libjs.a $(DIST)/lib/libjsj.a
else
BASIC_DSOS	+= -ljs -ljsj
endif
BASIC_LIBS	+= $(DIST)/lib/libmocha.a
ifdef DOM
# the DOM code calls back into layout.
BASIC_LIBS	+= $(DIST)/lib/liblay.a
endif
endif

ifdef DOM
BASIC_LIBS	+= $(DIST)/lib/libdom.a
endif

# Post-Java libs
BASIC_LIBS	+= $(DIST)/lib/libstyle.a

ifdef MOZ_SECURITY
BASIC_LIBS	+= $(DIST)/lib/libjar.a
else
EXPORT_LIB	= $(DIST)/lib/libhtmldlgs.a $(DIST)/lib/libsecfree.a 
endif

LOCALES		= $(LOCALE_MAP) $(MAIL_IM_HACK) $(NEWS_IM_HACK)

ALL_EXPORT_LIBS	= $(BASIC_LIBS) $(EXPORT_LIB) $(BASIC_LIBS_2) $(NSPR_LIB)

ALL_EXPORT_DSOS	= $(ALL_EXPORT_LIBS:$(DIST)/lib/lib%.a=-l%)
PLUGIN_DSO	= $(DIST)/bin/libnullplugin.so
#
# WEBFONT dso is not in the OFFICAL build yet. It needs to be hooked in
# from the private tree
#
WEBFONT_DSO	=

ifdef BUILD_UNIX_PLUGINS
TEST_PLUGIN	= $(DIST)/bin/libtextplugin.so
endif

ifdef MKSHLIB
ifndef NO_NETSCAPE_SHARED
ifndef NO_BUILD_EXPORT
TARGETS		+= $(OBJDIR)/$(DSO_PROGNAME)-export
endif
endif
endif

ifndef NO_NETSCAPE_STATIC
ifndef NO_BUILD_EXPORT
TARGETS		+= $(OBJDIR)/$(XFE_PROGNAME)-export
endif
endif

X_OBJS		= $(OBJDIR)/$(LITE_PREFIX)config-YYY.o \
		  $(OBJDIR)/license.o \
		  $(OBJDIR)/resources-YYY.o

EXPORT_OBJS	= $(subst YYY,export,$(X_OBJS))
NIS_EXPORT_OBJS	= $(subst YYY,nis-export,$(X_OBJS))

# If the version number changes, all these need to be rebuilt.
# (config-* doesn't need to be in here, since that already has a rule.)
VERSION_OBJS	= $(OBJDIR)/license.o \
		  $(OBJDIR)/resources-export.o \
		  $(OBJDIR)/resources-nis-export.o

#######################################################################

-include $(XFEPRIVDIR)Netscape.mk
include $(DEPTH)/config/rules.mk

NS_RULES_MK	= 1
-include $(XFEPRIVDIR)Netscape.mk

DEFINES		+= -DNEW_DECODERS

ifdef XFE_PREF_ADVANCED_PASSIVE_FTP
DEFINES		+= -DXFE_PREF_ADVANCED_PASSIVE_FTP
endif

ifdef USE_3PANE
DEFINES		+= -DUSE_3PANE
endif

ifdef USE_ABCOM
DEFINES		+= -DUSE_ABCOM
endif

ifdef MOZILLA_XFE_USE_WINNING_FILE_SELECTION
DEFINES		+= -DUSE_WINNING_FILE_SELECTION
endif

INCLUDES	+= -Isrc -I. -I$(DEPTH)/dist/public/nls -I$(DEPTH)/dist/public/security \
		-I$(DEPTH)/dist/public/ldap \
		-I$(DEPTH)/modules/libimg/public \
		-I$(DEPTH)/l10n/us

ifdef MOZ_MAIL_NEWS
INCLUDES	+= -Isrc -I. -I$(DEPTH)/lib/libmsg
endif


#######################################################################
#
# Set defaults for all platforms.  Each OS_ARCH will override this if
# necessary.
#

#
# Developers won't need libTrueDoc.so.  No point having a dependency
# on this when only official builds (release builds) need this.
#
ifndef BUILD_OFFICIAL
NO_WEBFONTS	= 1
endif

# Only SunOS4 needs two versions NIS and DNS.
NIS_SRC		=
NIS_OBJS	=
NIS_LIB		=
DNS_LIB		=

# Only SunOS4 needs separate YP versions.
NEED_YP_VERSION	= 0

# Only BSDI, Linux, and SunOS4 need the nls directory.
NEED_NLS	= 0

# Only SunOS5 (Solaris) has MCS.
MCS_CMD		= true

# Only IRIX 5.x uses this.
EXTRA_POST_LINK_CMD	= echo

#
# The only difference between EXPORT_LDFLAGS and 
# EXPORT_DYN_MOTIF_LDFLAGS is that OTHER_LIBS is
# replaced by OTHER_DYN_MOTIF_LIBS.
#
# OTHER_DYN_MOTIF_LIBS will use something like 
# '-L/foo/bar -lXm' instead of '/foo/bar/libXm.a'
#
EXPORT_LDFLAGS				=\
							$(BASIC_LIBS) \
							$(EXPORT_LIB) \
							$(BASIC_LIBS_2) \
							$(BASIC_DSOS) \
							$(NSPR_LIB) \
							$(OTHER_LIBS)

EXPORT_DYN_MOTIF_LDFLAGS 	=\
							$(BASIC_LIBS) \
							$(EXPORT_LIB) \
							$(BASIC_LIBS_2) \
							$(BASIC_DSOS) \
							$(NSPR_LIB) \
							$(OTHER_DYN_MOTIF_LIBS)

EXPORT_DEPLIBS				=\
							$(BASIC_LIBS) \
							$(EXPORT_LIB) \
							$(BASIC_LIBS_2) \
							$(NSPR_LIB)

DSO_EX_LIBS	= $(EXPORT_LDFLAGS:$(DIST)/lib/lib%.a=-l%)

#######################################################################
#
# Adjust build based on OS_ARCH.
#

########################################
# IBM Machines
ifeq ($(OS_ARCH),AIX)
CCLD		= svxlC -+
#LDFLAGS		= -bGhooksyslibs -bGlibpathexec -bGnoproc
#LDFLAGS		=  -bGnoproc
#
# ??? need to double check
#
LDFLAGS		= -bE:aix_exports -bGhooksyslibs -bGlibpathexec -bGnoproc -bmaxdata:20000000
OTHER_LIBS	= $(MOTIFLIB) -lXt -lXmu -lX11 $(OS_LIBS)
US_LDFLAGS	+= $(AIX_NSPR_LINK)
EXPORT_LDFLAGS	+= $(AIX_NSPR_LINK)
FRANCE_LDFLAGS	+= $(AIX_NSPR_LINK)
EXTRA_REL_FILES	+= $(AIX_NSPR)

ifndef NO_WEBFONTS
EXTRA_REL_FILES	+= $(WEBFONT_DSO)
endif

endif

########################################
# FreeBSD
ifeq ($(OS_ARCH),FreeBSD)
OTHER_LIBS	= /usr/X11R6/lib/libXm.a -L/usr/X11R6/lib -lXt -lXmu -lXext -lX11 -lSM -lICE -lm $(OS_LIBS)
endif

########################################
# NetBSD
ifeq ($(OS_ARCH),NetBSD)

# Work around linker semantics that will never find our own libutil on 1.3.x
ifeq ($(shell uname -r | cut -f2 -d.),3)
FOOL_GMAKE	= $(EXPORT_LDFLAGS:$(DIST)/lib/lib%.a=-l%)
DSO_EX_LIBS	= $(FOOL_GMAKE:-lutil=$(DIST)/lib/libutil.a)
endif

ifdef LIBRUNPATH
OS_LIBS		+= -R$(LIBRUNPATH)
endif

OTHER_LIBS	= -L/usr/X11R6/lib -lXm -lXt -lXmu -lXext -lX11 -lSM -lICE -lm $(OS_LIBS)

endif

########################################
# OpenBSD
# Copied from NetBSD...
ifeq ($(OS_ARCH),OpenBSD)
ifdef LIBRUNPATH
OS_LIBS		+= -R$(LIBRUNPATH)
endif
OTHER_LIBS	= -L/usr/X11R6/lib -lXm -lXt -lXmu -lXext -lX11 -lSM -lICE -lm $(OS_LIBS)
endif

########################################
# BSDI
ifeq ($(OS_ARCH),BSD_OS)
OTHER_LIBS	= $(MOTIF)/libXm.a $(LOC_LIB_DIR)/libXt.a $(X11R6LIBS) $(LOC_LIB_DIR)/libXmu.a \
		  $(LOC_LIB_DIR)/libXext.a $(LOC_LIB_DIR)/libX11.a -lm $(OS_LIBS)

ifeq ($(OS_RELEASE),2.1)
X11R6LIBS	= $(LOC_LIB_DIR)/libSM.a $(LOC_LIB_DIR)/libICE.a
OTHER_LIBS	+= -lipc
endif

ifeq ($(OS_RELEASE),4.0)
X11R6LIBS	= $(LOC_LIB_DIR)/libSM.a $(LOC_LIB_DIR)/libICE.a
endif

NEED_NLS	= 1

endif

########################################
# HP Machines
ifeq ($(OS_ARCH),HP-UX)

ifeq ($(OS_RELEASE),A.09)
HPUX_XLIBS	= -L/usr/lib/X11R5 -L/usr/contrib/X11R5/lib -L/usr/lib/Motif1.2
endif
ifeq ($(OS_RELEASE),B.10)
INCLUDES	+= -I.
HPUX_XLIBS	= -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -L/usr/lib/Motif1.2_R6 -L/usr/lib/Motif1.2
endif
ifeq ($(OS_RELEASE),B.11)
HPUX_XLIBS	= -L/usr/lib/X11R6 -L/usr/contrib/X11R6/lib -L/usr/lib/Motif2.1
endif

HPUX_RESOURCE_HACK	= -Wp,-H16384

OTHER_LIBS	= $(HPUX_XLIBS) -lXm -L$(DIST)/lib -lXmu -lXt -lX11 -lXext $(OS_LIBS)

ifdef MOZ_EDITOR

ifdef NS_USE_GCC
CCLD		= $(CCC)
else
EXPORT_DEPLIBS	+= cxxlink-filter
US_DEPLIBS	+= cxxlink-filter
CCLD		= CC -tl,./cxxlink-filter
endif

ifndef NO_WEBFONTS
EXTRA_REL_FILES	+= $(WEBFONT_DSO)
endif

#
# On HP, enable SHLIB_PATH
#
EXTRA_POST_LINK_CMD	= chatr +s enable

endif

endif

########################################
# SGI Machines
ifeq ($(OS_ARCH),IRIX)

#
# Linker will report that '-lSgm' does not resolve any symbols, but it
# should not be removed. SGI dynamically opens the library depending on
# the setting of some resources (e.g. "useEnhancedFSB")
#
OTHER_LIBS	= -lSgm $(MOTIFPATCH_LIB) -lXm -lXmu -lXt -lX11 -lXext -lgen -laudio -lm $(OS_LIBS)

#
# On Irix, tag the executable for use by the Indigo Magic Desktop.
# This magic number comes from /usr/lib/filetype/install/netscape.ftr
# shipped by SGI along with their n.nnS version of Mozilla.
#
ifeq ($(OS_RELEASE),5)
EXTRA_POST_LINK_CMD	= /usr/sbin/tag 67150
endif

#
# If we are using gtscc, we must use it as the linker, and we
# can only build statically (no shared libs).
#
CCLD		= CC
ifdef USE_GTSCC
ifndef NO_GTSCC
CCLD		= $(DIST)/bin/gtscc $(GTSCC_LD_OPTIONS) -gtsfile $(DEPTH)/config/$(OBJDIR)/db.gts -gtsrootdir $(DEPTH)
TARGETS		= $(OBJDIR)/$(XFE_PROGNAME)-export
endif
endif

ifndef NO_WEBFONTS
EXTRA_REL_FILES	+= $(WEBFONT_DSO)
endif

endif

########################################
# Linux
ifeq ($(OS_ARCH),Linux)

# Override the definition of OS_LIBS in config/Linux.mk.
ifeq ($(USE_PTHREADS),1)
OS_LIBS			= -lpthread -lm -ldl -lc
else
OS_LIBS			= -lm -ldl
endif

XFE_MOTIF_LDFLAGS	= \
			$(MOZILLA_XFE_GLIBC_BROKEN_LOCALE_FLAGS) \
			$(MOZILLA_XFE_MOTIF_FLAGS) \
			$(MOZILLA_XFE_MOTIF_PRINT_SHELL_FLAGS)

XFE_X11_LDFLAGS		= \
			$(MOZILLA_XFE_X11_DYNAMIC_PATHS) \
			-lXt \
			-lXmu \
			$(MOZILLA_XFE_MOTIF_XPM_FLAGS) \
			$(MOZILLA_XFE_X11_DYNAMIC_FLAGS) \
			-lXext \
			$(MOZILLA_XFE_X11_SM_FLAGS)

OTHER_LIBS		= $(XFE_MOTIF_LDFLAGS) $(XFE_X11_LDFLAGS) $(OS_LIBS)

# Dynamic motif binary
ifdef MOZILLA_XFE_MOTIF_HAVE_DYNAMIC_LIB

XFE_DYN_MOTIF_LDFLAGS	= \
			$(MOTIFPATCH_LIB) \
			$(MOZILLA_XFE_GLIBC_BROKEN_LOCALE_FLAGS) \
			$(MOZILLA_XFE_MOTIF_DYNAMIC_PATHS) \
			$(MOZILLA_XFE_MOTIF_DYNAMIC_FLAGS) \
			$(MOZILLA_XFE_MOTIF_PRINT_SHELL_FLAGS)

EXTRA_EXPORT_OBJS	= $(OBJDIR)/$(XFE_PROGNAME)-motif-export
EXTRA_EXPORT_BINARY	= $(EXTRA_EXPORT_OBJS)

PLUGIN_DSO		+= $(DIST)/bin/libnullplugin-dynMotif.so

OTHER_DYN_MOTIF_LIBS	= $(XFE_DYN_MOTIF_LDFLAGS) $(XFE_X11_LDFLAGS) $(OS_LIBS)

endif

# Web fonts are only available on x86
ifeq ($(OS_RELEASE)$(CPU_ARCH),2.0x86)

ifndef NO_WEBFONTS
EXTRA_REL_FILES	+= $(WEBFONT_DSO)
endif

endif

endif

########################################
# NCR SYSV 4.0
ifeq ($(OS_ARCH),NCR)
OTHER_LIBS	= -L/usr/X/lib $(MOTIFLIB) -lXt -lXmu -lXext -lX11 -lgen -lm $(OS_LIBS)
endif

########################################
# NEC SYSV 4.2
ifeq ($(OS_ARCH),NEC)
OTHER_LIBS	= -L/usr/abiccs/lib/X11R5 $(MOTIFLIB) -lXt -lXmu -lXext -lX11 -lresolv -lgen -lm $(OS_LIBS)
endif

########################################
# Dec Machines
ifeq ($(OS_ARCH),OSF1)

#
# We would like to link OSF1 static.
# This is because of motif problems (BadMatch errors on non-default visual)
# on 3.2 and 3.0 (and not on 2.0).
# But libX11 needs to be dynamic, otherwise the locale stuff doesn't work
# and you get warnings and core dump when pasting into Mozilla.
# Also, libXm must be dynamic, otherwise Japanese text widgets hang
# the process.
# 
OTHER_LIBS	= -lXm -lXmu -lXt -lX11 -lXext -ldnet_stub -lm -lots $(OS_LIBS)

endif

########################################
# SNI ReliantUNIX (SINIX)
ifeq ($(OS_ARCH),SINIX)
OTHER_LIBS	= -lXm -lXmu -lXt -lX11 -lXext $(OS_LIBS)
endif

########################################
# SCO OpenServer
ifeq ($(OS_ARCH),SCOOS)
OTHER_LIBS	= $(LIB_XMOS) -lXm -lXt -lXmu -lXext -lX11 -lm -lPW $(OS_LIBS)

ifdef NEED_XMOS
LIB_XMOS	= $(OBJDIR)/Xmos.o
endif

endif

########################################
# Sun Machines
ifeq ($(OS_ARCH),SunOS)

ifeq ($(OS_RELEASE),4.1)

ALL_TARGETS	+= $(OBJDIR)/$(XFE_PROGNAME)-nis-export

OTHER_LIBS	= -L$(MOTIF)/lib $(MOTIF)/lib/libXm.a $(MOTIF)/lib/libXmu.a $(MOTIF)/lib/libXt.a \
		  $(MOTIF)/lib/libXext.a $(MOTIF)/lib/libX11.a

ifndef NO_WEBFONTS
EXTRA_REL_FILES	+= $(WEBFONT_DSO)
endif

ifdef MOZ_EDITOR
OTHER_LIBS	+= -L$(NS_LIB)

#
# Need this guy because the one in libg++.a is (still?) broken.
#
BASIC_LIBS	+= $(OBJDIR)/regex.o
$(OBJDIR)/regex.o:	/lib/libc.a
	ar x /lib/libc.a regex.o && mv regex.o $@
endif

#
# Need our own popen to fix the SunOS popen problem.
#
BASIC_LIBS	+= $(OBJDIR)/popen.o
CSRCS		+= popen.c

EXPORT_LDFLAGS	+= -lm

# SunOS had 2 executables. Only the non-nis version need this
NIS_OBJS	= $(OBJDIR)/dns-stub.o
NIS_SRCS	= dns-stub.c
NIS_LIB		= $(NIS_OBJS)
DNS_LIB		= -lresolv

# For release only.
# This is only for SunOS as it has both nis and non-nis
# version of the browser packaged together.
EXTRA_EXPORT_OBJS	= $(XFE_PROGNAME)-nis-export

NEED_YP_VERSION	= 1
NEED_NLS	= 1

endif

########################################
ifneq (,$(filter 5 5.5,$(OS_RELEASE)))

USRLIBDIR	:= /usr/openwin/lib
MCS_CMD		= mcs -d

ifeq ($(CPU_ARCH),sparc)
OTHER_LIBS	= $(MOTIFPATCH_LIB) $(MOTIFLIB) -lXt -lXmu -lXext -lX11 $(OS_LIBS) -lgen -lresolv -lm
ifndef NO_WEBFONTS
EXTRA_REL_FILES	+= $(WEBFONT_DSO)
endif
else
OTHER_LIBS	= $(MOTIFLIB) -lXt -lXmu -lXext -lX11 $(OS_LIBS) -lm
LDFLAGS		= $(NOMD_CFLAGS)
endif

EXPORT_LDFLAGS	= -z defs -L$(MOTIF)/lib -L$(USRLIBDIR) -R$(MOTIF)/lib \
		  -R$(USRLIBDIR) $(BASIC_LIBS) $(EXPORT_LIB) $(BASIC_LIBS_2) \
		  $(BASIC_DSOS) $(NSPR_LIB) $(OTHER_LIBS)

endif
endif

########################################
# SCO Unixware 2.1
ifeq ($(OS_ARCH),UNIXWARE)

ifdef NEED_XMOS
LIB_XMOS	= $(OBJDIR)/Xmos.o
endif

OTHER_LIBS	= $(LIB_XMOS) -L/usr/X/lib -lXm -lXt -lXmu -lXext -lX11 -lm

EXPORT_LDFLAGS	+= -lresolv -lsocket -lc /usr/ucblib/libucb.a

endif

########################################
# Data General DG/UX
ifeq ($(OS_ARCH),DGUX)

OTHER_LIBS	= $(MOTIFLIB) $(OS_LIBS)

endif

#######################################################################

$(MICROLINE_LIB):
	cd Microline3.0/XmL; $(MAKE)

$(ICONS_LIB):
	cd icons; $(MAKE)

$(DTWIDGETS_LIB):
	cd DtWidgets; $(MAKE)

$(XFE_WIDGETS_LIB):
	cd XfeWidgets/Xfe; $(MAKE)

$(XFE_WIDGETS_BM_LIB):
	cd XfeWidgets/XfeBm; $(MAKE)

$(XFE_WIDGETS_COMBO_BOX_LIB):
	cd XfeWidgets/XfeComboBox; $(MAKE)

$(XFE_WIDGETS_CAPTION_LIB):
	cd XfeWidgets/XfeCaption; $(MAKE)

$(XFE_WIDGETS_TOOL_BAR_LIB):
	cd XfeWidgets/XfeToolBar; $(MAKE)

$(XFE_WIDGETS_TOOL_TIP_LIB):
	cd XfeWidgets/XfeToolTip; $(MAKE)

$(XFE2_LIB):
	cd src; $(MAKE)

$(TARGETS): $(OBJS)

#######################################################################
# Rules to build license.o files

$(OBJDIR)/license.o: $(OBJDIR)/LICENSE.c Makefile
	$(CC) -c -o $@ $<

ifndef NETSCAPE_MK
$(OBJDIR)/LICENSE.c:
	@echo 'const char fe_LicenseData[] = "This license intentionally left blank.";' > $@
endif

#######################################################################
# Rules to build config*.o files

$(OBJDIR)/$(LITE_PREFIX)config-export.o: config.c versionn.h Makefile $(OBJS) $(EXPORT_DEPLIBS)
	@echo Generating $@ from config.c...;				      \
	X=' ';								      \
	VN=`sed -n$$X 's/^#define VERSION_NUMBER[ 	]*\(.*\)$$/\1/p' versionn.h` ; \
	$(CC) -c $(CFLAGS) -o $@ config.c				      \
		-DCONFIG="$(GUESS_CONFIG)"				      \
		-DDATE="`date +%d-%h-%y`"				      \
		-DVERSION=$${VN}					      \
		-UHAVE_NIS -UFRANCE_VERSION -DEXPORT_VERSION -UUS_VERSION -UVENDOR_ANIM

$(OBJDIR)/$(LITE_PREFIX)config-nis-export.o: config.c versionn.h Makefile $(OBJS) $(NIS_OBJS) $(EXPORT_DEPLIBS)
	@echo Generating $@ from config.c...;				      \
	X=' ';								      \
	VN=`sed -n$$X 's/^#define VERSION_NUMBER[ 	]*\(.*\)$$/\1/p' versionn.h` ; \
	$(CC) -c $(CFLAGS) -o $@ config.c				      \
		-DCONFIG="$(GUESS_CONFIG)"				      \
		-DDATE="`date +%d-%h-%y`"				      \
		-DVERSION=$${VN}					      \
		-DHAVE_NIS -UFRANCE_VERSION -DEXPORT_VERSION -UUS_VERSION -UVENDOR_ANIM

#######################################################################
# Rules to build resources

.SUFFIXES: .ad

# DO NOT CHANGE THE ORDER OF THE DEPENDENCIES.  Add new ones to the end.
resources-%.o: RESOURCES-%.c Makefile
	$(CC) -c $(HPUX_RESOURCE_HACK) -o $@ $<

RESOURCES-%.c: Netscape-%.ad ad2c Makefile
	@echo 'char *fe_fallbackResources[] = {' > $@; \
	./ad2c $< >> $@; \
	echo '0};' >> $@

# Explicit dependency list to ensure that e_kit_resources.h gets built.
$(OBJDIR)/e_kit.o:	e_kit.c e_kit_resources.h

# Turn ekit app-defaults into a C file
e_kit_resources.h: e_kit.ad
	@echo 'char* fe_ekitDefaultDatabase = ' > $@
	cat $< | tr '[\001-\272]' '[\106-\377]' | \
	od -b | sed 's/^[0-7][0-7]* *\(.*\)/\\\1/; \
		s/ /\\/g;s/\(.*\)/ "\1"/;s/^ *"\\"$$//' >> $@
	@echo ';' >> $@

$(OBJDIR)/Netscape-nis-export.ad $(OBJDIR)/Netscape-export.ad: Makefile resources resources-translations versionn.h strs make-resources $(LOCALE_MAP)
	@./make-resources $@ Netscape Netscape versionn.h strs resources resources-translations $(MOZ_USER_DIR) "" export $(LOCALES)

#######################################################################
# The "-export" targets

$(OBJDIR)/$(DSO_PROGNAME)-export: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
	@$(MAKE_OBJDIR)
	rm -f $@
ifdef NETSCAPE_OFFICIAL
	rm -rf $(OBJDIR)/objs.txt
	@echo Creating a list of all object files ... objs.txt
	@echo $(OBJS) > $(OBJDIR)/objs.txt
	@echo $(EXPORT_OBJS) >> $(OBJDIR)/objs.txt
	@echo $(DSO_EX_LIBS) >> $(OBJDIR)/objs.txt
	@echo Creating a list of all symbols ... symbols.txt
	$(PERL) listsymb.pl objs.txt symbols.txt
	@echo Generating dispatch table ... dispunix.h dispunix.c cmoffset.h
	$(PERL) gendisp.pl symbols.txt dispunix.h dispunix.c cmoffset.h
	$(CC) -c -o $(OBJDIR)/dispunix.o -I$(DIST)/include dispunix.c
	$(CCLD) -o $@ $(LDFLAGS) $(OBJDIR)/dispunix.o $(OBJS) $(EXPORT_OBJS) -L$(DIST)/bin -L$(DIST)/lib $(DSO_EX_LIBS) $(DNS_LIB)
else
	$(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(EXPORT_OBJS) -L$(DIST)/bin -L$(DIST)/lib $(DSO_EX_LIBS) $(DNS_LIB)
endif
	@$(EXTRA_POST_LINK_CMD) $@

$(OBJDIR)/$(DSO_PROGNAME)-export.mcv: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
	@$(MAKE_OBJDIR)
	rm -f $@
	$(CCLD) -o $@ $(CFLAGS) $(OBJS) $(EXPORT_OBJS) -L$(DIST)/bin -L$(DIST)/lib $(DSO_EX_LIBS) $(DNS_LIB) -lmalloc_cv
	@$(EXTRA_POST_LINK_CMD) $@

$(OBJDIR)/$(DSO_PROGNAME)-export.pure: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
	@$(MAKE_OBJDIR)
	rm -f $@
	$(PURIFY) $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(EXPORT_OBJS) -L$(DIST)/bin -L$(DIST)/lib $(DSO_EX_LIBS) $(DNS_LIB)
	@$(EXTRA_POST_LINK_CMD) $@

$(OBJDIR)/$(DSO_PROGNAME)-export.quantify: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
	@$(MAKE_OBJDIR)
	rm -f $@
	$(QUANTIFY) $(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(EXPORT_OBJS) -L$(DIST)/bin -L$(DIST)/lib $(DSO_EX_LIBS) $(DNS_LIB)
	@$(EXTRA_POST_LINK_CMD) $@

$(OBJDIR)/$(XFE_PROGNAME)-export: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
	@$(MAKE_OBJDIR)
	rm -f $@
	$(CCLD) -o $@ $(DYNAMIC_SYMBOLS_F) $(LDFLAGS) $(OBJS) $(EXPORT_OBJS) $(EXPORT_LDFLAGS) $(DNS_LIB)
	@$(EXTRA_POST_LINK_CMD) $@

$(OBJDIR)/$(XFE_PROGNAME)-export.pure: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
	@$(MAKE_OBJDIR)
	rm -f $@
	$(PURIFY) $(CCLD) -o $@ $(NOMD_LDFLAGS) $(OBJS) $(EXPORT_OBJS) $(EXPORT_LDFLAGS) $(DNS_LIB)
	@$(EXTRA_POST_LINK_CMD) $@

$(OBJDIR)/$(XFE_PROGNAME)-export.quantify: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
	@$(MAKE_OBJDIR)
	rm -f $@
	$(QUANTIFY) $(CCLD) -o $@ $(NOMD_LDFLAGS) $(OBJS) $(EXPORT_OBJS) $(EXPORT_LDFLAGS) $(DNS_LIB)
	@$(EXTRA_POST_LINK_CMD) $@

$(OBJDIR)/$(XFE_PROGNAME)-export.prof: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
	@$(MAKE_OBJDIR)
	rm -f $@
	$(CCLD) -p -o $@ $(LDFLAGS) $(OBJS) $(EXPORT_OBJS) $(EXPORT_LDFLAGS) $(DNS_LIB)
	@$(EXTRA_POST_LINK_CMD) $@

$(OBJDIR)/$(XFE_PROGNAME)-nis-export: $(OBJS) $(NIS_EXPORT_OBJS) $(NIS_OBJS) $(EXPORT_DEPLIBS)
	@$(MAKE_OBJDIR)
	rm -f $@
	$(CCLD) -o $@ $(LDFLAGS) $(OBJS) $(NIS_EXPORT_OBJS) $(EXPORT_LDFLAGS) $(NIS_LIB)
	@$(EXTRA_POST_LINK_CMD) $@

#
# Build a dynamic Motif version.
#
ifeq ($(OS_ARCH),Linux)
ifdef MOZILLA_XFE_MOTIF_HAVE_DYNAMIC_LIB
$(OBJDIR)/$(XFE_PROGNAME)-motif-export: $(OBJS) $(EXPORT_OBJS) $(EXPORT_DEPLIBS)
	@$(MAKE_OBJDIR)
	rm -f $@
	$(CCLD) -o $@ $(DYNAMIC_SYMBOLS_F) $(LDFLAGS) $(OBJS) $(EXPORT_OBJS) $(EXPORT_DYN_MOTIF_LDFLAGS) $(DNS_LIB)
	@$(EXTRA_POST_LINK_CMD) $@
endif
endif

#---------------- Misc link targets follow ----------------------#

# Make a dynamic export executable using malloc_cv by default.
mcv:	$(OBJDIR)/$(DSO_PROGNAME)-export $(OBJDIR)/$(DSO_PROGNAME)-export.mcv

# Make a purified, static export executable by default.
pure:	$(OBJDIR)/$(XFE_PROGNAME)-export $(OBJDIR)/$(XFE_PROGNAME)-export.pure

# Trying out quantify.
quantify:	$(OBJDIR)/$(XFE_PROGNAME)-export $(OBJDIR)/$(XFE_PROGNAME)-export.quantify

# Use gtscc to find dead code globals.
unreferenced: $(OBJS) $(NET_EXPORT_OBJS) $(BASIC_LIBS) $(EXPORT_LIB) $(BASIC_LIBS_2) $(NSPR_LIB) $(DIST)/bin/gtscc 
	@$(MAKE_OBJDIR)
	rm -f $@
	$(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 > $@

# Some dependencies that -MDupdate isn't getting.
$(OBJDIR)/strids.o:	xfe_err.h
$(OBJDIR)/strings.o:	xfe_err.h

ifeq ($(OS_ARCH),AIX)

#
# In first. Need to double check
#
# This fixes a 4.5-specific problem caused by including /usr/include/strings.h unnecessarily.
$(OBJDIR)/mozilla.o: mozilla.c
	@$(MAKE_OBJDIR)
	$(CC) -o $@ -c $(CFLAGS) -D_H_STRINGS $<
#
# end 
#
AIX_HACK	:= $(notdir $(AIX_NSPR))

# Install nspr dynamic library for AIX.
$(AIX_HACK): $(AIX_NSPR)
	$(INSTALL) -m 644 $< .
endif

install:: $(AIX_HACK) $(EXTRA_REL_FILES) $(TARGETS)
ifdef TARGETS
	$(INSTALL) $(filter-out tweak_nspr,$(TARGETS)) $(DIST)/bin
endif

$(VERSION_OBJS): versionn.h

#
# For some reason the -include's in this file aren't working,
# so until I figure it out, if Netscape.mk doesn't exist, just
# create a dummy file. --briano
#
$(XFEPRIVDIR)Netscape.mk:
ifdef XFEPRIVDIR
	@-mkdir -p $(XFEPRIVDIR)
endif
	@touch $@

everything:	all $(ALL_TARGETS)

symbols:
	@echo "ALL_TARGETS = $(ALL_TARGETS)"
	@echo "RELEASES    = $(RELEASES)"
	@echo "OS_ARCH     = $(OS_ARCH)"
	@echo "FC_PLATFORM = $(FC_PLATFORM)"
