Граф коммитов

1224 Коммитов

Автор SHA1 Сообщение Дата
Gregory Szorc 8414202025 Bug 1094303 - Move XPT buildlist into misc tier; r=glandium
buildlist invocations are slow and can occur in parallel since the
underlying program obtains a lock on the modified file.

Moving the XPT-related buildlist invocation from the serial libs tier to
the parallel misc tier decreased my no-op build time on OS X from 43.5s
to 37.0s.

--HG--
extra : rebase_source : 7d274024c401b1ecfbc771424a69eb487808fcbf
2014-11-05 09:20:35 -08:00
Gregory Szorc 26231d7079 Bug 1094302 - Remove unused EXTRA_JS_MODULES rule from rules.mk; r=glandium
The installation rule for EXTRA_JS_MODULES and EXTRA_PP_JS_MODULES
became unused after b961ba8f0892 (bug 1044162). We remove the dead code.

--HG--
extra : rebase_source : 40adf7514d15ae4ba5bbfe3ac101061657aac841
2014-11-05 09:39:13 -08:00
Mike Hommey 9cec4aee6b Bug 1094584 - Stop using the fake.lib trick. r=mshal
This used to be necessary to avoid the conflicting names between import
libraries and static libraries, but that's now prevented by the whole
moz.build machinery.
2014-11-07 10:16:42 +09:00
Mike Hommey 2277137650 Bug 1094037 - Move EXTRA_COMPONENTS and EXTRA_PP_COMPONENTS to the misc tier. r=gps 2014-11-06 09:29:11 +09:00
Wes Kocher d57953d2bd Backed out changeset db93b3cbdc17 (bug 1094037) on a CLOSED TREE 2014-11-05 17:22:50 -08:00
Mike Hommey ac80bd5f6c Bug 1094037 - Move EXTRA_COMPONENTS and EXTRA_PP_COMPONENTS to the misc tier. r=gps 2014-11-06 09:29:11 +09:00
Mike Hommey e8150918fc Bug 1094033 part 1 - Consolidate how to add new tiers. r=gps 2014-11-06 09:29:11 +09:00
Jan Beich c058a442f6 Bug 1041795 - Disable system libs when generating DTrace probes. f=sfink f=ginn.chen 2014-11-04 02:01:00 +01:00
Mike Hommey 24ed7656db Bug 1091383 - Move delayload logic entirely in moz.build frontend code. r=gps 2014-11-04 13:48:25 +09:00
Mike Hommey 47c853314f Bug 1077148 part 4 - Add and use new moz.build templates for Gecko programs and libraries. r=gps
There are, sadly, many combinations of linkage in use throughout the tree.
The main differentiator, though, is between program/libraries related to
Gecko or not. Kind of. Some need mozglue, some don't. Some need dependent
linkage, some standalone.

Anyways, these new templates remove the need to manually define the
right dependencies against xpcomglue, nspr, mozalloc and mozglue
in most cases.

Places that build programs and were resetting MOZ_GLUE_PROGRAM_LDFLAGS
or that build libraries and were resetting MOZ_GLUE_LDFLAGS can now
just not use those Gecko-specific templates.
2014-10-30 13:06:12 +09:00
Mike Hommey deb5d056a6 Bug 1090107 - Define stlport dependencies in moz.build. r=mshal 2014-10-29 13:29:42 +09:00
Mike Hommey 707134faf6 Bug 857628 - Add a --enable-pie configure option to build target programs as position independent executables when supported by gcc/clang. r=mshal 2014-09-26 07:33:56 +09:00
Mike Hommey 75a8d98fa3 Bug 1077228 - Include the right autoconf.mk in GLOBAL_DEPS. r=mshal
Ever since bug 969164, the js build system, when building gecko (not when
building standalone) uses a autoconf-js.mk file for its config.

One of the suboptimal ways we have to retrigger builds when the build
configuration changes (changes to e.g. configure.in can do that) is to
make most things depend on autoconf.mk. Which unfortunately doesn't
account for the fact the js/src subdirectory uses a different file.

In practice, this means that some classes of changes to the js build
system, not accompanied with toplevel build system changes may no
trigger the corresponding rebuilds in the js subtree on incremental
builds.
2014-10-04 10:34:35 +09:00
Mike Hommey 8c10235da0 Bug 1077151 - Always use expandlibs descriptors when they exist. r=mshal
Currently, when there is both an expandlibs descriptor and an actual static
library, expandlibs picks the static library. This has the side effect that
if there are object files in the static library that aren't directly used,
they're dropped when linking, even when they export symbols that would be
exported in the final linked binary.

In most cases in the code base, files are not dropped that way. The most
notable counter-example is xpcomglue, where actually not dropping files
leads to link failure because of missing symbols those files reference
(yes, that would tend to say the glue is broken in some way).

On the opposite side, there is mozglue, which does have both a descriptor
and a static library (the latter being necessary for the SDK), and that
linking as a static library drops files that shouldn't be dropped (like
jemalloc). We're currently relying on -Wl,--whole-archive for those files
not to be dropped, but that won't really be possible without much hassle
in a world where mozglue dependencies live in moz.build land.

Switching expandlibs to use descriptors when they exist, even when there
is a static library (so, the opposite of the current behavior) allows to
drop -Wl,--whole-archive and prepare for a better future. However, as
mentioned, xpcomglue does still require to be linked through the static
library, so we need to make it a static library only.

To achieve that, we make NO_EXPAND_LIBS now actually mean no expandlibs
and use that to build the various different xpcomglues.
2014-10-04 10:33:00 +09:00
Ed Morley 0e5462f1d2 Backed out changeset e2fee324047d (bug 857628) for causing bug 1076892 2014-10-03 14:19:45 +01:00
Mike Hommey 26049ee2f7 Bug 1062221 - Replace add_tier_dir with DIRS. r=gps 2014-10-02 09:14:07 +09:00
Mike Hommey c8ae3e0b2f Bug 857628 - Build target programs as position independent executable when supported by gcc/clang. r=mshal 2014-09-26 07:33:56 +09:00
Jacek Caban d4deb0c2a3 Bug 1055627 - Pass MOZ_GLUE_PROGRAM_LDFLAGS after STATIC_LIBS to linker. r=glandium 2014-08-26 13:50:27 +02:00
Mike Hommey 89777800f9 Bug 1047267 - Move remaining OS_LIBS and EXTRA_LIBS to moz.build. r=gps
* * *
Bug 1047267 - To fold with "Move remaining OS_LIBS and EXTRA_LIBS to moz.build"
2014-08-07 14:21:03 +09:00
Mike Hommey 220b276684 Bug 1047267 - Allow to reference libraries from third-party build systems in USE_LIBS. r=gps 2014-08-07 14:20:38 +09:00
Mike Hommey c978a88653 Bug 1049281 - Remove static dirs handling, now that there aren't any. r=gps
Also do some overdue cleanup from the removal of parallel and tools dirs
2014-08-07 02:58:53 +09:00
Mike Hommey 4a01b3b147 Bug 1048993 - Use nsinstall from $(topobjdir)/config instead of $(DIST)/bin to avoid races when make wants to reinstall it for some reason. r=mshal 2014-08-07 02:58:50 +09:00
Ian Neal c3cb6b4ce8 Bug 1047924 - When building with ac_add_options --enable-extensions extensions are put expanded into the wrong location in dist/bin r=glandium 2014-08-06 17:58:31 +01:00
Nathan Froyd 909d33279c Bug 1044162 - part 2 - remove JS_MODULES_PATH from the build system; r=mshal 2014-07-25 14:37:22 -04:00
Mike Hommey 99fdc4c1d6 Bug 1043869 - Derive build dependencies for programs and libraries from make backend data instead of getting them from expandlibs. r=mshal 2014-07-29 08:59:56 +09:00
Mike Hommey c48f53e37a Bug 1043865 - Remove the remainder of compilation bits from the libs tier. r=gps 2014-07-29 08:59:27 +09:00
Mike Hommey 179299ea01 Bug 1043862 - Make the binaries target use the compile tier. r=gps 2014-07-29 08:58:28 +09:00
Mike Hommey 2bab6202af Bug 1043820 - Remove PARALLEL_DIRS. r=gps 2014-07-29 08:57:59 +09:00
Mike Hommey 5f6ba110e6 Bug 1043802 - Remove TOOLS_DIRS and TEST_TOOLS_DIRS. r=gps 2014-07-29 08:55:55 +09: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 Hommey 628443a0e1 Bug 1043286 - Use INSTALL_TARGETS to stage C++ unit tests. r=mshal 2014-07-25 07:09:44 +09:00
Jan Beich 7b3340b357 Bug 1041381 - Ignore missing depfiles for dtrace. r=glandium 2014-07-23 22:40:00 +02:00
Mike Hommey 2a9a0b150f Followup for bug 1041936 to unbreak spidermonkey fail-on-warnings builds. r=me 2014-07-23 14:01:55 +09:00
Mike Hommey ad2b8b8346 Bug 1041936 - Allow static library definitions to depend on shared libraries. r=gps 2014-07-23 13:33:06 +09:00
Mike Hommey 95063176fa Bug 1036894 part 9 - Replace all EXTRA_DSO_LDOPTS, SHARED_LIBRARY_LIBS and LIBS with EXTRA_LIBS, OS_LIBS or OS_LDFLAGS, appropriately. r=gps
OS_LIBS for libraries that are not part of the gecko tree, EXTRA_LIBS for
libraries, such as NSPR, that are in the tree, but are not handled by
moz.build just yet. Those EXTRA_LIBS may also come from a system library.
However, in cases where the expanded variables are always empty for the
in-tree case, OS_LIBS is used (as for, e.g. MOZ_ZLIB_LIBS). OS_LDFLAGS is
used exclusively for non-library linker flags.

Always pass EXTRA_LIBS before OS_LIBS on linker command lines.

Forbid EXTRA_DSO_LDOPTS, SHARED_LIBRARY_LIBS and LIBS in Makefiles.
2014-07-23 13:31:02 +09:00
Mike Hommey 5fab42fcaf Bug 1036894 part 8 - Move most in-tree library linkage information to moz.build, as USE_LIBS. r=gps 2014-07-23 13:30:52 +09:00
Mike Hommey 6d6d400ea1 Bug 1036894 part 6 - Emit SimplePrograms for CPP_UNIT_TESTs, and make the corresponding moz.build config look like that of SIMPLE_PROGRAMS. r=gps 2014-07-23 13:29:44 +09:00
Mike Hommey a33d7d67e6 Bug 1036894 part 1 - Move MAKE_FRAMEWORK, SDK_LIBRARY, SHARED_LIBRARY_NAME and STATIC_LIBRARY_NAME to moz.build. r=gps
At the same time, make the Library data more useful in the build frontend.
2014-07-23 13:29:09 +09:00
Mike Hommey 40d22b0bb7 Bug 1040649 - Detect changes to frozen variables between rules.mk include and the end of Makefile.in. r=mshal 2014-07-19 08:46:33 +09:00
Mike Hommey d3f990ebdb Bug 1040639 - Remove LIBS_DIR. r=mshal 2014-07-19 08:42:16 +09:00
Mike Hommey 72839c7305 Bug 1038639 - Remove --with-libxul-sdk and --with-system-libxul. r=bsmedberg 2014-07-17 08:42:16 +09:00
Neil Rashbrook bf47b7faa5 Bug 1037981 Make 'derecursed' builds support --enable-xterm-updates r=glandium 2014-07-16 08:36:30 +01:00
Mike Hommey 70a5917917 Bug 1036864 - Remove EXPORT_LIBRARY. r=mshal 2014-07-11 19:06:55 +09:00
Mike Hommey c52d31562a Bug 1035543 - Remove the MOZ_PSEUDO_DERECURSE variable. r=gps 2014-07-10 14:11:52 +09:00
Steve Fink 12341263ec Bug 1036525 - DSO_SONAME should not depend on FORCE_SHARED_LIB, r=glandium 2014-07-09 17:16:19 -07:00
Mukilan Thiyagarajan 3dca759f3f Bug 1000994 - Allow specifying SONAME of a shared library in moz.build. r=glandium 2014-07-09 00:47:00 +02:00
Gregory Szorc 5acd08b03a Bug 1033836 - Remove Makefile.in support for TESTING_JS_MODULES; r=glandium
--HG--
extra : rebase_source : 20cebe4a7d940cb3a18c6f13bae36cf63388e2b8
2014-07-02 16:54:51 -07:00
Mike Hommey b81d50e1eb Bug 883339 - Enable gtest on windows TBPL non-PGO builds. r=ted 2014-06-26 07:59:24 +09: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
Ryan VanderMeulen f2dcba3d01 Bug 1025918 - Add support for the .cxx extension to mozbuild. r=ted 2014-06-16 22:36:24 -04:00
Nathan Froyd 6103a76c71 Bug 1018375 - part 1 - add LD_VERSION_SCRIPT build variable; r=glandium 2014-05-30 14:12:20 -04:00
Mike Shal ae50c26b92 Bug 943971 - 'make foo.i' should work for unified files; r=glandium 2013-12-11 19:23:24 -05:00
Nathan Froyd 413283dd46 Bug 1006026 - remove duplicate distclean:: rule in rules.mk; r=mshal 2014-05-07 10:33:06 -04:00
Ehsan Akhgari 57c249bbff Backed out changeset 70946e64e8f8 (bug 1005704) because it caused bug 1006541 2014-05-06 16:39:39 -04:00
Ehsan Akhgari 9e5d46f732 Bug 1005705 - Remove the unused DIST_CHROME_FILES rule; r=mshal 2014-05-05 21:26:32 -04:00
Ehsan Akhgari 15aa0ce41b Bug 1005704 - Enable installing files dist files without preprocessing; r=mshal 2014-05-05 21:26:11 -04:00
Mike Hommey b49534e0da Bug 915535 - Remove directory tracking from build system. r=gps
It's not used except with pymake, anyways.
2014-03-27 10:36:16 +09:00
Mike Hommey d7540b3055 Bug 985836 - Move -Fd flags from configure to config.mk. r=mshal 2014-03-26 08:12:26 +09:00
Ted Mielczarek 34da80ea4f Bug 980015 - Remove MOCHITEST_FILES et. al. r=gps 2014-03-05 15:51:39 -05:00
Ryan VanderMeulen 70fda5091d Backed out changeset 88780b5a201e (bug 980015) for test_property_database.html failures.
CLOSED TREE
2014-03-10 15:31:23 -04:00
Ted Mielczarek 16414a3269 Bug 980015 - Remove MOCHITEST_FILES et. al. r=gps
--HG--
extra : rebase_source : 3825abc63eb0901bc1422aa00aed3680dbe3e44c
2014-03-05 15:51:39 -05:00
Ehsan Akhgari a8d5c6ba79 Bug 978594 - Part 2: Add support for expressing per-source build flags to moz.build; r=glandium
--HG--
extra : rebase_source : 254d8acf1a6a53845a2e2d6d895217515ea7b836
2014-03-04 11:30:01 -05: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
EKR e029aab31b Bug 970476 - Re-add CPP unit test target. r=ted 2014-02-10 11:42:19 -08:00
Ehsan Akhgari d91d200572 Bug 969757 - Remove the dead code in our tree which pretends to support OS/2; r=roc,mcmanus,gps,jorendorf,bsmedberg sr=bsmedberg 2014-02-10 17:57:01 -05:00
Ehsan Akhgari 39001bcb42 Bug 944800 - Move the information about delay loaded DLLs into moz.build; r=gps 2014-02-06 14:17:44 -05:00
Mike Hommey d3b848da56 Bug 959519 - Keep timestamps when copying files with nsinstall.py while nsinstall is not ready to be used yet. r=gps 2014-02-05 13:02:20 +09:00
Ehsan Akhgari bdd531f68f Backed out changeset b54e8c328c32 (bug 944800) because of test failures on a CLOSED TREE 2014-02-04 17:03:17 -05:00
Ehsan Akhgari 6494b169e9 Bug 944800 - Move the information about delay loaded DLLs into moz.build; r=gps
--HG--
extra : rebase_source : 3eca29dae04c42fa8e7d113318b8a169a0cf22e4
2014-02-04 13:57:34 -05:00
Sylvestre Ledru acb3eb4dc5 Bug 777378 - Remove SUPPRESS_DEFAULT_RULES. r=gps 2014-01-23 09:38:29 -05:00
Mike Hommey 4c0e22933b Bug 956398 - Error out at build time if we end up with text relocations. r=ted 2014-01-16 09:13:43 +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
Dan Minor df1c99dccf Bug 949536 - Remove cpp unittests from 'make check'; r=gps 2014-01-09 21:59:28 -08:00
Gregory Szorc e396fc159d Bug 774572 - Part 2: Define JAR_MANIFESTS in moz.build files; r=glandium
Every directory with a jar.mn now has JAR_MANIFESTS defined in its
moz.build file.

We also removed the may_skip special consideration of jar.mn files
because this information is now available during tier traversal by the
reader courtesy of the variables being present in moz.build files.

--HG--
extra : rebase_source : 21049b15e6bd9cf65b0805ccaccc4ba5aae93c98
extra : amend_source : 0b1ea866d725beef92d37c6f6d475369ac002e19
2013-12-10 16:18:11 +09:00
Mike Hommey 62d390485a Bug 945042 - Move NO_PROFILE_GUIDED_OPTIMIZE to moz.build. r=gps,r=njn 2013-12-09 13:39:26 +09: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
Mike Hommey 004e0ed1ac Bug 944558 - Refactor config/makefiles/debugmake.mk for more correctness, and remove old cruft. r=gps
Also remove use of print-depth-path.sh in UPDATE_TITLE.
2013-12-01 07:20:19 +09:00
Mike Hommey a1486ce449 Bug 942043 - Straighten up zlib linkage wrt shared js and system zlib. r=gps,r=ted 2013-11-22 23:03:21 +09:00
Mike Hommey b32a4ed166 Backout changeset 3fd4b546eed4 (bug 874266) and changeset a35d2e3a872f (bug 942043) for ASAN build bustage and Windows test bustage
--HG--
extra : amend_source : f20d09aeff1c8b5cbd0f1d24c7ce04e86f3aed1d
2013-11-28 14:24:05 +09:00
Mike Hommey 0a1fb8d11c Bug 942043 - Straighten up zlib linkage wrt shared js and system zlib. r=gps,r=ted 2013-11-28 12:49:43 +09:00
Mike Hommey 43d177307e Bug 940407 - Kill GTEST_SOURCES. r=gps 2013-11-26 11:48:58 +09:00
Mike Hommey 62a0ecdaf3 Bug 942031 - Don't link against the js engine when there's no need to. r=mshal 2013-11-24 08:18:50 +09:00
Mike Hommey aaacc118f4 Bug 941450 - Add some GENERATED_FILES to moz.build. r=gps 2013-11-22 08:16:18 +09:00
Ed Morley 2df56b3abd Backed out changeset 1eb6ceed2cda (bug 938437) on suspicion of causing WinXP debug jetpack failures on a CLOSED TREE 2013-11-22 16:00:32 +00:00
Ed Morley 1a9ee1c710 Backed out changeset c30371a66429 (bug 941450) 2013-11-22 15:59:22 +00:00
Mike Hommey 2f9d386e67 Bug 941450 - Add some GENERATED_FILES to moz.build. r=gps 2013-11-22 08:16:18 +09:00
Mike Hommey 86956347ec Bug 938437 - Replace nsStaticXULComponents.cpp with smart use of sections. r=bsmedberg,irc-r=decoder,r=nfroyd 2013-11-19 13:45:31 +09:00
Mike Hommey 8a469f49cb Bug 914274 - Remove MODULE_NAME. r=mshal 2013-11-21 17:31:19 +09:00
Mike Hommey a58f7369ea Bug 939071 - Kill SHORT_LIBNAME. r=ted 2013-11-19 11:47:47 +09:00
Mike Hommey f02f1af62d Bug 939044 - Remove the last uses of the MODULE variable in makefiles. r=gps 2013-11-19 11:47:30 +09:00
Dan Gohman 8e61693f29 Bug 569597 - Eliminate use of ranlib. r=glandium 2013-11-11 19:26:59 -08:00
Nathan Froyd fc9fd19933 Bug 841373 - use STRIP_FLAGS with STRIP consistently; r=glandium 2013-11-11 11:01:22 -05:00
Mike Hommey 9afc11243b Backout changeset 4810e8f4eb98 (part of bug 934864) for causing bug 937332. 2013-11-12 08:37:08 +09:00
Mike Hommey d0143abc0d Bug 935305 - Track preprocessor output dependencies. r=gps 2013-11-09 10:35:45 +09:00
Mike Hommey a470038314 Bug 935305 - Move preprocessor to mozbuild.action. r=gps
--HG--
rename : config/Preprocessor.py => python/mozbuild/mozbuild/preprocessor.py
rename : config/tests/unit-Expression.py => python/mozbuild/mozbuild/test/test_expression.py
rename : config/tests/unit-LineEndings.py => python/mozbuild/mozbuild/test/test_line_endings.py
rename : config/tests/unit-Preprocessor.py => python/mozbuild/mozbuild/test/test_preprocessor.py
2013-11-09 10:35:44 +09:00
Mike Hommey 41a1cabced Bug 934864 - Add REPORT_BUILD do INSTALL_TARGETS and PP_TARGETS. r=gps 2013-11-09 10:32:58 +09:00
Mike Hommey 8dc0b551b3 Bug 934864 - Add option to make INSTALL_TARGETS and PP_TARGETS keep the original path when copying/preprocessing. r=gps
Also, refactored them for more debuggability and clarity.
2013-11-09 10:32:53 +09:00
Seth Fowler 9c90ef3623 Backout of bug 934070 for breaking debugging on OS X 2013-11-07 18:42:22 -08:00
Mike Hommey 46de926a12 Bug 934070 - Stop copying dist/bin under dist/$(MOZ_MACBUNDLE_NAME)/Contents/MacOS in */app/Makefile.in. r=ted
Consequently, revert changeset 92bea49b46b4 (bug 914560).
2013-11-07 10:38:13 +09: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