aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules/cpp/CcCompilationOutputs.java
Commit message (Collapse)AuthorAge
* Support using minimized bitcode for ThinLTO LTO indexing stepGravatar Googler2017-04-19
| | | | | | | | This is the Blaze side of the support for emitting and using minimized bitcode files during the LTO indexing (thin link) step of a ThinLTO build. The llvm support has already been released to stable, and this needs to be submitted after the companion Crosstool support (unknown commit, will send for review once this larger part is reviewed). This enables large applications successfully build using ThinLTO and -g, otherwise the bitcode files that are input to the LTO indexing step are huge and the maximum input size is exceeded. PiperOrigin-RevId: 153549687
* Introduce CppCompileActionTemplate, which expands into a list of ↵Gravatar Rumou Duan2017-02-10
| | | | | | | | CppCompileActions that to be executed at execution time. -- PiperOrigin-RevId: 147163077 MOS_MIGRATED_REVID=147163077
* Store non-code inputs to link actions separately.Gravatar Lukacs Berki2016-08-11
| | | | | | | | | | | | This is a re-submission of commit 99de0d07574f808fee36826289cb1f5c83e3b3e0 (rolled back in commit eff8b365c172b7e904ac6f7bba0c893fed7c91a8) and a few tweaks: - The fix for the bug that caused the rollback (see line 888 in CppModel.java -- we now use addNonCodeInputs() instead of addObjectFiles() to pass in the processed header tokens) - A few extra assertions - A test case - The re-submission of the parts of commit 603b540bbcd7414cd3e2c0b92c1c8985b035e41b that were also rolled back as collateral damage. The bug report didn't contain a precise reproduction, but the bug is trivial enough that I'm comfortable with things this way. -- MOS_MIGRATED_REVID=129872117
* Rollback of commit 99de0d07574f808fee36826289cb1f5c83e3b3e0.Gravatar Googler2016-08-10
| | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Makes blaze unable to build //third_party/stl IllegalArgumentException: complex.h.processed at com.google.common.base.Preconditions.checkArgument(Preconditions.java:127) at com.google.devtools.build.lib.util.Preconditions.checkArgument(Preconditions.java:38) at com.google.devtools.build.lib.rules.cpp.CppLinkActionBuilder.addObjectFile(CppLinkActionBuilder.java:831) NOT a clean rollback; conflict in one file (CppCompilationContext.java). So this also partially rolls back commit 603b540bbcd7414cd3e2c0b92c1c8985b035e41b (just the change in that file). *** Original change description *** Cleanup: store non-code inputs to link actions separately. -- MOS_MIGRATED_REVID=129798636
* Cleanup: store non-code inputs to link actions separately.Gravatar Lukacs Berki2016-08-10
| | | | | -- MOS_MIGRATED_REVID=129743936
* Allow switching on header processing (parse_headers or preprocess_headers)Gravatar Manuel Klimek2016-02-04
| | | | | | | | | | | for targets in the transitive closure of a target that is built. Rollback of commit e01291a1a3d65cd706190c9bf0c8cfc585f38eb7. Added an additional test to check that the configuration value is actually effectively used. -- MOS_MIGRATED_REVID=113836105
* Rollback of commit 4fdd66db55d36c923b1e9fa30a158e1596408670.Gravatar Michajlo Matijkiw2016-02-02
| | | | | | | | | *** Reason for rollback *** The change this relies on is to be rolled back. -- MOS_MIGRATED_REVID=113564031
* Allow switching on header processing (parse_headers or preprocess_headers)Gravatar Manuel Klimek2016-01-22
| | | | | | | | | | | | | | | | | for targets in the transitive closure of a target that is built. Previously, this would only happen if a link action for the library containing the headers was also built; this specifically means it did not trigger if a library didn't contain source files, as there is no link action for such libraries. That led to no header-only libraries would get their headers parsed, which includes all cc_public_library rules. Adding a flag to introduce this under so we can switch it on independently from the blaze release. Once it is switched on, we can remove the edges in the action graph from the link actions to the header processing actions. -- MOS_MIGRATED_REVID=112782219
* Collect .o files compiled from C(++), and skip the rest for the LTO backend ↵Gravatar Han-Wen Nienhuys2015-10-07
| | | | | | | | | | step. This should make ThinLTO work with .o files that are not generated by compiling C++ in a cc_library() -- MOS_MIGRATED_REVID=104764111
* Rationalize copyright headersGravatar Damien Martin-Guillerez2015-09-25
| | | | | | | | | | | The headers were modified with `find . -type f -exec 'sed' '-Ei' 's|Copyright 201([45]) Google|Copyright 201\1 The Bazel Authors|' '{}' ';'` And manual edit for not Google owned copyright. Because of the nature of ijar, I did not modified the header of file owned by Alan Donovan. The list of authors were extracted from the git log. It is missing older Google contributors that can be added on-demand. -- MOS_MIGRATED_REVID=103938715
* Change the default for CcLibraryHelper.emitLinkActionsIfEmpty to false.Gravatar Ulf Adams2015-07-23
| | | | | | | | | | | | | | | This is renamed from the previous name emitCompileActionsIfEmpty, which was a misnomer, because it didn't affect compile actions at all. Update the callers to no longer call the method if not necessary, which leaves only CcLibrary. CcBinary doesn't hit the link action code path, as it sets the link type to either DYNAMIC_LIBRARY or EXECUTABLE. This is in preparation for removing the implicit outputs from cc_library, which should allow building header-only libraries on MacOS. -- MOS_MIGRATED_REVID=98927221
* Remove TempsProvider in favor of an output group.Gravatar Lukacs Berki2015-02-25
| | | | | -- MOS_MIGRATED_REVID=87136119
* Update from Google.Gravatar Han-Wen Nienhuys2015-02-25
-- MOE_MIGRATED_REVID=85702957