aboutsummaryrefslogtreecommitdiffhomepage
Commit message (Collapse)AuthorAge
...
* Rollback of commit e0d7a540e3c615c628f63fcaaaba0c47fca2cb25.Gravatar Philipp Wollermann2016-10-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Suspected root cause for Windows bootstrap on Bazel CI breakage: java.lang.NullPointerException at com.google.devtools.build.lib.vfs.Path$1.run(Path.java:123) http://ci.bazel.io/view/Bazel%20bootstrap%20and%20maintenance/job/Bazel/922/JAVA_VERSION=1.8,PLATFORM_NAME=windows-x86_64/console *** Original change description *** VFS: implement a Windows-specific Path subclass The new subclass WindowsFileSystem.WindowsPath is aware of Windows drives. This change: - introduces a new factory for Path objects so FileSystems can return a custom implementation that instantiates filesystem-specific Paths - implements the WindowsPath subclass of Path that is aware of Windows drives - introduces the bazel.windows_unix_root JVM argument that defines the MSYS root, which defines the absolute Windows path that is the... *** -- MOS_MIGRATED_REVID=136583352
* Rollback of commit 8bb4299b28de14eed9d3b57bcaeb9350c81c7db3.Gravatar Philipp Wollermann2016-10-19
| | | | | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Suspected root cause for Windows bootstrap on Bazel CI breakage: java.lang.NullPointerException at com.google.devtools.build.lib.vfs.Path$1.run(Path.java:123) http://ci.bazel.io/view/Bazel%20bootstrap%20and%20maintenance/job/Bazel/922/JAVA_VERSION=1.8,PLATFORM_NAME=windows-x86_64/console *** Original change description *** VFS, WindowsFileSystem: fix UNIX_ROOT retrieval Executing bash.exe directly instead of through cmd.exe doesn't seem to work. This change fixes that problem. Fixes https://github.com/bazelbuild/bazel/issues/1463 (again) -- MOS_MIGRATED_REVID=136581532
* Set show_progress_rate_limit to -1 for all tests to ensure progress messagesGravatar John Cater2016-10-19
| | | | | | | are not lost. -- MOS_MIGRATED_REVID=136579898
* Add type arguments for JDK7 build.Gravatar Janak Ramakrishnan2016-10-19
| | | | | -- MOS_MIGRATED_REVID=136575806
* Rollback of commit a9f20b0d6459d395444c45cf5e94a899f3443633.Gravatar Philipp Wollermann2016-10-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | *** Reason for rollback *** Broke Bazel CI: ERROR: /home/ci/workspace/Bazel/JAVA_VERSION/1.8/PLATFORM_NAME/linux-x86_64/src/BUILD:284:1: in filegroup rule //src:srcs: non-test target '//src:srcs' depends on testonly target '//src/java_tools/junitrunner/java/com/google/testing/junit/junit4:srcs' and doesn't have testonly attribute set. ERROR: Analysis of target '//scripts/packages:packages' failed; build aborted. http://ci.bazel.io/view/Bazel%20bootstrap%20and%20maintenance/job/Bazel/JAVA_VERSION=1.8,PLATFORM_NAME=linux-x86_64/923/console *** Original change description *** Enforce that non test-only targets cannot depends on test-only targets This behavior was not enforced since we open-sourced Bazel even though this was documented and the attributed existed. Also removed the incorrect part from the documentations: we do not enforce restrictions on javatests package. Fixes #1923. RELNOTES[INC]: Non test-only targets can no longer depends on test-only targets. -- MOS_MIGRATED_REVID=136574806
* Fix build on FreeBSD (again).Gravatar Piotr Sikora2016-10-19
| | | | | -- MOS_MIGRATED_REVID=136574107
* Expose multi-arch artifacts to objc skylark providersGravatar Chris Parsons2016-10-19
| | | | | -- MOS_MIGRATED_REVID=136523173
* Fix ThinLTO indexing linkstamp handlingGravatar Googler2016-10-19
| | | | | | | | | | | | | | | | | | We were including the linkstamp object file in the linker inputs on the command line for the LTO indexing step, despite not adding the linkstamp compile command or the files to the inputs and outputs, causing an error. The linkstamp file is not compiled in ThinLTO mode. The linkstamp is correctly added to the final native link. The fix is to not pass the linkstampMap to the CppLinkVariablesExtension for the LTO indexing step. Passing in the map causes the linkstamp outputs to be added to the buildVariables, resulting in the outputs being added to the command line via the featureConfiguration. Added linkstamps to several of the ThinLTO tests. -- MOS_MIGRATED_REVID=136480400
* Per action file caching for input TreeArtifact.Gravatar Rumou Duan2016-10-19
| | | | | -- MOS_MIGRATED_REVID=136475556
* Create a proper wrapper script for executing "bazel" in the integration tests.Gravatar Luis Fernando Pino Duque2016-10-19
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Currently a call to "bazel" in an integration test means calling a (quite hidden) function in test-setup.sh which actually calls "$bazel" defined in "shell/bazel/testenv.sh" which is equal to "$(rlocation io_bazel/src/bazel)". This is extremely confusing and error prone. The new mechanism is to add a wrapper script to shell/bin called bazel and export this directory to the PATH. Moreover, not every test loads the same test environment, for instance consider how bazel_query_test loads the test environment: - Load shell/integration/testenv.sh which loads, - shell/bazel/test-setup.sh which loads, - shell/bazel/testenv.sh which loads, - shell/unittest.bash which loads, - shell/testenv.sh Again this is error prone and specially hard to understand, in fact each test writer needs to decide which of these testenv to load. This change fixes all of this by having only one testenv.sh and summarizing the test setup in integration_test_setup.sh. Namely, for any new integration test, the developer needs to load integration_test_setup to get the environment set up including the unittest framework (also it helps to attract contributions). This change also allows to open sourcing client_sigint_test: Since bazel was a function client_sigint_test was using a wrong process id to interrupt the build. The problem is that $! returns bash's id instead of the id of the process running in the background when using a function instead of an executable. A few tests needed to be adapted to the new infrastructure. -- MOS_MIGRATED_REVID=136470360
* Rollback of commit ffdc05d2278d7f9c6e299c923019f689cde5fe76.Gravatar Yun Peng2016-10-19
| | | | | | | | | *** Reason for rollback *** Causes huge memory blow-up after the analysis phase in CppLinkAction (LinkCommandLine). -- MOS_MIGRATED_REVID=136467836
* Fix a wrong target name in the protobuf/3.0.0/BUILD file.Gravatar Philipp Wollermann2016-10-19
| | | | | | | | | | | The "protobuf_python" target references a "protobuf_python_srcs" target in its deps, which does not exist, causing a build error when I tried to run "bazel build //src/main/...": ERROR: /Users/philwo/src/bazel/third_party/protobuf/3.0.0/BUILD:70:1: in deps attribute of py_library rule //third_party/protobuf/3.0.0:protobuf_python: rule '//third_party/protobuf/3.0.0:protobuf_python_srcs' does not exist. Since this rule was created by the macro 'py_proto_library', the error might have been caused by the macro implementation in /Users/philwo/src/bazel/third_party/protobuf/protobuf.bzl:256:12. I think the "python_srcs" target should actually be called "protobuf_python_srcs". With that change, the build works. -- MOS_MIGRATED_REVID=136467485
* Move the RuleModule interface to ConfiguredRCP and rename it to RuleSet.Gravatar Ulf Adams2016-10-19
| | | | | -- MOS_MIGRATED_REVID=136463385
* Enforce that non test-only targets cannot depends on test-only targetsGravatar Damien Martin-Guillerez2016-10-19
| | | | | | | | | | | | | | | This behavior was not enforced since we open-sourced Bazel even though this was documented and the attributed existed. Also removed the incorrect part from the documentations: we do not enforce restrictions on javatests package. Fixes #1923. RELNOTES[INC]: Non test-only targets can no longer depends on test-only targets. -- MOS_MIGRATED_REVID=136459421
* Replace grep by expect_log in java_integration_test#test_java_pluginGravatar Damien Martin-Guillerez2016-10-19
| | | | | | | | | | | | This fixes #1888: on my laptop (Mac Book Air), the test is highly flaky (6-7 tests fails out of 10) but with this change, I observe no failures. I cannot explains it but it seems to be some kind of race in the stream handling. -- Change-Id: I09eb9d5a1c8468c7a0299966a5ea20e7a5fc86f0 Reviewed-on: https://bazel-review.googlesource.com/c/6696/ MOS_MIGRATED_REVID=136459264
* Fix caching for zsh completionsGravatar Nate Bosch2016-10-19
| | | | | | | | | | | | | | | | | | | | | Before - failing to find completions in the relevant variable would always force getting them fresh, regardless of whether they are present in the cache because the `||` would always be true. - in _bazel_get_options use a short circuit return when the variable is not empty - in _bazel_command, _bazel_help_topic, and _bazel_info_key nest the cache conditions inside the if block checking for an empty varible cleanup: - Use the same 2 space indent for continued conditions in _bazel_get_options as was already used in _bazel_command and the rest Closes #1951. -- Reviewed-on: https://github.com/bazelbuild/bazel/pull/1951 MOS_MIGRATED_REVID=136458728
* Make query return dependencies contributed by aspects on rules that don't ↵Gravatar Lukacs Berki2016-10-18
| | | | | | | advertise and providers. -- MOS_MIGRATED_REVID=136452596
* Rollback of commit b776d6c12e952eb358c1a036cc9d93d8944c4c77.Gravatar Nathan Harmata2016-10-18
| | | | | | | *** Reason for rollback *** -- MOS_MIGRATED_REVID=136448178
* Rollback of commit 72cc756faffa93781942df261974572c65941c95.Gravatar Tobias Werth2016-10-18
| | | | | -- MOS_MIGRATED_REVID=136447767
* Simplify the j2objc stuff.Gravatar Ulf Adams2016-10-18
| | | | | -- MOS_MIGRATED_REVID=136446429
* Split up rule sets into smaller chunks.Gravatar Ulf Adams2016-10-18
| | | | | | | | | Move the Bazel-specific setup into a separate RuleSet and don't explicitly depend on that - instead, implicitly call it's init() whenever we need a valid RCP. -- MOS_MIGRATED_REVID=136444074
* Refactor the rule class provider.Gravatar Ulf Adams2016-10-18
| | | | | | | | | | | | - add a convenience method to make adding options + fragment factories a bit simpler - sort the objc rules alphabetically - split the j2objc rules from the objc rules - unfortunately, the objc rules depend on the j2objc configuration, so that has to stay -- MOS_MIGRATED_REVID=136442577
* Fix unnecessary static imports of typesGravatar Liam Miller-Cushon2016-10-18
| | | | | -- MOS_MIGRATED_REVID=136431274
* Add file extension property to SkylarkGravatar Paul Roberts2016-10-18
| | | | | | | RELNOTES[NEW]: Files now have an "extension" property in Skylark. -- MOS_MIGRATED_REVID=136425934
* Support tvOS and fix the platform min OS version selection.Gravatar Googler2016-10-18
| | | | | -- MOS_MIGRATED_REVID=136416405
* Allow .protodevel files in srcs of proto_library.Gravatar Googler2016-10-18
| | | | | -- MOS_MIGRATED_REVID=136402597
* Fixed a documentation typo.Gravatar Vladimir Moskva2016-10-18
| | | | | -- MOS_MIGRATED_REVID=136401346
* Remove obsolete code from Bazel tools.Gravatar Dmitry Shevchenko2016-10-18
| | | | | -- MOS_MIGRATED_REVID=136400800
* Rename BUILD into BUILD.linaro for the linaro toolchain exampleGravatar Damien Martin-Guillerez2016-10-18
| | | | | | | | | | | | Those BUILD files were broken in the default bazel set-up, preventing test on //src/test/... The bazel_toolchain_test now rename those file. Fixes #1957. -- Change-Id: Ie0a1dbde349a307998fd4d42f73fffabc67c113c Reviewed-on: https://bazel-review.googlesource.com/6693 MOS_MIGRATED_REVID=136379678
* VFS, WindowsFileSystem: fix UNIX_ROOT retrievalGravatar Laszlo Csomor2016-10-18
| | | | | | | | | | | Executing bash.exe directly instead of through cmd.exe doesn't seem to work. This change fixes that problem. Fixes https://github.com/bazelbuild/bazel/issues/1463 (again) -- MOS_MIGRATED_REVID=136364606
* Fix permissions before overwriting filesGravatar Klaus Aehlig2016-10-18
| | | | | | | | | | | | | | In our bazel-srcs tar ball, files are packed with permissions 550. Copying into a temporary directory may preserve permissions. So, when overwriting one of those files in the temporary directory, grant the user write permissions before writing to that file. Otherwise, bootstrapping from //:bazel-srcs via ./compile.sh as normal user will fail on some systems. -- Change-Id: I70b4645c9bc3c25b9fd356bacdb959205c64b931 Reviewed-on: https://bazel-review.googlesource.com/#/c/6695 MOS_MIGRATED_REVID=136360945
* cpp: header hygienizationGravatar Thiago Farina2016-10-18
| | | | | | | | | | | * remove "using std::" declarations from header files * add missing "std::" to some string declarations at some header files * add "using std::string;" to some source files where necessary -- Change-Id: Ib64f62b5add499d6171fa922227194ac992fa542 Reviewed-on: https://bazel-review.googlesource.com/#/c/6630/ MOS_MIGRATED_REVID=136355671
* Don't bother getting the not-real FileStateValue for a path whose parent ↵Gravatar Nathan Harmata2016-10-18
| | | | | | | | | doesn't exist. In addition to saving a filesystem operation, this removes a source of a potential filesystem inconsistency. -- MOS_MIGRATED_REVID=136355008
* VFS: implement a Windows-specific Path subclassGravatar Laszlo Csomor2016-10-18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The new subclass WindowsFileSystem.WindowsPath is aware of Windows drives. This change: - introduces a new factory for Path objects so FileSystems can return a custom implementation that instantiates filesystem-specific Paths - implements the WindowsPath subclass of Path that is aware of Windows drives - introduces the bazel.windows_unix_root JVM argument that defines the MSYS root, which defines the absolute Windows path that is the root of all Unix paths that Bazel creates (e.g. "/usr/lib" -> "C:/tools/msys64/usr/lib") except if the path is of the form "/c/foo" which is treated as "C:/foo" - removes all Windows-specific logic from Path PathFragment is still aware of drive letters and it has to remain so because it is unaware of file systems. WindowsPath restricts the allowed path strings to absolute Unix paths where the first segment, if any, is a volume specifier. From now on if Bazel attempts to create a WindowsPath from an absolute Unix path, Bazel will make it relative to WindowsPath.UNIX_ROOT, unless the first component is a single-letter name (e.g. "/c/foo" which is "C:/foo"). Subclassing Path is necessary because a Unix-style absolute path doesn't sufficiently define a full Windows path, as it may be relative to any drive. Fixes https://github.com/bazelbuild/bazel/issues/1463 -- MOS_MIGRATED_REVID=136350304
* Update linaro toolchain version and sourcesGravatar Xin Gao2016-10-17
| | | | | | | | | Fixes #1903. -- Change-Id: Ifd8f3676ed8cf6cef514a0294a22330cc326e6b5 Reviewed-on: https://bazel-review.googlesource.com/#/c/6590/ MOS_MIGRATED_REVID=136348803
* Clean up BazelTestSuiteRule.Gravatar Ulf Adams2016-10-17
| | | | | -- MOS_MIGRATED_REVID=136345104
* Refactor the C++ rules - move several rule classes to top-level files.Gravatar Ulf Adams2016-10-17
| | | | | -- MOS_MIGRATED_REVID=136342353
* Failing back to --expunge when using --expunge_async on non-Linux machineGravatar Damien Martin-Guillerez2016-10-17
| | | | | | | | | | | | --expunge_async rely on setsid to create a new process group, this is non-existent on Darwin nor on Windows. This lead to moving the output base to a location and forget about it silently. Instead, we fall-back to expunge_async until we completely fixes #1906. -- Change-Id: Ia932613f687149a85f766de9faa7ce49aaa20b38 Reviewed-on: https://bazel-review.googlesource.com/6694 MOS_MIGRATED_REVID=136340995
* Fix #1719: Sandbox should print better error message on execvp failure.Gravatar Philipp Wollermann2016-10-17
| | | | | -- MOS_MIGRATED_REVID=136338300
* Support per-module shutdown code on crash.Gravatar Julio Merino2016-10-17
| | | | | | | | | | | | | | Add a new "shutdown on crash" hook to the Blaze modules and call it when we exit due to a crash. This allows modules to perform necessary cleanup of internal state when exiting abruptly. Note that the need for implementing "shutdown on crash" is rare. As an example of when this may be useful is a module that has spawned background threads to communicate with a remote server and we want to shut down those connections in a controlled manner. -- MOS_MIGRATED_REVID=136330678
* Update MSVC CROSSTOOL to adapt 74b94328db5346e0f6c573731fcbaa85ca751304Gravatar Yun Peng2016-10-17
| | | | | | | -- Change-Id: I46e434e9add5647bd29945ba2f80a399999a4b17 Reviewed-on: https://bazel-review.googlesource.com/#/c/6692 MOS_MIGRATED_REVID=136325160
* Split up BazelRuleClassProvider into per-language modules.Gravatar Ulf Adams2016-10-17
| | | | | | | | | | | | | Add a test to ensure each module is internally consistent / correctly declares its dependencies. This enforces a certain amount of rule set modularity, and may allow us to move the rule modules to the rule packages in the future, which would very much clean up the RuleClassProvider (which currently depends on everything and the kitchen sink). -- MOS_MIGRATED_REVID=136321762
* Fix a bug in which Bazel reports action conflicts between ActionTemplates ↵Gravatar Rumou Duan2016-10-17
| | | | | | | and associated expanded actions. -- MOS_MIGRATED_REVID=136212908
* Augment the CppLinkInfo extra action proto with the command line of the linker.Gravatar Googler2016-10-17
| | | | | | | Currently, the proto only includes the linkopt arguments collected from the rules, which are insufficient for reconstructing the linking step in the extra action listener. This CL adds the complete command line needed to re-run the linking step. -- MOS_MIGRATED_REVID=136211307
* Rollback of commit 0c7a42a09d85ddffd9b860bcb31e4c43a00632c1.Gravatar Nathan Harmata2016-10-17
| | | | | | | | | | | | | | | | | | *** Reason for rollback *** [] *** Original change description *** Slight refactor of ExternalFilesHelper: -Make FileType and ExternalFileAction public. -Have producers use ExternalFileAction, rather than a boolean, to specify the desired behavior. And a big change in semantics (doesn't affect Bazel): -Replace ExternalFileAction.ERROR_OUT with ExternalFileAction.ASSUME_NON_EXISTENT_AND_IMMUTABLE, which does what it sounds like. This new action, like the old ERROR_OUT, is _not_ used in Bazel. -- MOS_MIGRATED_REVID=136206810
* Remove implicit requirement to not use Jack with Java 8 desugaring flag for ↵Gravatar Googler2016-10-17
| | | | | | | Android builds. -- MOS_MIGRATED_REVID=136203474
* Add a flag to android_binary to allow resource shrinking to be controlled on ↵Gravatar Googler2016-10-14
| | | | | | | | | a per-target basis. This flag only affects builds that have --experimental_android_resource_shrinking enabled. This will allow us to enable and disable the feature without needing to update [] or Rapid configs and on a module by module basis inside GmsCore. It will also let us enable/disable for GmsCore modules on a team by team basis. Tested by adding to an android_binary target and building with the resource shrinking flag enabled. -- MOS_MIGRATED_REVID=136189212
* Exclude JarFilterTest from Windows.Gravatar Googler2016-10-14
| | | | | -- MOS_MIGRATED_REVID=136175679
* Remove apple fragment access fallbackGravatar Chris Parsons2016-10-14
| | | | | -- MOS_MIGRATED_REVID=136161771
* Add design doc for recursive WORKSPACE file parsingGravatar Kristina Chodorow2016-10-14
| | | | | | | | | #1943 -- Change-Id: Ic7b4378acb4d3661a1b61ff887c9cc8592df9f7e Reviewed-on: https://bazel-review.googlesource.com/c/6131/ MOS_MIGRATED_REVID=136154990