From 631f0c4a8bad22c9a2bb1ac6b36540f37c5816eb Mon Sep 17 00:00:00 2001 From: orbea Date: Sat, 25 Nov 2017 17:09:26 -0800 Subject: [PATCH] qb: Create a check_val function for the no pkg-config fallback path. --- qb/config.comp.sh | 1 - qb/config.libs.sh | 38 +++++++++----------------------------- qb/qb.libs.sh | 10 +++++++++- 3 files changed, 18 insertions(+), 31 deletions(-) diff --git a/qb/config.comp.sh b/qb/config.comp.sh index f0fcc84844..1ce76eeb14 100644 --- a/qb/config.comp.sh +++ b/qb/config.comp.sh @@ -4,4 +4,3 @@ USE_LANG_C="yes" if [ "$OS" = 'Win32' ]; then USE_LANG_CXX="yes" fi - diff --git a/qb/config.libs.sh b/qb/config.libs.sh index 2f6069c5e5..9ef47c2f83 100644 --- a/qb/config.libs.sh +++ b/qb/config.libs.sh @@ -119,10 +119,8 @@ fi if [ "$HAVE_EGL" != "no" ] && [ "$OS" != 'Win32' ]; then check_pkgconf EGL "$VC_PREFIX"egl # some systems have EGL libs, but no pkgconfig - if [ "$HAVE_EGL" = "no" ]; then - HAVE_EGL=auto - check_lib '' EGL "-l${VC_PREFIX}EGL $EXTRA_GL_LIBS" - else + check_val '' EGL "-l${VC_PREFIX}EGL $EXTRA_GL_LIBS" + if [ "$HAVE_EGL" = "yes" ]; then EGL_LIBS="$EGL_LIBS $EXTRA_GL_LIBS" fi fi @@ -319,11 +317,7 @@ fi if [ "$HAVE_ZLIB" != 'no' ]; then check_pkgconf ZLIB zlib - - if [ "$HAVE_ZLIB" = 'no' ]; then - HAVE_ZLIB='auto' - check_lib '' ZLIB '-lz' - fi + check_val '' ZLIB '-lz' fi if [ "$HAVE_THREADS" != 'no' ]; then @@ -382,10 +376,7 @@ if [ "$HAVE_EGL" = "yes" ]; then fi if [ "$HAVE_VG" != "no" ]; then check_pkgconf VG "$VC_PREFIX"vg - if [ "$HAVE_VG" = "no" ]; then - HAVE_VG=auto; check_lib '' VG "-l${VC_PREFIX}OpenVG $EXTRA_GL_LIBS" - [ "$HAVE_VG" = "yes" ] && VG_LIBS=-l"$VC_PREFIX"OpenVG - fi + check_val '' VG "-l${VC_PREFIX}OpenVG $EXTRA_GL_LIBS" fi else HAVE_VG=no @@ -397,9 +388,8 @@ check_pkgconf FREETYPE freetype2 check_pkgconf X11 x11 check_pkgconf XCB xcb -if [ "$HAVE_X11" = "no" ] && [ "$OS" != 'Darwin' ]; then - HAVE_X11=auto - check_lib '' X11 -lX11 +if [ "$OS" != 'Darwin' ]; then + check_val '' X11 -lX11 fi check_pkgconf WAYLAND wayland-egl @@ -411,15 +401,8 @@ check_pkgconf XEXT xext check_pkgconf XF86VM xxf86vm if [ "$HAVE_X11" != "no" ]; then - if [ "$HAVE_XEXT" = "no" ]; then - HAVE_XEXT=auto - check_lib '' XEXT -lXext - fi - - if [ "$HAVE_XF86VM" = "no" ]; then - HAVE_XF86VM=auto - check_lib '' XF86VM -lXxf86vm - fi + check_val '' XEXT -lXext + check_val '' XF86VM -lXxf86vm else HAVE_XEXT=no; HAVE_XF86VM=no; HAVE_XINERAMA=no; HAVE_XSHM=no fi @@ -435,10 +418,7 @@ fi if [ "$HAVE_UDEV" != "no" ]; then check_pkgconf UDEV libudev - if [ "$HAVE_UDEV" = "no" ]; then - HAVE_UDEV=auto - check_lib '' UDEV "-ludev" - fi + check_val '' UDEV "-ludev" fi check_header XSHM X11/Xlib.h X11/extensions/XShm.h diff --git a/qb/qb.libs.sh b/qb/qb.libs.sh index 6bbf851414..00411c9109 100644 --- a/qb/qb.libs.sh +++ b/qb/qb.libs.sh @@ -71,7 +71,7 @@ check_lib() # $1 = language $2 = HAVE_$2 $3 = lib $4 = function in lib $5 = return 0 } -check_pkgconf() #$1 = HAVE_$1 $2 = package $3 = version $4 = critical error message [checked only if non-empty] +check_pkgconf() # $1 = HAVE_$1 $2 = package $3 = version $4 = critical error message [checked only if non-empty] { tmpval="$(eval echo \$HAVE_$1)" [ "$tmpval" = 'no' ] && return 0 @@ -154,6 +154,14 @@ check_switch() # $1 = language $2 = HAVE_$2 $3 = switch $4 = critical error m } } +check_val() # $1 = language $2 = HAVE_$2 $3 = lib +{ tmpval="$(eval "printf %s \"\$HAVE_$2\"")" + if [ "$tmpval" = 'no' ]; then + eval "HAVE_$2=auto" + check_lib "$1" "$2" "$3" + fi +} + create_config_header() { outfile="$1"; shift