diff --git a/contrib/bootstrap b/contrib/bootstrap index fb81a9fe08a82e574b3de3120d49bdf5ea7e3961..4a5e4b9cc9f1dd69ff131e124ca9ffb4eb4ffa7e 100755 --- a/contrib/bootstrap +++ b/contrib/bootstrap @@ -26,6 +26,7 @@ usage() echo " --prefix=PREFIX install files in PREFIX" echo " --no-checksums don't verify checksums (allows to replace tarballs)" echo " --disable-downloads don't download packages from the internet" + echo ' --cache-dir=DIR the directory where contrib tarballs are cached' echo " --enable-debug build with debug symbol and extra checks (disabled by default)" echo " --disable-FOO configure to not build package FOO" echo " --enable-FOO configure to build package FOO" @@ -36,6 +37,7 @@ HOST= PREFIX= PKGS_ENABLE= PKGS_DISABLE= +CONF_TARBALLS= if test ! -f "../../contrib/src/main.mak" then @@ -59,6 +61,9 @@ do --disable-downloads) DISABLE_CONTRIB_DOWNLOADS="TRUE" ;; + --cache-dir=*) + CONF_TARBALLS="${1#--cache-dir=}" + ;; --enable-debug) ENABLE_DEBUG=1 ;; @@ -122,6 +127,7 @@ PKGS_DISABLE := $PKGS_DISABLE PKGS_ENABLE := $PKGS_ENABLE DISABLE_CONTRIB_DOWNLOADS := $DISABLE_CONTRIB_DOWNLOADS DISABLE_CONTRIB_CHECKSUMS := $DISABLE_CONTRIB_CHECKSUMS +CONF_TARBALLS := $CONF_TARBALLS ENABLE_DEBUG := $ENABLE_DEBUG EOF diff --git a/contrib/src/ffmpeg/rules.mak b/contrib/src/ffmpeg/rules.mak index d82e60242f726f9443908fa7537202abd5bacfea..ca450becf14d36c3e5f07c1ea7b86c712c6168d9 100644 --- a/contrib/src/ffmpeg/rules.mak +++ b/contrib/src/ffmpeg/rules.mak @@ -342,7 +342,7 @@ $(TARBALLS)/ffmpeg-$(FFMPEG_HASH).tar.gz: ffmpeg: ffmpeg-$(FFMPEG_HASH).tar.gz rm -Rf $@ $@-$(FFMPEG_HASH) mkdir -p $@-$(FFMPEG_HASH) - (cd $@-$(FFMPEG_HASH) && tar x $(if ${BATCH_MODE},,-v) --strip-components=1 -f ../$<) + (cd $@-$(FFMPEG_HASH) && tar x $(if ${BATCH_MODE},,-v) --strip-components=1 -f $<) $(APPLY) $(SRC)/ffmpeg/remove-mjpeg-log.patch $(APPLY) $(SRC)/ffmpeg/change-RTCP-ratio.patch $(APPLY) $(SRC)/ffmpeg/rtp_ext_abs_send_time.patch diff --git a/contrib/src/main.mak b/contrib/src/main.mak index e77981f054c0f93baf233793601ff183fd91b18e..752dfc045552e755a8f2f56fbb6250ccdd0ce0a8 100644 --- a/contrib/src/main.mak +++ b/contrib/src/main.mak @@ -23,10 +23,15 @@ all: install # bootstrap configuration include config.mak -TOPSRC ?= ../../contrib -TOPDST ?= .. +TOPSRC ?= $(abspath ../../contrib) +TOPDST ?= $(abspath ..) SRC := $(TOPSRC)/src -TARBALLS := $(TOPSRC)/tarballs + +# Resolves TARBALLS using the following precedence rules: +# 1. Environment variable +# 2. Configured value at bootstrap time +# 3. Default value +TARBALLS := $(or $(TARBALLS),$(CONF_TARBALLS),$(TOPSRC)/tarballs) PATH :=$(abspath ../../extras/tools/build/bin):$(PATH) export PATH diff --git a/contrib/src/onnx/rules.mak b/contrib/src/onnx/rules.mak index c631564f4c23d6d6ac2eb131229903eae0890357..5c06e4e86609154d68edb3630c04cdaa18a9ad8d 100644 --- a/contrib/src/onnx/rules.mak +++ b/contrib/src/onnx/rules.mak @@ -12,7 +12,7 @@ $(TARBALLS)/onnxruntime-$(ONNX_VERSION).tar.xz: onnx: onnxruntime-$(ONNX_VERSION).tar.xz .sum-onnx rm -Rf $@ mkdir -p $@ - (cd $@ && tar x --strip-components=1 -f ../$<) + (cd $@ && tar x --strip-components=1 -f $<) .onnx: onnx ifdef HAVE_ANDROID diff --git a/contrib/src/vpx/rules.mak b/contrib/src/vpx/rules.mak index 75bbdb5ceab6eb5991f322ba91d2aaa86b2b0e8c..e663f1f879f02fc49fe8cebd190fd7ccd4482682 100644 --- a/contrib/src/vpx/rules.mak +++ b/contrib/src/vpx/rules.mak @@ -11,7 +11,7 @@ $(TARBALLS)/libvpx-$(VPX_HASH).tar.gz: libvpx: libvpx-$(VPX_HASH).tar.gz .sum-vpx rm -Rf $@-$(VPX_HASH) mkdir -p $@-$(VPX_HASH) - (cd $@-$(VPX_HASH) && tar x $(if ${BATCH_MODE},,-v) --strip-components=1 -f ../$<) + (cd $@-$(VPX_HASH) && tar x $(if ${BATCH_MODE},,-v) --strip-components=1 -f $<) $(MOVE) DEPS_vpx = diff --git a/contrib/src/x264/rules.mak b/contrib/src/x264/rules.mak index a83e8e8c137a3b1058e057920b1b8b81ccd6f93c..fae3f4292d6001663c9f6c56e24caad5cc447c7d 100644 --- a/contrib/src/x264/rules.mak +++ b/contrib/src/x264/rules.mak @@ -50,7 +50,7 @@ $(TARBALLS)/x264-$(X264_HASH).tar.xz: x264: x264-$(X264_HASH).tar.xz .sum-x264 rm -Rf $@-$(X264_HASH) mkdir -p $@-$(X264_HASH) - (cd $@-$(X264_HASH) && tar x $(if ${BATCH_MODE},,-v) --strip-components=1 -f ../$<) + (cd $@-$(X264_HASH) && tar x $(if ${BATCH_MODE},,-v) --strip-components=1 -f $<) ifdef HAVE_IOS $(APPLY) $(SRC)/x264/remove-align.patch endif