Codebase list golang-github-google-certificate-transparency / lintian-fixes/main DEPS
lintian-fixes/main

Tree @lintian-fixes/main (Download .tar.gz)

DEPS @lintian-fixes/mainraw · history · blame

vars = {
     # Change this variable to the name of one of the alternative SSL
     # implementations below.
     # If you change this in an existing client, you should probably rm -fr
     # all the deps and rebuild everything from scratch.
     "ssl_impl":         "openssl",

     # SSL implementation alternatives:
     "openssl": 				 "https://github.com/openssl/openssl.git@OpenSSL_1_0_2d",
     "boringssl":        "https://boringssl.googlesource.com/boringssl.git@2661"
}

deps = {
     Var("ssl_impl"):    Var(Var("ssl_impl")),
     "gflags":  	 			 "https://github.com/gflags/gflags.git@v2.1.2",
     "glog":             "https://github.com/benlaurie/glog.git@0.3.4-fix",
     "googlemock": 			 "https://github.com/google/googlemock.git@release-1.7.0",
     "googlemock/gtest": "https://github.com/google/googletest.git@release-1.7.0",
     "icu4c":            "https://github.com/icu-project/icu4c.git@8ce90b88807aa2bd031a4b7608b23b1c5984cf08",
     "json-c": 					 "https://github.com/AlCutter/json-c.git@json-c-0.12-20140410-fix",
     "ldns":             "https://github.com/benlaurie/ldns.git@1.6.17-fix",
     "leveldb": 				 "https://github.com/google/leveldb.git@v1.18",
     "libevent": 				 "https://github.com/libevent/libevent.git@release-2.0.22-stable",
     "libevhtp": 				 "https://github.com/ellzey/libevhtp.git@a89d9b3f9fdf2ebef41893b3d5e4466f4b0ecfda",
     "certificate-transparency/third_party/objecthash":
                         "https://github.com/benlaurie/objecthash.git@798f66bd8c5313da226aa7a60c114147910a7407",
     "protobuf":         "https://github.com/google/protobuf.git@v2.6.1",
     "protobuf/gtest":   "https://github.com/google/googletest.git@release-1.7.0",
     "libsnappy":        "https://github.com/google/snappy.git@1.1.3",
     # Randomly chosen github mirror
     "sqlite3-export": 	 "http://repo.or.cz/sqlite-export.git",
     "sqlite3": 				 "http://repo.or.cz/sqlite.git@version-3.8.10.1",
		 "tcmalloc":				 "https://github.com/gperftools/gperftools.git@gperftools-2.4"
}

# Can't use deps_os for this because it doesn't know about freebsd :/
deps_overrides = {
  "freebsd10": {
     "googlemock": 			 "https://github.com/AlCutter/googlemock-fbsd.git@1.7.0",
     "googlemock/gtest": "https://github.com/AlCutter/googletest-fbsd.git@1.7.0",
     "protobuf":         "https://github.com/benlaurie/protobuf.git@2.6.1-fix",
     "protobuf/gtest":   "https://github.com/AlCutter/googletest-fbsd.git@1.7.0",
     "libunwind":        "git://git.sv.gnu.org/libunwind.git@v1.1",
  },
  "linux2": {
     "libunwind":        "git://git.sv.gnu.org/libunwind.git@v1.1",
  },
  "darwin": {
     "ldns": "https://github.com/benlaurie/ldns.git@1.6.17-fix",
  }
}

make_os = {
	"freebsd10": "gmake",
	"darwin": "gnumake"
}

import os
import multiprocessing
import sys

print("Host platform is %s" % sys.platform)
if sys.platform in deps_overrides:
  print("Have %d overrides for platform" % len(deps_overrides[sys.platform]))
  deps.update(deps_overrides[sys.platform])
if sys.platform in make_os:
	make = make_os[sys.platform]
else:
	make = "make"

num_cores = multiprocessing.cpu_count()

print("Building with %s" % Var("ssl_impl"))
print("Using make %s with %d jobs" % (make, num_cores))

here = os.getcwd()

hooks = [
    {
        "name": "libunwind",
        "pattern": "^libunwind/",
        "action": [ make, "-f", os.path.join(here, "certificate-transparency/build.gclient"), "_libunwind" ],
    },
    {
        "name": "tcmalloc",
        "pattern": "^tcmalloc/",
        "action": [ make, "-f", os.path.join(here, "certificate-transparency/build.gclient"), "_tcmalloc" ],
    },
    {
        "name": "ssl",
        "pattern": Var("ssl_impl") + "/",
        "action": [ make, "-f", os.path.join(here, "certificate-transparency/build.gclient"), "_" + Var("ssl_impl") ],
    },
    {
        "name": "libevent",
        "pattern": "^libevent/",
        "action": [ make, "-f", os.path.join(here, "certificate-transparency/build.gclient"), "_libevent" ],
    },
    {
        "name": "libevhtp",
        "pattern": "^libevhtp/",
        "action": [ make, "-f", os.path.join(here, "certificate-transparency/build.gclient"), "_libevhtp" ],
    },
    {
        "name": "gflags",
        "pattern": "^gflags/",
        "action": [ make, "-f", os.path.join(here, "certificate-transparency/build.gclient"), "_gflags" ],
    },
    {
        "name": "glog",
        "pattern": "^glog/",
        "action": [ make, "-f", os.path.join(here, "certificate-transparency/build.gclient"), "_glog" ],
    },
    {
        "name": "protobuf",
        "pattern": "^protobuf/",
        "action": [ make, "-f", os.path.join(here, "certificate-transparency/build.gclient"), "_protobuf" ],
    },
    {
        "name": "sqlite3",
        "pattern": "^sqlite3/",
        "action": [ make, "-f", os.path.join(here, "certificate-transparency/build.gclient"), "_sqlite3" ],
    },
    {
        "name": "libsnappy",
        "pattern": "^libsnappy/",
        "action": [ make, "-f", os.path.join(here, "certificate-transparency/build.gclient"), "_libsnappy" ],
    },
    {
        "name": "leveldb",
        "pattern": "^leveldb/",
        "action": [ make, "-f", os.path.join(here, "certificate-transparency/build.gclient"), "_leveldb" ],
    },
    {
        "name": "json-c",
        "pattern": "^json-c/",
        "action": [ make, "-f", os.path.join(here, "certificate-transparency/build.gclient"), "_json-c" ],
    },
    {
        "name": "icu4c",
        "pattern": "^icu4c/",
        "action": [ make, "-f", os.path.join(here, "certificate-transparency/build.gclient"), "_icu4c" ],
    },
    {
        "name": "objecthash",
        "pattern": "^certificate-transparency/third_party/objecthash/",
        "action": [ make, "-f", os.path.join(here, "certificate-transparency/build.gclient"), "_objecthash" ],
    }]

# Currently only Openssl is supported for building the DNS server due to LDNS's dependency.
if Var("ssl_impl") == 'openssl':
  hooks.append(
      {
          "name": "ldns",
          "pattern": "^ldns/",
          "action": [ make, "-f", os.path.join(here, "certificate-transparency/build.gclient"), "_ldns" ],
      })
else:
  print("NOT building DNS server since we're using BoringSSL.")

# Do this last
hooks.append(
    {
        "name": "ct",
        "pattern": "^certificate-transparency/",
        "action": [ make, "-j", str(num_cores), "-f", os.path.join(here, "certificate-transparency/build.gclient"), "_configure-ct" ],
    })