summaryrefslogtreecommitdiff
path: root/lib/clang/libclangdriver
Commit message (Collapse)AuthorAgeFilesLines
* Completely revamp the way llvm, clang and lldb are built.Dimitry Andric2016-08-262-47/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Bootstrap llvm-tblgen and clang-tblgen with a minimal llvm static library, that has no other dependencies. * Roll up all separate llvm libraries into one big static libllvm. * Similar for all separate clang and lldb static libraries. * For all these libraries, generate their .inc files only once. * Link all llvm tools (including extra) against the big libllvm. * Link clang and clang-format against the big libllvm and libclang. * Link lldb against the big libllvm, libclang and liblldb. N.B.: This is work in progress, some details may still be missing. It also heavily depends on bsd.*.mk's support for SRCS and DPSRCS with relative pathnames, which apparently does not always work as expected. For building llvm, clang and lldb though, it seems to work just fine. The main idea behind this restructuring is maintainability and build peformance. The previous large number of very small libraries, each with their own generated files and dependencies was slow to traverse and hard to understand. Possible future improvements: * Only build certain targets, e.g. for most regular users having just one target will be fine. This will shave off some build time. * Building the big llvm, clang and lldb libraries as shared (private) libraries. * Adding other components from the LLVM project, such as lld. Notes: svn path=/projects/clang390-import/; revision=304867
* DIRDEPS_BUILD: Update clang dependencies after r296417.Bryan Drewery2016-03-081-1/+1
| | | | | | | Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=296550
* DIRDEPS_BUILD: Regenerate without local dependencies.Bryan Drewery2016-02-241-58/+0
| | | | | | | | | | | These are no longer needed after the recent 'beforebuild: depend' changes and hooking DIRDEPS_BUILD into a subset of FAST_DEPEND which supports skipping 'make depend'. Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=295989
* META MODE: Update dependencies with 'the-lot' and add missing directories.Bryan Drewery2015-12-011-0/+4
| | | | | | | | | | | | | | | | | This is not properly respecting WITHOUT or ARCH dependencies in target/. Doing so requires a massive effort to rework targets/ to do so. A better approach will be to either include the SUBDIR Makefiles directly and map to DIRDEPS or just dynamically lookup the SUBDIR. These lose the benefit of having a userland/lib, userland/libexec, etc, though and results in a massive package. The current implementation of targets/ is very unmaintainable. Currently rescue/rescue and sys/modules are still not connected. Sponsored by: EMC / Isilon Storage Division Notes: svn path=/head/; revision=291563
* Update llvm/clang to r241361.Dimitry Andric2015-07-051-0/+1
| | | | Notes: svn path=/projects/clang-trunk/; revision=285181
* Add META_MODE support.Simon J. Gerraty2015-06-131-0/+71
|\ | | | | | | | | | | | | | | | | | | | | | | | | | | Off by default, build behaves normally. WITH_META_MODE we get auto objdir creation, the ability to start build from anywhere in the tree. Still need to add real targets under targets/ to build packages. Differential Revision: D2796 Reviewed by: brooks imp Notes: svn path=/head/; revision=284345
| * dirdeps.mk now sets DEP_RELDIRSimon J. Gerraty2015-06-081-12/+16
| | | | | | | | Notes: svn path=/projects/bmake/; revision=284172
| * Merge sync of headSimon J. Gerraty2015-05-271-5/+5
| |\ | |/ |/| | | Notes: svn path=/projects/bmake/; revision=283595
| * Updated dependenciesSimon J. Gerraty2014-05-161-8/+10
| | | | | | | | Notes: svn path=/projects/bmake/; revision=266219
| * Merge headSimon J. Gerraty2014-04-281-4/+2
| |\ | | | | | | | | | Notes: svn path=/projects/bmake/; revision=265044
| * | Updated dependenciesSimon J. Gerraty2013-10-131-0/+3
| | | | | | | | | | | | Notes: svn path=/projects/bmake/; revision=256419
| * | Updated dependenciesSimon J. Gerraty2013-03-171-4/+4
| | | | | | | | | | | | Notes: svn path=/projects/bmake/; revision=248406
| * | Sync with HEAD.David E. O'Brien2013-02-081-0/+2
| |\ \ | | | | | | | | | | | | Notes: svn path=/projects/bmake/; revision=246555
| * \ \ Sync from headSimon J. Gerraty2012-11-041-2/+0
| |\ \ \ | | | | | | | | | | | | | | | Notes: svn path=/projects/bmake/; revision=242545
| * | | | Sync FreeBSD's bmake branch with Juniper's internal bmake branch.Marcel Moolenaar2012-08-221-0/+61
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Requested by: Simon Gerraty <sjg@juniper.net> Notes: svn path=/projects/bmake/; revision=239572
* | | | | Update llvm and clang library and binary Makefiles for 3.6.0 rc1.Dimitry Andric2015-01-261-2/+3
| | | | | | | | | | | | | | | | | | | | Notes: svn path=/projects/clang360-import/; revision=277765
* | | | | Update llvm and clang library Makefiles.Dimitry Andric2014-11-241-3/+2
| |_|_|/ |/| | | | | | | | | | | Notes: svn path=/projects/clang350-import/; revision=274973
* | | | Upgrade our copy of llvm/clang to 3.4 release. This version supportsDimitry Andric2014-02-161-4/+2
| |_|/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | all of the features in the current working draft of the upcoming C++ standard, provisionally named C++1y. The code generator's performance is greatly increased, and the loop auto-vectorizer is now enabled at -Os and -O2 in addition to -O3. The PowerPC backend has made several major improvements to code generation quality and compile time, and the X86, SPARC, ARM32, Aarch64 and SystemZ backends have all seen major feature work. Release notes for llvm and clang can be found here: <http://llvm.org/releases/3.4/docs/ReleaseNotes.html> <http://llvm.org/releases/3.4/tools/clang/docs/ReleaseNotes.html> MFC after: 1 month Notes: svn path=/head/; revision=261991
* | | Pull in r170135 from upstream clang trunk:Dimitry Andric2013-02-021-0/+2
| |/ |/| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Dont use/link ARCMT, StaticAnalyzer and Rewriter to clang when the user specifies not to. Dont build ASTMatchers with Rewriter disabled and StaticAnalyzer when it's disabled. Without all those three, the clang binary shrinks (x86_64) from ~36MB to ~32MB (unstripped). To disable these clang components, and get a smaller clang binary built and installed, set WITHOUT_CLANG_FULL in src.conf(5). During the initial stages of buildworld, those extra components are already disabled automatically, to save some build time. MFC after: 1 week Notes: svn path=/head/; revision=246259
* | Upgrade our copy of llvm/clang to trunk r162107. With thanks toDimitry Andric2012-08-201-2/+0
|/ | | | | | | Benjamin Kramer and Joerg Sonnenberger for their input and fixes. Notes: svn path=/head/; revision=239462
* Upgrade our copy of llvm/clang to trunk r154661, in preparation of theDimitry Andric2012-04-161-2/+2
| | | | | | | | | | upcoming 3.1 release (expected in a few weeks). Preliminary release notes can be found at: <http://llvm.org/docs/ReleaseNotes.html> MFC after: 2 weeks Notes: svn path=/head/; revision=234353
* Upgrade our Clang in base to r108428.Ed Schouten2010-07-201-6/+23
| | | | | | | | | | | | This commit merges the latest LLVM sources from the vendor space. It also updates the build glue to match the new sources. Clang's version number is changed to match LLVM's, which means /usr/include/clang/2.0 has been renamed to /usr/include/clang/2.8. Obtained from: projects/clangbsd Notes: svn path=/head/; revision=210299
* Import the build makefiles for clang/LLVM.Roman Divacky2010-06-091-0/+14
Approved by: ed (mentor) Notes: svn path=/head/; revision=208963