Quellcode durchsuchen

Implement initial framework of Bazel build

The initial implementation only builds the packages consumed by
Gerrit Code Review.

Test build and execution is not implemented.

We prefer to consume maven_jar custom rule from bazlets repository,
for the same reasons as in the Gerrit project:

* Caching artifacts across different clones and projects
* Exposing source classifiers and neverlink artifact

TEST PLAN:

  $ bazel build :all
  $ unzip -t bazel-genfiles/all.zip
  Archive: bazel-genfiles/all.zip
    testing: libjgit-archive.jar      OK
    testing: libjgit-servlet.jar      OK
    testing: libjgit.jar              OK
    testing: libjunit.jar             OK
  No errors detected in compressed data of bazel-genfiles/all.zip.

Change-Id: Ia837ce95d9829fe2515f37b7a04a71a4598672a0
Signed-off-by: David Ostrovsky <david@ostrovsky.org>
Signed-off-by: David Pursehouse <david.pursehouse@gmail.com>
tags/v4.7.0.201704051617-r
David Ostrovsky vor 7 Jahren
Ursprung
Commit
e92a0c3adc
9 geänderte Dateien mit 207 neuen und 0 gelöschten Zeilen
  1. 6
    0
      .gitignore
  2. 19
    0
      BUILD
  3. 97
    0
      WORKSPACE
  4. 15
    0
      org.eclipse.jgit.archive/BUILD
  5. 12
    0
      org.eclipse.jgit.http.server/BUILD
  6. 12
    0
      org.eclipse.jgit.junit/BUILD
  7. 29
    0
      org.eclipse.jgit/BUILD
  8. 0
    0
      tools/BUILD
  9. 17
    0
      tools/bazlets.bzl

+ 6
- 0
.gitignore Datei anzeigen

@@ -4,3 +4,9 @@
/buck-out
/target
infer-out
bazel-bin
bazel-genfiles
bazel-jgit
bazel-out
bazel-testlogs
*~

+ 19
- 0
BUILD Datei anzeigen

@@ -0,0 +1,19 @@
package(default_visibility = ['//visibility:public'])

genrule(
name = 'all',
srcs = [
'//org.eclipse.jgit:jgit',
'//org.eclipse.jgit.archive:jgit-archive',
'//org.eclipse.jgit.http.server:jgit-servlet',
'//org.eclipse.jgit.junit:junit',
],
cmd = ' && '.join([
'p=$$PWD',
't=$$(mktemp -d || mktemp -d -t bazel-tmp)',
'cp $(SRCS) $$t',
'cd $$t',
'zip -qr $$p/$@ .',
]),
outs = ['all.zip'],
)

+ 97
- 0
WORKSPACE Datei anzeigen

@@ -0,0 +1,97 @@
workspace(name="jgit")

load("//tools:bazlets.bzl", "load_bazlets")
load_bazlets(commit = "3afbeab55ece585dbfc7a980bf7214b24ddbbe86")
load("@com_googlesource_gerrit_bazlets//tools:maven_jar.bzl",
"maven_jar"
)

maven_jar(
name = 'jsch',
artifact = 'com.jcraft:jsch:0.1.53',
sha1 = '658b682d5c817b27ae795637dfec047c63d29935',
)

maven_jar(
name = 'javaewah',
artifact = 'com.googlecode.javaewah:JavaEWAH:1.1.6',
sha1 = '94ad16d728b374d65bd897625f3fbb3da223a2b6',
)

maven_jar(
name = 'httpclient',
artifact = 'org.apache.httpcomponents:httpclient:4.3.6',
sha1 = '4c47155e3e6c9a41a28db36680b828ced53b8af4',
)

maven_jar(
name = 'httpcore',
artifact = 'org.apache.httpcomponents:httpcore:4.3.3',
sha1 = 'f91b7a4aadc5cf486df6e4634748d7dd7a73f06d',
)

maven_jar(
name = 'commons_logging',
artifact = 'commons-logging:commons-logging:1.1.3',
sha1 = 'f6f66e966c70a83ffbdb6f17a0919eaf7c8aca7f',
)

maven_jar(
name = 'log_api',
artifact = 'org.slf4j:slf4j-api:1.7.2',
sha1 = '0081d61b7f33ebeab314e07de0cc596f8e858d97',
)

maven_jar(
name = 'slf4j_simple',
artifact = 'org.slf4j:slf4j-simple:1.7.2',
sha1 = '760055906d7353ba4f7ce1b8908bc6b2e91f39fa',
)

maven_jar(
name = 'servlet_api_3_1',
artifact = 'javax.servlet:javax.servlet-api:3.1.0',
sha1 = '3cd63d075497751784b2fa84be59432f4905bf7c',
)

maven_jar(
name = 'commons_compress',
artifact = 'org.apache.commons:commons-compress:1.6',
sha1 = 'c7d9b580aff9e9f1998361f16578e63e5c064699',
)

maven_jar(
name = 'tukaani_xz',
artifact = 'org.tukaani:xz:1.3',
sha1 = '66db21c8484120cb6a51b5b3ea47b6f383942bec',
)

maven_jar(
name = 'args4j',
artifact = 'args4j:args4j:2.0.15',
sha1 = '139441471327b9cc6d56436cb2a31e60eb6ed2ba',
)

maven_jar(
name = 'junit',
artifact = 'junit:junit:4.11',
sha1 = '4e031bb61df09069aeb2bffb4019e7a5034a4ee0',
)

maven_jar(
name = 'hamcrest_library',
artifact = 'org.hamcrest:hamcrest-library:1.3',
sha1 = '4785a3c21320980282f9f33d0d1264a69040538f',
)

maven_jar(
name = 'hamcrest_core',
artifact = 'org.hamcrest:hamcrest-core:1.3',
sha1 = '42a25dc3219429f0e5d060061f71acb49bf010a0',
)

maven_jar(
name = 'gson',
artifact = 'com.google.code.gson:gson:2.2.4',
sha1 = 'a60a5e993c98c864010053cb901b7eab25306568',
)

+ 15
- 0
org.eclipse.jgit.archive/BUILD Datei anzeigen

@@ -0,0 +1,15 @@
package(default_visibility = ['//visibility:public'])

java_library(
name = 'jgit-archive',
srcs = glob(
['src/**'],
exclude = ['src/org/eclipse/jgit/archive/FormatActivator.java'],
),
resources = glob(['resources/**']),
resource_strip_prefix = 'org.eclipse.jgit.archive/resources',
deps = [ # We want these deps to be provided_deps
'//org.eclipse.jgit:jgit',
'@commons_compress//jar',
],
)

+ 12
- 0
org.eclipse.jgit.http.server/BUILD Datei anzeigen

@@ -0,0 +1,12 @@
package(default_visibility = ['//visibility:public'])

java_library(
name = 'jgit-servlet',
srcs = glob(['src/**']),
resources = glob(['resources/**']),
resource_strip_prefix = 'org.eclipse.jgit.http.server/resources',
deps = [ # We want these deps to be provided_deps
'//org.eclipse.jgit:jgit',
'@servlet_api_3_1//jar',
],
)

+ 12
- 0
org.eclipse.jgit.junit/BUILD Datei anzeigen

@@ -0,0 +1,12 @@
package(default_visibility = ['//visibility:public'])

java_library(
name = 'junit',
srcs = glob(['src/**']),
resources = glob(['resources/**']),
resource_strip_prefix = 'org.eclipse.jgit.junit/resources',
deps = [ # We want these deps to be provided_deps
'//org.eclipse.jgit:jgit',
'@junit//jar',
],
)

+ 29
- 0
org.eclipse.jgit/BUILD Datei anzeigen

@@ -0,0 +1,29 @@
package(default_visibility = ['//visibility:public'])

INSECURE_CIPHER_FACTORY = [
'src/org/eclipse/jgit/transport/InsecureCipherFactory.java',
]

SRCS = glob(['src/**'], exclude=INSECURE_CIPHER_FACTORY)
RESOURCES = glob(['resources/**'])

java_library(
name = 'jgit',
srcs = SRCS,
resources = RESOURCES,
resource_strip_prefix = 'org.eclipse.jgit/resources',
deps = [
':insecure_cipher_factory',
'@javaewah//jar',
'@jsch//jar',
'@httpclient//jar',
'@servlet_api_3_1//jar',
'@log_api//jar',
],
)

java_library(
name = 'insecure_cipher_factory',
srcs = INSECURE_CIPHER_FACTORY,
javacopts = ['-Xep:InsecureCipherMode:OFF'],
)

+ 0
- 0
tools/BUILD Datei anzeigen


+ 17
- 0
tools/bazlets.bzl Datei anzeigen

@@ -0,0 +1,17 @@
NAME = "com_googlesource_gerrit_bazlets"

def load_bazlets(
commit,
local_path = None
):
if not local_path:
native.git_repository(
name = NAME,
remote = "https://gerrit.googlesource.com/bazlets",
commit = commit,
)
else:
native.local_repository(
name = NAME,
path = local_path,
)

Laden…
Abbrechen
Speichern