gecko-dev/build/unix/Makefile.in
seawood%netscape.com c0ec608df6 Add 'make install' target to build. It's "MRE-friendly". (See http://www.mozilla.org/projects/embedding/MRE.html for details.)
Changes:
* Added EXTRA_COMPONENTS variable to build.  Use it to automagically install files into the components dir.
* Added SYSINSTALL variable.  Use it install files onto the system.
* Move mozilla-config generation from configure to makefiles
* mozilla-config will now generate paths based upon the MRE-based directory layout.
* Generate mozilla script from template

The installation heirarchy currently looks like:
$prefix -> /bin/mozilla
           /bin/mozilla-config
           /include/mozilla-ver/*
           /lib/mozilla-ver  (mozappdir)
                            /components
                            /res
                            /defaults
                            /chrome

There is preliminary build support for MRE dirs as well though the component manager hasn't had MRE support added yet.

$prefix -> /lib/mre/mre-ver  (mredir)
                            /components
2002-04-25 02:52:44 +00:00

66 lines
1.9 KiB
Makefile

#
# The contents of this file are subject to the Netscape Public
# License Version 1.1 (the "License"); you may not use this file
# except in compliance with the License. You may obtain a copy of
# the License at http://www.mozilla.org/NPL/
#
# Software distributed under the License is distributed on an "AS
# IS" basis, WITHOUT WARRANTY OF ANY KIND, either express or
# implied. See the License for the specific language governing
# rights and limitations under the License.
#
# The Original Code is Mozilla Communicator client code,
# released March 31, 1998.
#
# The Initial Developer of the Original Code is Netscape Communications
# Corporation. Portions created by Netscape are
# Copyright (C) 1998 Netscape Communications Corporation. All
# Rights Reserved.
#
# Contributor(s):
#
DEPTH = ../..
topsrcdir = @top_srcdir@
srcdir = @srcdir@
VPATH = @srcdir@
include $(DEPTH)/config/autoconf.mk
include $(topsrcdir)/config/rules.mk
# Hack to make sure that mozilla-config has the proper nspr dependencies
ifdef MOZ_NATIVE_NSPR
FULL_NSPR_CFLAGS=$(shell $(NSPR_CONFIG) --cflags)
FULL_NSPR_LIBS=$(shell $(NSPR_CONFIG) --libs)
else
FULL_NSPR_CFLAGS=-I$(includedir)/nspr
FULL_NSPR_LIBS=$(subst -L$(libdir),-L$(mozappdir),$(shell $(DEPTH)/nsprpub/config/nspr-config --libs))
endif
_DEFS = $(subst \",\\\\\",$(ACDEFINES))
mozilla-config:: mozilla-config.in Makefile.in Makefile
cat $< | sed \
-e "s|%prefix%|$(prefix)|" \
-e "s|%exec_prefix%|$(exec_prefix)|" \
-e "s|%includedir%|$(includedir)|" \
-e "s|%libdir%|$(mozappdir)|" \
-e "s|%DEFS%|$(_DEFS)|" \
-e "s|%FULL_NSPR_LIBS%|$(FULL_NSPR_LIBS)|" \
-e "s|%FULL_NSPR_CFLAGS%|$(FULL_NSPR_CFLAGS)|" > $@
libs:: mozilla-config
chmod 755 $<
$(INSTALL) -m 755 $< $(DIST)/bin
libs:: $(srcdir)/run-mozilla.sh
$(INSTALL) $< $(DIST)/bin
install:: run-mozilla.sh
$(SYSINSTALL) $(IFLAGS2) $< $(DESTDIR)$(mozappdir)
install:: mozilla-config
$(SYSINSTALL) $(IFLAGS2) $< $(DESTDIR)$(bindir)