Commit Graph

631 Commits

Author SHA1 Message Date
Mike Hommey
8e735c799c Bug 1062668 - Only process the "include" install manifest when invoking the binaries target. r=gps 2014-09-05 10:27:39 +09:00
Mike Hommey
51f6cc88c1 Bug 1062219 - Don't build build/clang-plugin as an external directory. r=jcranmer 2014-09-04 17:44:01 +09:00
Joshua Cranmer
73512f7996 Bug 1035599: Merge the mozilla-central and comm-central objdir, r=gps
This change merges mozilla-central and comm-central into having a single
topobjdir file but retaining two topsrcdirs (and two build systems). This state
is hopefully only the first part of a series of changes that eliminate the
comm-central build system partial clone completely.

--HG--
extra : rebase_source : 02aa2c4551df405d9783ac85cc41fe90b67bf057
extra : amend_source : d3cc677d59603648165bf65afa28413f2c40b2fd
2014-08-07 19:27:58 -05:00
Mike Hommey
e8b438350d Bug 1049281 - Move third-party build system "drivers" to config/external, and stop using static dirs. r=gps
--HG--
rename : intl/icu/Makefile.in => config/external/icu/Makefile.in
rename : config/nspr/Makefile.in => config/external/nspr/Makefile.in
rename : config/nspr/moz.build => config/external/nspr/moz.build
rename : security/build/Makefile.in => config/external/nss/Makefile.in
rename : security/build/moz.build => config/external/nss/moz.build
rename : security/build/nspr-dummy.def => config/external/nss/nspr-dummy.def
rename : security/build/nss.def => config/external/nss/nss.def
rename : security/build/nss.mk => config/external/nss/nss.mk
2014-08-07 02:58:52 +09:00
Ted Mielczarek
2adda7e09f bug 1033938 - rm full symbols.zip during buildsymbols. r=glandium 2014-08-01 07:36:47 -04:00
Ian Neal
7251c1c7cd Bug 1046468 - toolkit/library has an inter-dependency on ldap for comm-central that it needs to be told about in the moz.build world r=glandium 2014-07-31 17:33:25 +01:00
Ted Mielczarek
d6179253e0 bug 462159 - Use install manifests to track header files from dist/include back to srcdir in symbolstore.py. r=gps 2014-07-18 16:33:34 -04:00
Mike Hommey
a62cdc4fa7 Bug 1043344 - Move libraries and programs build to the compile tier. r=gps 2014-07-25 07:14:40 +09:00
Mike Shal
7099264c72 Bug 978211 - various asan/mar/pretty/mach fixes; r=glandium
- Linux ASAN nightly builds do not do update packaging
 - Only set mar properties if the mar file was actually created
 - Unset MOZ_SIGN_CMD for pretty-* steps
2014-07-03 22:14:59 -04:00
Mike Shal
4dd3387350 Bug 978211 - Windows configs; r=glandium 2014-07-03 19:28:43 -04:00
Mike Hommey
c52d31562a Bug 1035543 - Remove the MOZ_PSEUDO_DERECURSE variable. r=gps 2014-07-10 14:11:52 +09:00
Mike Shal
d7fca1e6f9 Bug 978211 - add 'pretty' targets for automation; r=glandium 2014-07-02 23:15:10 -04:00
Wes Kocher
d73c4453a2 Backed out changeset a95aada9a565 (bug 978211) under suspicion of breaking xpcshell tests on a CLOSED TREE 2014-07-07 15:38:51 -07:00
Mike Shal
481f2ae7f8 Bug 978211 - add 'pretty' targets for automation; r=glandium 2014-07-02 23:15:10 -04:00
Carsten "Tomcat" Book
8e86bf906b Merge mozilla-central to mozilla-inbound 2014-06-26 15:51:31 +02:00
Mike Hommey
5961cd2c11 Bug 1030598 - Fix make export race condition after bug 1028563. r=gps 2014-06-26 15:26:16 +09:00
Wes Kocher
b683b68251 Backed out 2 changesets (bug 1027890) for B2G Windows Build bustage on a CLOSED TREE
Backed out changeset bcd694f0e95d (bug 1027890)
Backed out changeset 49cadfcde709 (bug 1027890)
2014-06-24 18:33:46 -07:00
Mike Hommey
195a1f903a Bug 1027890 - Remove all sorts of build system code dedicated to pymake. r=gps 2014-06-25 08:38:28 +09:00
Mike Shal
0bfb7d3b01 Bug 978211 - add an automation/build target for post-build steps; r=glandium 2014-05-16 14:37:31 -04:00
Ms2ger
9f8242b9b4 Bug 1020165 - Remove empty makefiles; r=mshal 2014-06-06 10:06:24 +02:00
Mike Hommey
b161fa67a5 Bug 1027890 - Remove all sorts of build system code dedicated to pymake. r=gps 2014-06-25 08:38:28 +09:00
Mike Hommey
d5fc3d2867 Bug 986301 - Fix --with-libxul-sdk after bug 969164. r=gps 2014-03-21 11:52:25 +09:00
Mike Hommey
9dfe3dbc7b Bug 969164 - Replace most BUILDING_JS uses with JS_STANDALONE. r=gps
Before making top-level traverse js/src moz.build files, there was a need to
distinguish between top-level traversing e.g. top-level moz.build or
config/moz.build and js/src traversing them. With a single traversal of both
moz.build sets, we now only need to distinguish between js standalone builds
and gecko builds.

There is still, however, a need to distinguish between top-level vs. js/src
configure runs on gecko builds to make them subconfigure icu and libffi from
top-level instead of js/src in js standalone builds, or when choosing to make
js/src's config.status do something when run or not.
2014-02-11 10:37:47 +09:00
Mike Hommey
69e70086e0 Bug 969164 - Traverse js/src moz.builds from top-level configure. r=gps
Before, we would run configure in both top-level and js/src, and both
configures would traverse their own set of moz.builds, without actual
knowledge about the other. With this change, both configures still run,
but only top-level traverses moz.build files, and uses js/src's
config.status when traversing its moz.build files. This allows a better
sharing of information between both build systems and the removal of many
hacks.

This also moves running libffi and icu configure to top-level.

Standalone js builds still have their own configure doing moz.build traversal,
as before.

--HG--
rename : config/autoconf.mk.in => config/autoconf-js.mk.in
rename : config/emptyvars.mk.in => config/emptyvars-js.mk.in
2014-02-11 10:37:47 +09:00
Mike Hommey
71a7b66679 Bug 950298 - Make the js build system use top-level as its root objdir. r=gps 2014-01-14 07:38:40 +09:00
L. David Baron
2b3c1e040b Bug 388971: Enable the 'make check' test checking for bad relocations. r=bsmedberg 2013-12-03 12:51:08 -08:00
Mike Hommey
881a7c1554 Bug 943728 - Replace double quotes with single quotes in Makefiles (or remove them when it makes sense). r=mshal 2013-12-03 06:34:21 +09:00
Ted Mielczarek
b1b4271ebe Bug 941120 - Stop running make check twice in js/src. r=gps 2013-11-20 15:14:31 -05:00
Carsten "Tomcat" Book
debadf6309 merge fx-team to mozilla-central 2013-11-07 14:24:24 +01:00
Mike Hommey
f932a1fe70 Bug 862770 - Fix --disable-compile-environment a little. r=gps
--HG--
rename : config/makefiles/target_libs.mk => config/makefiles/target_binaries.mk
rename : js/src/config/makefiles/target_libs.mk => js/src/config/makefiles/target_binaries.mk
2013-11-07 10:37:45 +09:00
Mike Hommey
9c6d59da57 Bug 934332 - Don't install tests under js/src in --with-libxul-sdk builds. r=gps 2013-11-07 10:37:45 +09:00
Matt Brubeck
a0bd27f087 Bug 934713 - Explicitly use $(PYTHON) to run config.status [r=gps]
This fixes a mysterious bug where config.status has the wrong sys.path when
this recipe is built using GNU Make on Windows.
2013-11-06 13:16:44 -08:00
Mike Hommey
5a237ede03 Bug 934344 - Fix race condition in parallel export, between js/xpconnect/src and xpcom/idl-parser. r=mshal 2013-11-05 07:39:28 +09:00
Gregory Szorc
4c8f0feb82 Bug 877308 - Change when build backend update check it performed; r=glandium
Before, we checked if config.status was stale in any entrant Makefile
(top level or child directory). This had undesirable side-effects for
partial tree builds, notably that if the build backend was out of date,
the current Makefile was invalidated.

With this patch, we only regenerate the build config automatically in
full/toplevel builds. If an outdated build config is detected on partial
tree builds, we error. The impact of this is mitigated by having mach
build automatically ensure the build config is current.

--HG--
extra : rebase_source : a3a2c1d2bf68d1c0727352ebd9bfb785654e45bf
2013-10-29 14:53:52 -07:00
Mike Hommey
2eefafb740 Bug 930896 - Keep track of files generated by a build backend. r=gps 2013-10-29 08:00:30 +09:00
Mike Hommey
a0a21e4262 Bug 926906 - Drop support for GNU make < 3.81. r=gps 2013-10-17 07:55:14 +09:00
Mike Hommey
2fa8e3c610 Bug 925993 - Ensure clang-plugin is built before everything else; r=gps 2013-10-12 08:29:46 +09:00
Mike Hommey
fe52c2ade4 Bug 921307 - Aggregate dependencies in subdirectories that are still recursed with pseudo derecurse. r=gps 2013-10-03 05:51:19 +09:00
Mike Hommey
190b98c019 Bug 905973 part 3 - Add a "binaries" tier that optimizes for recompilation times. r=gps 2013-10-02 08:53:23 +09:00
Mike Hommey
d12986c1ca Bug 921770 - Avoid doing things with js/src from top-level when building --with-libxul-sdk. r=gps 2013-10-01 08:25:38 +09:00
Gregory Szorc
d03c8a0359 Bug 921070 - Remove precompile tier; r=glandium
It made sense at the time. We now have inverted tiers and will soon have
derecursified building. This doesn't make sense any more.
2013-09-26 16:05:10 -07:00
Gregory Szorc
cce25ec859 Bug 901990 - Part 3: Don't purge _tests during PGO builds; r=glandium
CLOSED TREE
2013-09-24 15:05:43 -07:00
Mike Hommey
5e60e741d9 Bug 915648 - Parallelize make export. r=gps 2013-09-20 13:30:17 +09:00
Mike Hommey
bbe7163df0 Bug 907365 - Pseudo-derecursify the build (opt-in). r=gps
Also remove the compile tier added in bug 912856 when pseudo-derecursify is disabled.
2013-09-20 10:44:11 +09:00
Gregory Szorc
6c15858170 Bug 911375 - Part 2: Convert uses of PurgeManifest to InstallManifest; r=glandium 2013-09-16 17:49:44 -07:00
Mike Hommey
265e821783 Bug 912856 - Add a compile 'tier' to build OBJS and HOST_OBJS. r=gps 2013-09-06 09:19:32 +09:00
Mike Hommey
61416bf7d3 Bug 912832 - Inverse tiers and subtiers for build traversal. r=gps 2013-09-06 09:17:59 +09:00
Mike Hommey
af0d7db986 Bug 912795 - make export doesn't handle install/purge manifests. r=gps
At the same time, fix a few things in the top-level Makefile.in.
2013-09-05 15:07:57 +09:00
Mike Hommey
f8bc7fa754 Bug 912293 - Remove now redundant boilerplate from Makefile.in. r=gps 2013-09-05 09:01:46 +09:00
Mike Hommey
09b7788e66 Bug 911634 - Create a .mozconfig.mk in the objdir when starting a build, and include it from config.mk. r=gps 2013-09-05 09:01:44 +09:00
Gregory Szorc
ea490cb122 Bug 896797 - Part 3: Use install manifests for managing dist/include; r=glandium 2013-09-03 22:51:58 -07:00
Phil Ringnalda
d0f16d5486 Back out ce03cc2994aa:ae9f95fc1136 (bug 896797) for SpiderMonkey shell build bustage
CLOSED TREE
2013-09-03 23:21:30 -07:00
Gregory Szorc
2b5f3df5d4 Bug 896797 - Part 3: Use install manifests for managing dist/include; r=glandium 2013-09-03 22:51:58 -07:00
Mike Hommey
f0d1c7b4a5 Bug 909076 - Remove useless rules for make export at the top-level directory. r=gps 2013-08-27 11:17:23 +09:00
Gregory Szorc
8a761b0d06 Bug 896797 - Part 1: Ensure js/src moz.build is up to date before building; r=glandium 2013-08-22 16:30:11 -07:00
Ms2ger
af2c13c793 Bug 906412 - Cleanup some random parts of the build system; r=mshal 2013-08-22 08:55:59 +02:00
Gregory Szorc
962efc1ea1 Bug 906101 - Move tier make logic into own .mk file and don't use from rules.mk; r=glandium
The existing tier traversal logic is only used in the top-level Makefile
but was present in rules.mk. This meant it was getting evaluated for
every Makefile. This was silly and thus the logic has mostly been moved into
its own .mk file and is only included for the root Makefile.
2013-08-20 13:03:39 -07:00
Gregory Szorc
61a66aa0f0 Bug 905879 - More robust tier tracking; r=glandium 2013-08-20 00:06:32 -07:00
Ed Morley
a4ae239c93 Bug 901898 - Remove codesighs now that it's no longer run in automation; r=gps 2013-08-12 13:10:41 +01:00
Gregory Szorc
329e5f905d Bug 891474 - Establish unified directory for Python build actions; r=glandium, ted
--HG--
rename : config/purge_directories.py => python/mozbuild/mozbuild/action/purge_manifests.py
rename : build/xpccheck.py => python/mozbuild/mozbuild/action/xpccheck.py
extra : rebase_source : 46bc960aa62c1117a7bf215653b768dc78b48d9a
2013-07-11 13:42:26 -07:00
Gregory Szorc
26b6273c6d Bug 884587 - Part 1: Perform file removal with purge manifests; r=glandium
--HG--
extra : rebase_source : bfe9c0eb27d5b19e26e557af8762bb45c21b949e
2013-06-25 11:04:03 -07:00
Ehsan Akhgari
86c57d04d0 Backed out 2 changesets (bug 884587) because of Windows build bustage on a CLOSED TREE
Backed out changeset 0244a34bc419 (bug 884587)
Backed out changeset 796961a384b4 (bug 884587)
2013-06-25 16:38:55 -04:00
Gregory Szorc
b39bae5dc8 Bug 884587 - Part 1: Perform file removal with purge manifests; r=glandium 2013-06-25 11:04:03 -07:00
Ryan VanderMeulen
66ccaf8f81 Backed out 2 changesets (bug 884587)
Backed out changeset 447ff64adbb1 (bug 884587)
Backed out changeset 8d90527c22c6 (bug 884587)
2013-06-25 15:22:37 -04:00
Gregory Szorc
184599b8bf Bug 884587 - Part 1: Perform file removal with purge manifests; r=glandium 2013-06-25 11:04:03 -07:00
Gregory Szorc
d68186dcef Bug 874078 - Move RecursiveMakeBackend.built rule to rules.mk; r=glandium 2013-05-20 23:26:20 -07:00
Gregory Szorc
3d9c02c05e Bug 873809 - Proper dependencies under pymake; r=khuey
--HG--
extra : rebase_source : dddc589c1052470312644b7f5f4e41e566e824e6
2013-05-19 13:19:00 -07:00
Gregory Szorc
2ef5ff2f09 Bug 848530 - Check for moz.build traversal at top of build; r=glandium
One of the first actions an invoked Makefile now does is check to see if
*any* moz.build file or Makefile.in is out of date. If so, config.status
is executed to rebuild the build backend.

Since we always perform this check as part of a build, we no longer need
special handling for out of date moz.build files during traversals. This
results in the removal of a significant amount of code!

Another upside of the change is that if a moz.build file is modified
during building, we don't (potentially) modify the build backend from
under the in-progress build. Thus the only race condition that remains
is if a moz.build is mutated during moz.build reading. This window (a
few seconds) is significantly shorter than the time of a full build
(minutes).

This patch should also enable us to remove empty Makefile.in files
without requiring a clobber.
2013-05-17 10:54:56 -07:00
Gregory Szorc
c0e82f1e41 Bug 860957 - Support for invoking non-recursive targets during partial tree builds; r=glandium 2013-05-17 10:54:53 -07:00
Mike Hommey
23f8401b3a Bug 861178 - Don't purge dist/ data during the MOZ_PROFILE_USE pass of a PGO build. r=ted 2013-04-12 16:03:06 +02:00
Mike Hommey
b4867af0b3 Bug 860371 - Remove dist/bin when starting a build. r=gps 2013-04-11 09:33:48 +02:00
Mike Hommey
86990b89fa Backout changeset 859361dea2f0 (bug 860371) for windows PGO regressions 2013-04-12 16:06:56 +02:00
Mike Hommey
6bb70049b5 Bug 860371 - Remove dist/bin when starting a build. r=gps 2013-04-11 09:33:48 +02:00
Gregory Szorc
d93f593627 Bug 837323 - Automatically clobber when CLOBBER is updated; r=ted, glandium 2013-03-29 10:34:58 -07:00
Ryan VanderMeulen
ef526e586a Backed out changesets 206bb159d62f, a6ab3e11f721, and a61aa08ab4ac (bug 837323) for frequent Windows fatal clobber errors on a CLOSED TREE. 2013-04-08 09:59:45 -04:00
Gregory Szorc
3e2b83c475 Bug 837323 - Automatically clobber when CLOBBER is updated; r=ted 2013-03-29 10:34:58 -07:00
Gregory Szorc
3211cb743c Bug 847369 - Hook up js/src to check make target; r=glandium
This is a regression from bug 784841.
2013-03-04 11:11:55 -08:00
Gregory Szorc
c3f2ed9adf Bug 784841 - Part 18e: Convert /build, /config, and core build system; r=ted 2013-02-25 12:47:18 -08:00
Ms2ger
4951adbb99 Merge mozilla-central into build-system 2013-01-03 10:46:16 +01:00
Gregory Szorc
28aed6452e Bug 818646 - Add mozbuild Python tests to |make check|; r=ted 2012-12-21 12:43:46 -08:00
Mike Hommey
cfcd4c91a8 Bug 822584 - Run elfhack on packaged binaries instead of built binaries. r=ted 2013-01-02 10:17:32 +01:00
Mike Hommey
c51f5d814d Bug 804303 part 1 - Cleanup how the mozjemalloc/jemalloc3 glue is set up, attempting to make it clearer. r=jlebar,r=khuey
--HG--
rename : memory/build/extraMallocFuncs.c => memory/build/jemalloc_config.c
rename : memory/mozjemalloc/jemalloc.h => memory/build/mozmemory.h
rename : memory/build/extraMallocFuncs.c => memory/build/mozmemory_wrap.c
2012-12-07 09:32:24 +01:00
Jim Blandy
96292fe7f4 Bug 775789: Install .gdbinit correctly in $(DIST)/bin. r=glandium
--HG--
rename : .gdbinit => build/.gdbinit
2012-12-01 21:25:16 -08:00
Jan Beich
90b1515739 Bug 788955 - Without --enable-jemalloc detect and use jemalloc3 in libc. r=glandium 2012-10-17 16:36:49 +02:00
Mike Hommey
e3cd9c3213 Bug 780462 - Actually remove dist/bin/chrome.manifest when starting a new build, and also remove dist/bin/components/components.manifest. r=khuey 2012-10-15 09:37:14 +02:00
Ted Mielczarek
c90124df24 bug 787459 - Dump symbols from test programs, but don't package them. r=glandium
--HG--
extra : rebase_source : 78b10be59356e4abc115ea8a370c9355dfd9e3d5
2012-08-31 15:52:43 -04:00
Mike Hommey
e149104528 Bug 785871 - Make config.status importable. r=gps 2012-08-29 08:55:58 +02:00
George Wright
2c43844d19 Bug 740194 - [Skia] Implement a version of SkMemory for Mozilla that uses the infallible mozalloc allocators r=cjones 2012-08-15 23:51:34 -04:00
George Wright
3966995e74 Backed out changeset c2475674e105 2012-08-15 17:26:45 -04:00
George Wright
638da0ba63 Bug 740194 - [Skia] Implement a version of SkMemory for Mozilla that uses the infallible mozalloc allocators r=cjones
--HG--
extra : rebase_source : 6dc39ae06b4cb38cd8e85e41c01077f815b8f8c8
2012-08-15 16:59:07 -04:00
Mike Hommey
e3dfe5f671 Bug 780462 - Don't remove dist/bin/components when building, but remove dist/bin/chrome.manifest. r=khuey 2012-08-08 09:33:31 +02:00
Mike Hommey
70d7c821af Bug 774032 bonus - Use @DEPTH@ and @relativesrcdir@ in Makefile.in. r=ted 2012-08-04 20:26:44 +02:00
Mike Hommey
125aebf06d Bug 763651 - Link the javascript engine against zlib. r=khuey 2012-07-12 08:30:59 +02:00
Mike Hommey
1edc7b1c90 Bug 771870 - Avoid js/src/Makefile being created with wrong topsrcdir. r=khuey 2012-07-09 15:47:26 +02:00
Ted Mielczarek
c5ad0bc105 bug 764671 - Stop uploading symbols for test programs/libs to the symbol server. r=nthomas 2012-05-24 11:58:35 -04:00
Mike Hommey
1510749815 Bug 580408 - Glue for jemalloc 3.0.0. r=khuey 2012-06-07 10:41:59 +02:00
Mike Hommey
caf974ce43 Bug 580408 - Move Mozilla fork of jemalloc to memory/mozjemalloc. r=khuey
--HG--
rename : memory/jemalloc/Makefile.in => memory/mozjemalloc/Makefile.in
rename : memory/jemalloc/jemalloc.c => memory/mozjemalloc/jemalloc.c
rename : memory/jemalloc/jemalloc.h => memory/mozjemalloc/jemalloc.h
rename : memory/jemalloc/jemalloc_types.h => memory/mozjemalloc/jemalloc_types.h
rename : memory/jemalloc/linkedlist.h => memory/mozjemalloc/linkedlist.h
rename : memory/jemalloc/osx_zone_types.h => memory/mozjemalloc/osx_zone_types.h
rename : memory/jemalloc/ql.h => memory/mozjemalloc/ql.h
rename : memory/jemalloc/qr.h => memory/mozjemalloc/qr.h
rename : memory/jemalloc/rb.h => memory/mozjemalloc/rb.h
2012-06-07 10:41:58 +02:00
Gervase Markham
82ff7027aa Bug 716478 - update licence to MPL 2. 2012-05-21 12:12:37 +01:00
Chris AtLee
20d973e24e Bug 753132: Update mozconfig for doing 32-bit builds on 64-bit machines. r=ted 2012-05-14 12:04:37 -04:00
Ehsan Akhgari
2c3399cf66 Bug 184013 - Add a .gdbinit containing useful debugging macros to the tree so that it is found automagically; r=jimb
DONTBUILD
2012-05-03 20:06:14 -04:00