diff --git a/README.md b/README.md index 4ff8d128019eaf..615de85438337d 100644 --- a/README.md +++ b/README.md @@ -28,7 +28,7 @@ Find more background about Bazel in our [FAQ](http://bazel.io/faq.html). * How to [install Bazel](http://bazel.io/docs/install.html) * How to [get started using Bazel](http://bazel.io/docs/getting-started.html) * The Bazel command line is documented in the [user manual](http://bazel.io/docs/bazel-user-manual.html) - * The rule reference documentation is in the [build encyclopedia](http://bazel.io/docs/build-encyclopedia.html) + * The rule reference documentation is in the [build encyclopedia](http://bazel.io/docs/be/overview.html) * How to [use the query command](http://bazel.io/docs/query.html) * How to [extend Bazel](http://bazel.io/docs/skylark/index.html) * The test environment is described in the [test encyclopedia](http://bazel.io/docs/test-encyclopedia.html) diff --git a/site/blog/_posts/2015-09-01-beta-release.md b/site/blog/_posts/2015-09-01-beta-release.md index 3e7a9403556f79..46278045a9ce8e 100644 --- a/site/blog/_posts/2015-09-01-beta-release.md +++ b/site/blog/_posts/2015-09-01-beta-release.md @@ -24,7 +24,7 @@ Our beta release provides: * Binary releases for [Linux and OS X](https://github.com/bazelbuild/bazel/releases). * Support for building and testing C++, Java, Python, Rust, - [and more](http://bazel.io/docs/build-encyclopedia.html). + [and more](http://bazel.io/docs/be/overview.html). * Support for building Docker images, Android apps, and iOS apps. * Support for using libraries from [Maven, GitHub, and more](http://bazel.io/docs/external.html). diff --git a/site/docs/bazel-user-manual.html b/site/docs/bazel-user-manual.html index 84b1a67a1b64ba..ea925e11d45e23 100644 --- a/site/docs/bazel-user-manual.html +++ b/site/docs/bazel-user-manual.html @@ -1032,9 +1032,9 @@
The experimental_action_listener
option instructs Bazel to use
- details from the action_listener
rule specified by label to
- insert extra_actions
into the build graph.
--linkopt linker-option
Build rules can also specify link options in their attributes. This option's
settings always take precedence. Also see
- cc_library.linkopts.
+ cc_library.linkopts.
--strip (always|never|sometimes)
@@ -1246,7 +1246,7 @@ --strip (always|never|sometimes)
<
--stripopt strip-option
An additional option to pass to the strip
command when generating
- a *.stripped
+ a *.stripped
binary. The default is -S -p
. This option can be used
multiple times.
@@ -1575,7 +1575,7 @@ --per_file_copt
--dynamic_mode mode
Determines whether C++ binaries will be linked dynamically, interacting with
- the linkstatic
+ the linkstatic
attribute on build rules.
@@ -1586,14 +1586,14 @@ --dynamic_mode modeauto
: Translates to a platform-dependent mode;
default
for linux and off
for cygwin.
default
: Allows bazel to choose whether to link dynamically.
- See linkstatic for more
+ See linkstatic for more
information.
fully
: Links all targets dynamically. This will speed up
linking time, and reduce the size of the resulting binaries.
off
: Links all targets in
- mostly static mode.
+ mostly static mode.
If -static
is set in linkopts, targets will change to fully
static.
@@ -1705,7 +1705,7 @@ --javabase (path|labe
This options set the label or the path of the base Java installation to use
for running JavaBuilder, SingleJar, and is also used for bazel run and inside
Java binaries built by java_binary
rules. The various
- "Make" variables for
+ "Make" variables for
Java (JAVABASE
, JAVA
, JAVAC
and
JAR
) are derived from this option.
@@ -2140,7 +2140,7 @@ --test_tag_filters tag[,
--test_lang_filters lang[,lang]*
Specifies a comma-separated list of test languages for languages with an official *_test
rule the
- (see build encyclopedia for a full list of these). Each
+ (see build encyclopedia for a full list of these). Each
language can be optionally preceded with '-' to specify excluded
languages. The name used for each language should be the same as
the language prefix in the *_test
rule, for example,
@@ -2350,7 +2350,7 @@
--[no]stamp
Stamping can be enabled or disabled explicitly in BUILD using
the stamp
attribute of certain rule types, please refer to
- the build encyclopedia for details. For
+ the build encyclopedia for details. For
rules that are neither explicitly or implicitly configured as stamp =
0
or stamp = 1
, the --[no]stamp
option
selects whether stamping is enabled. Bazel never stamps binaries that are
@@ -3046,7 +3046,7 @@
Configuration-specific data
The complete
- "Make" environment. If the --show_make_env
flag is
specified, all variables in the current configuration's "Make" environment
are also displayed (e.g. CC
, GLIBC_VERSION
, etc).
diff --git a/site/docs/build-ref.html b/site/docs/build-ref.html
index 71c3bed770356b..eed9bf7891f768 100644
--- a/site/docs/build-ref.html
+++ b/site/docs/build-ref.html
@@ -89,7 +89,7 @@ Targets
A package is a container. The elements of a package are called
targets. Most targets are one of two principal kinds, files
and rules. Additionally, there is another kind of target,
- package groups,
+ package groups,
but they are far less numerous.
@@ -246,7 +246,7 @@ Targets
visibility attribute of rules or from the default_visibility
attribute of the package function; they do not generate or consume
files. For more information, refer to the appropriate section of the
- Build Encyclopedia.
+ Build Encyclopedia.
@@ -443,7 +443,7 @@ Rules
kinds or classes, which produce compiled
executables and libraries, test executables and other supported
outputs as described in the
- Build Encyclopedia.
+ Build Encyclopedia.
@@ -461,7 +461,7 @@
Rules
Every rule has a set of attributes; the applicable attributes
for a given rule, and the significance and semantics of each
attribute are a function of the rule's class; see
- the Build
+ the Build
Encyclopedia for the full list of supported rules and their
corresponding attributes. Each attribute has a name and a
type. The full set of types that an attribute can have is: integer,
@@ -774,12 +774,11 @@ Types of build rule
libraries, and tests, respectively. Other languages use the same
naming scheme, with a different prefix, e.g. java_*
for
Java. These functions are all documented in the
- Build Encyclopedia.
+ Build Encyclopedia.
- A *_binary
-
+
A *_binary
rule builds an executable program in a given language. After a
build, the executable will reside in the build tool's binary
output tree at the corresponding name for the rule's label,
@@ -794,7 +793,7 @@
Types of build rule
one place for ease of deployment to production.
- A *_test
+
A *_test
rule is a specialization of a *_binary rule, used for automated
testing. Tests are simply programs that return zero on success.
@@ -816,7 +815,7 @@
Types of build rule
- - A
*_library
+ - A
*_library
rule specifies a separately-compiled module in the given
programming language. Libraries can depend on other libraries,
and binaries and tests can depend on libraries, with the expected
@@ -1036,7 +1035,7 @@ Types of dependencies
Most build rules have three attributes for specifying different kinds
of generic dependencies: srcs
, deps
and
data
. These are explained below. See also
- Attributes common
+ Attributes common
to all rules in the Build Encyclopedia.)
@@ -1136,8 +1135,8 @@ Using Labels to Reference Directories
Rather than specifying directories as inputs to the build system,
you should enumerate the set of files contained within them, either
explicitly or using the
- glob()
function.
- (Use **
to force the
+ glob()
function.
+ (Use **
to force the
glob()
to be recursive.)
@@ -1150,7 +1149,7 @@ Using Labels to Reference Directories
names do not conform to the strict label syntax
(e.g. they contain certain punctuation symbols), then explicit
enumeration of files, or use of the
- glob()
function will
+ glob()
function will
produce an invalid labels error. You must use directory labels in this case,
but beware of the concomitant risk of incorrect rebuilds described above.
diff --git a/site/docs/external.md b/site/docs/external.md
index 6777cf60e9ba73..f8fbc64499ccb6 100644
--- a/site/docs/external.md
+++ b/site/docs/external.md
@@ -14,7 +14,7 @@ External dependencies can be specified in a `WORKSPACE` file in the
[workspace directory](/docs/build-ref.html#workspaces). This `WORKSPACE` file
uses the same Python-like syntax of BUILD files, but allows a different set of
rules. See the full list of rules that are allowed in the
-[Workspace](/docs/build-encyclopedia.html#workspace) list of rules in the Build
+[Workspace](/docs/be/workspace.html) list of rules in the Build
Encyclopedia.
## Fetching dependencies
@@ -99,8 +99,8 @@ There are a few basic types of external dependencies that can be created.
If you have a second Bazel project that you'd like to use targets from, you can
use
-[`local_repository`](http://bazel.io/docs/build-encyclopedia.html#local_repository)
-or [`http_archive`](http://bazel.io/docs/build-encyclopedia.html#http_archive)
+[`local_repository`](http://bazel.io/docs/be/workspace.html#local_repository)
+or [`http_archive`](http://bazel.io/docs/be/workspace.html#http_archive)
to symlink it from the local filesystem or download it (respectively).
For example, suppose you are working on a project, `my-project/`, and you want
@@ -122,8 +122,8 @@ If your coworker has a target `//foo:bar`, your project can refer to it as
## Depending on non-Bazel projects
Rules prefixed with `new_` (e.g.,
-[`new_local_repository`](http://bazel.io/docs/build-encyclopedia.html#new_local_repository)
-and [`new_http_archive`](http://bazel.io/docs/build-encyclopedia.html#new_http_archive)
+[`new_local_repository`](http://bazel.io/docs/be/workspace.html#new_local_repository)
+and [`new_http_archive`](http://bazel.io/docs/be/workspace.html#new_http_archive)
) allow you to create targets from projects that do not use Bazel.
For example, suppose you are working on a project, `my-project/`, and you want
diff --git a/site/docs/getting-started.md b/site/docs/getting-started.md
index 18d89bcab43cf1..510445b7e62eec 100644
--- a/site/docs/getting-started.md
+++ b/site/docs/getting-started.md
@@ -77,7 +77,7 @@ identifier you'll use when you ask bazel to build the binary. `srcs` lists the
Java source files Bazel should compile into a Java binary.
`glob(["**/*.java"])` is a handy shorthand for "recursively include every file
that ends with .java" (see the
-[build encyclopedia](build-encyclopedia.html#glob) for more information about
+[build encyclopedia](be/functions.html#glob) for more information about
globbing). `com.example.ProjectRunner` specifies the class that contains the
main method.
@@ -221,7 +221,7 @@ INFO: Running command line: bazel-bin/src/main/java/com/example/cmdline/runner
Hi!
{% endhighlight %}
-See the [build encyclopedia](build-encyclopedia.html#common.visibility) for more
+See the [build encyclopedia](be/common-definitions.html#common.visibility) for more
visibility options.
## Deploying
@@ -261,7 +261,7 @@ INFO: Elapsed time: 1.700s, Critical Path: 0.23s
You can now create your own targets and compose them. Next, check out the
[tutorial](/docs/tutorial/index.html) to learn how to build a server backend,
Android app, and iOS app with Bazel. Also see the
-[build encyclopedia](build-encyclopedia.html) and
+[build encyclopedia](be/overview.html) and
[user manual](bazel-user-manual.html) for more information.
[Let us know](https://groups.google.com/forum/#!forum/bazel-discuss) if you have
any questions!
diff --git a/site/docs/install.md b/site/docs/install.md
index 5652ed82f12dae..18c37f5d23f656 100644
--- a/site/docs/install.md
+++ b/site/docs/install.md
@@ -137,6 +137,7 @@ Bazel also comes with a zsh completion script. To install it:
zstyle ':completion:*' use-cache on
zstyle ':completion:*' cache-path ~/.zsh/cache
```
+
## Compiling from source
If you would like to build Bazel from source, clone the source from GitHub and
diff --git a/site/docs/test-encyclopedia.html b/site/docs/test-encyclopedia.html
index 2a285f485a01e5..d2501f1f685400 100644
--- a/site/docs/test-encyclopedia.html
+++ b/site/docs/test-encyclopedia.html
@@ -153,7 +153,7 @@ Role of the Test Runner
tests whose specified size is too big.
Test sizes and timeouts are specified in the BUILD file according to the specification
-here.
+here.
Any test that does not specify a recognized size will default to being a medium
test.
diff --git a/site/docs/tutorial/android-app.md b/site/docs/tutorial/android-app.md
index 9783d061ad9729..d58cf39fa94db4 100644
--- a/site/docs/tutorial/android-app.md
+++ b/site/docs/tutorial/android-app.md
@@ -131,7 +131,7 @@ files or other dependencies.
Bazel provides two build rules, `android_library` and `android_binary`, that you
can use to build an Android app. For this tutorial, you'll first use the
-[`android_library`](/docs/build-encyclopedia.html#android_library) rule to tell
+[`android_library`](/docs/be/android.html#android_library) rule to tell
Bazel how to build an
[Android library module](http://developer.android.com/tools/projects/index.html#LibraryProjects)
from the app source code and resource files. Then you'll use the
@@ -156,7 +156,7 @@ reference the rule using this name as a dependency in the `android_binary` rule.
### Add an android_binary rule
-The [`android_binary`](/docs/build-encyclopedia.html#android_binary) rule builds
+The [`android_binary`](/docs/be/android.html#android_binary) rule builds
the Android application package (`.apk` file) for your app.
Add the following to your build file:
diff --git a/site/docs/tutorial/backend-server.md b/site/docs/tutorial/backend-server.md
index 27d91585c2a1d1..1527d8656f6f12 100644
--- a/site/docs/tutorial/backend-server.md
+++ b/site/docs/tutorial/backend-server.md
@@ -14,8 +14,7 @@ Here, you'll do the following:
* Deploy to a local development server
* Deploy to Google App Engine
-Bazel provides a set of
-[App Engine build rules](https://github.com/bazelbuild/bazel/blob/master/tools/build_rules/appengine/README.md)
+Bazel provides a set of [App Engine build rules](/docs/be/appengine.html)
written using the [Skylark](/docs/skylark/index.html) framework. You'll use
these in the steps below to build the application.
@@ -60,7 +59,7 @@ backend server, however, you'll give Bazel instructions for downloading the
required App Engine SDK package from a remote server. This is optional. You
can also download and install the SDK manually on your filesystem and reference
it from that location as described in the
-[App Engine rule documentation](https://github.com/google/bazel/blob/master/tools/build_rules/appengine/README.md).
+[App Engine rule documentation](/docs/be/appengine.html).
Add the following to your `WORKSPACE` file:
@@ -73,7 +72,7 @@ new_http_archive(
)
```
-The [`new_http_archive`](/docs/build-encyclopedia.html#new_http_archive) rule
+The [`new_http_archive`](/docs/be/workspace.html#new_http_archive) rule
instructs Bazel to download a remote archive file, uncompress it and add it to
the virtual `external` package by combining the archive contents with
the referenced `BUILD` file, here `appengine.BUILD`. You'll create this file
@@ -81,7 +80,7 @@ below after you finish updating your `WORKSPACE` file.
### Add bind rules
-You also need to add some [`bind`](docs/build-encyclopedia.html#bind) rules
+You also need to add some [`bind`](/docs/be/workspace.html#bind) rules
to the file. These provide aliases to targets in the virtual `external` package
so they can be located either either inside or outside the workspace without
changing the App Engine build rules.
@@ -108,7 +107,7 @@ bind(
### Add maven_jar rules
Finally, you need to add some
-[`maven_jar`](/docs/build-encyclopedia.html#maven_jar) rules to the file. These
+[`maven_jar`](/docs/be/workspace.html#maven_jar) rules to the file. These
tell Bazel to download `.jar` files from the Maven repository and allow Bazel
to use them as Java dependencies.
@@ -173,7 +172,7 @@ filegroup(
)
```
-The [`java_import`](/docs/build-encyclopedia.html#java_import) rules tell
+The [`java_import`](/docs/be/java.html#java_import) rules tell
Bazel how to use the precompiled SDK `.jar` files as libraries. These rules
define the targets that you referenced in the `bind` rules in the `WORKSPACE`
file above.
@@ -209,11 +208,11 @@ java_binary(
)
```
-The [`java_binary`](/docs/build-encyclopedia.html#java_binary) tells Bazel
+The [`java_binary`](/docs/be/java.html#java_binary) tells Bazel
how to build a Java `.jar` library for your application, plus a wrapper shell
script that launches the application code from the specified main class. Here,
we're using this rule instead of the
-[`java_library`](/docs/build-encyclopedia.html#java_library) because we need
+[`java_library`](/docs/be/java.html#java_library) because we need
the `.jar` file to contain all the dependencies required to build the final
App Engine `.war` file. For this reason, we specify a bogus class name
for the `main_class` attribute.
@@ -236,7 +235,7 @@ filegroup(
)
```
-The [`appengine_war`](https://github.com/google/bazel/blob/master/tools/build_rules/appengine/README.md)
+The [`appengine_war`](/docs/be/appengine.html#appengine_war)
rule builds the final App Engine `war` file from the library `.jar` file and web
application metadata files in the `webapp` directory.
diff --git a/site/docs/tutorial/ios-app.md b/site/docs/tutorial/ios-app.md
index fd99f6be30bd2f..9faf711a05d9b4 100644
--- a/site/docs/tutorial/ios-app.md
+++ b/site/docs/tutorial/ios-app.md
@@ -38,7 +38,7 @@ $ vi $WORKSPACE/ios-app/BUILD
Bazel provides several build rules that you can use to build an app for the
iOS platform. For this tutorial, you'll first use the
-[`objc_library`](/docs/build-encyclopedia.html#objc_library) rule to tell Bazel
+[`objc_library`](/docs/be/objective-c.html#objc_library) rule to tell Bazel
how to build an
[static library](https://developer.apple.com/library/ios/technotes/iOSStaticLibraries/Introduction.html)
from the app source code and Xib files. Then you'll use the
@@ -65,7 +65,7 @@ Note the name of the rule, `UrlGetClasses`.
## Add an objc_binary rule
-The [`objc_binary`](/docs/build-encyclopedia.html#objc_binary) rule creates a
+The [`objc_binary`](/docs/be/objective-c.html#objc_binary) rule creates a
binary to be bundled in the application.
Add the following to your `BUILD` file:
@@ -87,7 +87,7 @@ Note how the `deps` attribute references the output of the
## Add an ios_application rule
-The [`ios_application`](/docs/build-encyclopedia.html#ios_application) rule
+The [`ios_application`](/docs/be/objective-c.html#ios_application) rule
creates the bundled `.ipa` archive file for the application and also generates
an Xcode project file.
diff --git a/site/faq.md b/site/faq.md
index 1339444983abea..6fdb191d3fee1a 100644
--- a/site/faq.md
+++ b/site/faq.md
@@ -386,9 +386,9 @@ Can I use Bazel for my [INSERT LANGUAGE HERE] project?
We have an extension mechanism called Skylark that allows you to add new rules
without recompiling Bazel.
-For documentation: see [here](docs/skylark/index.html). We have support for
+For documentation: see [here](/docs/skylark/index.html). We have support for
several languages that use that extension mechanism, see our
-[build encyclopedia](http://bazel.io/docs/build-encyclopedia.html) for the full
+[build encyclopedia](/docs/be/overview.html) for the full
list of supported languages.
I need more functionality. Can I add rules that are compiled into Bazel?
diff --git a/site/roadmap.md b/site/roadmap.md
index 0a617772e330ed..574ef60ed2de77 100644
--- a/site/roadmap.md
+++ b/site/roadmap.md
@@ -61,15 +61,15 @@ be refined if appropriate.
2015‑03
Linux & OS X Support
- C++ (build and test)
- Java (build and test)
- Objective-C for iOS (build)
- Python (build)
- iOS applications (build)
+ C++ (build and test)
+ Java (build and test)
+ Objective-C for iOS (build)
+ Python (build)
+ iOS applications (build)
Skylark extension mechanism (build)
Basic test suite on GitHub
- Support for fetching dependencies from Maven repositories
- and web servers
+ Support for fetching dependencies from Maven repositories
+ and web servers
Beta
0.1
@@ -78,12 +78,12 @@ be refined if appropriate.
P0. Public continuous integration system
P0. Support for fetching transitive dependencies from Maven Central
- P0. Android application (build
+ P0. Android application (build
and install)
P1. Support for prefetching and caching remote dependencies
- P1. Docker (build and load)
+ P1. Docker (build and load)
P2. Sandboxing of actions for Linux
- P2. AppEngine (build and load)
+ P2. AppEngine (build and load)
P2. Test result dashboard
0.2
diff --git a/src/main/java/com/google/devtools/build/docgen/DocgenConsts.java b/src/main/java/com/google/devtools/build/docgen/DocgenConsts.java
index 31a63aded0b3fc..10b81b75c2722d 100644
--- a/src/main/java/com/google/devtools/build/docgen/DocgenConsts.java
+++ b/src/main/java/com/google/devtools/build/docgen/DocgenConsts.java
@@ -80,9 +80,7 @@ public class DocgenConsts {
" To edit, submit changes to the Blaze source code.",
"-->",
"",
- ""));
-
- public static final String BUILD_ENCYCLOPEDIA_NAME = "build-encyclopedia.html";
+ ""));
public static final FileTypeSet JAVA_SOURCE_FILE_SUFFIX = FileTypeSet.of(FileType.of(".java"));
diff --git a/tools/build_defs/groovy/README.md b/tools/build_defs/groovy/README.md
index f8e9b013e94a59..ad1763f60bd66a 100644
--- a/tools/build_defs/groovy/README.md
+++ b/tools/build_defs/groovy/README.md
@@ -174,7 +174,7 @@ groovy_library(name, srcs, deps, **kwargs)
**kwargs
- see java_binary
+ see java_binary
The other arguments of this rule will be passed to the `java_import`
that wraps the groovy library.
@@ -233,7 +233,7 @@ groovy_and_java_library(name, srcs, deps, **kwargs)
**kwargs
- see java_binary
+ see java_binary
The other arguments of this rule will be passed to the `java_import`
that wraps the groovy library.
@@ -305,7 +305,7 @@ groovy_binary(name, main_class, srcs, deps, **kwargs)
**kwargs
- see java_binary
+ see java_binary
The other arguments of this rule will be passed to the `java_binary`
underlying the `groovy_binary`.
diff --git a/tools/build_rules/appengine/README.md b/tools/build_rules/appengine/README.md
index f8a7f4df48500a..8c806f1d9a7a1b 100644
--- a/tools/build_rules/appengine/README.md
+++ b/tools/build_rules/appengine/README.md
@@ -169,7 +169,7 @@ appengine_war(name, jars, data, data_path)
-
+
## java_war
```
@@ -213,7 +213,7 @@ java_war(name, data, data_path, **kwargs)
**kwargs
- see java_library
+ see java_library
The other arguments of this rule will be passed to build a `java_library`
that will be passed in the `jar` arguments of a