diff options
author | cls%seawood.org <devnull@localhost> | 2001-03-01 05:04:23 +0000 |
---|---|---|
committer | cls%seawood.org <devnull@localhost> | 2001-03-01 05:04:23 +0000 |
commit | 3cdac5663ce9a88604a32cca7336ce610e4d2801 (patch) | |
tree | 3e5a52e75bb5c1c2faa57c68fcc71674fdc0157d | |
parent | 07b0e52d4dc9ce91dc6ae04cae47c1144b1af3a9 (diff) | |
download | nspr-hg-3cdac5663ce9a88604a32cca7336ce610e4d2801.tar.gz |
Fix problem of not being able to do debug & opt builds under win32 in the same tree by forcing nspr to always use objdir.
Bug #70445
-rw-r--r-- | gmakefile.win | 75 |
1 files changed, 75 insertions, 0 deletions
diff --git a/gmakefile.win b/gmakefile.win new file mode 100644 index 00000000..d9fb574b --- /dev/null +++ b/gmakefile.win @@ -0,0 +1,75 @@ +#!gmake +# +# The contents of this file are subject to the Mozilla Public License +# Version 1.1 (the "MPL"); you may not use this file except in +# compliance with the MPL. You may obtain a copy of the MPL at +# http://www.mozilla.org/MPL/ +# +# Software distributed under the MPL is distributed on an "AS IS" basis, +# WITHOUT WARRANTY OF ANY KIND, either express or implied. See the MPL +# for the specific language governing rights and limitations under the +# NPL. +# +# The Initial Developer of this code under the MPL is Netscape +# Communications Corporation. Portions created by Netscape are +# Copyright (C) 2001 Netscape Communications Corporation. All Rights +# Reserved. +# + + +ifndef MOZ_SRC_FLIPPED +$(error MOZ_SRC_FLIPPED is not set) +endif + +ifndef MOZ_TOP +MOZ_TOP=mozilla +endif + +MOZ_DIST_FLIPPED = $(MOZ_SRC_FLIPPED)/mozilla/dist + +ifdef MOZ_DEBUG +MOZ_OBJDIR = WIN32_D.OBJ +else +MOZ_OBJDIR = WIN32_O.OBJ +endif + +NSPR_CONFIGURE := ../configure \ + --with-mozilla \ + --includedir=$(MOZ_DIST_FLIPPED)/include \ + --bindir=$(MOZ_DIST_FLIPPED)/$(MOZ_OBJDIR)/bin \ + --libdir=$(MOZ_DIST_FLIPPED)/$(MOZ_OBJDIR)/lib + +ifeq (,$(MOZ_DEBUG)) +NSPR_CONFIGURE := $(NSPR_CONFIGURE) --enable-optimize --disable-debug +endif + +define MAKE_OBJDIR +if test ! -d $(@D) ; then rm -rf $(@D) ; nsinstall -D $(@D) ; fi +endef + + +all:: build_all + +# Argh. nmake keeps the cwd from cmd to cmd and gmake does not +# Furthermore, shmsdos doesn't support '&&' so there's a chance the +# 'cd' could fail and configure would be run in the wrong dir +# +$(MOZ_OBJDIR)/config.status: check_old configure configure.in + @$(MAKE_OBJDIR) + cd $(MOZ_OBJDIR)/ ; \ + sh $(NSPR_CONFIGURE) + +build_all: $(MOZ_OBJDIR)/config.status + gmake -C $(MOZ_OBJDIR) + +clobber_all: $(MOZ_OBJDIR)/config.status + gmake -C $(MOZ_OBJDIR) clobber_all + +distclean: check_old + rm -rf WIN32_D.OBJ WIN32_O.OBJ + +check_old: + @if test -f Makefile; then gmake distclean; fi + + + |