aboutsummaryrefslogtreecommitdiffhomepage
path: root/src/main/java/com/google/devtools/build/lib/rules
Commit message (Collapse)AuthorAge
* Make java_classpath flag non-experimentalGravatar Liam Miller-Cushon2016-07-01
| | | | | -- MOS_MIGRATED_REVID=126310706
* Make building dll less a hack on WindowsGravatar Yun Peng2016-07-01
| | | | | | | | | | | | | | | | | | | | Add .dll as a shared library type like .so If we have target: cc_binary( name = "bar.dll", srcs = ["bar.cc"], linkshared = 1, ) Now we can build a dll using bazel build //foo:bar.dll If the target name is still bar.so, the wrapper script also build the dll by copying the output file to bar.dll. -- Change-Id: Ie3d1fb83965ddf691d0cc4734a61a0b0ce89d948 Reviewed-on: https://bazel-review.googlesource.com/#/c/3931 MOS_MIGRATED_REVID=126301390
* Make repository name warning less noisyGravatar Kristina Chodorow2016-07-01
| | | | | | | This way it won't print if the repo maintainer doesn't set the repo name. -- MOS_MIGRATED_REVID=126300205
* Skylark documentation update: callback functions have to list the required ↵Gravatar Florian Weikert2016-07-01
| | | | | | | attributes as their parameters (instead of using an attribute map). -- MOS_MIGRATED_REVID=126298988
* Add a javac_supports_workers attribute to the java_toolchain rule.Gravatar Philipp Wollermann2016-07-01
| | | | | | | | | | | If this is set to true (which it is by default), JavaCompilationHelper will set the "supports-workers" tag on the execution info for the Javac SpawnAction. If it is explicitly set to false, this tag will be absent. In a follow-up CL, the WorkerSpawnStrategy will check whether this tag is present and fallback to non-worker execution if not. This is needed to safely enable workers by default in Bazel without breaking the older JDK7 JavaBuilder, which does not support workers yet. -- MOS_MIGRATED_REVID=126290991
* Remove --experimental_java_deps and --experimental_incremental_ijars.Gravatar Ulf Adams2016-06-30
| | | | | | | The first option was renamed to --java_deps, and the second was a no-op. -- MOS_MIGRATED_REVID=126280008
* Fix existing usages of persistent workers to include the new ↵Gravatar Philipp Wollermann2016-06-30
| | | | | | | | | "supports-workers" execution info tag. This is a new requirement which helps Blaze decide whether an action can be executed via workers or not. -- MOS_MIGRATED_REVID=126279864
* Support copy-only native code in modern native support for android_binary.Gravatar Michael Staib2016-06-30
| | | | | | | | | | | | | | | | | | | | | | | legacy_native_support makes it so that Bazel copies .so's instead of linking. This allows Bazel to include third-party native code without running an NDK. Turning it off allows Bazel to actually compile native code, but at the cost of this copy case no longer working without an NDK, and creating an unnecessary shared library which will most likely never be used. This CL makes it so that if no actual source code or static libraries are in the transitive closure, the linker is not run at the android_binary level. This means that legacy_native_support as a separate concept can be removed, and it is - the attribute remains, but is a no-op. This will be removed in a future change. The matching flag (--legacy_android_native_support) has already been removed. RELNOTES: The link mode for Android native code is now automatically determined based on the transitive closure of cc_libraries, and legacy_native_support is now a no-op. --legacy_android_native_support has been removed. -- MOS_MIGRATED_REVID=126244755
* Make header compilation flag non-experimentalGravatar Liam Miller-Cushon2016-06-30
| | | | | -- MOS_MIGRATED_REVID=126215213
* Add platform-specific common compile and link flags toGravatar Cal Peyser2016-06-30
| | | | | | | experimental_objc_library. -- MOS_MIGRATED_REVID=126204758
* Fix/work around bad interaction between interface deps and LIPO. Previously ↵Gravatar Googler2016-06-29
| | | | | | | looking at the declared include srcs of all transitive deps was sufficient as these contained all headers possibly relevant even with LIPO optimizations. With interface deps, we cut off dependencies (and thus headers) that aren't directly includable. To still make those available to LIPO, we need to also supply the declared include sources coming from lipo scannables. -- MOS_MIGRATED_REVID=126183112
* Refactor how coverage support files get to test actions.Gravatar Lukacs Berki2016-06-29
| | | | | | | | | Previously we used labels in each configuration fragment that then got added to every test action. Instead, we now have a filegroup under //tools/test for coverage files that truly need to be on the inputs of every test action and collect language-specific support files in InstrumentedFilesProvider. This makes configuration creation simpler and makes it possible to turn --crosstool_top into something else other than a filegroup (previously, it was that filegroup that got added to every test action) -- MOS_MIGRATED_REVID=126170241
* Add java_plugin.generates_apiGravatar Liam Miller-Cushon2016-06-29
| | | | | | | | | | | | | | This attribute marks annotation processors that generate API code. If a rule uses an API-generating annotation processor, other rules depending on it can refer to the generated code only if their compilation actions are scheduled after the generating rule. In the future, annotation processors will only be considered by header compilation if they set generates_api=1. -- MOS_MIGRATED_REVID=126152384
* Collect logic related to extra Proguard outputs in one place.Gravatar Googler2016-06-29
| | | | | -- MOS_MIGRATED_REVID=126120891
* xcode_config throws an error if two aliases are assigned to different ↵Gravatar Chris Parsons2016-06-29
| | | | | | | | | versions, even if no --xcode_version is specified. it also avoids throwing an exception if an xcode_version is aliased to its proper name, to be a bit more lenient. -- MOS_MIGRATED_REVID=126120071
* Filter out non-headers from module maps generated by objc_ rules.Gravatar Dmitry Shevchenko2016-06-29
| | | | | -- MOS_MIGRATED_REVID=126104957
* Rename FileOutErr.get{Output,Error}File to get{Output,Error}Path, because ↵Gravatar Philipp Wollermann2016-06-29
| | | | | | | they actually return a Path and not a File. -- MOS_MIGRATED_REVID=126102820
* Reorganize Skylark Reference documentation.Gravatar Dmitry Lomov2016-06-29
| | | | | -- MOS_MIGRATED_REVID=126081020
* Add bitcode support to experimental_objc_library.Gravatar Cal Peyser2016-06-29
| | | | | -- MOS_MIGRATED_REVID=126068553
* Fixed java_stub_template.txt after disabling runfiles on WindowsGravatar Yun Peng2016-06-27
| | | | | | | -- Change-Id: Ia5def69207f6f69809ff09cda67910844749e63e Reviewed-on: https://bazel-review.googlesource.com/#/c/3907 MOS_MIGRATED_REVID=125957512
* Update build encyclopedia documentation to make clear that entitlements are ↵Gravatar Googler2016-06-27
| | | | | | | not supported on the Simulator out of the box yet. -- MOS_MIGRATED_REVID=125814847
* make StdRedirect available in the runfiles.Gravatar Googler2016-06-27
| | | | | -- MOS_MIGRATED_REVID=125804148
* --Gravatar Carmi Grushko2016-06-27
| | | | MOS_MIGRATED_REVID=125790153
* Enable non_arc_srcs for experimental_objc_library. Allow build variables to ↵Gravatar Cal Peyser2016-06-24
| | | | | | | | | be passed to CcLibraryHelper for an individual source rather than the entire build. -- MOS_MIGRATED_REVID=125738742
* Roll forward commit 53c8f94cfb2ac7d41c8815e40e3d9d834789142bGravatar Liam Miller-Cushon2016-06-24
| | | | | | | | | If addDirectJars and addCompileTimeClassPathEntries are called multiple times on JavaTargetAttributes, the direct deps should always appear before transitive deps on the classpath. -- MOS_MIGRATED_REVID=125719132
* --Gravatar Carmi Grushko2016-06-24
| | | | MOS_MIGRATED_REVID=125712280
* Fix Label and FileType doc locationsGravatar Kristina Chodorow2016-06-24
| | | | | | | | | Moves the constructors out of Globals and under the correct types. Fixes #945. -- MOS_MIGRATED_REVID=125708868
* Rollback of commit dc3dad6a905be2ae76d3b1213d7154bf112d1220.Gravatar Sergio Campama2016-06-24
| | | | | | | | | | | | | *** Reason for rollback *** Needs more design as it would fail on some edge cases *** Original change description *** Support for the compatibility generation of pbobjc.h files by the PB2 library. Previously it was gated by the use_objc_header_names attribute. Now, if the flag isn't set, it will generate both the pb and pbobjc ones, simplifying switching between libraries. -- MOS_MIGRATED_REVID=125705664
* Adds the Android manifest merger as an option for android_binary rules. The ↵Gravatar Andrew Pellegrini2016-06-23
| | | | | | | | | merger that is used (legacy or android) is controlled by the manifest_merger attribute on android_binary and the default is controlled by the --android_manifest_merger flag. RELNOTES: The Android manifest merger is now available as an option for android_binary rules. The merger will honor tools annotations in AndroidManifest.xml and will perform placeholder substitutions using the values specified in android_binary.manifest_values. The merger may be selected by setting the manifest_merger attribute on android_binary. -- MOS_MIGRATED_REVID=125603954
* Description redacted.Gravatar Carmi Grushko2016-06-23
| | | | | -- MOS_MIGRATED_REVID=125589653
* Support for the compatibility generation of pbobjc.h files by the PB2 ↵Gravatar Sergio Campama2016-06-23
| | | | | | | library. Previously it was gated by the use_objc_header_names attribute. Now, if the flag isn't set, it will generate both the pb and pbobjc ones, simplifying switching between libraries. -- MOS_MIGRATED_REVID=125584211
* Remove application_id, version_code and version_name attributes from ↵Gravatar Andrew Pellegrini2016-06-23
| | | | | | | android_binary rule. They have been replaced by manifest_values. -- MOS_MIGRATED_REVID=125568465
* Filegroups can optionally export sources from a given output group.Gravatar Cal Peyser2016-06-23
| | | | | -- MOS_MIGRATED_REVID=125562946
* Skylark: Added more documentation for ctx.expand_location.Gravatar Florian Weikert2016-06-23
| | | | | -- MOS_MIGRATED_REVID=125558637
* Make CppConfiguration.isLipoOptimizationOrInstrumentation() return false in ↵Gravatar Lukacs Berki2016-06-23
| | | | | | | LIPO context collector mode. -- MOS_MIGRATED_REVID=125557199
* Rollback of commit 611e7cd47de47fd7cc7e08a260d6640803aafd9f.Gravatar Liam Miller-Cushon2016-06-22
| | | | | | | | | | | | | | | | | | *** Reason for rollback *** Introduced classpath ordering bug *** Original change description *** Fix analysis performance regression caused by header compilation When building --direct_dependency/--indirect_dependency args, use a set for the direct jars to avoid an O(n) contains check, and make the CustomMultiArgv class static to avoid a memory leak. Also avoid flattening the NestedSet of direct jars for as long as possible. -- MOS_MIGRATED_REVID=125541563
* Dedupe input artifacts when adding them to a filelist to be passed to ↵Gravatar Chris Parsons2016-06-22
| | | | | | | apple's clang -- MOS_MIGRATED_REVID=125520039
* Make module maps generation conditional for native Swift rules.Gravatar Dmitry Shevchenko2016-06-22
| | | | | | | | | | | | * This fixes a crash when a target has both a bridging header and a * module map RELNOTES: Native Swift rules no longer pull in module maps unconditionally. Use --experimental_objc_enable_module_maps for that. -- MOS_MIGRATED_REVID=125491042
* Fix analysis performance regression caused by header compilationGravatar Liam Miller-Cushon2016-06-22
| | | | | | | | | | When building --direct_dependency/--indirect_dependency args, use a set for the direct jars to avoid an O(n) contains check, and make the CustomMultiArgv class static to avoid a memory leak. Also avoid flattening the NestedSet of direct jars for as long as possible. -- MOS_MIGRATED_REVID=125468789
* Change Markdown in execution_requirements docs to HTML, fixes #706.Gravatar John Cater2016-06-22
| | | | | -- MOS_MIGRATED_REVID=125465251
* Roll forward commit 4ab4f05a8cbbaa4b7d938d1d305961fe95a5416c.Gravatar Googler2016-06-22
| | | | | | | Consider /src/ in the path when locating the java root directory. -- MOS_MIGRATED_REVID=125461909
* Remove the "glibc" selector from CppConfiguration.Gravatar Lukacs Berki2016-06-22
| | | | | | | It's not used and it causes difficulties, since it's a function of the CROSSTOOL file, which we want not to affect configurations (eventually). -- MOS_MIGRATED_REVID=125455664
* Refactor common code that determines whether a target is coveredGravatar Googler2016-06-22
| | | | | | | | | When --noinstrument_test_targets is set, shouldIncludeLocalSources (in InstrumentedFilesCollector) excludes test targets not excluded by --instrumentation_filter. Build actions enabling coverage instrumentation should know about that, so they don't do unnecessary work. Also pulled shouldIncludeLocalSources out of a static inner class. -- MOS_MIGRATED_REVID=125452712
* When running Java-based tools, use -XX:+TieredCompilation ↵Gravatar Philipp Wollermann2016-06-21
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | -XX:TieredStopAtLevel=1 instead of -client, as the latter is ignored on 64-bit JVMs since at least JDK 6. The new flags have been shown to cut down CPU time by 50% due to reduced time spent in JIT and improving overall run time for short running actions, some times also cutting them in half. Here's a benchmark of Bazel building itself, giving a nice 2-4x speedup: ./output/bazel clean && ./output/bazel build //src:bazel Bazel before this change: INFO: Elapsed time: 197.783s, Critical Path: 194.10s INFO: Elapsed time: 198.928s, Critical Path: 195.65s INFO: Elapsed time: 194.913s, Critical Path: 191.56s Bazel before this change with --strategy=Javac=worker: INFO: Elapsed time: 130.436s, Critical Path: 124.27s INFO: Elapsed time: 116.114s, Critical Path: 112.30s INFO: Elapsed time: 116.852s, Critical Path: 84.45s Bazel with this change: INFO: Elapsed time: 121.625s, Critical Path: 119.08s INFO: Elapsed time: 119.401s, Critical Path: 115.80s INFO: Elapsed time: 121.198s, Critical Path: 119.03s Bazel with this change and --strategy=Javac=worker: INFO: Elapsed time: 54.456s, Critical Path: 51.28s INFO: Elapsed time: 53.272s, Critical Path: 51.09s INFO: Elapsed time: 52.966s, Critical Path: 49.86s Bazel with this change and --strategy=Javac=worker and stripping -XX:TieredStopAtLevel=1 from JVM flags when using workers: INFO: Elapsed time: 61.599s, Critical Path: 58.93s INFO: Elapsed time: 48.695s, Critical Path: 45.02s INFO: Elapsed time: 46.874s, Critical Path: 43.91s INFO: Elapsed time: 46.174s, Critical Path: 43.32s (The latter is a possible optimization for workers and it's also nice to know that the limited tiered compilation does not hurt their performance.) -- MOS_MIGRATED_REVID=125448089
* Skylark: ObjcProvider related errors now use the correct Skylark type ↵Gravatar Florian Weikert2016-06-21
| | | | | | | instead of Java's Class<?>. -- MOS_MIGRATED_REVID=125443529
* Disable runfiles on Windows.Gravatar Dmitry Lomov2016-06-21
| | | | | | | | | | | | This adds a new configuration option that allows disabling the creation of symlink forest for runfiles. On Windows, symlink forest is disabled by default; only the runfiles manifest is created. For shell tests, a function 'rlocation' is provided that converts from runfiles location to a real location. Work towards #1212. -- MOS_MIGRATED_REVID=125439553
* Added more pointers to Aspect-related documentation.Gravatar Florian Weikert2016-06-21
| | | | | -- MOS_MIGRATED_REVID=125428066
* Remove breakpad support from bazelGravatar Dmitry Shevchenko2016-06-21
| | | | | -- MOS_MIGRATED_REVID=125385321
* Adds the label of the rule that produced the artifact to the apk manifest.Gravatar Alex Humesky2016-06-21
| | | | | -- MOS_MIGRATED_REVID=125376859
* Move Android and Java 7 javacopts into java_toolchainGravatar Liam Miller-Cushon2016-06-21
| | | | | -- MOS_MIGRATED_REVID=125360308