Commit Graph

68 Commits

Author SHA1 Message Date
Mike Hommey
77ee4f3ce4 Bug 1292463 - Move MOZ_C{,XX}_SUPPORTS_WARNING to python configure. r=chmanchester 2016-08-10 10:50:01 +09:00
Mike Hommey
6df9c96b3e Bug 1292059 - Remove now useless compiler checks in compiler-opts.m4. r=chmanchester
Since bug 1259382, CC and CXX are always set, so we can stop
falling back to cl on Windows, and clang on OSX in compiler-opts.m4.

Also, we were actively rejecting GCC on OSX because it was based on
GCC 4.2 and known to be broken, but that test predates our requirement
for more recent versions of GCC, which would fail configure anyways.
So just remove that GCC test. Building with a modern GCC from macports
or wherever might actually work anyways.

Finally, remove target bit-width mismatch with the compiler as it's
handled in python configure since bug 1288313.

--HG--
extra : rebase_source : 9968028cc4e9c197b72136037a7298be10cc139a
2016-08-04 17:11:52 +09:00
Mike Hommey
51236564fa Bug 1290040 - Find link.exe from python configure. r=gps
This ensures we have a full path to link.exe from MSVC in LD, avoiding
to use /usr/bin/link on msys2.
2016-08-02 13:20:53 +09:00
Mike Hommey
581b147a75 Bug 1289239 - Remove autoconf-based C++ compiler validation check. r=chmanchester
Python configure is already checking that the C++ compiler is indeed a C++
compiler, no need to double check in old-configure.

--HG--
extra : rebase_source : fcb6fc7ac88dcf3ef172cd30e23454b654e08c03
2016-07-22 19:13:56 +09:00
Chris Manchester
93ef406a76 Bug 1279369 - Move --enable-debug, MOZ_DEBUG_FLAGS, and --enable-debug-symbols to Python configure. r=glandium
Setting MOZ_DEBUG_SYMBOLS as a define was not moved, as this value is not
checked, and exporting MOZ_DEBUG_SYMBOLS was not moved, as this would only
impact nspr, and we're no longer using the nspr build system.

MozReview-Commit-ID: EvBTunhxcsr
2016-06-20 16:02:01 -07:00
Chris Peterson
b1d13cd1ed Bug 1277428 - Enable clang's -Wstring-conversion warnings. r=glandium
--HG--
extra : rebase_source : 4a69f9825383d0da734f7982e974922257b71f63
2016-06-02 21:19:55 -07:00
Mike Hommey
c25921b32d Bug 1261531 - Remove most obvious cases of useless AC_SUBSTs. r=chmanchester
- DEVELOPER_OPTIONS, INTEL_CC, INTEL_CXX, MOZ_ENABLE_QTMOBILITY,
  GTK_CONFIG are or even were never used outside configure.

- MOZ_PROFILELOCKING which gradually became a no-op over the years. This
  also removes the configure flag that sets it.

- XULRUNNER_STUB_NAME is xulrunner-only, and xulrunner is gone. This
  also removes the configure flag that sets it.

- The only use of MOZ_CAN_RUN_PROGRAMS was removed in bug 780561.

- AR_LIST and AR_DELETE have not been used since bug 584474.

- MOZ_COMPONENT_NSPR_LIBS is leftover from bug 1036894.

- MOZ_PNG_ARM_NEON_CHECK is not used since bug 980488.

- MOZ_WEBRTC_LEAKING_TESTS has been no-oped by bug 825510.

- VPX_NEED_OBJ_INT_EXTRACT and NO_INTEGRATED_AS_CFLAGS are not used since
  bug 1151175.

- WCHAR_CFLAGS is not used since bug 904985.
2016-04-05 07:16:44 +09:00
Chris Peterson
b22c76c625 Bug 1258175 - Remove broken -Wunreachable-code-return and -Wunreachable-code-aggressive checks. r=glandium
compiler-opts.m4's check for `MOZ_CXX_SUPPORTS_WARNING(-W, unreachable-code-return, ac_cxx_has_wunreachable_code_return)` is broken. The C/C++ code that configure emits for MOZ_CXX_SUPPORTS_WARNING() actually contains a -Wunreachable-code-return warning and, thus, doesn't actually detect that clang supports the -Wunreachable-code-return flag.

This configure code in MOZ_CXX_SUPPORTS_WARNING():

  AC_TRY_COMPILE([],
                 [return(0);],
                 $3="yes",
                 $3="no")

generates something like:

  int main() {
  return(0);
  ; return 0; }

where the second return, automatically emitted by configure, is unreachable and causes a -Wunreachable-code-return warning.

The fix is to remove the redundant return(0) from MOZ_CXX_SUPPORTS_WARNING(). This allows clang's -Wunreachable-code-return flag to be detected, but then -Wunreachable-code-return breaks other configure checks, including third-party libraries' configure checks (in particular jemalloc) that also have redundant `return(0)`. So all the third-party libraries' configure checks would need to be fixed upstream, which seems like more hassle than the value of the -Wunreachable-code-return warnings.
2016-03-19 00:10:37 -07:00
Chris Peterson
ff383edaf7 Bug 1253170 - Enable clang's -Wimplicit-fallthrough warning to catch unintentional switch fallthroughs. r=glandium 2016-02-10 23:31:04 -08:00
Chris Peterson
dcaae98769 Bug 1233297 - Part 2b: Remove some unnecessary warning flags. r=glandium
-Wno-psabi has not been necessary since we updated the build machines to Android NDK r8c three years ago in bug 826133.

-Wsometimes-initialized is not necessary because it is implicitly enabled by clang's -Wuninitialized, which is enable by -Wall.

-Wcast-align is very noisy and we apparently only enable it for gcc on 32-bit x86 builds?

-Wno-unused-local-typedef is no longer necessary. This is the clang flag; gcc's flag is -Wno-unused-local-typedefs, with an 's'. Suppressing gcc's warning was recently deemed unnecessary and WONTFIX'd in bug 1243604. Unsurprisingly, we no longer need it on clang either.

-Wrange-loop-analysis is no longer necessary because it is implicitly enabled by -Wloop-analysis, which is enabled by the previous commit.
2016-02-24 22:51:21 -08:00
Chris Peterson
8f65e4251e Bug 1233297 - Part 2a: Enable some more warnings. r=glandium
-Wsign-compare is enabled by gcc's -Wall (for C++ only), but not by clang's -Wall. -Wsign-compare is enabled for C and C++ by gcc's -Wextra and clang's -Wextra, which we don't use.
2016-02-02 00:04:26 -08:00
Chris Peterson
fb67cdc658 Bug 1233297 - Part 1: Consolidate MOZ_C*_SUPPORTS_WARNING configure checks in compiler-opts.m4. r=glandium 2016-02-02 00:04:26 -08:00
Mike Hommey
8143237ec5 Bug 1235738 - Simplify MOZ_DEBUG_DEFINES. r=gps
Now that it's not directly used in command lines, it can just become a list
of symbols that ought to be defined. This simplifies all the uses of it.
2015-12-31 07:28:05 +09:00
Mike Hommey
9f2c4e94ba Bug 1209875 - Get rid of XULPPFLAGS. r=gps
The flags added in toolkit/locales/Makefile.in turn out not to be actually
used, so just remove that.

The remaining uses of XULPPFLAGS are to set debug flags depending on whether
MOZ_DEBUG is set or not. Just set a dedicated variable with the right value
from configure.
2015-10-01 07:30:48 +09:00
Mike Hommey
4275fcc9a3 Bug 1187101 - Add -Wl,-Bsymbolic to LDFLAGS for ASan builds. r=mshal 2015-07-28 08:19:12 +09:00
Ryan VanderMeulen
a4f0db6bf1 Backed out changeset e2f1bf3e3dc4 (bug 1171610) for bustage.
CLOSED TREE
2015-06-30 12:35:42 -04:00
James Willcox
6c68419fe4 Bug 1171610 - Automatically use colorized warnings and errors if available r=glandium
You can disable with --disable-color-diagnostics
2015-06-30 11:20:31 -05:00
Abhishek Bhattacharya
cec7cbbd44 Bug 1119921 - Fix "$ANDROID_VERSION" comparison tests. r=nalexander
--HG--
extra : amend_source : 50fa678c38bac71807cd09991d1b4239b5f666b9
2015-01-17 16:42:04 -08:00
Jed Davis
c70c01f1a7 Bug 777948 - Enable position-independent executables on B2G (>= JB 4.1). r=mwu 2014-12-12 14:33:00 -05:00
Ehsan Akhgari
4913c8345e Bug 1082987 - Never use the debug runtime libraries for Windows ASAN builds; r=glandium
This is a non-supported AddressSanitizer configurations, and it
will fail the build.
2014-10-16 09:13:27 -04: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
Ed Morley
0e5462f1d2 Backed out changeset e2fee324047d (bug 857628) for causing bug 1076892 2014-10-03 14:19:45 +01: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
Mike Hommey
c52d31562a Bug 1035543 - Remove the MOZ_PSEUDO_DERECURSE variable. r=gps 2014-07-10 14:11:52 +09:00
Mike Hommey
d023cfad45 Bug 1027890 - Restore accidental disabling of MOZ_PSEUDO_DERECURSE; r=gps
CLOSED TREE (but for the commit above this because the commit hook only
appears to look at the tip commit)

--HG--
extra : rebase_source : c88e7e3f4d24dcd59a1a0b5577e3a77da68f3d08
extra : amend_source : 5be936181048b01850e9ef91c25fa0c7363d118d
2014-06-25 23:23:34 -07:00
Mike Hommey
4410e6c0df Bug 938437 - Replace nsStaticXULComponents.cpp with smart use of sections. r=bsmedberg,irc-r=decoder,r=nfroyd,r=gps 2013-11-19 13:45:31 +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
Birunthan Mohanathas
86fae0d375 Bug 1026535 - Re-enable -Wmismatched-tags/C4099 warnings. r=ehsan 2014-06-19 14:42:19 -04:00
Ehsan Akhgari
a6ab01f989 Bug 1022348 - Use the C/C++ compilers passed in through mozconfig in order to preprocess on Windows instead of hardcoding the usage of cl; r=glandium 2014-06-10 07:20:12 -04:00
Mike Hommey
664dfbd8c6 Bug 1014976 - Don't define _DEBUG on Windows debug builds, it's implied by -MDd/-MTd, and breaks builds with -MD/-MT. r=bsmedberg 2014-05-30 09:39:53 +09:00
Mike Hommey
2cf6cf6466 Bug 1014976 - Make MOZ_NO_DEBUG_RTL builds actually disable the MSVC debug CRT everywhere. r=bsmedberg 2014-05-30 09:39:44 +09:00
Mike Hommey
6e01527c92 Bug 985835 - Move MOZ_DEBUG_FLAGS declaration for MSVC next to the one for GCC. r=mshal 2014-03-26 08:12:12 +09:00
Mike Hommey
ef13decc2d Bug 950290 - Move python scripts from build/autoconf into a mozbuild submodule. r=gps
--HG--
rename : build/autoconf/check_debug_ranges.py => python/mozbuild/mozbuild/configure/check_debug_ranges.py
rename : build/autoconf/libstdcxx.py => python/mozbuild/mozbuild/configure/libstdcxx.py
2013-12-17 11:13:08 +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
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
aefaa836ba Bug 933047 - Add a configure check whether the C++ compiler actually is a C++ compiler. r=ted 2013-11-01 10:30:46 +09:00
Mike Hommey
0f9a797f48 Bug 926733 - Enable bug 921003. r=gps 2013-10-22 15:15:21 +09:00
Vladimir Vukicevic
346fb92407 b=927719; DEVELOPER_OPTIONS set too late; r=gps 2013-10-18 13:12:14 -04:00
Mike Hommey
210d6ca711 Bug 926126 - Enable pseudo derecurse on releng builds, and enable parallel export; r=gps 2013-10-13 09:19:46 +09:00
Mike Hommey
d626dc7217 Bug 921003 - Make directory skipping opt-in, as initially intended. r=me 2013-10-02 11:32:15 +09:00
Mike Hommey
4792e8de27 Bug 920919 - Set MOZ_PSEUDO_DERECURSE to no-parallel-export by default on developer builds... when not using pymake. r=gps 2013-09-27 08:12:19 +09:00
Mike Hommey
be75b7fd20 Bug 906225 - Add a --enable/disable-gold configure flag. r=gps 2013-09-27 08:07:30 +09:00
Dan Gohman
692cb0c5e4 Bug 910814 - SpiderMonkey: Disable errno for math functions. r=glandium 2013-09-02 17:21:21 -07:00
Mike Hommey
085768b234 Bug 907650 - Move debugging options configure.in goop in compiler-opts.m4. r=gps 2013-08-30 11:10:33 +09:00
Mike Hommey
50062328b0 Bug 906260 - Make MOZILLA_OFFICIAL turn --enable-release on automatically. r=khuey
Still allow MOZILLA_OFFICIAL + --disable-release
2013-08-17 14:18:55 +09:00
Mike Hommey
ab3aa08535 Bug 904979 - Disable ICF and dead code removal on local builds. r=ted 2013-08-15 23:45:10 +09:00
Mike Hommey
e0bcf00a48 Bug 904979 - Force use gold, if possible, when the default linker is BFD ld, for local builds. r=ted 2013-08-15 23:45:10 +09:00
Mike Hommey
031b05b94c Bug 904979 - Add build option for rel-eng type builds. r=ted 2013-08-15 23:45:09 +09:00
Nathan Froyd
8f403db6a7 Bug 887902 - move --enable-debug{,-symbols} option processing before MOZ_COMPILER_OPTS; r=glandium
MOZ_COMPILER_OPTS depends on MOZ_DEBUG_FLAGS being set for proper checking of
linker dead code deletion when using GCC.

GC'ing sections saves ~1.5MB off of mobile libxul according to size(1):

[froydnj@cerebro eideticker]$ size /opt/build/froydnj/build-android/dist/bin/libxul.so
   text	   data	    bss	    dec	    hex	filename
23733400	2314816	1495973	27544189	1a44a7d	/opt/build/froydnj/build-android/dist/bin/libxul.so
[froydnj@cerebro eideticker]$ size /opt/build/froydnj/build-android/dist/bin/libxul.so
   text	   data	    bss	    dec	    hex	filename
22261936	2145116	1494533	25901585	18b3a11	/opt/build/froydnj/build-android/dist/bin/libxul.so
2013-06-27 13:50:54 -04:00
Ehsan Akhgari
e0ecd62fb0 Bug 780474 - Disable the struct/class mismatch warning on MSVC as well; r=glandium
--HG--
extra : rebase_source : 3e593b71e589df349abc41f9182739305478690f
2013-02-25 12:10:41 -05:00