aboutsummaryrefslogtreecommitdiffhomepage
path: root/scripts/bootstrap
Commit message (Collapse)AuthorAge
* Fix Guava version in compile.sh.Gravatar philwo2018-07-25
| | | | | RELNOTES: None. PiperOrigin-RevId: 205975626
* Add Arm64 supportGravatar Arielle Albon2018-06-20
| | | | | | | | Based on work of Sun Zhiyi <zhiyisun@gmail.com>. Closes #5360. PiperOrigin-RevId: 201339882
* Introduces a BAZEL_JAVAC_OPTS environment variable to the bootstrap build ↵Gravatar Googler2018-06-14
| | | | | | | | with empty default value to keep the script behavior unchanged. javac is not given a large enough max heap on Raspberry Pi 3. This change but allows the user to override the setting. RELNOTES: The BAZEL_JAVAC_OPTS environment variable allows arguments, e.g., "-J-Xmx2g", may be passed to the javac compiler during bootstrap build. This is helpful if your system chooses too small of a max heap size for the Java compiler during the bootstrap build. PiperOrigin-RevId: 200557606
* Move --distdir out of experimental statusGravatar Klaus Aehlig2018-06-07
| | | | | | | | | | | | | | | | | | | | | | | The option --experimental_distdir has been introduced 4 months ago and was completely unproblematic ever since. Moreover, it is now used productively, both in our own bootstrapping process[1], as well as in external packaging of projects using bazel[2]. So make this option non-experimental. We still keep the old name as an alternative to not break existing uses. Related: #5175. RELNOTES: The --distdir option is no longer experimental. This option allows to specify additional directories to look for files before trying to fetch them from the network. Files from any of the distdirs are only used if a checksum for the file is specified and both, the filename and the checksum, match. [1] Commit 3c9cd82b847f3ece8ec04b2029bd5e8ad0eb7502 [2] https://github.com/gentoo/gentoo/blob/7379cdb578b0c070c846c3fa9f71470e2c5d1320/sci-libs/tensorflow/tensorflow-1.8.0-r1.ebuild#L168 Change-Id: I536238f9bdbad6b4f7222b4f6a1464d70d9f3be3 PiperOrigin-RevId: 199637265
* Avoid dependency on coreutil.Gravatar Greg Steuck2018-06-04
| | | | | | | | | This use of seq is easy enough to emulate in bash which is a declared bootstrap dependency. Closes #5321. PiperOrigin-RevId: 199248546
* distfile: pack the archives needed later in the buildGravatar Klaus Aehlig2018-05-24
| | | | | | | | | | | | ...and point --experimental_distdir there, so that offline builds are again possible out of the distribution archive. Related #5175. Fixes #5202. To be cherry-picked for #5056. Change-Id: I634296e9d83e4e18ed966b42f35acc63061259d9 PiperOrigin-RevId: 197866998
* Use the local JDK as the default target javabaseGravatar cushon2018-05-14
| | | | | | and continue to use the embedded JDK as the default host_javabase. PiperOrigin-RevId: 196471714
* Remove some references to JDK 7, which is not longer supportedGravatar cushon2018-04-25
| | | | PiperOrigin-RevId: 194284627
* s/BazelMain/Bazel/Gravatar michajlo2018-04-09
| | | | PiperOrigin-RevId: 192137803
* third_party/guava: update to 24.1Gravatar Jakob Buchgraber2018-03-21
| | | | | | Closes #4872. PiperOrigin-RevId: 189889623
* Update the distfile compile scripts to create a valid embedded toolsGravatar John Cater2018-03-19
| | | | | | | | | repository. Closes #4860. Change-Id: I1689fee013d031253d5e55343be174aaa6e638c1 PiperOrigin-RevId: 189588855
* Update gRPC to 1.10.0Gravatar Carl Mastrangelo2018-03-07
| | | | | | | | | | | | Modeled after d6dde574ce539b11279fd4694de2304da9482a47 This is needed to remove the `METHOD_` static fields in the generated stubs, which are deprecated. cc: @buchgr Closes #4760. PiperOrigin-RevId: 188182280
* Expose --output_user_base to the Bazel server processGravatar Klaus Aehlig2018-02-27
| | | | | | | | | | | ...so that it can use that path to compute other directories in the output user base, in particular the default location for caches. The first cache we will add is the hash-index cache for downloads of external archives, but a spawn cache might be added later in the output user base as well. Change-Id: I24b1c33235c8f76ec008ecb1789163de2b2a45be PiperOrigin-RevId: 187164275
* Partially revert fca3d391161ae4c92cf289a897db2a1c69a9b334Gravatar Klaus Aehlig2018-01-19
| | | | | | | ...as it breaks shell tests Change-Id: I191ec7c0f36832ff064af0b756a8c8fb41eb2a87 PiperOrigin-RevId: 182509548
* Create function createJavaInfo with new API. Implement JavaExportsProvider.Gravatar dbabkin2018-01-18
| | | | | | | | | | | | Added tests for checking JavaExportsProvider state. Refactored logic working with collection in favor of using Streams to improve readability. All other providers will be implemented in next CLs. previous CL with JavaCompilationArgsProvider implementation is https://github.com/bazelbuild/bazel/commit/32dff21d00ad7d1bdf50e8761d675a6e7e002de9, JavaSourceJarsProvider : https://github.com/bazelbuild/bazel/commit/5bd53cb609480ca896ca2d011f415b424c63ce63 RELNOTES:none PiperOrigin-RevId: 182342490
* Update javac version to 9+181-r4173-1Gravatar Liam Miller-Cushon2018-01-18
| | | | Change-Id: I05fa85967317c4581081adfc620e24a7c6322669
* Shell code cleanupGravatar Androbin2017-12-14
| | | | | | | | | | | | - Argument mixes string and array. Use * or separate argument. - Quote the grep pattern so the shell won't interpret it. - Use "${var:?}" to ensure this never expands to /* . - > is for string comparisons. Use -gt instead. - Quote the parameter to -name so the shell won't interpret it. Closes #4163. PiperOrigin-RevId: 179042046
* Add . to the bootstrap protoc include pathsGravatar Olivier Chafik2017-11-29
| | | | | | | | | | | | | | | | | | | This fixes the following error I got when building from scratch on Raspbian: ``` src/main/protobuf/invocation_policy.proto: File not found. src/main/protobuf/command_line.proto: File not found. ``` Note: ``` protoc --version libprotoc 3.0.0 ``` Closes #4187. PiperOrigin-RevId: 177306773
* Various Shell Script Fixes and Improvements - Part OneGravatar Androbin2017-11-29
| | | | | | | | see #4023 Closes #4051. PiperOrigin-RevId: 177279457
* SOURCE_DATE_EPOCH environment variable override the timestampGravatar Damien Martin-Guillerez2017-11-21
| | | | | | | | | | | | | | | | | | | | This is applying the version 1.1 of the specification (https://reproducible-builds.org/specs/source-date-epoch/) where the only timestamp that Bazel puts in the final targets is overridden by the value of SOURCE_DATE_EPOCH. This change also remove the legacy SOURCE_DATE_EPOCH handling which wasn't really following the spec. Note that Bazel itself tries hard to remove all timestamps from intermediary binaries and overridde SOURCE_DATE_EPOCH in most action, which is a not according to the version 1.0 of the spec but according to the expected change for version 1.1. RELNOTES: SOURCE_DATE_EPOCH (https://reproducible-builds.org/specs/source-date-epoch/) can be used to override the timestamp used for stamped target (when using --stamp). Fixes #2240. Change-Id: I074e7905fa6745cc706f7391340aeae9188909ca PiperOrigin-RevId: 176489717
* third_party/grpc: Update to version 1.7.0Gravatar Jakob Buchgraber2017-11-17
| | | | | Change-Id: I9ae0c56844db45e28eb5a08e8180514aa2729fdf PiperOrigin-RevId: 176114077
* Remove target from BUILD file that was prematurely added in ↵Gravatar dannark2017-11-17
| | | | | | | https://github.com/bazelbuild/bazel/commit/75d8fe1d347b45f4dd808a76c3a73b24f9728284. RELNOTES: None PiperOrigin-RevId: 176107565
* third_party/grpc: Update to version 1.7.0Gravatar Jakob Buchgraber2017-11-17
| | | | Change-Id: I9ae0c56844db45e28eb5a08e8180514aa2729fdf
* Make bazel work with java9Gravatar Bernhard M. Wiedemann2017-11-09
| | | | | | | | | unlike earlier versions, openjdk9 returns "javac 9" when asked for its version Closes #4004. PiperOrigin-RevId: 175029317
* Do not output Bazel leaves to logs.Gravatar Dmitry Lomov2017-10-24
| | | | | | | Unicode characters are trouble we do not want. Change-Id: I5f5239baab60a875a697f2ee3104225e19c0ce1d PiperOrigin-RevId: 173245285
* Fix compile.sh to not hardcode the guava version.Gravatar John Cater2017-10-20
| | | | | Change-Id: I5e946c093499dffd0a34253a5f8e47c49c6a12ec PiperOrigin-RevId: 172686697
* Remove support for --javabase=<absolute path>.Gravatar lberki2017-10-11
| | | | | | | | | | | | | | | | | | | | | | If an absolute javabase is desired, the following set of rules can be used: java_runtime_suite(name="suite", default=":runtime") java_runtime(name="runtime", java_home=<path to the JDK>) Then --javabase can be pointed to the java_runtime_suite() rule. Alternatively, the java_runtime rule can reference a Make variable: java_runtime(name="runtime", java_home="$(ABSOLUTE_JAVABASE)") Then the Javabase can be specified on the command line like this: --javabase=<your package>:suite --define=ABSOLUTE_JAVABASE=<path to the JDK> RELNOTES[INC]: --javabase=<absolute path> and --host_javabase=<absolute path> are not supported anymore. If you need this functionality java_runtime_suite(name="suite", default=":runtime") java_runtime(name="runtime", java_home=<path to the JDK>) is an alternative. PiperOrigin-RevId: 171798416
* Clean up TODOs.Gravatar László Csomor2017-10-09
| | | | | | | | | | | | | | | | | | | In this commit: * buildenv.sh: restore its state to that as of commit 511c35b46cead500d4e76706e0a709e50995ceba * CommonCommandOptions.java: remove a deprecated no-op flag * WindowsPathFragment.java: implement an ASCII-only isLetter function, use that instead of Character.isLetter, because the latter returns true for some Unicode characters too * bazel_bootstrap_distfile_test: remove logging that we no longer need, since the bugfix for issue #3618 will be pushed to GitHub later today Change-Id: Ibda70219e974f0c47bc82addc647d8951f4bd701 PiperOrigin-RevId: 171498977
* Windows,bootstrapping: fix build_windows_jni.shGravatar Laszlo Csomor2017-10-06
| | | | | | | | | | | | | | Also: - check as the first thing in compile.sh that we can locate the GNU coreutils, and remove the duplicate check for the same thing on Windows - check early in compile.sh that we can access python.exe Fixes https://github.com/bazelbuild/bazel/issues/3863 Change-Id: Ib48b405cf93eafd48e21b280bcbab4d45117c1d9 PiperOrigin-RevId: 171291435
* Add files that were droped by our export processGravatar dmarting2017-09-19
| | | | | | | | | Those files are not linked anywhere and where removed by the export process either by accident or for better support from IntelliJ. According to ij.bazel.build a non linked target will not be analyzed so it should be safe. PiperOrigin-RevId: 169229654
* bazel_bootstrap_distfile_test: add loggingGravatar laszlocsomor2017-09-13
| | | | | | | | | | | | Add logging to bazel_bootstrap_distfile_test.sh and to buildenv.sh in hopes of catching this bug: https://github.com/bazelbuild/bazel/issues/3618 For justification, see: https://github.com/bazelbuild/bazel/issues/3618#issuecomment-328857891 RELNOTES: none PiperOrigin-RevId: 168508723
* Update gRPC dependency to 1.6.1Gravatar buchgr2017-09-08
| | | | | | https://github.com/bazelbuild/bazel/commit/8c8633610a948846244494e2e3dad91eb0536a58 PiperOrigin-RevId: 167853283
* Add a Bazel test testing determinism of `bazel build //src:bazel`Gravatar Damien Martin-Guillerez2017-08-23
| | | | | | | | | - Test if hash(bazel1) == hash(bazel2) This ensure that the build of bazel is a fixed point. Change-Id: I422dfc7ec5b95aa054a2677e59427cbd8cd4ef01 PiperOrigin-RevId: 166180529
* Update javac version to 9-dev-r4023-3Gravatar Liam Miller-Cushon2017-08-22
| | | | | Change-Id: If9373f81193050009432759da6299f1382e587ec PiperOrigin-RevId: 165994437
* Replace create_embedded_tools.sh with a faster Python version.Gravatar Philipp Wollermann2017-07-28
| | | | | | | | | This is functionally equivalent, but ~30x faster on Windows, ~2x faster on macOS and ~1.5x faster on Linux. RELNOTES: None. Change-Id: Ib4a7e10400a3955e47772425acfce2d9530de462 PiperOrigin-RevId: 163346634
* build_windows_jni.sh: move file to subdirectoryGravatar Laszlo Csomor2017-07-05
| | | | | | | | | | | | | The script more logically belongs in src/main/native/windows than in src/main/native. Also move the //src/main/native:windows_jni rule into //src/main/native/windows:windows_jni, so the logic of building the JNI library is fully contained in that package. Change-Id: I96e19003932cc0ddc5af3471b0b31a1aec09b8fa PiperOrigin-RevId: 160876594
* Bazel, bootstrap: fix JNI build errorsGravatar Laszlo Csomor2017-06-29
| | | | | | | Fixes https://github.com/bazelbuild/bazel/issues/3292 Change-Id: I67db893c36067b950303d2b131b925dce974d7d1 PiperOrigin-RevId: 160529960
* Use getopt to parse process-wrapper's command-line.Gravatar philwo2017-06-22
| | | | | | | | This will allow us to add new and optional flags like selecting a strategy used to spawn / wait for the child process. No one except Bazel should be calling "process-wrapper" and I couldn't find any references, so this breaking change should be fine. PiperOrigin-RevId: 159685867
* Windows, bootstrapping: fix bootstrap_testGravatar Laszlo Csomor2017-06-14
| | | | | | | | | | | | | | | Compute the --host_jvm_args for the bazel.windows_unix_root JVM flag on Windows. After commit 9c54e2a764f0ddd2d3787aade1c530c5f43bd26c it's the Bazel client's job to compute this JVM flag and pass to the server, but during bootstrapping we run Bazel in a client-less mode. Fixes https://github.com/bazelbuild/bazel/issues/3186 Change-Id: I2facfdef7d301d8a96213b488728e3ae6aec1c33 PiperOrigin-RevId: 158972256
* Fix paths in Bazel docs, removing references to versions/master.Gravatar dzc2017-06-08
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Follow-up to https://github.com/bazelbuild/bazel/commit/22b85a2a3c79c6f3aef1e0a61e485bb135be4551. This change updates paths and URLs to Bazel docs, removing the versions/master directory and changing bazel.build/docs to docs.bazel.build. For clarification on the convention of the docs site, links referencing docs.bazel.build/foo.html will be redirected to docs.bazel.build/versions/master/foo.html. The versions/master directory will contain the documentation pages pushed from HEAD. Once versioned documentation is ready, then docs.bazel.build/foo.html will instead be redirected to docs.bazel.build/x.y.z/foo.html, where x.y.z is the directory for the latest stable Bazel version. Follow-ups to this change: * Add script that will be used by the daily push job that pushes the latest documentation from HEAD to docs.bazel.build. This script will do the following: * Build the Jekyll tree, run jekyll build, and modify the resulting site tree, moving the docs/ directory into versions/master. * Add redirects for each of the site pages from the root of the site to the corresponding page in versions/master. * This should give us the minimum viable product for the new docs site. * Add script for cutting a release of the docs and pushing to a new versioned directory on the docs.bazel.build bucket. RELNOTES: None PiperOrigin-RevId: 158347197
* Update grpc-java to 1.3.0, netty to 4.1.8.FinalGravatar Jakob Buchgraber2017-05-31
| | | | | Change-Id: I24e44ce87f5e042ddddb4cdbdcdd118a2d30a5eb PiperOrigin-RevId: 157573075
* Windows: ignore envvars with degenerate namesGravatar Laszlo Csomor2017-05-31
| | | | | | | Fixes https://github.com/bazelbuild/bazel/issues/3077 Change-Id: I5f29fdec1f69bdda51fa62be695b8791a45240e9 PiperOrigin-RevId: 157559455
* Update grpc-java to 1.3.0, netty to 4.1.8.FinalGravatar Jakob Buchgraber2017-05-31
| | | | Change-Id: I24e44ce87f5e042ddddb4cdbdcdd118a2d30a5eb
* Do not use sed -E in bootstrap/compile.shGravatar hlopko2017-05-30
| | | | | | | Strangely enough, some clients have sed that doesn't support -E RELNOTES: None. PiperOrigin-RevId: 157397892
* Fix URL in compile.sh error messageGravatar Klaus Aehlig2017-05-22
| | | | | | | | | Our web page has been reorganized. The instructions to compile from source are now on a page of its own. Update the link in the error message accordingly. Change-Id: Ica1187a893b911eca638c5535a3f9686a661fe6f PiperOrigin-RevId: 156731324
* Update javac version to 9-dev-r4023-2Gravatar Liam Miller-Cushon2017-05-10
| | | | | Change-Id: I23e38767e18a90b2262a38bf8f4b347e06d1de8d PiperOrigin-RevId: 155630560
* Fix link in bazel/bootstrap/compile.shGravatar hlopko2017-05-09
| | | | | RELNOTES: None PiperOrigin-RevId: 155489021
* Pass all the environment variable to Bazel during bootstrappingGravatar Damien Martin-Guillerez2017-05-09
| | | | | | | | | | | We might be using more environment variables that the actual list. To be cherry-picked for #2692. Fixes #2953. Change-Id: I9b926d48e14b2c65822770ab46f6507a5303c3d3 PiperOrigin-RevId: 155387369
* Bootstrap: move the fail function to the topGravatar dmarting2017-05-05
| | | | | | | | | | We use fail pretty early in the script and not having the fail function leads to non useful message about the fail function not existing. Fixes #2949. PiperOrigin-RevId: 155186880
* Windows, bootstrapping: fix bugs to support CygwinGravatar Laszlo Csomor2017-04-26
| | | | | | | | | | | | | | | | | | | | | | | | | | We can't yet fully bootstrap Bazel on Cygwin, but can build Bazel from scratch. Building Bazel with Bazel fails because gcc isn't found where it's believed to be -- /usr/bin is a mount in Cygwin (to /bin), not a symlink or directory. In this change I: - added support for the Cygwin shell as a bootstrap platform (recognize `uname`) - updateed the bootstrap scripts to use "windows" as the PLATFORM string, not "mingw" - fixed the git lookup code - removed some hardwired msys-style path - added a cygpath call to convert $PWD to a mixed-style (otherwise the bootstrap script passes --client_cwd=/cygdrive/c/... to the server and WindowsFileSystem.java wants to make that relative to c:/cygwin64) See https://github.com/bazelbuild/bazel/issues/2885 Change-Id: Icc71261ea4f0c6d4a9c0846551a7977ca6020331 PiperOrigin-RevId: 154273014