vlc/vlc-3.0 | branch: master | Steve Lhomme <[email protected]> | Fri May  3 
12:52:43 2019 +0200| [42849464a1154f49e5b885971975eb3019c96e63] | committer: 
Steve Lhomme

tools: allow building tools out of the source tree

This is convenient when using one source tree with different compilers/OSes.
For example when C++ standard library differs between versions (since most of
the time we need to build protoc).
You can keep one set of tools per environment.

(cherry picked from commit 7febc3979f43575f987b4f2313248595a562878e)

Signed-off-by: Steve Lhomme <[email protected]>

> http://git.videolan.org/gitweb.cgi/vlc/vlc-3.0.git/?a=commit;h=42849464a1154f49e5b885971975eb3019c96e63
---

 extras/tools/bootstrap | 11 ++++-------
 extras/tools/tools.mak | 27 ++++++++++++++-------------
 2 files changed, 18 insertions(+), 20 deletions(-)

diff --git a/extras/tools/bootstrap b/extras/tools/bootstrap
index c093399404..d2612ece55 100755
--- a/extras/tools/bootstrap
+++ b/extras/tools/bootstrap
@@ -19,12 +19,6 @@ export LC_ALL=
 NEEDED=
 FOUND=
 
-if [ ! -f tools.mak ]
-then
-       echo "You must run me in ./extras/tools !"
-       exit 1
-fi
-
 check_version() {
     gotver=$2
     gotmajor=`echo $gotver|cut -d. -f1`
@@ -176,7 +170,10 @@ case `uname` in
      ;;
 esac
 
+BOOTSTRAP_PATH="$( cd "$(dirname "$0")" ; pwd -P )"
+
 cat > Makefile << EOF
+TOOLS = $BOOTSTRAP_PATH
 MAKEFLAGS += -j$CPUS
 CMAKEFLAGS += --parallel=$CPUS
 PREFIX=\$(abspath ./build)
@@ -204,5 +201,5 @@ cat >> Makefile << EOF
 all: $TARGETS
        @echo "You are ready to build VLC and its contribs"
 
-include tools.mak
+include \$(TOOLS)/tools.mak
 EOF
diff --git a/extras/tools/tools.mak b/extras/tools/tools.mak
index 929f83f4aa..94375c748c 100644
--- a/extras/tools/tools.mak
+++ b/extras/tools/tools.mak
@@ -2,7 +2,8 @@
 #
 # This file is under the same license as the vlc package.
 
-include packages.mak
+include $(TOOLS)/packages.mak
+TARBALLS := $(TOOLS)
 
 #
 # common rules
@@ -36,7 +37,7 @@ endif
 
 download_pkg = $(call download,$(VIDEOLAN)/$(2)/$(lastword $(subst /, ,$(@)))) 
|| \
        ( $(call download,$(1)) && echo "Please upload package $(lastword 
$(subst /, ,$(@))) to our FTP" )  \
-       && grep $(@) SHA512SUMS| $(SHA512SUM)
+       && grep $(@) $(TOOLS)/SHA512SUMS| $(SHA512SUM)
 
 UNPACK = $(RM) -R $@ \
     $(foreach f,$(filter %.tar.gz %.tgz,$^), && tar xvzfo $(f)) \
@@ -91,7 +92,7 @@ cmake-$(CMAKE_VERSION).tar.gz:
 
 cmake: cmake-$(CMAKE_VERSION).tar.gz
        $(UNPACK)
-       $(APPLY) cmake-msys-FindPkg.patch
+       $(APPLY) $(TOOLS)/cmake-msys-FindPkg.patch
        $(MOVE)
 
 .buildcmake: cmake
@@ -126,10 +127,10 @@ libtool-$(LIBTOOL_VERSION).tar.gz:
 libtool: libtool-$(LIBTOOL_VERSION).tar.gz
        $(UNPACK)
        (cd $(UNPACK_DIR) && chmod u+w build-aux/ltmain.sh)
-       $(APPLY) libtool-2.4.6-bitcode.patch
-       $(APPLY) libtool-2.4.6-san.patch
-       $(APPLY) libtool-2.4.6-clang-libs.patch
-       $(APPLY) libtool-2.4.6-response-files.patch
+       $(APPLY) $(TOOLS)/libtool-2.4.6-bitcode.patch
+       $(APPLY) $(TOOLS)/libtool-2.4.6-san.patch
+       $(APPLY) $(TOOLS)/libtool-2.4.6-clang-libs.patch
+       $(APPLY) $(TOOLS)/libtool-2.4.6-response-files.patch
        (cd $(UNPACK_DIR) && autoreconf)
        $(MOVE)
 
@@ -201,7 +202,7 @@ automake-$(AUTOMAKE_VERSION).tar.gz:
 
 automake: automake-$(AUTOMAKE_VERSION).tar.gz
        $(UNPACK)
-       $(APPLY) automake-clang.patch
+       $(APPLY) $(TOOLS)/automake-clang.patch
        $(MOVE)
 
 .buildautomake: automake .autoconf
@@ -219,8 +220,8 @@ m4-$(M4_VERSION).tar.gz:
 
 m4: m4-$(M4_VERSION).tar.gz
        $(UNPACK)
-       $(APPLY) bison-macOS-c41f233c.patch
-       $(APPLY) bison-macOS-7df04f9.patch
+       $(APPLY) $(TOOLS)/bison-macOS-c41f233c.patch
+       $(APPLY) $(TOOLS)/bison-macOS-7df04f9.patch
        $(MOVE)
 
 .buildm4: m4
@@ -272,7 +273,7 @@ ragel-$(RAGEL_VERSION).tar.gz:
 
 ragel: ragel-$(RAGEL_VERSION).tar.gz
        $(UNPACK)
-       $(APPLY) ragel-6.8-javacodegen.patch
+       $(APPLY) $(TOOLS)/ragel-6.8-javacodegen.patch
        $(MOVE)
 
 
@@ -347,8 +348,8 @@ bison-$(BISON_VERSION).tar.xz:
 
 bison: bison-$(BISON_VERSION).tar.xz
        $(UNPACK)
-       $(APPLY) bison-macOS-c41f233c.patch
-       $(APPLY) bison-macOS-7df04f9.patch
+       $(APPLY) $(TOOLS)/bison-macOS-c41f233c.patch
+       $(APPLY) $(TOOLS)/bison-macOS-7df04f9.patch
        $(MOVE)
 
 .buildbison: bison

_______________________________________________
vlc-commits mailing list
[email protected]
https://mailman.videolan.org/listinfo/vlc-commits

Reply via email to