From 21cca00dfeaec08ca93cf94ed33f4311cf1d8c84 Mon Sep 17 00:00:00 2001
From: Diego Biurrun <diego@biurrun.de>
Date: Fri, 24 Feb 2017 14:00:24 +0100
Subject: [PATCH] build: Explicitly disable external libraries when not
 explicitly enabled

Leaving those variables in an undefined state allows them getting implicitly
enabled when they are declared as weak dependencies of other components.
In that case, the library check is not run and required linker flags are not
added, resulting in a failing build.

Fixes linking when enabling libfreetype without libfontconfig.
---
 configure | 9 ++++++++-
 1 file changed, 8 insertions(+), 1 deletion(-)

diff --git a/configure b/configure
index 24e9fc337fa..eb7b6c75f8d 100755
--- a/configure
+++ b/configure
@@ -1296,7 +1296,6 @@ EXTERNAL_LIBRARY_LIST="
     $EXTERNAL_LIBRARY_VERSION3_LIST
     avisynth
     avxsynth
-    bzlib
     frei0r
     gnutls
     libbs2b
@@ -1327,6 +1326,10 @@ EXTERNAL_LIBRARY_LIST="
     libxcb
     libxcb_shm
     libxcb_xfixes
+"
+
+SYSTEM_LIBRARY_LIST="
+    bzlib
     zlib
 "
 
@@ -1388,6 +1391,7 @@ CONFIG_LIST="
     $LIBRARY_LIST
     $PROGRAM_LIST
     $SUBSYSTEM_LIST
+    $SYSTEM_LIBRARY_LIST
     neon_clobber_test
     pic
     pod2man
@@ -2574,6 +2578,9 @@ enable valgrind_backtrace
 # By default, enable only those hwaccels that have no external dependencies.
 enable d3d11va dxva2 vda vdpau
 
+# Avoid external, non-system, libraries getting enabled by dependency resolution
+disable $EXTERNAL_LIBRARY_LIST
+
 # build settings
 SHFLAGS='-shared -Wl,-soname,$$(@F)'
 LIBPREF="lib"
-- 
GitLab