diff options
Diffstat (limited to 'pcr/ring/0001-contrib-recursive-dependency-tracking.patch')
-rw-r--r-- | pcr/ring/0001-contrib-recursive-dependency-tracking.patch | 169 |
1 files changed, 169 insertions, 0 deletions
diff --git a/pcr/ring/0001-contrib-recursive-dependency-tracking.patch b/pcr/ring/0001-contrib-recursive-dependency-tracking.patch new file mode 100644 index 000000000..030c5cf94 --- /dev/null +++ b/pcr/ring/0001-contrib-recursive-dependency-tracking.patch @@ -0,0 +1,169 @@ +From f50c8a7e1fbdf317013f19b962093b068ed6e0f7 Mon Sep 17 00:00:00 2001 +From: Luke Shumaker <lukeshu@parabola.nu> +Date: Wed, 13 Dec 2017 13:49:07 -0500 +Subject: [PATCH] contrib: recursive dependency tracking + +Let's say we're building gnutls (since the system version is too new). +gnutls depends on nettle. +Let's say we're using the system nettle (naturally in FOUND_PKGS). +nettle depends on gmp. + +With the old (non-recursive) dependency tracking, we would end up building +gmp just for nettle, even though we aren't even building nettle! +--- + contrib/src/README | 17 +++++------------ + contrib/src/ffmpeg/rules.mak | 2 +- + contrib/src/flac/rules.mak | 2 +- + contrib/src/gnutls/rules.mak | 2 +- + contrib/src/main.mak | 3 ++- + contrib/src/nettle/rules.mak | 2 +- + contrib/src/opendht/rules.mak | 2 +- + contrib/src/secp256k1/rules.mak | 2 +- + contrib/src/vorbis/rules.mak | 4 ++-- + 9 files changed, 15 insertions(+), 21 deletions(-) + +diff --git a/contrib/src/README b/contrib/src/README +index 581a39219..d03ff1899 100644 +--- a/contrib/src/README ++++ b/contrib/src/README +@@ -92,18 +92,11 @@ Dependencies + If package bar depends on package foo, the special DEPS_bar variable + should be defined as follow: + +- DEPS_bar = foo $(DEPS_foo) +- +-Note that dependency resolution is unfortunately _not_ recursive. +-Therefore $(DEPS_foo) really should be specified explicitly as shown +-above. (In practice, this will not make any difference insofar as there +-are no pure second-level nested dependencies. For instance, libass +-depends on FontConfig, which depends on FreeType, but libass depends +-directly on FreeType anyway.) +- +-Also note that DEPS_bar is set "recursively" with =, rather than +-"immediately" with :=. This is so that $(DEPS_foo) is expanded +-correctly, even if DEPS_foo it is defined after DEPS_bar. ++ DEPS_bar = foo ++ ++Dependency resolution is recursive (unlike in previous versions); the ++above will cause bar to also depend on the dependencies of foo. ++However, it will not correctly handle cycles. + + Implementation note: + +diff --git a/contrib/src/ffmpeg/rules.mak b/contrib/src/ffmpeg/rules.mak +index b1db5d131..e86403e25 100644 +--- a/contrib/src/ffmpeg/rules.mak ++++ b/contrib/src/ffmpeg/rules.mak +@@ -11,7 +11,7 @@ ifeq ($(call need_pkg,"libavutil >= 55.75.100 libavcodec >= 57.106.101 libavform + PKGS_FOUND += ffmpeg + endif + +-DEPS_ffmpeg = iconv zlib x264 vpx opus speex $(DEPS_vpx) ++DEPS_ffmpeg = iconv zlib x264 vpx opus speex + + FFMPEGCONF = \ + --cc="$(CC)" \ +diff --git a/contrib/src/flac/rules.mak b/contrib/src/flac/rules.mak +index 7abc69938..857593aad 100644 +--- a/contrib/src/flac/rules.mak ++++ b/contrib/src/flac/rules.mak +@@ -47,7 +47,7 @@ FLACCONF += --disable-asm-optimizations + endif + endif + +-DEPS_flac = ogg $(DEPS_ogg) ++DEPS_flac = ogg + + .flac: flac + cd $< && $(HOSTVARS) ./configure $(FLACCONF) +diff --git a/contrib/src/gnutls/rules.mak b/contrib/src/gnutls/rules.mak +index 843135814..4441fcf91 100644 +--- a/contrib/src/gnutls/rules.mak ++++ b/contrib/src/gnutls/rules.mak +@@ -60,7 +60,7 @@ ifdef HAVE_IOS + GNUTLS_CONF += --disable-hardware-acceleration + endif + +-DEPS_gnutls = nettle $(DEPS_nettle) iconv $(DEPS_iconv) ++DEPS_gnutls = nettle iconv + + + #Workaround for localtime_r function +diff --git a/contrib/src/main.mak b/contrib/src/main.mak +index 51cbbfbcd..542f2228c 100644 +--- a/contrib/src/main.mak ++++ b/contrib/src/main.mak +@@ -391,7 +391,8 @@ PKGS_AUTOMATIC := $(filter-out $(PKGS_FOUND),$(PKGS)) + # Apply manual selection (from bootstrap): + PKGS_MANUAL := $(sort $(PKGS_ENABLE) $(filter-out $(PKGS_DISABLE),$(PKGS_AUTOMATIC))) + # Resolve dependencies: +-PKGS_DEPS := $(filter-out $(PKGS_FOUND) $(PKGS_MANUAL),$(sort $(foreach p,$(PKGS_MANUAL),$(DEPS_$(p))))) ++dep_on = $(sort $(foreach p,$(filter-out $(PKGS_FOUND),$(1)),$(p) $(call dep_on,$(DEPS_$(p))))) ++PKGS_DEPS := $(call dep_on,$(PKGS_MANUAL)) + PKGS := $(sort $(PKGS_MANUAL) $(PKGS_DEPS)) + + convert-static: +diff --git a/contrib/src/nettle/rules.mak b/contrib/src/nettle/rules.mak +index f811297a6..b924c7f87 100644 +--- a/contrib/src/nettle/rules.mak ++++ b/contrib/src/nettle/rules.mak +@@ -19,7 +19,7 @@ nettle: nettle-$(NETTLE_VERSION).tar.gz .sum-nettle + $(UPDATE_AUTOCONFIG) + $(MOVE) + +-DEPS_nettle = gmp $(DEPS_gmp) ++DEPS_nettle = gmp + + .nettle: nettle + ifdef HAVE_IOS +diff --git a/contrib/src/opendht/rules.mak b/contrib/src/opendht/rules.mak +index 4443a6fc0..b7fbe8ec8 100644 +--- a/contrib/src/opendht/rules.mak ++++ b/contrib/src/opendht/rules.mak +@@ -15,7 +15,7 @@ ifneq ($(call need_pkg,"libargon2"),) + DEPS_opendht += argon2 + endif + ifneq ($(call need_pkg,"gnutls >= 3.3.0"),) +-DEPS_opendht += gnutls $(DEPS_gnutls) ++DEPS_opendht += gnutls + endif + + $(TARBALLS)/opendht-$(OPENDHT_VERSION).tar.gz: +diff --git a/contrib/src/secp256k1/rules.mak b/contrib/src/secp256k1/rules.mak +index c5681629d..5b4f84e43 100644 +--- a/contrib/src/secp256k1/rules.mak ++++ b/contrib/src/secp256k1/rules.mak +@@ -7,7 +7,7 @@ PKGS += secp256k1 + ifeq ($(call need_pkg,"libsecp256k1"),) + PKGS_FOUND += secp256k1 + endif +-DEPS_secp256k1 = gmp $(DEPS_gmp) ++DEPS_secp256k1 = gmp + + $(TARBALLS)/secp256k1-$(SECP256K1_VERSION).tar.gz: + $(call download,$(SECP256K1_URL)) +diff --git a/contrib/src/vorbis/rules.mak b/contrib/src/vorbis/rules.mak +index 1fb268514..e20cc7493 100644 +--- a/contrib/src/vorbis/rules.mak ++++ b/contrib/src/vorbis/rules.mak +@@ -36,7 +36,7 @@ endif + $(UPDATE_AUTOCONFIG) + $(MOVE) + +-DEPS_vorbis = ogg $(DEPS_ogg) ++DEPS_vorbis = ogg + + .vorbis: vorbis + $(RECONF) -Im4 +@@ -47,7 +47,7 @@ DEPS_vorbis = ogg $(DEPS_ogg) + .sum-vorbisenc: .sum-vorbis + touch $@ + +-DEPS_vorbisenc = vorbis $(DEPS_vorbis) ++DEPS_vorbisenc = vorbis + + .vorbisenc: + touch $@ +-- +2.15.1 + |