Skip to content

Commit

Permalink
Rollback of commit 14cf678.
Browse files Browse the repository at this point in the history
*** Reason for rollback ***

Issue that caused the rollback (bazelbuild#819) is resolved

*** Original change description ***

Automated [] rollback of [].

*** Reason for rollback ***

Prerequisite for rolling back j2objc base workspace change

*** Original change description ***

Remove base_workspace from bazel setup

I also removed a couple places the documentation referred to it incorrectly.
There are still a couple of blog posts that mention it, but that seemed okay.

RELNOTES: A bazelrc with --package_path set is no longer required for Bazel to
find its tools. This also means that building //......

--
MOS_MIGRATED_REVID=113259357
  • Loading branch information
kchodorow committed Jan 28, 2016
1 parent 8fbc490 commit 84450b8
Show file tree
Hide file tree
Showing 5 changed files with 19 additions and 94 deletions.
25 changes: 6 additions & 19 deletions compile.sh
Original file line number Diff line number Diff line change
Expand Up @@ -27,30 +27,26 @@ cd "$(dirname "$0")"
source scripts/bootstrap/buildenv.sh

function usage() {
[ -n "${1:-build}" ] && echo "Invalid command(s): $1" >&2
[ -n "${1:-compile}" ] && echo "Invalid command(s): $1" >&2
echo "syntax: $0 [command[,command]* [BAZEL_BIN [BAZEL_SUM]]]" >&2
echo " General purpose commands:" >&2
echo " build = compile,init (default)" >&2
echo " compile = compile a Bazel binary for usage" >&2
echo " init = initialize the base workspace" >&2
echo " compile = compile the bazel binary (default)" >&2
echo " Commands for developers:" >&2
echo " all = build,determinism,test" >&2
echo " all = compile,determinism,test" >&2
echo " determinism = test for stability of Bazel builds" >&2
echo " test = run the full test suite of Bazel" >&2
exit 1
}

function parse_options() {
local keywords="(build|compile|init|all|determinism|bootstrap|test)"
COMMANDS="${1:-build}"
local keywords="(compile|all|determinism|bootstrap|test)"
COMMANDS="${1:-compile}"
[[ "${COMMANDS}" =~ ^$keywords(,$keywords)*$ ]] || usage "$@"
DO_COMPILE=
DO_CHECKSUM=
DO_FULL_CHECKSUM=1
DO_TESTS=
DO_BASE_WORKSPACE_INIT=
[[ "${COMMANDS}" =~ (compile|build|all) ]] && DO_COMPILE=1
[[ "${COMMANDS}" =~ (init|build|all) ]] && DO_BASE_WORKSPACE_INIT=1
[[ "${COMMANDS}" =~ (compile|all) ]] && DO_COMPILE=1
[[ "${COMMANDS}" =~ (bootstrap|determinism|all) ]] && DO_CHECKSUM=1
[[ "${COMMANDS}" =~ (bootstrap) ]] && DO_FULL_CHECKSUM=
[[ "${COMMANDS}" =~ (test|all) ]] && DO_TESTS=1
Expand Down Expand Up @@ -159,14 +155,5 @@ if [ $DO_TESTS ]; then
|| fail "Tests failed"
fi

#
# Setup the base workspace
#
if [ $DO_BASE_WORKSPACE_INIT ]; then
new_step 'Setting up base workspace'
display "."
source scripts/bootstrap/init_workspace.sh
fi

clear_log
display "Build successful! Binary is here: ${BAZEL}"
52 changes: 0 additions & 52 deletions scripts/packages/BUILD
Original file line number Diff line number Diff line change
Expand Up @@ -92,65 +92,13 @@ pkg_tar(
strip_prefix = ".",
)

pkg_tar(
name = "bazel-tools",
files = [
"//third_party:srcs",
"//third_party/java/jdk/langtools:srcs",
"//tools:package-srcs",
],
mode = "0644",
modes = {f: "0755" for f in [
# List made out of `find -type f -executable`
"third_party/iossim/iossim",
"third_party/ijar/test/zip_test.sh",
"third_party/ijar/test/ijar_test.sh",
"third_party/ijar/test/testenv.sh",
"third_party/protobuf/protoc-osx-x86_32.exe",
"third_party/protobuf/protoc-linux-x86_64.exe",
"third_party/protobuf/protoc-osx-x86_64.exe",
"third_party/protobuf/protoc-linux-x86_32.exe",
"third_party/protobuf/protoc-windows-x86_32.exe",
"third_party/protobuf/protoc-windows-x86_64.exe",
"third_party/py/gflags/tests/flags_modules_for_testing/module_bar.py",
"third_party/py/gflags/tests/flags_modules_for_testing/module_baz.py",
"third_party/py/gflags/tests/flags_modules_for_testing/module_foo.py",
"third_party/py/gflags/tests/gflags_helpxml_test.py",
"third_party/py/gflags/tests/gflags_unittest.py",
"third_party/py/gflags/tests/gflags_validators_test.py",
"third_party/py/gflags/gflags2man.py",
"third_party/py/gflags/setup.py",
"third_party/py/gflags/debian/rules",
"third_party/py/gflags/gflags_validators.py",
"third_party/py/mock/setup.py",
"tools/android/jack/fail.sh",
"tools/android/shuffle_jars.sh",
"tools/android/merge_dexzips.sh",
"tools/android/idlclass.sh",
"tools/android/aar_generator.sh",
"tools/android/resources_processor.sh",
"tools/j2objc/j2objc_wrapper.py",
"tools/genrule/genrule-setup.sh",
"tools/objc/j2objc_dead_code_pruner.py",
"tools/python/2to3.sh",
"tools/cpp/osx_gcc_wrapper.sh",
"tools/test/test-setup.sh",
"tools/jdk/ijar",
"tools/build_defs/docker/testenv.sh",
"tools/build_defs/docker/build_test.sh",
]},
package_dir = "/usr/share/lib/bazel/tools",
strip_prefix = "/",
)

pkg_tar(
name = "debian-data",
extension = "tar.gz",
deps = [
":bazel-bin",
":bazel-completion",
":bazel-rc",
":bazel-tools",
],
)

Expand Down
3 changes: 0 additions & 3 deletions scripts/packages/debian/bazel.bazelrc
Original file line number Diff line number Diff line change
@@ -1,3 +0,0 @@
build --package_path=%workspace%:/usr/share/lib/bazel/tools
query --package_path=%workspace%:/usr/share/lib/bazel/tools
fetch --package_path=%workspace%:/usr/share/lib/bazel/tools
25 changes: 9 additions & 16 deletions scripts/packages/template_bin.sh
Original file line number Diff line number Diff line change
Expand Up @@ -18,6 +18,7 @@

# Installation and etc prefix can be overriden from command line
install_prefix=${1:-"/usr/local"}
# TODO(kchodorow): delete by April 2016.
bazelrc=${2:-"/etc/bazel.bazelrc"}

progname="$0"
Expand All @@ -33,11 +34,10 @@ function usage() {
echo "Usage: $progname [options]" >&2
echo "Options are:" >&2
echo " --prefix=/some/path set the prefix path (default=/usr/local)." >&2
echo " --bazelrc= set the bazelrc path (default=/etc/bazel.bazelrc)." >&2
echo " --bin= set the binary folder path (default=%prefix%/bin)." >&2
echo " --base= set the base install path (default=%prefix%/lib/bazel)." >&2
echo " --user configure for user install, expands to" >&2
echo ' `--bin=$HOME/bin --base=$HOME/.bazel --bazelrc=$HOME/.bazelrc`.' >&2
echo ' `--bin=$HOME/bin --base=$HOME/.bazel' >&2
exit 1
}

Expand Down Expand Up @@ -139,19 +139,12 @@ if [ -d "${base}" -a -x "${base}/bin/bazel" ]; then
rm -fr "${base}"
fi

mkdir -p ${bin} ${base} ${base}/bin ${base}/etc ${base}/base_workspace
mkdir -p ${bin} ${base} ${base}/bin ${base}/etc
echo -n .

unzip -q "${BASH_SOURCE[0]}" bazel bazel-real bazel-complete.bash -d "${base}/bin"
echo -n .
chmod 0755 "${base}/bin/bazel" "${base}/bin/bazel-real"
unzip -q "${BASH_SOURCE[0]}" -x bazel bazel-real bazel-complete.bash -d "${base}/base_workspace"
echo -n .
cat >"${base}/etc/bazel.bazelrc" <<EO
build --package_path %workspace%:${base}/base_workspace
fetch --package_path %workspace%:${base}/base_workspace
query --package_path %workspace%:${base}/base_workspace
EO
echo -n .
chmod -R og-w "${base}"
chmod -R og+rX "${base}"
Expand All @@ -166,14 +159,14 @@ echo -n .

if [ -f "${bazelrc}" ]; then
echo
echo "${bazelrc} already exists, ignoring. It is either a link to"
echo "${base}/etc/bazel.bazelrc or that it's importing that file with:"
echo " import ${base}/etc/bazel.bazelrc"
else
ln -s "${base}/etc/bazel.bazelrc" "${bazelrc}"
echo .
echo "${bazelrc} already exists, moving it to ${bazelrc}.bak."
mv "${bazelrc}" "${bazelrc}.bak"
fi

# Not necessary, but this way it matches the Debian package.
touch "${bazelrc}"
echo .

cat <<EOF
Bazel is now installed!
Expand Down
8 changes: 4 additions & 4 deletions site/docs/bazel-user-manual.html
Original file line number Diff line number Diff line change
Expand Up @@ -1875,7 +1875,7 @@ <h4 id='flag--build_runfile_links'><code class='flag'>--[no]build_runfile_links<
When tests (or applications) are executed, their
run-time data dependencies are gathered together in one place, and
may be accessed by the test using paths of the form
<code>$TEST_SRCDIR/base_workspace/<var>packagename</var>/<var>filename</var></code>.
<code>$TEST_SRCDIR/workspace/<var>packagename</var>/<var>filename</var></code>.
The "runfiles" tree ensures that tests have access to all the files
upon which they have a declared dependence, and nothing more. By
default, the runfiles tree is implemented by constructing a set of
Expand Down Expand Up @@ -2368,7 +2368,7 @@ <h4 id='flag--symlink_prefix'><code class='flag'>--symlink_prefix <var>string</v
<code class='flag'>--symlink_prefix=/</code> will cause Bazel to not
create or update any symlinks, including the <code>bazel-out</code> and

<code>bazel-base_workspace</code>
<code>bazel-&lt;workspace&gt;</code>
symlinks. Use this option to suppress symlink creation entirely.
</p>
</li>
Expand Down Expand Up @@ -2959,7 +2959,7 @@ <h4>Configuration-independent data</h4>
directory for those commands. If the workspace directory is writable, a
symlink named

<code>bazel-base_workspace</code>
<code>bazel-&lt;workspace&gt;</code>
is placed there pointing to this
directory.
</li>
Expand Down Expand Up @@ -3763,6 +3763,6 @@ <h2 id='profiling'>Troubleshooting performance by profiling</h2>

<p>
Since you may not be able to run <code>bazel info</code> if bazel is hung, the
<code>output_base</code> directory is usually the parent of the <code>bazel-base_workspace</code>
<code>output_base</code> directory is usually the parent of the <code>bazel-&lt;workspace&gt;</code>
symlink in your workspace directory.
</p>

0 comments on commit 84450b8

Please sign in to comment.