From b9f914fa56a00530d38b597dc853aad50d1decfb Mon Sep 17 00:00:00 2001 From: Kristina Chodorow Date: Mon, 19 Dec 2016 16:58:42 +0000 Subject: Make Bazel build dot This change has several parts, it: * Adds a "make" repository rule, which runs ./configure && make on a repository. * Modifies the tar.gz decompressor to restore timestamps. This was an issue with dot, as make examines the timestamp to determine if files need to be rebuilt. Because Bazel was not preserving the archive's timestamp, it was rebuilding things that it did not need to (and, I think, exposed some bugs in dot's Makefile). * Actually add dot as an external repository. I made the dot-graph target manual, so it won't be downloaded/built by the default //... target. * Remove dot scrubbing from the Bazel export process. * Added some names to download_and_extract params, because it's really annoying to only be able to reference them positionally. -- PiperOrigin-RevId: 142452055 MOS_MIGRATED_REVID=142452055 --- WORKSPACE | 9 +++++++++ 1 file changed, 9 insertions(+) (limited to 'WORKSPACE') diff --git a/WORKSPACE b/WORKSPACE index 666b8dfe9e..9d2c79654a 100644 --- a/WORKSPACE +++ b/WORKSPACE @@ -64,3 +64,12 @@ new_local_repository( path = "./third_party/protobuf/3.0.0/", build_file = "./third_party/protobuf/3.0.0/com_google_protobuf_java.BUILD", ) + +load('//tools/build_defs/repo:make.bzl', 'make') +make( + name = "dot", + urls = ["http://www.graphviz.org/pub/graphviz/stable/SOURCES/graphviz-2.38.0.tar.gz"], + strip_prefix = 'graphviz-2.38.0', + sha256 = '81aa238d9d4a010afa73a9d2a704fc3221c731e1e06577c2ab3496bdef67859e', + exports = ["cmd/dot/dot"], +) -- cgit v1.2.3