gecko-dev/config/makefile.win
2001-10-19 07:02:54 +00:00

138 lines
3.7 KiB
Plaintext

# 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.org code.
#
# 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):
#//------------------------------------------------------------------------
#//
#// Makefile for MOZILLA/CONFIG - various commands used by other makefiles
#//
#//------------------------------------------------------------------------
!if "$(MOZ_BITS)" == "16"
!error This makefile must be build using 32-bit tools
!endif
#//------------------------------------------------------------------------
#//
#// Specify the depth of the current directory relative to the
#// root of MOZILLA
#//
#//------------------------------------------------------------------------
DEPTH = ..
#// Specify any "command" targets. (ie. DIRS, INSTALL_FILES, ...)
#// (these must come before the common makefiles are included)
#//
#// DIRS - There is a subdirectory to process
#// INSTALL_FILES - Files to be installed in the distribution area
#//
#//------------------------------------------------------------------------
GARBAGE = *.obj *.sbr *.pdb build_number nsBuildID.h
!ifdef MOZ_COVERAGE
GARBAGE = $(GARBAGE) trace.dll trace.lib trace.exp
!endif
EXPORTS = nsBuildID.h
#//------------------------------------------------------------------------
#//
#// Include the common makefile rules
#//
#//------------------------------------------------------------------------
include <$(DEPTH)/config/config.mak>
include <$(DEPTH)/config/rules.mak>
!ifdef MOZILLA_OFFICIAL
_BN_OFFICIAL=1
!else
_BN_OFFICIAL=
!endif
# update build number from within make script
build_number:
$(PERL) -I. bdate.pl $@ $(_BN_OFFICIAL)
nsBuildID.h: build_number nsBuildID.h.in
$(RM) $@
$(PERL) -I. aboutime.pl $@ build_number nsBuildID.h.in
#// Rule to set the timebomb on official mozilla builds
#//
#// Rules to build make utils
#//
#CFLAGS = /FR /Zi -MDd /W4
CFLAGS = /O2 /GB /MD
makecopy.exe:: makecopy.cpp
$(CC) $(CFLAGS) $**
mangle.exe:: mangle.c
$(CC) $(CFLAGS) $**
mantomak.exe:: mantomak.c
$(CC) $(CFLAGS) $**
bin2rc.exe:: bin2rc.c
$(CC) $(CFLAGS) $**
makedep.exe:: makedep.cpp
$(CC) -MT /O2 /GB $**
!ifdef MOZ_COVERAGE
trace.dll:: trace.obj pldhash.obj
$(LD) /nologo /debug /libpath:$(DIST)/lib /dll /out:$@ $** nspr4.lib imagehlp.lib
pldhash.obj:: $(DEPTH)/xpcom/ds/pldhash.c
$(CC) /c /nologo /Od /Z7 /I$(DEPTH)/xpcom/ds /I$(DEPTH)/dist/include/nspr $**
trace.obj:: trace.cpp
$(CC) /c /nologo /Od /Z7 /DMOZ_SRC=\"$(MOZ_SRC)\" /I$(DEPTH)/xpcom/ds /I$(DEPTH)/dist/include/nspr $**
!endif
export:: \
makecopy.exe \
mangle.exe \
mantomak.exe \
bin2rc.exe \
!ifndef NO_MFC
makedep.exe \
!endif
build_number \
nsBuildID.h \
!ifdef MOZ_COVERAGE
trace.dll \
!endif
$(NULL)
!ifdef MOZ_COVERAGE
$(MAKE_INSTALL) trace.dll $(DIST)/bin
$(MAKE_INSTALL) trace.lib $(DIST)/lib
$(MAKE_INSTALL) trace.dll $(DIST)/install
$(MAKE_INSTALL) $(DIST)/bin/nspr4.dll $(DIST)/install
!endif
$(RM) $(DIST)\bin\chrome\chromelist.txt
#install::
# $(RM) $(DIST)\bin\chrome\installed-chrome.txt
FORCE::