summaryrefslogtreecommitdiffstats
path: root/solenv/buck/build.defs
diff options
context:
space:
mode:
Diffstat (limited to 'solenv/buck/build.defs')
-rw-r--r--solenv/buck/build.defs51
1 files changed, 51 insertions, 0 deletions
diff --git a/solenv/buck/build.defs b/solenv/buck/build.defs
new file mode 100644
index 000000000..f6a1a7463
--- /dev/null
+++ b/solenv/buck/build.defs
@@ -0,0 +1,51 @@
+def java_sources(
+ name,
+ srcs,
+ root = None,
+ visibility = []
+ ):
+ java_library(
+ name = name,
+ resources = srcs,
+ resources_root = root,
+ visibility = visibility,
+ )
+
+def java_doc(
+ name,
+ title,
+ pkgs,
+ paths,
+ srcs = [],
+ deps = [],
+ visibility = [],
+ do_it_wrong = False,
+ ):
+ if do_it_wrong:
+ sourcepath = paths
+ else:
+ sourcepath = ['$SRCDIR/' + n for n in paths]
+ genrule(
+ name = name,
+ cmd = ' '.join([
+ 'while ! test -f .buckconfig; do cd ..; done;',
+ 'javadoc',
+ '-quiet',
+ '-protected',
+ '-encoding UTF-8',
+ '-charset UTF-8',
+ '-notimestamp',
+ '-windowtitle "' + title + '"',
+ '-link http://docs.oracle.com/javase/7/docs/api',
+ '-subpackages ',
+ ':'.join(pkgs),
+ '-sourcepath ',
+ ':'.join(sourcepath),
+ ' -classpath ',
+ ':'.join(['$(location %s)' % n for n in deps]),
+ '-d $TMP',
+ ]) + ';jar cf $OUT -C $TMP .',
+ srcs = srcs,
+ out = name + '.jar',
+ visibility = visibility,
+)