Merge "Update Buck"
This commit is contained in:
commit
ab2319061d
@ -1 +1 @@
|
||||
274acb17e9b6dc9ee60bc1371c47a7f49640c24c
|
||||
2b80cf780ae31bee6609ebc1bbab9ce6fd004dbe
|
||||
|
1
.gitignore
vendored
1
.gitignore
vendored
@ -9,6 +9,7 @@
|
||||
*.sublime-*
|
||||
/gerrit-package-plugins
|
||||
/.buckconfig.local
|
||||
/.buckjavaargs
|
||||
/.buckd
|
||||
/buck-cache
|
||||
/buck-out
|
||||
|
@ -63,6 +63,7 @@ genrule(
|
||||
name = 'index',
|
||||
cmd = '$(exe //lib/asciidoctor:doc_indexer) ' +
|
||||
'-z $OUT ' +
|
||||
'--tmp $TMP ' +
|
||||
'--prefix "%s/" ' % DOC_DIR +
|
||||
'--in-ext ".txt" ' +
|
||||
'--out-ext ".html" ' +
|
||||
|
@ -26,6 +26,7 @@ def genasciidoc(
|
||||
'cd $SRCDIR;',
|
||||
'$(exe //lib/asciidoctor:asciidoc)',
|
||||
'-z', '$OUT',
|
||||
'--tmp', '$TMP',
|
||||
'--in-ext', '".txt%s"' % EXPN,
|
||||
'--out-ext', '".html"',
|
||||
]
|
||||
|
@ -412,26 +412,13 @@ run `buck` as usual:
|
||||
Override Buck's settings
|
||||
~~~~~~~~~~~~~~~~~~~~~~~~
|
||||
|
||||
User-specific configuration can be placed in one of the following files:
|
||||
`/etc/buck.conf`, `$HOME/.buck/buck.conf` or `$HOME/.buckrc`.
|
||||
|
||||
For example to override Buck's default 1GB heap size:
|
||||
Additional JVM args for Buck can be set in `.buckjavaargs` in the
|
||||
project root directory. For example to override Buck's default 1GB
|
||||
heap size:
|
||||
|
||||
----
|
||||
cat > $HOME/.buckrc <<EOF
|
||||
export BUCK_EXTRA_JAVA_ARGS="\
|
||||
-XX:MaxPermSize=512m \
|
||||
-Xms8000m \
|
||||
-Xmx16000m"
|
||||
EOF
|
||||
----
|
||||
|
||||
Or to debug BUCK, set `BUCK_DEBUG_MODE` to anything non-empty, then connect to
|
||||
port 8888:
|
||||
|
||||
----
|
||||
cat > $HOME/.buckrc <<EOF
|
||||
export BUCK_DEBUG_MODE="yes"
|
||||
cat > .buckjavaargs <<EOF
|
||||
-XX:MaxPermSize=512m -Xms8000m -Xmx16000m
|
||||
EOF
|
||||
----
|
||||
|
||||
|
@ -3,7 +3,7 @@ include_defs('//gerrit-acceptance-tests/tests.defs')
|
||||
java_library(
|
||||
name = 'lib',
|
||||
srcs = glob(['src/test/java/com/google/gerrit/acceptance/*.java']),
|
||||
deps = [
|
||||
exported_deps = [
|
||||
'//gerrit-common:server',
|
||||
'//gerrit-extension-api:api',
|
||||
'//gerrit-launcher:launcher',
|
||||
@ -34,7 +34,6 @@ java_library(
|
||||
'//lib/jgit:junit',
|
||||
'//lib/mina:sshd',
|
||||
],
|
||||
export_deps = True,
|
||||
visibility = [
|
||||
'//tools/eclipse:classpath',
|
||||
'//gerrit-acceptance-tests/...',
|
||||
|
@ -16,13 +16,12 @@ java_binary(
|
||||
|
||||
java_library(
|
||||
name = 'lib',
|
||||
deps = [
|
||||
exported_deps = [
|
||||
':api',
|
||||
'//lib/guice:guice',
|
||||
'//lib/guice:guice-servlet',
|
||||
'//lib:servlet-api-3_0',
|
||||
],
|
||||
export_deps = True,
|
||||
visibility = ['PUBLIC'],
|
||||
)
|
||||
|
||||
|
@ -1,14 +1,14 @@
|
||||
SRCS = [
|
||||
'gerrit-server/src/main/java/',
|
||||
'gerrit-httpd/src/main/java/',
|
||||
'gerrit-sshd/src/main/java/'
|
||||
'gerrit-sshd/src/main/java/',
|
||||
]
|
||||
|
||||
PLUGIN_API = [
|
||||
'//gerrit-server:server',
|
||||
'//gerrit-pgm:init-api',
|
||||
'//gerrit-sshd:sshd',
|
||||
'//gerrit-httpd:httpd',
|
||||
'//gerrit-pgm:init-api',
|
||||
'//gerrit-server:server',
|
||||
'//gerrit-sshd:sshd',
|
||||
]
|
||||
|
||||
java_binary(
|
||||
@ -19,8 +19,22 @@ java_binary(
|
||||
|
||||
java_library(
|
||||
name = 'lib',
|
||||
deps = PLUGIN_API + ['//lib:servlet-api-3_0'],
|
||||
export_deps = True,
|
||||
exported_deps = PLUGIN_API + [
|
||||
'//gerrit-common:server',
|
||||
'//gerrit-extension-api:api',
|
||||
'//gerrit-reviewdb:server',
|
||||
'//lib:args4j',
|
||||
'//lib:guava',
|
||||
'//lib:gwtorm',
|
||||
'//lib:jsch',
|
||||
'//lib:servlet-api-3_0',
|
||||
'//lib/guice:guice',
|
||||
'//lib/guice:guice-assistedinject',
|
||||
'//lib/guice:guice-servlet',
|
||||
'//lib/jgit:jgit',
|
||||
'//lib/log:api',
|
||||
'//lib/mina:sshd',
|
||||
],
|
||||
visibility = ['PUBLIC'],
|
||||
)
|
||||
|
||||
|
@ -118,7 +118,6 @@ java_library(
|
||||
'//lib/guice:guice',
|
||||
'//lib/prolog:prolog-cafe',
|
||||
],
|
||||
export_deps = True,
|
||||
)
|
||||
|
||||
java_test(
|
||||
@ -127,7 +126,14 @@ java_test(
|
||||
resources = glob(['src/test/resources/com/google/gerrit/rules/**/*']),
|
||||
deps = [
|
||||
':prolog_test_case',
|
||||
':server',
|
||||
'//gerrit-common:server',
|
||||
'//gerrit-reviewdb:server',
|
||||
'//gerrit-server/src/main/prolog:common',
|
||||
'//lib:gwtorm',
|
||||
'//lib:junit',
|
||||
'//lib/guice:guice',
|
||||
'//lib/prolog:prolog-cafe',
|
||||
],
|
||||
)
|
||||
|
||||
|
@ -12,6 +12,19 @@
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
import com.google.common.io.ByteStreams;
|
||||
|
||||
import org.asciidoctor.Asciidoctor;
|
||||
import org.asciidoctor.AttributesBuilder;
|
||||
import org.asciidoctor.Options;
|
||||
import org.asciidoctor.OptionsBuilder;
|
||||
import org.asciidoctor.SafeMode;
|
||||
import org.asciidoctor.internal.JRubyAsciidoctor;
|
||||
import org.kohsuke.args4j.Argument;
|
||||
import org.kohsuke.args4j.CmdLineException;
|
||||
import org.kohsuke.args4j.CmdLineParser;
|
||||
import org.kohsuke.args4j.Option;
|
||||
|
||||
import java.io.File;
|
||||
import java.io.FileInputStream;
|
||||
import java.io.FileOutputStream;
|
||||
@ -23,20 +36,6 @@ import java.util.Map;
|
||||
import java.util.zip.ZipEntry;
|
||||
import java.util.zip.ZipOutputStream;
|
||||
|
||||
import com.google.common.io.ByteStreams;
|
||||
|
||||
import org.asciidoctor.Asciidoctor;
|
||||
import org.asciidoctor.AttributesBuilder;
|
||||
import org.asciidoctor.Options;
|
||||
import org.asciidoctor.OptionsBuilder;
|
||||
import org.asciidoctor.SafeMode;
|
||||
import org.asciidoctor.internal.JRubyAsciidoctor;
|
||||
|
||||
import org.kohsuke.args4j.Argument;
|
||||
import org.kohsuke.args4j.CmdLineException;
|
||||
import org.kohsuke.args4j.CmdLineParser;
|
||||
import org.kohsuke.args4j.Option;
|
||||
|
||||
public class AsciiDoctor {
|
||||
|
||||
private static final String DOCTYPE = "article";
|
||||
@ -54,6 +53,9 @@ public class AsciiDoctor {
|
||||
@Option(name = "--out-ext", usage = "extension for output files")
|
||||
private String outExt = ".html";
|
||||
|
||||
@Option(name = "--tmp", usage = "temporary output path")
|
||||
private File tmpdir;
|
||||
|
||||
@Option(name = "-a", usage =
|
||||
"a list of attributes, in the form key or key=value pair")
|
||||
private List<String> attributes = new ArrayList<String>();
|
||||
@ -135,31 +137,17 @@ public class AsciiDoctor {
|
||||
// have to add css files into the SRCS.
|
||||
continue;
|
||||
}
|
||||
String outName = mapInFileToOutFile(inputFile, inExt, outExt);
|
||||
File out = new File(outName);
|
||||
Options options = createOptions(out);
|
||||
renderInput(options, inputFile);
|
||||
|
||||
String outName = mapInFileToOutFile(inputFile, inExt, outExt);
|
||||
File out = new File(tmpdir, outName);
|
||||
out.getParentFile().mkdirs();
|
||||
Options options = createOptions(out);
|
||||
renderInput(options, new File(inputFile));
|
||||
zipFile(out, outName, zip);
|
||||
}
|
||||
zip.close();
|
||||
}
|
||||
|
||||
public static void zipDir(File dir, String prefix, ZipOutputStream zip)
|
||||
throws IOException {
|
||||
for (File file : dir.listFiles()) {
|
||||
String name = file.getName();
|
||||
if (!prefix.isEmpty()) {
|
||||
name = prefix + "/" + name;
|
||||
}
|
||||
if (file.isDirectory()) {
|
||||
zipDir(file, name, zip);
|
||||
} else {
|
||||
zipFile(file, name, zip);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void zipFile(File file, String name, ZipOutputStream zip)
|
||||
throws IOException {
|
||||
zip.putNextEntry(new ZipEntry(name));
|
||||
@ -169,9 +157,9 @@ public class AsciiDoctor {
|
||||
zip.closeEntry();
|
||||
}
|
||||
|
||||
private void renderInput(Options options, String inputFile) {
|
||||
private void renderInput(Options options, File inputFile) {
|
||||
Asciidoctor asciidoctor = JRubyAsciidoctor.create();
|
||||
asciidoctor.renderFile(new File(inputFile), options);
|
||||
asciidoctor.renderFile(inputFile, options);
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
|
@ -12,7 +12,6 @@
|
||||
// See the License for the specific language governing permissions and
|
||||
// limitations under the License.
|
||||
|
||||
import com.google.common.io.Files;
|
||||
import com.google.gerrit.server.documentation.Constants;
|
||||
|
||||
import org.apache.lucene.analysis.standard.StandardAnalyzer;
|
||||
@ -48,6 +47,9 @@ public class DocIndexer {
|
||||
@Option(name = "-z", usage = "output zip file")
|
||||
private String zipFile;
|
||||
|
||||
@Option(name = "--tmp", usage = "temporary output path")
|
||||
private File tmpdir;
|
||||
|
||||
@Option(name = "--prefix", usage = "prefix for the html filepath")
|
||||
private String prefix = "";
|
||||
|
||||
@ -74,8 +76,7 @@ public class DocIndexer {
|
||||
return;
|
||||
}
|
||||
|
||||
File tmp = Files.createTempDir();
|
||||
NIOFSDirectory directory = new NIOFSDirectory(tmp);
|
||||
NIOFSDirectory directory = new NIOFSDirectory(tmpdir);
|
||||
IndexWriterConfig config = new IndexWriterConfig(
|
||||
LUCENE_VERSION,
|
||||
new StandardAnalyzer(LUCENE_VERSION, CharArraySet.EMPTY_SET));
|
||||
@ -108,10 +109,25 @@ public class DocIndexer {
|
||||
iwriter.close();
|
||||
|
||||
ZipOutputStream zip = new ZipOutputStream(new FileOutputStream(zipFile));
|
||||
AsciiDoctor.zipDir(tmp, "", zip);
|
||||
zipDir(tmpdir, "", zip);
|
||||
zip.close();
|
||||
}
|
||||
|
||||
private static void zipDir(File dir, String prefix, ZipOutputStream zip)
|
||||
throws IOException {
|
||||
for (File file : dir.listFiles()) {
|
||||
String name = file.getName();
|
||||
if (!prefix.isEmpty()) {
|
||||
name = prefix + "/" + name;
|
||||
}
|
||||
if (file.isDirectory()) {
|
||||
zipDir(file, name, zip);
|
||||
} else {
|
||||
AsciiDoctor.zipFile(file, name, zip);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
public static void main(String[] args) {
|
||||
try {
|
||||
new DocIndexer().invoke(args);
|
||||
|
@ -9,11 +9,10 @@ EXCLUDE = [
|
||||
|
||||
java_library(
|
||||
name = 'guice',
|
||||
deps = [
|
||||
exported_deps = [
|
||||
':guice_library',
|
||||
':javax-inject',
|
||||
],
|
||||
export_deps = True,
|
||||
visibility = ['PUBLIC'],
|
||||
)
|
||||
|
||||
@ -23,40 +22,10 @@ maven_jar(
|
||||
sha1 = 'a82be989679df08b66d48b42659a3ca2daaf1d5b',
|
||||
license = 'Apache2.0',
|
||||
deps = [':aopalliance'],
|
||||
exclude_java_sources = True,
|
||||
exclude = EXCLUDE + [
|
||||
'META-INF/maven/com.google.guava/guava/pom.properties',
|
||||
'META-INF/maven/com.google.guava/guava/pom.xml',
|
||||
'javax/annotation/CheckForNull.java',
|
||||
'javax/annotation/CheckForSigned.java',
|
||||
'javax/annotation/CheckReturnValue.java',
|
||||
'javax/annotation/concurrent/GuardedBy.java',
|
||||
'javax/annotation/concurrent/Immutable.java',
|
||||
'javax/annotation/concurrent/NotThreadSafe.java',
|
||||
'javax/annotation/concurrent/ThreadSafe.java',
|
||||
'javax/annotation/Detainted.java',
|
||||
'javax/annotation/MatchesPattern.java',
|
||||
'javax/annotation/meta/Exclusive.java',
|
||||
'javax/annotation/meta/Exhaustive.java',
|
||||
'javax/annotation/meta/TypeQualifier.java',
|
||||
'javax/annotation/meta/TypeQualifierDefault.java',
|
||||
'javax/annotation/meta/TypeQualifierNickname.java',
|
||||
'javax/annotation/meta/TypeQualifierValidator.java',
|
||||
'javax/annotation/meta/When.java',
|
||||
'javax/annotation/Nonnegative.java',
|
||||
'javax/annotation/Nonnull.java',
|
||||
'javax/annotation/Nullable.java',
|
||||
'javax/annotation/OverridingMethodsMustInvokeSuper.java',
|
||||
'javax/annotation/ParametersAreNonnullByDefault.java',
|
||||
'javax/annotation/ParametersAreNullableByDefault.java',
|
||||
'javax/annotation/PropertyKey.java',
|
||||
'javax/annotation/RegEx.java',
|
||||
'javax/annotation/Signed.java',
|
||||
'javax/annotation/Syntax.java',
|
||||
'javax/annotation/Tainted.java',
|
||||
'javax/annotation/Untainted.java',
|
||||
'javax/annotation/WillClose.java',
|
||||
'javax/annotation/WillCloseWhenClosed.java',
|
||||
'javax/annotation/WillNotClose.java',
|
||||
],
|
||||
visibility = ['PUBLIC'],
|
||||
)
|
||||
|
@ -30,11 +30,10 @@ maven_jar(
|
||||
id = 'org.eclipse.jetty:jetty-server:' + VERSION,
|
||||
sha1 = 'd89016c2bcd380f548530fa049295e62601dc564',
|
||||
license = 'Apache2.0',
|
||||
deps = [
|
||||
exported_deps = [
|
||||
':continuation',
|
||||
':http',
|
||||
],
|
||||
export_deps = True,
|
||||
exclude = EXCLUDE,
|
||||
)
|
||||
|
||||
@ -51,7 +50,7 @@ maven_jar(
|
||||
id = 'org.eclipse.jetty:jetty-http:' + VERSION,
|
||||
sha1 = 'b3a2302717ac1889b4a17ed03e2555f8291121b9',
|
||||
license = 'Apache2.0',
|
||||
deps = [':io'],
|
||||
exported_deps = [':io'],
|
||||
exclude = EXCLUDE,
|
||||
)
|
||||
|
||||
@ -60,7 +59,7 @@ maven_jar(
|
||||
id = 'org.eclipse.jetty:jetty-io:' + VERSION,
|
||||
sha1 = 'f3a66e0507d963c51e280243f0472a5b2eadc8b1',
|
||||
license = 'Apache2.0',
|
||||
deps = [':util'],
|
||||
exported_deps = [':util'],
|
||||
exclude = EXCLUDE,
|
||||
visibility = [],
|
||||
)
|
||||
|
@ -35,10 +35,10 @@ def maven_jar(
|
||||
exclude_java_sources = False,
|
||||
unsign = False,
|
||||
deps = [],
|
||||
exported_deps = [],
|
||||
sha1 = '', bin_sha1 = '', src_sha1 = '',
|
||||
repository = MAVEN_CENTRAL,
|
||||
attach_source = True,
|
||||
export_deps = False,
|
||||
visibility = ['PUBLIC']):
|
||||
from os import path
|
||||
|
||||
@ -109,7 +109,7 @@ def maven_jar(
|
||||
out = '__' + name + '__no_src',
|
||||
)
|
||||
|
||||
if export_deps:
|
||||
if exported_deps:
|
||||
prebuilt_jar(
|
||||
name = name + '__jar',
|
||||
deps = deps + license + [':' + name + '__download_bin'],
|
||||
@ -118,8 +118,7 @@ def maven_jar(
|
||||
)
|
||||
java_library(
|
||||
name = name,
|
||||
deps = [':' + name + '__jar'],
|
||||
export_deps = True,
|
||||
exported_deps = exported_deps + [':' + name + '__jar'],
|
||||
visibility = visibility,
|
||||
)
|
||||
else:
|
||||
|
@ -23,18 +23,21 @@ import java.util.jar.JarEntry;
|
||||
import java.util.jar.JarOutputStream;
|
||||
|
||||
public class BuckPrologCompiler {
|
||||
private static File tmpdir;
|
||||
|
||||
public static void main(String[] argv) throws IOException, CompileException {
|
||||
File out = new File(argv[argv.length - 1]);
|
||||
int i = 0;
|
||||
tmpdir = new File(argv[i++]);
|
||||
File out = new File(argv[i++]);
|
||||
File java = tmpdir("java");
|
||||
for (int i = 0; i < argv.length - 1; i++) {
|
||||
File src = new File(argv[i]);
|
||||
new Compiler().prologToJavaSource(src.getPath(), java.getPath());
|
||||
for (; i < argv.length; i++) {
|
||||
new Compiler().prologToJavaSource(argv[i], java.getPath());
|
||||
}
|
||||
jar(out, java);
|
||||
}
|
||||
|
||||
private static File tmpdir(String name) throws IOException {
|
||||
File d = File.createTempFile(name + "_", "");
|
||||
File d = File.createTempFile(name + "_", "", tmpdir);
|
||||
if (!d.delete() || !d.mkdir()) {
|
||||
throw new IOException("Cannot mkdir " + d);
|
||||
}
|
||||
@ -42,7 +45,7 @@ public class BuckPrologCompiler {
|
||||
}
|
||||
|
||||
private static void jar(File jar, File classes) throws IOException {
|
||||
File tmp = File.createTempFile("prolog", ".jar", jar.getParentFile());
|
||||
File tmp = File.createTempFile("prolog", ".jar", tmpdir);
|
||||
try {
|
||||
JarOutputStream out = new JarOutputStream(new FileOutputStream(tmp));
|
||||
try {
|
||||
|
@ -19,9 +19,9 @@ def prolog_cafe_library(
|
||||
visibility = []):
|
||||
genrule(
|
||||
name = name + '__pl2j',
|
||||
cmd = 'cd $SRCDIR;$(exe //lib/prolog:compiler) ' +
|
||||
' '.join(srcs) +
|
||||
' $OUT',
|
||||
cmd = 'cd $SRCDIR;$(exe //lib/prolog:compiler)' +
|
||||
' $TMP $OUT ' +
|
||||
' '.join(srcs),
|
||||
srcs = srcs,
|
||||
deps = ['//lib/prolog:compiler'],
|
||||
out = name + '.src.zip',
|
||||
|
@ -17,22 +17,22 @@ def java_library(
|
||||
name,
|
||||
srcs=[],
|
||||
resources=[],
|
||||
export_deps=False,
|
||||
source='7',
|
||||
target='7',
|
||||
proguard_config=None,
|
||||
deps=[],
|
||||
exported_deps=[],
|
||||
visibility=[],
|
||||
):
|
||||
original_java_library(
|
||||
name=name,
|
||||
srcs=srcs,
|
||||
resources=resources,
|
||||
export_deps=export_deps,
|
||||
source=source,
|
||||
target=target,
|
||||
proguard_config=proguard_config,
|
||||
deps=deps,
|
||||
exported_deps=exported_deps,
|
||||
visibility=visibility,
|
||||
)
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user