mirror of
https://github.com/mozilla/gecko-dev.git
synced 2024-11-26 06:11:37 +00:00
cc763887fa
Now that we have moz.build, we can be guaranteed that any flags we add in moz.build will be added after everything else has been setup. So any uses of MODULE_OPTIMIZE_FLAGS can be moved to moz.build's CFLAGS/CXXFLAGS without any unusual repercussions. We do have to verify that MOZ_OPTIMIZE is in effect, though.
128 lines
3.4 KiB
Makefile
128 lines
3.4 KiB
Makefile
# -*- Makefile -*-
|
|
#
|
|
# This Source Code Form is subject to the terms of the Mozilla Public
|
|
# License, v. 2.0. If a copy of the MPL was not distributed with this
|
|
# file, You can obtain one at http://mozilla.org/MPL/2.0/.
|
|
|
|
# IMPORTANT: Disable NSBUILDROOT for this directory only, otherwise we have
|
|
# a recursive rule for finding nsinstall and the Perl scripts.
|
|
ifdef NSBUILDROOT
|
|
override NSBUILDROOT :=
|
|
endif
|
|
|
|
include $(topsrcdir)/config/config.mk
|
|
|
|
# L10n jobs are doing make -C config manually before anything else,
|
|
# and need nsinstall to be built as a consequence.
|
|
ifdef COMPILE_ENVIRONMENT
|
|
export:: host
|
|
|
|
ifneq (WINNT,$(HOST_OS_ARCH))
|
|
# Ensure nsinstall is atomically created
|
|
nsinstall$(HOST_BIN_SUFFIX): $(HOST_PROGRAM)
|
|
cp $^ $@.tmp
|
|
mv $@.tmp $@
|
|
|
|
NSINSTALL_EXECUTABLES := nsinstall$(HOST_BIN_SUFFIX)
|
|
NSINSTALL_DEST := $(DIST)/bin
|
|
NSINSTALL_TARGET := host
|
|
INSTALL_TARGETS += NSINSTALL
|
|
endif
|
|
endif
|
|
|
|
ifndef JS_STANDALONE
|
|
HEADERS_FILES = \
|
|
$(DEPTH)/mozilla-config.h \
|
|
$(NULL)
|
|
HEADERS_DEST := $(DIST)/include
|
|
HEADERS_TARGET := export
|
|
INSTALL_TARGETS += HEADERS
|
|
endif
|
|
|
|
include $(topsrcdir)/config/rules.mk
|
|
|
|
HOST_CFLAGS += -DUNICODE -D_UNICODE
|
|
|
|
ifndef JS_STANDALONE
|
|
ifndef MOZ_PROFILE_USE
|
|
# Generate a new buildid every time we "export" in config... that's only
|
|
# supposed to be once per-build!
|
|
export::
|
|
ifdef MOZ_BUILD_DATE
|
|
printf '%s' $(MOZ_BUILD_DATE) > buildid
|
|
else
|
|
$(PYTHON) $(topsrcdir)/toolkit/xre/make-platformini.py --print-buildid > buildid
|
|
endif
|
|
endif
|
|
endif
|
|
|
|
ifdef WRAP_SYSTEM_INCLUDES
|
|
export-preqs = \
|
|
$(call mkdir_deps,system_wrappers) \
|
|
$(NULL)
|
|
|
|
export:: $(export-preqs)
|
|
$(PYTHON) -m mozbuild.action.preprocessor $(DEFINES) $(ACDEFINES) \
|
|
-DMOZ_TREE_CAIRO=$(MOZ_TREE_CAIRO) \
|
|
-DMOZ_TREE_PIXMAN=$(MOZ_TREE_PIXMAN) \
|
|
-DMOZ_NATIVE_HUNSPELL=$(MOZ_NATIVE_HUNSPELL) \
|
|
-DMOZ_NATIVE_BZ2=$(MOZ_NATIVE_BZ2) \
|
|
-DMOZ_NATIVE_ZLIB=$(MOZ_NATIVE_ZLIB) \
|
|
-DMOZ_NATIVE_PNG=$(MOZ_NATIVE_PNG) \
|
|
-DMOZ_NATIVE_JPEG=$(MOZ_NATIVE_JPEG) \
|
|
-DMOZ_NATIVE_LIBEVENT=$(MOZ_NATIVE_LIBEVENT) \
|
|
-DMOZ_NATIVE_LIBVPX=$(MOZ_NATIVE_LIBVPX) \
|
|
-DMOZ_NATIVE_ICU=$(MOZ_NATIVE_ICU) \
|
|
$(srcdir)/system-headers | $(PERL) $(topsrcdir)/nsprpub/config/make-system-wrappers.pl system_wrappers
|
|
$(INSTALL) system_wrappers $(DIST)
|
|
|
|
GARBAGE_DIRS += system_wrappers
|
|
endif
|
|
|
|
ifdef WRAP_STL_INCLUDES
|
|
ifdef GNU_CXX
|
|
stl_compiler = gcc
|
|
else
|
|
ifdef _MSC_VER
|
|
stl_compiler = msvc
|
|
endif
|
|
endif
|
|
endif
|
|
|
|
ifdef stl_compiler
|
|
STL_WRAPPERS_SENTINEL = $(DIST)/stl_wrappers/sentinel
|
|
|
|
$(STL_WRAPPERS_SENTINEL): $(srcdir)/make-stl-wrappers.py $(srcdir)/$(stl_compiler)-stl-wrapper.template.h $(srcdir)/stl-headers $(GLOBAL_DEPS)
|
|
$(PYTHON) $(srcdir)/make-stl-wrappers.py stl_wrappers $(stl_compiler) $(srcdir)/$(stl_compiler)-stl-wrapper.template.h $(srcdir)/stl-headers
|
|
$(PYTHON) $(srcdir)/nsinstall.py -t stl_wrappers $(DIST)
|
|
touch $(STL_WRAPPERS_SENTINEL)
|
|
|
|
export:: $(STL_WRAPPERS_SENTINEL)
|
|
|
|
GARBAGE += $(STL_WRAPPERS_SENTINEL)
|
|
GARBAGE_DIRS += stl_wrappers
|
|
endif
|
|
|
|
GARBAGE += \
|
|
$(FINAL_LINK_COMPS) $(FINAL_LINK_LIBS) $(FINAL_LINK_COMP_NAMES) $(srcdir)/*.pyc *.pyc
|
|
|
|
FORCE:
|
|
|
|
ifndef JS_STANDALONE
|
|
check-preqs += check-jar-mn
|
|
endif
|
|
check-preqs += check-makefiles
|
|
|
|
check:: $(check-preqs)
|
|
|
|
check-jar-mn::
|
|
$(MAKE) -C tests/src-simple check-jar
|
|
$(MAKE) -C tests/src-simple check-flat
|
|
$(MAKE) -C tests/src-simple check-flat USE_EXTENSION_MANIFEST=1
|
|
ifneq (,$(filter-out WINNT,$(OS_ARCH)))
|
|
$(MAKE) -C tests/src-simple check-symlink
|
|
endif
|
|
|
|
check-makefiles:
|
|
$(MAKE) -C tests/makefiles/autodeps check
|