| #! gmake |
| |
| # |
| # ***** BEGIN LICENSE BLOCK ***** |
| # Version: MPL 1.1/GPL 2.0/LGPL 2.1 |
| # |
| # The contents of this file are subject to the Mozilla 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/MPL/ |
| # |
| # 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 the Netscape Portable Runtime (NSPR). |
| # |
| # The Initial Developer of the Original Code is |
| # Netscape Communications Corporation. |
| # Portions created by the Initial Developer are Copyright (C) 1998-2000 |
| # the Initial Developer. All Rights Reserved. |
| # |
| # Contributor(s): |
| # |
| # Alternatively, the contents of this file may be used under the terms of |
| # either the GNU General Public License Version 2 or later (the "GPL"), or |
| # the GNU Lesser General Public License Version 2.1 or later (the "LGPL"), |
| # in which case the provisions of the GPL or the LGPL are applicable instead |
| # of those above. If you wish to allow use of your version of this file only |
| # under the terms of either the GPL or the LGPL, and not to allow others to |
| # use your version of this file under the terms of the MPL, indicate your |
| # decision by deleting the provisions above and replace them with the notice |
| # and other provisions required by the GPL or the LGPL. If you do not delete |
| # the provisions above, a recipient may use your version of this file under |
| # the terms of any one of the MPL, the GPL or the LGPL. |
| # |
| # ***** END LICENSE BLOCK ***** |
| |
| |
| MOD_DEPTH = . |
| topsrcdir = @top_srcdir@ |
| srcdir = @srcdir@ |
| VPATH = @srcdir@ |
| |
| include $(MOD_DEPTH)/config/autoconf.mk |
| |
| MAKE := $(patsubst -j%,,$(MAKE)) -j1 |
| |
| DIRS = config pr lib |
| |
| ifdef MOZILLA_CLIENT |
| # Make nsinstall use absolute symlinks by default for Mozilla OSX builds |
| # http://bugzilla.mozilla.org/show_bug.cgi?id=193164 |
| ifeq ($(OS_ARCH),Darwin) |
| ifndef NSDISTMODE |
| NSDISTMODE=absolute_symlink |
| export NSDISTMODE |
| endif |
| endif |
| endif |
| |
| DIST_GARBAGE = config.cache config.log config.status |
| |
| all:: config.status export |
| |
| include $(topsrcdir)/config/rules.mk |
| |
| config.status:: configure |
| ifeq ($(OS_ARCH),WINNT) |
| sh $(srcdir)/configure --no-create --no-recursion |
| else |
| ./config.status --recheck && ./config.status |
| endif |
| |
| # |
| # The -ll option of zip converts CR LF to LF. |
| # |
| ifeq ($(OS_ARCH),WINNT) |
| ZIP_ASCII_OPT = -ll |
| endif |
| |
| # Delete config/autoconf.mk last because it is included by every makefile. |
| distclean:: |
| @echo "cd pr/tests; $(MAKE) $@" |
| @$(MAKE) -C pr/tests $@ |
| rm -f config/autoconf.mk |
| rm -f `cat unallmakefiles` unallmakefiles |
| |
| release:: |
| echo $(BUILD_NUMBER) > $(RELEASE_DIR)/$(BUILD_NUMBER)/version.df |
| @if test -f imports.df; then \ |
| echo "cp -f imports.df $(RELEASE_DIR)/$(BUILD_NUMBER)/imports.df"; \ |
| cp -f imports.df $(RELEASE_DIR)/$(BUILD_NUMBER)/imports.df; \ |
| else \ |
| echo "echo > $(RELEASE_DIR)/$(BUILD_NUMBER)/imports.df"; \ |
| echo > $(RELEASE_DIR)/$(BUILD_NUMBER)/imports.df; \ |
| fi |
| cd $(RELEASE_DIR)/$(BUILD_NUMBER)/$(OBJDIR_NAME); \ |
| rm -rf META-INF; mkdir META-INF; cd META-INF; \ |
| echo "Manifest-Version: 1.0" > MANIFEST.MF; \ |
| echo "" >> MANIFEST.MF; \ |
| cd ..; rm -f mdbinary.jar; zip -r mdbinary.jar META-INF bin lib; \ |
| rm -rf META-INF; \ |
| cd include; \ |
| rm -rf META-INF; mkdir META-INF; cd META-INF; \ |
| echo "Manifest-Version: 1.0" > MANIFEST.MF; \ |
| echo "" >> MANIFEST.MF; \ |
| cd ..; rm -f mdheader.jar; zip $(ZIP_ASCII_OPT) -r mdheader.jar *; \ |
| rm -rf META-INF |
| ifeq ($(OS_ARCH),WINNT) |
| @if test ! -d $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER); then \ |
| rm -rf $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER); \ |
| echo "making directory $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)"; \ |
| mkdir -p $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER); \ |
| fi |
| @if test ! -d $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)/$(RELEASE_OBJDIR_NAME); then \ |
| rm -rf $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)/$(RELEASE_OBJDIR_NAME); \ |
| echo "making directory $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)/$(RELEASE_OBJDIR_NAME)"; \ |
| mkdir -p $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)/$(RELEASE_OBJDIR_NAME); \ |
| fi |
| else |
| @if test ! -d $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER); then \ |
| rm -rf $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER); \ |
| echo "making directory $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)"; \ |
| $(NSINSTALL) -D $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER); \ |
| chmod 775 $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER); \ |
| fi |
| @if test ! -d $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)/$(RELEASE_OBJDIR_NAME); then \ |
| rm -rf $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)/$(RELEASE_OBJDIR_NAME); \ |
| echo "making directory $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)/$(RELEASE_OBJDIR_NAME)"; \ |
| $(NSINSTALL) -D $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)/$(RELEASE_OBJDIR_NAME); \ |
| chmod 775 $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)/$(RELEASE_OBJDIR_NAME); \ |
| fi |
| endif |
| cd $(RELEASE_DIR)/$(BUILD_NUMBER); \ |
| cp -f version.df imports.df $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER); \ |
| chmod 664 $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)/version.df; \ |
| chmod 664 $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)/imports.df; \ |
| cd $(OBJDIR_NAME); \ |
| cp -f mdbinary.jar $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)/$(RELEASE_OBJDIR_NAME); \ |
| chmod 664 $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)/$(RELEASE_OBJDIR_NAME)/mdbinary.jar; \ |
| cd include; \ |
| cp -f mdheader.jar $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)/$(RELEASE_OBJDIR_NAME); \ |
| chmod 664 $(MDIST)/$(MOD_NAME)/$(BUILD_NUMBER)/$(RELEASE_OBJDIR_NAME)/mdheader.jar |
| |
| package: |
| @echo "cd pkg; $(MAKE) publish" |
| $(MAKE) -C pkg publish |
| |
| depend: |
| @echo "NSPR20 has no dependencies. Skipped." |