From d9b1bd34fb230538e06577b358d63feee979395d Mon Sep 17 00:00:00 2001 From: "staticfloat@gmail.com" Date: Sun, 10 Jun 2018 17:50:40 -0700 Subject: [PATCH] libgit2: Upgrade to `v0.27.2`, carry further patches for mbedTLS integration --- .../md5 | 1 + .../sha512 | 1 + deps/libgit2.mk | 8 +++- deps/libgit2.version | 4 +- deps/patches/libgit2-mbedtls2.patch | 39 +++++++++++++++++++ 5 files changed, 50 insertions(+), 3 deletions(-) create mode 100644 deps/checksums/libgit2-8d36dc62ba1b5d7deb66b6f982e005ddbc2ce343.tar.gz/md5 create mode 100644 deps/checksums/libgit2-8d36dc62ba1b5d7deb66b6f982e005ddbc2ce343.tar.gz/sha512 create mode 100644 deps/patches/libgit2-mbedtls2.patch diff --git a/deps/checksums/libgit2-8d36dc62ba1b5d7deb66b6f982e005ddbc2ce343.tar.gz/md5 b/deps/checksums/libgit2-8d36dc62ba1b5d7deb66b6f982e005ddbc2ce343.tar.gz/md5 new file mode 100644 index 0000000000000..061444768c0d9 --- /dev/null +++ b/deps/checksums/libgit2-8d36dc62ba1b5d7deb66b6f982e005ddbc2ce343.tar.gz/md5 @@ -0,0 +1 @@ +4abe229ab2a6f6cf3d3ae4ae317a03ce diff --git a/deps/checksums/libgit2-8d36dc62ba1b5d7deb66b6f982e005ddbc2ce343.tar.gz/sha512 b/deps/checksums/libgit2-8d36dc62ba1b5d7deb66b6f982e005ddbc2ce343.tar.gz/sha512 new file mode 100644 index 0000000000000..a5f4f37fe8469 --- /dev/null +++ b/deps/checksums/libgit2-8d36dc62ba1b5d7deb66b6f982e005ddbc2ce343.tar.gz/sha512 @@ -0,0 +1 @@ +35e8586583442b71d3b8310aa2d349d7093415347c20054a7f453676735008c6d7f163d41486df038e99694f9a11c8ea17b5a6266a936c206b9418f895b3faf5 diff --git a/deps/libgit2.mk b/deps/libgit2.mk index 07c72eae4f450..c06b628f30295 100644 --- a/deps/libgit2.mk +++ b/deps/libgit2.mk @@ -33,7 +33,7 @@ LIBGIT2_OPTS += -DBUILD_CLAR=OFF -DDLLTOOL=`which $(CROSS_COMPILE)dlltool` LIBGIT2_OPTS += -DCMAKE_FIND_ROOT_PATH=/usr/$(XC_HOST) -DCMAKE_FIND_ROOT_PATH_MODE_INCLUDE=ONLY endif else -LIBGIT2_OPTS += -DCURL_INCLUDE_DIRS=$(build_includedir) -DCURL_LIBRARIES="-L$(build_shlibdir) -lcurl" +LIBGIT2_OPTS += -DCURL_INCLUDE_DIRS=$(build_includedir) -DCURL_LIBRARIES="curl" endif ifneq (,$(findstring $(OS),Linux FreeBSD)) @@ -52,6 +52,11 @@ $(LIBGIT2_SRC_PATH)/libgit2-mbedtls.patch-applied: $(SRCCACHE)/$(LIBGIT2_SRC_DIR patch -p1 -f < $(SRCDIR)/patches/libgit2-mbedtls.patch echo 1 > $@ +$(LIBGIT2_SRC_PATH)/libgit2-mbedtls2.patch-applied: $(SRCCACHE)/$(LIBGIT2_SRC_DIR)/source-extracted | $(LIBGIT2_SRC_PATH)/libgit2-mbedtls.patch-applied + cd $(LIBGIT2_SRC_PATH) && \ + patch -p1 -f < $(SRCDIR)/patches/libgit2-mbedtls2.patch + echo 1 > $@ + $(LIBGIT2_SRC_PATH)/libgit2-agent-nonfatal.patch-applied: $(LIBGIT2_SRC_PATH)/source-extracted | $(LIBGIT2_SRC_PATH)/libgit2-mbedtls.patch-applied cd $(LIBGIT2_SRC_PATH) && \ patch -p1 -f < $(SRCDIR)/patches/libgit2-agent-nonfatal.patch @@ -85,6 +90,7 @@ $(build_datarootdir)/julia/cert.pem: $(BUILDDIR)/$(LIBGIT2_SRC_DIR)/build-configured: \ $(LIBGIT2_SRC_PATH)/libgit2-mbedtls.patch-applied \ $(LIBGIT2_SRC_PATH)/libgit2-ssh.patch-applied \ + $(LIBGIT2_SRC_PATH)/libgit2-mbedtls2.patch-applied \ $(LIBGIT2_SRC_PATH)/libgit2-agent-nonfatal.patch-applied \ $(LIBGIT2_SRC_PATH)/libgit2-mbedtls-verify.patch-applied \ $(LIBGIT2_SRC_PATH)/libgit2-mbedtls-fixup.patch-applied \ diff --git a/deps/libgit2.version b/deps/libgit2.version index 306384f5cd768..31d60e342c069 100644 --- a/deps/libgit2.version +++ b/deps/libgit2.version @@ -1,2 +1,2 @@ -LIBGIT2_BRANCH=v0.26.0 -LIBGIT2_SHA1=15e119375018fba121cf58e02a9f17fe22df0df8 +LIBGIT2_BRANCH=v0.27.2 +LIBGIT2_SHA1=8d36dc62ba1b5d7deb66b6f982e005ddbc2ce343 diff --git a/deps/patches/libgit2-mbedtls2.patch b/deps/patches/libgit2-mbedtls2.patch new file mode 100644 index 0000000000000..235236f54590f --- /dev/null +++ b/deps/patches/libgit2-mbedtls2.patch @@ -0,0 +1,39 @@ +diff --git a/.travis.yml b/.travis.yml +index 686041bfa..61edba135 100644 +--- a/.travis.yml ++++ b/.travis.yml +@@ -58,12 +58,12 @@ matrix: + - compiler: gcc + env: + MBEDTLS=1 +- OPTIONS="-DTHREADSAFE=ON -DCMAKE_BUILD_TYPE=Release -DUSE_HTTPS=mbedTLS -DMBEDTLS_ROOT_DIR=../deps/mbedtls" ++ OPTIONS="-DTHREADSAFE=ON -DCMAKE_BUILD_TYPE=Release -DUSE_HTTPS=mbedTLS -DSHA1_BACKEND=mbedTLS -DMBEDTLS_ROOT_DIR=../deps/mbedtls" + os: linux + - compiler: gcc + env: + MBEDTLS=1 +- OPTIONS="-DTHREADSAFE=OFF -DBUILD_EXAMPLES=ON -DUSE_HTTPS=mbedTLS -DMBEDTLS_ROOT_DIR=../deps/mbedtls" ++ OPTIONS="-DTHREADSAFE=OFF -DBUILD_EXAMPLES=ON -DUSE_HTTPS=mbedTLS -DSHA1_BACKEND=mbedTLS -DMBEDTLS_ROOT_DIR=../deps/mbedtls" + os: linux + allow_failures: + - env: COVERITY=1 +diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt +index 2b82bb325..2deed5f87 100644 +--- a/src/CMakeLists.txt ++++ b/src/CMakeLists.txt +@@ -284,8 +284,13 @@ ELSEIF(SHA1_BACKEND STREQUAL "CommonCrypto") + ELSEIF (SHA1_BACKEND STREQUAL "mbedTLS") + ADD_FEATURE_INFO(SHA ON "using mbedTLS") + SET(GIT_SHA1_MBEDTLS 1) +- FILE(GLOB SRC_SHA1 src/hash/hash_mbedtls.c) +- LIST(APPEND LIBGIT2_PC_REQUIRES "mbedtls") ++ FILE(GLOB SRC_SHA1 hash/hash_mbedtls.c) ++ LIST(APPEND LIBGIT2_INCLUDES ${MBEDTLS_INCLUDE_DIR}) ++ LIST(APPEND LIBGIT2_LIBS ${MBEDTLS_LIBRARIES}) ++ # mbedTLS has no pkgconfig file, hence we can't require it ++ # https://github.com/ARMmbed/mbedtls/issues/228 ++ # For now, pass its link flags as our own ++ LIST(APPEND LIBGIT2_PC_LIBS ${MBEDTLS_LIBRARIES}) + ELSE() + MESSAGE(FATAL_ERROR "Asked for unknown SHA1 backend ${SHA1_BACKEND}") + ENDIF()