From: Olaf Wintermann
Date: Sun, 7 Dec 2025 18:27:29 +0000 (+0100)
Subject: add libmpv dependency for gtk builds
X-Git-Url: https://uap-core.de/gitweb/?a=commitdiff_plain;p=uwplayer.git
add libmpv dependency for gtk builds
---
diff --git a/configure b/configure
index b8442b5..b6b7503 100755
--- a/configure
+++ b/configure
@@ -85,36 +85,18 @@ echo "$PLATFORM_NAME"
printhelp()
{
echo "Usage: $0 [OPTIONS]..."
- cat << __EOF__
-Installation directories:
- --prefix=PREFIX path prefix for architecture-independent files
- [$prefix]
- --exec-prefix=EPREFIX path prefix for architecture-dependent files
- [PREFIX]
-
- --bindir=DIR user executables [EPREFIX/bin]
- --sbindir=DIR system admin executables [EPREFIX/sbin]
- --libexecdir=DIR program executables [EPREFIX/libexec]
- --sysconfdir=DIR system configuration files [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
- --runstatedir=DIR run-time variable data [LOCALSTATEDIR/run]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
- --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
- --infodir=DIR info documentation [DATAROOTDIR/info]
- --mandir=DIR man documentation [DATAROOTDIR/man]
- --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
+ echo 'Configuration:'
+ cat << '__EOF__'
Build Types:
--debug add extra compile flags for debug builds
--release add extra compile flags for release builds
Options:
- --toolkit=(libadwaita|gtk4|gtk3|gtk2|gtk2legacy|qt5|qt4|cocoa|motif)
+ --toolkit=(libadwaita|gtk4|gtk3|qt5|qt4|cocoa|motif)
__EOF__
+ abort_configure
}
# create temporary directory
@@ -130,26 +112,7 @@ fi
touch "$TEMP_DIR/options"
touch "$TEMP_DIR/features"
-# define standard variables
-# also define standard prefix (this is where we will search for config.site)
-prefix=/usr
-exec_prefix=
-bindir=
-sbindir=
-libdir=
-libexecdir=
-datarootdir=
-datadir=
-sysconfdir=
-sharedstatedir=
-localstatedir=
-runstatedir=
-includedir=
-infodir=
-localedir=
-mandir=
-
-# custom variables
+# config variables
# features
@@ -160,30 +123,28 @@ BUILD_TYPE="default"
for ARG in "$@"
do
case "$ARG" in
- "--prefix="*) prefix=${ARG#--prefix=} ;;
- "--exec-prefix="*) exec_prefix=${ARG#--exec-prefix=} ;;
- "--bindir="*) bindir=${ARG#----bindir=} ;;
- "--sbindir="*) sbindir=${ARG#--sbindir=} ;;
- "--libdir="*) libdir=${ARG#--libdir=} ;;
- "--libexecdir="*) libexecdir=${ARG#--libexecdir=} ;;
- "--datarootdir="*) datarootdir=${ARG#--datarootdir=} ;;
- "--datadir="*) datadir=${ARG#--datadir=} ;;
- "--sysconfdir="*) sysconfdir=${ARG#--sysconfdir=} ;;
- "--sharedstatedir="*) sharedstatedir=${ARG#--sharedstatedir=} ;;
- "--localstatedir="*) localstatedir=${ARG#--localstatedir=} ;;
- "--includedir="*) includedir=${ARG#--includedir=} ;;
- "--infodir="*) infodir=${ARG#--infodir=} ;;
- "--mandir"*) mandir=${ARG#--mandir} ;;
- "--localedir"*) localedir=${ARG#--localedir} ;;
- "--help"*) printhelp; abort_configure ;;
- "--debug") BUILD_TYPE="debug" ;;
- "--release") BUILD_TYPE="release" ;;
+ "--help"*) printhelp ;;
+ "--debug") BUILD_TYPE="debug" ;;
+ "--release") BUILD_TYPE="release" ;;
"--toolkit="*) OPT_TOOLKIT=${ARG#--toolkit=} ;;
- "--toolkit") echo "option '$ARG' needs a value:"; echo " $ARG=(libadwaita|gtk4|gtk3|gtk2|gtk2legacy|qt5|qt4|cocoa|motif)"; abort_configure ;;
+ "--toolkit") echo "option '$ARG' needs a value:"; echo " $ARG=(libadwaita|gtk4|gtk3|qt5|qt4|cocoa|motif)"; abort_configure ;;
"-"*) echo "unknown option: $ARG"; abort_configure ;;
esac
done
+# toolchain detection utilities
+. make/toolchain.sh
+
+# check languages
+lang_c=
+lang_cpp=
+if detect_cpp_compiler ; then
+ lang_cpp=1
+fi
+if detect_c_compiler ; then
+ lang_c=1
+fi
+
# set defaults for dir variables
@@ -194,67 +155,76 @@ done
: ${libexecdir:='${exec_prefix}/libexec'}
: ${datarootdir:='${prefix}/share'}
: ${datadir:='${datarootdir}'}
-: ${sysconfdir:='${prefix}/etc'}
: ${sharedstatedir:='${prefix}/com'}
-: ${localstatedir:='${prefix}/var'}
-: ${runstatedir:='${localstatedir}/run'}
+if [ -z "$sysconfdir" ]; then
+ if [ "$prefix" = '/usr' ]; then
+ sysconfdir='/etc'
+ else
+ sysconfdir='${prefix}/etc'
+ fi
+fi
+if [ -z "$localstatedir" ]; then
+ if [ "$prefix" = '/usr' ]; then
+ localstatedir='/var'
+ else
+ localstatedir='${prefix}/var'
+ fi
+fi
+if [ -z "$runstatedir" ]; then
+ if [ "$prefix" = '/usr' ]; then
+ runstatedir='/var/run'
+ else
+ runstatedir='${prefix}/var'
+ fi
+fi
: ${includedir:='${prefix}/include'}
: ${infodir:='${datarootdir}/info'}
: ${mandir:='${datarootdir}/man'}
: ${localedir:='${datarootdir}/locale'}
-# remember the above values and compare them later
-orig_bindir="$bindir"
-orig_sbindir="$sbindir"
-orig_libdir="$libdir"
-orig_libexecdir="$libexecdir"
-orig_datarootdir="$datarootdir"
-orig_datadir="$datadir"
-orig_sysconfdir="$sysconfdir"
-orig_sharedstatedir="$sharedstatedir"
-orig_localstatedir="$localstatedir"
-orig_runstatedir="$runstatedir"
-orig_includedir="$includedir"
-orig_infodir="$infodir"
-orig_mandir="$mandir"
-orig_localedir="$localedir"
# check if a config.site exists and load it
+CONFIG_SITE_OK=0
if [ -n "$CONFIG_SITE" ]; then
# CONFIG_SITE may contain space separated file names
for cs in $CONFIG_SITE; do
printf "loading defaults from $cs... "
- . "$cs"
- echo ok
+ if [ -f "$cs" ]; then
+ . "$cs"
+ echo ok
+ CONFIG_SITE_OK=1
+ break
+ else
+ echo "not found"
+ fi
done
elif [ -f "$prefix/share/config.site" ]; then
printf "loading site defaults... "
. "$prefix/share/config.site"
echo ok
+ CONFIG_SITE_OK=1
elif [ -f "$prefix/etc/config.site" ]; then
printf "loading site defaults... "
. "$prefix/etc/config.site"
echo ok
-else
+ CONFIG_SITE_OK=1
+fi
+
+if [ $CONFIG_SITE_OK -eq 0 ]; then
# try to detect the correct libdir on our own, except it was changed by the user
- if test "$libdir" = '${exec_prefix}/lib'; then
- if [ "$OS" = "SunOS" ]; then
- test -d "${exec_prefix}/lib/amd64" && libdir='${exec_prefix}/lib/amd64'
- else
- # check if the standard libdir even exists
- if test -d "${exec_prefix}/lib" ; then
- :
+ if [ "$libdir" = '${exec_prefix}/lib' ] ; then
+ if [ "$TOOLCHAIN_WSIZE" = "64" ] ; then
+ if [ "$OS" = "SunOS" ]; then
+ [ -d "${exec_prefix}/lib/64" ] && libdir='${exec_prefix}/lib/64'
else
- # if it does not, maybe a lib32 exists
- test -d "${exec_prefix}/lib32" && libdir='${exec_prefix}/lib32'
+ [ -d "${exec_prefix}/lib64" ] && libdir='${exec_prefix}/lib64'
+ fi
+ elif [ "$TOOLCHAIN_WSIZE" = "32" ] ; then
+ if [ "$OS" = "SunOS" ]; then
+ [ -d "${exec_prefix}/lib/32" ] && libdir='${exec_prefix}/lib/32'
+ else
+ [ -d "${exec_prefix}/lib32" ] && libdir='${exec_prefix}/lib32'
fi
- # now check if there is a special 64bit libdir that we should use
- for i in x86_64 ppc64 s390x aarch64 aarch64_be arm64 ; do
- if [ $ARCH = $i ]; then
- test -d "${exec_prefix}/lib64" && libdir='${exec_prefix}/lib64'
- break
- fi
- done
fi
fi
fi
@@ -262,40 +232,14 @@ fi
# generate vars.mk
cat > "$TEMP_DIR/vars.mk" << __EOF__
-prefix=$prefix
-exec_prefix=$exec_prefix
-bindir=$bindir
-sbindir=$sbindir
-libdir=$libdir
-libexecdir=$libexecdir
-datarootdir=$datarootdir
-datadir=$datadir
-sysconfdir=$sysconfdir
-sharedstatedir=$sharedstatedir
-localstatedir=$localstatedir
-runstatedir=$runstatedir
-includedir=$includedir
-infodir=$infodir
-mandir=$mandir
-localedir=$localedir
__EOF__
-# toolchain detection utilities
-. make/toolchain.sh
#
# DEPENDENCIES
#
-# check languages
-lang_c=
-lang_cpp=
-if detect_cpp_compiler ; then
- lang_cpp=1
-fi
-if detect_c_compiler ; then
- lang_c=1
-fi
+
# create buffer for make variables required by dependencies
echo > "$TEMP_DIR/make.mk"
@@ -359,7 +303,7 @@ dependency_error_qt5()
if [ -z "$PKG_CONFIG" ]; then
break
fi
- if which qmake-qt5 > /dev/null ; then
+ if which qmake-qt5 > /dev/null 2>&1 ; then
:
else
break
@@ -394,7 +338,7 @@ dependency_error_gtk2()
if [ -z "$PKG_CONFIG" ]; then
break
fi
- if pkg-config --atleast-version=2.20 gtk+-2.0 > /dev/null ; then
+ if pkg-config --atleast-version=2.20 gtk+-2.0 > /dev/null 2>&1 ; then
:
else
break
@@ -677,6 +621,30 @@ dependency_error_winui()
dep_checked_winui=1
return 0
}
+dependency_error_libmpv()
+{
+ print_check_msg "$dep_checked_libmpv" "checking for libmpv... "
+ # dependency libmpv
+ while true
+ do
+ if [ -z "$PKG_CONFIG" ]; then
+ break
+ fi
+ if test_pkg_config "mpv" "" "" "" ; then
+ TEMP_CFLAGS="$TEMP_CFLAGS `"$PKG_CONFIG" --cflags mpv`"
+ TEMP_LDFLAGS="$TEMP_LDFLAGS `"$PKG_CONFIG" --libs mpv`"
+ else
+ break
+ fi
+ print_check_msg "$dep_checked_libmpv" "yes\n"
+ dep_checked_libmpv=1
+ return 1
+ done
+
+ print_check_msg "$dep_checked_libmpv" "no\n"
+ dep_checked_libmpv=1
+ return 0
+}
# start collecting dependency information
echo > "$TEMP_DIR/flags.mk"
@@ -836,6 +804,9 @@ checkopt_toolkit_libadwaita()
if dependency_error_webkitgtk6 ; then
VERR=1
fi
+ if dependency_error_libmpv ; then
+ VERR=1
+ fi
if [ $VERR -ne 0 ]; then
return 1
fi
@@ -854,6 +825,9 @@ checkopt_toolkit_gtk4()
if dependency_error_webkitgtk6 ; then
VERR=1
fi
+ if dependency_error_libmpv ; then
+ VERR=1
+ fi
if [ $VERR -ne 0 ]; then
return 1
fi
@@ -872,19 +846,7 @@ checkopt_toolkit_gtk3()
if dependency_error_webkit2gtk4 ; then
VERR=1
fi
- if [ $VERR -ne 0 ]; then
- return 1
- fi
- cat >> "$TEMP_DIR/make.mk" << __EOF__
-TOOLKIT = gtk
-GTKOBJ = draw_cairo.o
-__EOF__
- return 0
-}
-checkopt_toolkit_gtk2()
-{
- VERR=0
- if dependency_error_gtk2 ; then
+ if dependency_error_libmpv ; then
VERR=1
fi
if [ $VERR -ne 0 ]; then
@@ -896,27 +858,15 @@ GTKOBJ = draw_cairo.o
__EOF__
return 0
}
-checkopt_toolkit_gtk2legacy()
-{
- VERR=0
- if dependency_error_gtk2legacy ; then
- VERR=1
- fi
- if [ $VERR -ne 0 ]; then
- return 1
- fi
- cat >> "$TEMP_DIR/make.mk" << __EOF__
-TOOLKIT = gtk
-GTKOBJ = draw_gdk.o
-__EOF__
- return 0
-}
checkopt_toolkit_qt5()
{
VERR=0
if dependency_error_qt5 ; then
VERR=1
fi
+ if dependency_error_libmpv ; then
+ VERR=1
+ fi
if [ $VERR -ne 0 ]; then
return 1
fi
@@ -932,6 +882,9 @@ checkopt_toolkit_qt4()
if dependency_error_qt4 ; then
VERR=1
fi
+ if dependency_error_libmpv ; then
+ VERR=1
+ fi
if [ $VERR -ne 0 ]; then
return 1
fi
@@ -947,6 +900,9 @@ checkopt_toolkit_cocoa()
if dependency_error_cocoa ; then
VERR=1
fi
+ if dependency_error_libmpv ; then
+ VERR=1
+ fi
if [ $VERR -ne 0 ]; then
return 1
fi
@@ -1067,22 +1023,6 @@ else
ERROR=1
DEPENDENCIES_FAILED="option 'toolkit' $DEPENDENCIES_FAILED"
fi
- elif [ "$OPT_TOOLKIT" = "gtk2" ]; then
- echo " toolkit: $OPT_TOOLKIT" >> $TEMP_DIR/options
- if checkopt_toolkit_gtk2 ; then
- :
- else
- ERROR=1
- DEPENDENCIES_FAILED="option 'toolkit' $DEPENDENCIES_FAILED"
- fi
- elif [ "$OPT_TOOLKIT" = "gtk2legacy" ]; then
- echo " toolkit: $OPT_TOOLKIT" >> $TEMP_DIR/options
- if checkopt_toolkit_gtk2legacy ; then
- :
- else
- ERROR=1
- DEPENDENCIES_FAILED="option 'toolkit' $DEPENDENCIES_FAILED"
- fi
elif [ "$OPT_TOOLKIT" = "qt5" ]; then
echo " toolkit: $OPT_TOOLKIT" >> $TEMP_DIR/options
if checkopt_toolkit_qt5 ; then
@@ -1118,7 +1058,7 @@ else
else
echo
echo "Invalid option value - usage:"
- echo " --toolkit=(libadwaita|gtk4|gtk3|gtk2|gtk2legacy|qt5|qt4|cocoa|motif)"
+ echo " --toolkit=(libadwaita|gtk4|gtk3|qt5|qt4|cocoa|motif)"
abort_configure
fi
fi
@@ -1144,7 +1084,7 @@ fi
echo "configure finished"
echo
-echo "Toolchain"
+echo "Toolchain:"
echo " name: $TOOLCHAIN_NAME"
if [ -n "$TOOLCHAIN_CC" ]; then
echo " cc: $TOOLCHAIN_CC"
@@ -1159,51 +1099,7 @@ if [ -n "$TOOLCHAIN_CSTD" ]; then
echo " default C std: $TOOLCHAIN_CSTD"
fi
echo
-echo "Build Config:"
-echo " prefix: $prefix"
-echo " exec_prefix: $exec_prefix"
-if [ "$orig_bindir" != "$bindir" ]; then
- echo " bindir: $bindir"
-fi
-if [ "$orig_sbindir" != "$sbindir" ]; then
- echo " sbindir: $sbindir"
-fi
-if [ "$orig_libdir" != "$libdir" ]; then
- echo " libdir: $libdir"
-fi
-if [ "$orig_libexecdir" != "$libexecdir" ]; then
- echo " libexecdir: $libexecdir"
-fi
-if [ "$orig_datarootdir" != "$datarootdir" ]; then
- echo " datarootdir: $datarootdir"
-fi
-if [ "$orig_datadir" != "$datadir" ]; then
- echo " datadir: $datadir"
-fi
-if [ "$orig_sysconfdir" != "$sysconfdir" ]; then
- echo " sysconfdir: $sysconfdir"
-fi
-if [ "$orig_sharedstatedir" != "$sharedstatedir" ]; then
- echo " sharedstatedir: $sharedstatedir"
-fi
-if [ "$orig_localstatedir" != "$localstatedir" ]; then
- echo " localstatedir: $localstatedir"
-fi
-if [ "$orig_runstatedir" != "$runstatedir" ]; then
- echo " runstatedir: $runstatedir"
-fi
-if [ "$orig_includedir" != "$includedir" ]; then
- echo " includedir: $includedir"
-fi
-if [ "$orig_infodir" != "$infodir" ]; then
- echo " infodir: $infodir"
-fi
-if [ "$orig_mandir" != "$mandir" ]; then
- echo " mandir: $mandir"
-fi
-if [ "$orig_localedir" != "$localedir" ]; then
- echo " localedir: $localedir"
-fi
+echo "Config:"
echo
echo "Options:"
cat "$TEMP_DIR/options"
diff --git a/make/configure.vm b/make/configure.vm
index 7be6ed7..35449b2 100644
--- a/make/configure.vm
+++ b/make/configure.vm
@@ -86,27 +86,30 @@ echo "$PLATFORM_NAME"
printhelp()
{
echo "Usage: $0 [OPTIONS]..."
- cat << __EOF__
-Installation directories:
- --prefix=PREFIX path prefix for architecture-independent files
- [${D}prefix]
- --exec-prefix=EPREFIX path prefix for architecture-dependent files
- [PREFIX]
-
- --bindir=DIR user executables [EPREFIX/bin]
- --sbindir=DIR system admin executables [EPREFIX/sbin]
- --libexecdir=DIR program executables [EPREFIX/libexec]
- --sysconfdir=DIR system configuration files [PREFIX/etc]
- --sharedstatedir=DIR modifiable architecture-independent data [PREFIX/com]
- --localstatedir=DIR modifiable single-machine data [PREFIX/var]
- --runstatedir=DIR run-time variable data [LOCALSTATEDIR/run]
- --libdir=DIR object code libraries [EPREFIX/lib]
- --includedir=DIR C header files [PREFIX/include]
- --datarootdir=DIR read-only arch.-independent data root [PREFIX/share]
- --datadir=DIR read-only architecture-independent data [DATAROOTDIR]
- --infodir=DIR info documentation [DATAROOTDIR/info]
- --mandir=DIR man documentation [DATAROOTDIR/man]
- --localedir=DIR locale-dependent data [DATAROOTDIR/locale]
+ echo 'Configuration:'
+#foreach( $cfg in $config )
+if true \
+#if( $cfg.platform )
+ && isplatform "${cfg.platform}" \
+#end
+#foreach( $np in $cfg.notList )
+ && notisplatform "${np}" \
+#end
+ ; then
+ :
+ #foreach( $var in $cfg.vars )
+ #if( $var.overridable )
+ if test -z "${D}${var.varName}__described__"; then
+ ${var.varName}__described__=1
+ cat << '__EOF__'
+${var.helpText}
+__EOF__
+ fi
+ #end
+ #end
+fi
+#end
+ cat << '__EOF__'
Build Types:
--debug add extra compile flags for debug builds
@@ -115,7 +118,7 @@ Build Types:
Options:
#foreach( $opt in $options )
- --${opt.argument}=${opt.valuesString}
+${opt.helpText}
#end
#end
#if( $features.size() > 0 )
@@ -127,6 +130,7 @@ ${feature.helpText}
#end
__EOF__
+ abort_configure
}
# create temporary directory
@@ -142,26 +146,7 @@ fi
touch "$TEMP_DIR/options"
touch "$TEMP_DIR/features"
-# define standard variables
-# also define standard prefix (this is where we will search for config.site)
-prefix=/usr
-exec_prefix=
-bindir=
-sbindir=
-libdir=
-libexecdir=
-datarootdir=
-datadir=
-sysconfdir=
-sharedstatedir=
-localstatedir=
-runstatedir=
-includedir=
-infodir=
-localedir=
-mandir=
-
-# custom variables
+# config variables
#foreach( $cfg in $config )
if true \
#if( $cfg.platform )
@@ -171,12 +156,16 @@ if true \
&& notisplatform "${np}" \
#end
; then
+ :
#foreach( $var in $cfg.vars )
- #if( $var.exec )
- ${var.varName}=`${var.value}`
- #else
- ${var.varName}="${var.value}"
- #end
+ if test -z "${D}${var.varName}__initialized__"; then
+ ${var.varName}__initialized__=1
+ #if( $var.exec )
+ ${var.varName}=`${var.value}`
+ #else
+ ${var.varName}='${var.value}'
+ #end
+ fi
#end
fi
#end
@@ -195,27 +184,17 @@ BUILD_TYPE="default"
for ARG in "$@"
do
case "$ARG" in
- "--prefix="*) prefix=${D}{ARG#--prefix=} ;;
- "--exec-prefix="*) exec_prefix=${D}{ARG#--exec-prefix=} ;;
- "--bindir="*) bindir=${D}{ARG#----bindir=} ;;
- "--sbindir="*) sbindir=${D}{ARG#--sbindir=} ;;
- "--libdir="*) libdir=${D}{ARG#--libdir=} ;;
- "--libexecdir="*) libexecdir=${D}{ARG#--libexecdir=} ;;
- "--datarootdir="*) datarootdir=${D}{ARG#--datarootdir=} ;;
- "--datadir="*) datadir=${D}{ARG#--datadir=} ;;
- "--sysconfdir="*) sysconfdir=${D}{ARG#--sysconfdir=} ;;
- "--sharedstatedir="*) sharedstatedir=${D}{ARG#--sharedstatedir=} ;;
- "--localstatedir="*) localstatedir=${D}{ARG#--localstatedir=} ;;
- "--includedir="*) includedir=${D}{ARG#--includedir=} ;;
- "--infodir="*) infodir=${D}{ARG#--infodir=} ;;
- "--mandir"*) mandir=${D}{ARG#--mandir} ;;
- "--localedir"*) localedir=${D}{ARG#--localedir} ;;
- "--help"*) printhelp; abort_configure ;;
- "--debug") BUILD_TYPE="debug" ;;
- "--release") BUILD_TYPE="release" ;;
+ #foreach( $var in $vars )
+ #if ($var.overridable)
+ "--${var.arg}="*) ${var.varName}=${D}{ARG#--${var.arg}=} ;;
+ #end
+ #end
+ "--help"*) printhelp ;;
+ "--debug") BUILD_TYPE="debug" ;;
+ "--release") BUILD_TYPE="release" ;;
#foreach( $opt in $options )
- "--${opt.argument}="*) ${opt.varName}=${D}{ARG#--${opt.argument}=} ;;
- "--${opt.argument}") echo "option '$ARG' needs a value:"; echo " $ARG=${opt.valuesString}"; abort_configure ;;
+ "--${opt.arg}="*) ${opt.varName}=${D}{ARG#--${opt.arg}=} ;;
+ "--${opt.arg}") echo "option '$ARG' needs a value:"; echo " $ARG=${opt.valuesString}"; abort_configure ;;
#end
#foreach( $feature in $features )
"--enable-${feature.arg}") ${feature.varName}=on ;;
@@ -225,6 +204,18 @@ do
esac
done
+# toolchain detection utilities
+. make/toolchain.sh
+
+# check languages
+lang_c=
+lang_cpp=
+#foreach( $lang in $languages )
+if detect_${lang}_compiler ; then
+ lang_${lang}=1
+fi
+#end
+
## Begin unparsed content. **
#[[
@@ -236,67 +227,76 @@ done
: ${libexecdir:='${exec_prefix}/libexec'}
: ${datarootdir:='${prefix}/share'}
: ${datadir:='${datarootdir}'}
-: ${sysconfdir:='${prefix}/etc'}
: ${sharedstatedir:='${prefix}/com'}
-: ${localstatedir:='${prefix}/var'}
-: ${runstatedir:='${localstatedir}/run'}
+if [ -z "$sysconfdir" ]; then
+ if [ "$prefix" = '/usr' ]; then
+ sysconfdir='/etc'
+ else
+ sysconfdir='${prefix}/etc'
+ fi
+fi
+if [ -z "$localstatedir" ]; then
+ if [ "$prefix" = '/usr' ]; then
+ localstatedir='/var'
+ else
+ localstatedir='${prefix}/var'
+ fi
+fi
+if [ -z "$runstatedir" ]; then
+ if [ "$prefix" = '/usr' ]; then
+ runstatedir='/var/run'
+ else
+ runstatedir='${prefix}/var'
+ fi
+fi
: ${includedir:='${prefix}/include'}
: ${infodir:='${datarootdir}/info'}
: ${mandir:='${datarootdir}/man'}
: ${localedir:='${datarootdir}/locale'}
-# remember the above values and compare them later
-orig_bindir="$bindir"
-orig_sbindir="$sbindir"
-orig_libdir="$libdir"
-orig_libexecdir="$libexecdir"
-orig_datarootdir="$datarootdir"
-orig_datadir="$datadir"
-orig_sysconfdir="$sysconfdir"
-orig_sharedstatedir="$sharedstatedir"
-orig_localstatedir="$localstatedir"
-orig_runstatedir="$runstatedir"
-orig_includedir="$includedir"
-orig_infodir="$infodir"
-orig_mandir="$mandir"
-orig_localedir="$localedir"
# check if a config.site exists and load it
+CONFIG_SITE_OK=0
if [ -n "$CONFIG_SITE" ]; then
# CONFIG_SITE may contain space separated file names
for cs in $CONFIG_SITE; do
printf "loading defaults from $cs... "
- . "$cs"
- echo ok
+ if [ -f "$cs" ]; then
+ . "$cs"
+ echo ok
+ CONFIG_SITE_OK=1
+ break
+ else
+ echo "not found"
+ fi
done
elif [ -f "$prefix/share/config.site" ]; then
printf "loading site defaults... "
. "$prefix/share/config.site"
echo ok
+ CONFIG_SITE_OK=1
elif [ -f "$prefix/etc/config.site" ]; then
printf "loading site defaults... "
. "$prefix/etc/config.site"
echo ok
-else
+ CONFIG_SITE_OK=1
+fi
+
+if [ $CONFIG_SITE_OK -eq 0 ]; then
# try to detect the correct libdir on our own, except it was changed by the user
- if test "$libdir" = '${exec_prefix}/lib'; then
- if [ "$OS" = "SunOS" ]; then
- test -d "${exec_prefix}/lib/amd64" && libdir='${exec_prefix}/lib/amd64'
- else
- # check if the standard libdir even exists
- if test -d "${exec_prefix}/lib" ; then
- :
+ if [ "$libdir" = '${exec_prefix}/lib' ] ; then
+ if [ "$TOOLCHAIN_WSIZE" = "64" ] ; then
+ if [ "$OS" = "SunOS" ]; then
+ [ -d "${exec_prefix}/lib/64" ] && libdir='${exec_prefix}/lib/64'
else
- # if it does not, maybe a lib32 exists
- test -d "${exec_prefix}/lib32" && libdir='${exec_prefix}/lib32'
+ [ -d "${exec_prefix}/lib64" ] && libdir='${exec_prefix}/lib64'
+ fi
+ elif [ "$TOOLCHAIN_WSIZE" = "32" ] ; then
+ if [ "$OS" = "SunOS" ]; then
+ [ -d "${exec_prefix}/lib/32" ] && libdir='${exec_prefix}/lib/32'
+ else
+ [ -d "${exec_prefix}/lib32" ] && libdir='${exec_prefix}/lib32'
fi
- # now check if there is a special 64bit libdir that we should use
- for i in x86_64 ppc64 s390x aarch64 aarch64_be arm64 ; do
- if [ $ARCH = $i ]; then
- test -d "${exec_prefix}/lib64" && libdir='${exec_prefix}/lib64'
- break
- fi
- done
fi
fi
fi
@@ -305,42 +305,17 @@ fi
# generate vars.mk
cat > "$TEMP_DIR/vars.mk" << __EOF__
-prefix=$prefix
-exec_prefix=$exec_prefix
-bindir=$bindir
-sbindir=$sbindir
-libdir=$libdir
-libexecdir=$libexecdir
-datarootdir=$datarootdir
-datadir=$datadir
-sysconfdir=$sysconfdir
-sharedstatedir=$sharedstatedir
-localstatedir=$localstatedir
-runstatedir=$runstatedir
-includedir=$includedir
-infodir=$infodir
-mandir=$mandir
-localedir=$localedir
#foreach( $var in $vars )
${var.varName}=${D}${var.varName}
#end
__EOF__
-# toolchain detection utilities
-. make/toolchain.sh
#
# DEPENDENCIES
#
-# check languages
-lang_c=
-lang_cpp=
-#foreach( $lang in $languages )
-if detect_${lang}_compiler ; then
- lang_${lang}=1
-fi
-#end
+
# create buffer for make variables required by dependencies
echo > "$TEMP_DIR/make.mk"
@@ -400,7 +375,7 @@ dependency_error_${dependency.id}()
fi
#end
#foreach( $test in $sub.tests )
- if $test > /dev/null ; then
+ if $test > /dev/null 2>&1 ; then
:
else
break
@@ -502,7 +477,6 @@ do
#foreach( $flags in $dependency.flags )
#if( $flags.exec )
- $flags.value > /dev/null
if tmp_flags=`$flags.value` ; then
TEMP_$flags.varName="$TEMP_$flags.varName $tmp_flags"
else
@@ -652,9 +626,9 @@ fi
#end
#foreach( $opt in $target.options )
-# Option: --${opt.argument}
+# Option: --${opt.arg}
if [ -z "${D}${opt.varName}" ]; then
- echo "auto-detecting option '${opt.argument}'"
+ echo "auto-detecting option '${opt.arg}'"
SAVED_ERROR="$ERROR"
SAVED_DEPENDENCIES_FAILED="$DEPENDENCIES_FAILED"
ERROR=1
@@ -665,7 +639,7 @@ if [ -z "${D}${opt.varName}" ]; then
if isplatform "$optdef.platform"; then
#end
if $optdef.func ; then
- echo " ${opt.argument}: ${optdef.valueName}" >> "$TEMP_DIR/options"
+ echo " ${opt.arg}: ${optdef.valueName}" >> "$TEMP_DIR/options"
ERROR=0
break
fi
@@ -677,28 +651,28 @@ if [ -z "${D}${opt.varName}" ]; then
done
if [ $ERROR -ne 0 ]; then
SAVED_ERROR=1
- SAVED_DEPENDENCIES_FAILED="option '${opt.argument}' $SAVED_DEPENDENCIES_FAILED"
+ SAVED_DEPENDENCIES_FAILED="option '${opt.arg}' $SAVED_DEPENDENCIES_FAILED"
fi
ERROR="$SAVED_ERROR"
DEPENDENCIES_FAILED="$SAVED_DEPENDENCIES_FAILED"
else
- echo "checking option ${opt.argument} = ${D}${opt.varName}"
+ echo "checking option ${opt.arg} = ${D}${opt.varName}"
if false; then
false
#foreach( $optval in $opt.values )
elif [ "${D}${opt.varName}" = "${optval.value}" ]; then
- echo " ${opt.argument}: ${D}${opt.varName}" >> $TEMP_DIR/options
+ echo " ${opt.arg}: ${D}${opt.varName}" >> $TEMP_DIR/options
if $optval.func ; then
:
else
ERROR=1
- DEPENDENCIES_FAILED="option '${opt.argument}' $DEPENDENCIES_FAILED"
+ DEPENDENCIES_FAILED="option '${opt.arg}' $DEPENDENCIES_FAILED"
fi
#end
else
echo
echo "Invalid option value - usage:"
- echo " --${opt.argument}=${opt.valuesString}"
+ echo " --${opt.arg}=${opt.valuesString}"
abort_configure
fi
fi
@@ -726,7 +700,7 @@ fi
echo "configure finished"
echo
-echo "Toolchain"
+echo "Toolchain:"
echo " name: $TOOLCHAIN_NAME"
if [ -n "$TOOLCHAIN_CC" ]; then
echo " cc: $TOOLCHAIN_CC"
@@ -741,51 +715,13 @@ if [ -n "$TOOLCHAIN_CSTD" ]; then
echo " default C std: $TOOLCHAIN_CSTD"
fi
echo
-echo "Build Config:"
-echo " prefix: $prefix"
-echo " exec_prefix: $exec_prefix"
-if [ "$orig_bindir" != "$bindir" ]; then
- echo " bindir: $bindir"
-fi
-if [ "$orig_sbindir" != "$sbindir" ]; then
- echo " sbindir: $sbindir"
-fi
-if [ "$orig_libdir" != "$libdir" ]; then
- echo " libdir: $libdir"
-fi
-if [ "$orig_libexecdir" != "$libexecdir" ]; then
- echo " libexecdir: $libexecdir"
-fi
-if [ "$orig_datarootdir" != "$datarootdir" ]; then
- echo " datarootdir: $datarootdir"
-fi
-if [ "$orig_datadir" != "$datadir" ]; then
- echo " datadir: $datadir"
-fi
-if [ "$orig_sysconfdir" != "$sysconfdir" ]; then
- echo " sysconfdir: $sysconfdir"
-fi
-if [ "$orig_sharedstatedir" != "$sharedstatedir" ]; then
- echo " sharedstatedir: $sharedstatedir"
-fi
-if [ "$orig_localstatedir" != "$localstatedir" ]; then
- echo " localstatedir: $localstatedir"
-fi
-if [ "$orig_runstatedir" != "$runstatedir" ]; then
- echo " runstatedir: $runstatedir"
-fi
-if [ "$orig_includedir" != "$includedir" ]; then
- echo " includedir: $includedir"
-fi
-if [ "$orig_infodir" != "$infodir" ]; then
- echo " infodir: $infodir"
-fi
-if [ "$orig_mandir" != "$mandir" ]; then
- echo " mandir: $mandir"
-fi
-if [ "$orig_localedir" != "$localedir" ]; then
- echo " localedir: $localedir"
-fi
+echo "Config:"
+#foreach( $var in $vars )
+#if ($var.overridable)
+ printf ' %-16s' '${var.arg}:'
+ echo "${D}${var.varName}"
+#end
+#end
#if ( $options.size() > 0 )
echo
echo "Options:"
@@ -795,10 +731,11 @@ cat "$TEMP_DIR/options"
echo
echo "Features:"
#foreach( $feature in $features )
+printf ' %-16s' '$feature.name:'
if [ -n "${D}${feature.varName}" ]; then
-echo " $feature.name: on"
+ echo 'on'
else
-echo " $feature.name: off"
+ echo 'off'
fi
#end
#end
diff --git a/make/project.xml b/make/project.xml
index 13abef6..56d45c8 100644
--- a/make/project.xml
+++ b/make/project.xml
@@ -1,5 +1,5 @@
-
+cLD = \$(CC)
@@ -124,45 +124,39 @@
-L/usr/local/lib
+
+ mpv
+
+
+
+
@@ -228,7 +275,9 @@
Declares a configuration option.
The option argument name is specified with the arg attribute.
- Then, the children of this element specify possible values by defining the conditions
+ Optionally, a description for the help text of the resulting configure script can be specified by
+ a desc element.
+ Then, the next children of this element specify possible values by defining the conditions
(in terms of dependencies) and effects (in terms of defines and make variables) of each value.
Finally, a set of defaults is specified which supposed to automagically select the most
appropriate value for a specific platform under the available dependencies (in case the option is not
@@ -236,6 +285,7 @@
+