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

36 Коммитов

Автор SHA1 Сообщение Дата
Mike Hommey 9ebbe2c5bc Bug 1669633 - Don't recurse into js/src for the python-part of configure. r=firefox-build-system-reviewers,rstewart
Instead, we now run js/src/old-configure from the top-level configure
after having run old-configure and extracted a few variables to inherit
from it.

Because we're now running from the top-level, $_objdir is always the
top-level objdir, which simplifies some things. The topobjdir in
js/src/config.status, however, needs to stay in js/src because of the
build frontend expecting it there.

When running js/src/old-configure, we used to need some special
treatment for a large number of variables for historic reasons, where
we'd take values from the assigned values before running old-configure
for some, or from AC_SUBSTs after running old-configure.

Now that both old-configure and js/src/old-configure get the same
assignments from old-configure.vars, we don't need anything special for
the former. And only a few remaining variables still need manual work
for the latter.

One notable difference, though, is that the new code doesn't try to
avoid running js subconfigure, which added complexity, and was actually
error-prone.

Differential Revision: https://phabricator.services.mozilla.com/D92725
2020-10-07 21:13:19 +00:00
Mike Hommey 3a86574eae Bug 1669642 - Rename LLVMCONFIG to LLVM_CONFIG and derive it like we do for LLVM_OBJDUMP. r=firefox-build-system-reviewers,andi,rstewart
Differential Revision: https://phabricator.services.mozilla.com/D92737
2020-10-07 22:36:49 +00:00
Andi-Bogdan Postelnicu bc9dbe64a1 Bug 1619921 - enable clang-plugin with support for alpha checkers module. r=froydnj,sg
Differential Revision: https://phabricator.services.mozilla.com/D65314

--HG--
extra : moz-landing-system : lando
2020-03-17 07:01:09 +00:00
Andreea Pavel a6b6afe578 Backed out changeset 780399392e20 (bug 1619921) for breaking toolchains on a CLOSED TREE 2020-03-16 18:27:17 +02:00
Andi-Bogdan Postelnicu 1ee04a1f77 Bug 1619921 - enable clang-plugin with support for alpha checkers module. r=froydnj,sg
Differential Revision: https://phabricator.services.mozilla.com/D65314

--HG--
extra : moz-landing-system : lando
2020-03-16 16:04:00 +00:00
Masatoshi Kimura 8f0af48cb1 Bug 1614540 - Improve -std switch replacement. r=froydnj
This patch will support all of `-std:`, `-std=`, and `-Xclang -std=`.
This patch will also a bit faster because the current code will call `sed` for
each argument.

Differential Revision: https://phabricator.services.mozilla.com/D63472

--HG--
extra : moz-landing-system : lando
2020-02-20 14:31:38 +00:00
David Major 5df8b566b9 Bug 1612461 - Translate LLVM_CXXFLAGS's `-std:` to `-std=` for clang-cl r=froydnj,glandium
clang-plugin.dll links against clang.exe so they both need to use the same C++ standard. This is achieved by having build/clang-plugin/moz.build use the flags from llvm-config. However, llvm-config uses the `-std:c++14` format, so our flags end up looking like:
`-Xclang -std=c++17 ... -std:c++14`
and apparently the former wins out in clang's option plumbing, so the compiler still thinks we requested c++17.

This patch makes clang-plugin use the `-Xclang -std=` format so that the override happens as desired.

Differential Revision: https://phabricator.services.mozilla.com/D62271

--HG--
extra : moz-landing-system : lando
2020-02-13 06:41:23 +00:00
Emilio Cobos Álvarez 25cb66e7e8 Bug 1332689 - Remove clang 3.9 compat code for the clang-plugin. r=andi
We require 4.0 to build since bug 1394825.

Differential Revision: https://phabricator.services.mozilla.com/D50647

--HG--
extra : moz-landing-system : lando
2019-10-28 06:55:00 +00:00
Emilio Cobos Álvarez bd45fba301 Bug 1332689 - Remove clang 3.8 compat code. r=andi
This is just drive-by, but it confused me. We require at least clang 4 to build
nowadays.

Differential Revision: https://phabricator.services.mozilla.com/D50646

--HG--
extra : moz-landing-system : lando
2019-10-28 06:54:43 +00:00
Nathan Froyd ce83c42681 Bug 1451104 - part 2 - force clang to always pick up its local GCC headers and libraries; r=glandium
We want our clang bootstrap to use the GCC headers we're building with,
not whatever sysroot it happens to find on the server we're building on.

The -gcc-toolchain argument we specify when building clang will also be
picked up by llvm-config, so we need to strip it out when building the
plugin. Otherwise, we will get peculiar failures about not being able to
find C++ header files.

Differential Revision: https://phabricator.services.mozilla.com/D22880

--HG--
extra : moz-landing-system : lando
2019-03-15 01:28:55 +00:00
Gurzau Raul c3883e46f7 Backed out 6 changesets (bug 1451104) for toolchains bustage on a CLOSED TREE.
Backed out changeset 2f6199beeb71 (bug 1451104)
Backed out changeset 7c116f85ede6 (bug 1451104)
Backed out changeset 5179c8066914 (bug 1451104)
Backed out changeset 675f73d41eb4 (bug 1451104)
Backed out changeset c64bfaad8a2f (bug 1451104)
Backed out changeset 991777e081ff (bug 1451104)
2019-03-14 05:02:44 +02:00
Nathan Froyd 3ec62f66df Bug 1451104 - part 2 - force clang to always pick up its local GCC headers and libraries; r=glandium
We want our clang bootstrap to use the GCC headers we're building with,
not whatever sysroot it happens to find on the server we're building on.

The -gcc-toolchain argument we specify when building clang will also be
picked up by llvm-config, so we need to strip it out when building the
plugin. Otherwise, we will get peculiar failures about not being able to
find C++ header files.

Depends on D22879

Differential Revision: https://phabricator.services.mozilla.com/D22880

--HG--
extra : moz-landing-system : lando
2019-03-12 00:21:20 +00:00
David Major 56fefe876b Bug 1427808 - Fix libs for clang-plugin build. r=froydnj 2018-10-12 07:14:00 -04:00
Mike Hommey d60c232a5e Bug 1490618 - Use the right variable name for the new ASTMatcher API check r=froydnj
This will make the result properly displayed.

Differential Revision: https://phabricator.services.mozilla.com/D5659

--HG--
extra : moz-landing-system : lando
2018-09-12 12:18:13 +00:00
Andi-Bogdan Postelnicu a8cc78dc5c Bug 1454667 - clear out CPPFLAGS before compiling test files for the clang plugin. r=froydnj
MozReview-Commit-ID: sxnMdImxf8

--HG--
extra : rebase_source : 2589f86723b972188de1f8318001a1fc7c8627c1
2018-05-11 12:23:30 +03:00
David Major 887008c3fb Bug 1427808: Link clang-plugin against clangASTMatchers.lib to fix build. r=froydnj 2018-02-20 10:54:47 -05:00
Bill McCloskey 794104b1e1 Bug 1413738 - Mozsearch clang plugin (r=mystor)
MozReview-Commit-ID: 53zUQ0vDMpd
2017-11-16 15:06:32 -08:00
Chris Manchester 857b599beb Bug 1411712 - Use AC_SUBST_LIST instead of AC_SUBST for vairables from configure contributing to LDFLAGS. r=mshal
MozReview-Commit-ID: 21jJY8oanQB

--HG--
extra : rebase_source : 5ba85c10bc64fd8817fda956dab3bc6965679eff
2017-11-02 11:47:48 -07:00
Chris Manchester f09fbe07c1 Bug 1403346 - Use AC_SUBST_LIST for LLVM_CXXFLAGS. r=glandium
MozReview-Commit-ID: bsX83492AP
2017-10-25 15:12:10 -07:00
Chris Manchester 7e47dd1ebb Bug 1403346 - Define flags loading the clang plugin in configure rather than the make backend. r=glandium
MozReview-Commit-ID: EubsjJl1LBS
2017-10-25 15:12:10 -07:00
Ehsan Akhgari b897b4790e Bug 1331957 - Part 12: Remove -Lclang/lib from the LDFLAGS used to build the clang plugin; r=froydnj
This ensures that we correctly link against /usr/lib/libc++.1.dylib.
With this flag left in LDFLAGS, the linker would find libc++.1.dylib in
clang/lib, which would cause us to link against @rpath/libc++.1.dylib.
2017-02-03 10:19:49 -05:00
Iris Hsiao e7d1ec1886 Backed out 14 changesets (bug 1331957, bug 1336149) for OS X 10.7 debug static analysis build bustage
Backed out changeset a01bead75258 (bug 1336149)
Backed out changeset 9a64d3102f6b (bug 1331957)
Backed out changeset a10f7732a754 (bug 1331957)
Backed out changeset 82c98214febe (bug 1331957)
Backed out changeset f74c7a543525 (bug 1331957)
Backed out changeset 6631f3582920 (bug 1331957)
Backed out changeset ccefeba51cf6 (bug 1331957)
Backed out changeset a84b26a07369 (bug 1331957)
Backed out changeset fc0b3a0ad1e5 (bug 1331957)
Backed out changeset bbcae89fd7c2 (bug 1331957)
Backed out changeset ffd70d960b9f (bug 1331957)
Backed out changeset a53ecc295eae (bug 1331957)
Backed out changeset d44a0be29686 (bug 1331957)
Backed out changeset a01a373da6a8 (bug 1331957)
2017-02-03 11:16:08 +08:00
Ehsan Akhgari 8ac5b64b80 Bug 1331957 - Part 12: Remove -Lclang/lib from the LDFLAGS used to build the clang plugin; r=froydnj
This ensures that we correctly link against /usr/lib/libc++.1.dylib.
With this flag left in LDFLAGS, the linker would find libc++.1.dylib in
clang/lib, which would cause us to link against @rpath/libc++.1.dylib.
2017-02-02 20:21:00 -05:00
Ting-Yu Chou a299d4d20b Bug 1316545 part 1 - Link clang plugin with the import library of clang.exe to fix unresolved symbols. r=ehsan
MozReview-Commit-ID: G2PtmjBVacj
2016-11-16 12:36:58 +08:00
Tom Schuster 3cc61134b1 Bug 1302163 - Show an error for [v]snprintf with literals using the clang plugin. r=ehsan 2016-10-04 17:57:50 +02:00
Michael Layzell 89cf71b092 Bug 1278135 - Link against less of Clang and LLVM statically when building the clang plugin, r=glandium 2016-08-05 13:54:08 -04:00
Mike Hommey 4c7112f60f Followup for bug 1262781: change ASTMatcher check name to force override config.cache on a CLOSED TREE. r=me 2016-04-13 07:17:06 +09:00
Mike Hommey 101f79b100 Bug 1262781 - Use the host compiler for the ASTMatcher check. r=froydnj
The check is for the clang plugin, which is a host library. It is especially
important to use the host compiler for this check on OSX-on-Linux cross builds.
2016-04-13 06:54:22 +09:00
Ehsan Akhgari 8d56a4a75f Bug 1255211 - Add profiledata to the list of LLVM libraries used by the clang plugin; r=jrmuizel
This library is needed for linking the clang plugin on Windows with the
trunk clang.
2016-03-10 10:06:51 -05:00
Ehsan Akhgari b7dad904d3 Bug 1246334 - Add support for building the clang plugin using clang-cl; r=glandium 2016-02-26 07:29:48 -05:00
Ehsan Akhgari ef18719332 Bug 1245269 - Part 2: Add a configure check for the existence of the new AST Matcher API names; r=glandium 2016-02-05 10:29:39 -05:00
Ehsan Akhgari 3dffc9c59e Bug 1204763 - Enable cross compiling the clang plugin for OS X on Linux; r=glandium 2015-09-28 22:14:53 -04:00
Ehsan Akhgari 03981eb9bb Bug 1115426 - Fix static-analysis builds on OSX on the infrasturcture, and add a mozconfig for such builds; r=glandium
This also cleans up some of the existing mozconfig files.
2015-01-06 12:01:13 -05:00
Ehsan Akhgari 9c078e03a4 Bug 1112974 - Try to find llvm-config through clang first before looking at $PATH; r=glandium
Right now, if the LLVMCONFIG variable is not set in the .mozconfig, we
first look for the system default llvm-config and only then we ask clang
itself, which breaks building with the clang plugin if you make $CC and
$CXX point to a non-default clang binary.  This patch fixes the issue
by reversing the search order.

--HG--
extra : rebase_source : 23ab716f4e220097e4c31092475dba769f4e7dfc
2014-12-19 13:13:44 -05:00
Ehsan Akhgari 6a31450ee5 Bug 1109246 - Support the ToT clang in the clang-plugin; r=jrmuizel 2014-12-10 10:46:10 -05: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