mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-06 00:55:37 +00:00
ecfc89cf82
adding code coverage into the make system. generates order files to rearrange the functions in the dll. reduces the resident set size of the app while running.
148 lines
3.9 KiB
Plaintext
148 lines
3.9 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
|
|
#//
|
|
#//------------------------------------------------------------------------
|
|
|
|
!ifdef MOZ_FULLCIRCLE
|
|
INSTALL_FILE_LIST=$(MOZ_TOOLS)\bin\fullsoft.dll $(MOZ_TOOLS)\bin\talkback.cnt $(MOZ_TOOLS)\bin\talkback.exe $(MOZ_TOOLS)\bin\talkback.hlp
|
|
INSTALL_DIR=$(DIST)\bin
|
|
!endif
|
|
|
|
GARBAGE = *.obj *.sbr *.pdb build_number nsBuildID.h
|
|
|
|
!ifdef MOZ_COVERAGE
|
|
GARBAGE = $(GARBAGE) trace.dll trace.lib trace.exp
|
|
!endif
|
|
|
|
#//------------------------------------------------------------------------
|
|
#//
|
|
#// 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 $**
|
|
|
|
trace.dll:: trace.obj pldhash.obj
|
|
link /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$(DIST)/include $**
|
|
|
|
trace.obj:: trace.cpp
|
|
$(CC) /c /nologo /Od /Z7 /DMOZ_SRC=\"$(MOZ_SRC)\" /I$(DEPTH)/xpcom/ds /I$(DIST)/include $**
|
|
|
|
export:: \
|
|
makecopy.exe \
|
|
mangle.exe \
|
|
mantomak.exe \
|
|
bin2rc.exe \
|
|
makedep.exe \
|
|
build_number \
|
|
nsBuildID.h \
|
|
!ifdef MOZ_COVERAGE
|
|
trace.dll \
|
|
!endif
|
|
$(NULL)
|
|
$(MAKE_INSTALL) nsBuildID.h $(PUBLIC)
|
|
!ifdef MOZ_COVERAGE
|
|
$(MAKE_INSTALL) trace.dll $(DIST)/bin
|
|
$(MAKE_INSTALL) trace.lib $(DIST)/lib
|
|
!endif
|
|
|
|
!ifdef MOZ_FULLCIRCLE
|
|
|
|
master.pl: build_number
|
|
$(PERL) build-number.pl
|
|
|
|
master.ini: master.pl
|
|
$(RM) $@
|
|
$(PERL) master.pl
|
|
|
|
install:: master.ini
|
|
$(MAKE_INSTALL) master.ini $(DIST)\bin\
|
|
!endif
|
|
|
|
#install::
|
|
# $(RM) $(DIST)\bin\chrome\installed-chrome.txt
|
|
|
|
FORCE::
|