--- qsampler/trunk/configure.ac 2016/11/12 16:10:27 3044 +++ qsampler/trunk/configure.ac 2018/01/10 21:27:30 3407 @@ -1,23 +1,21 @@ # Process this file with autoconf to produce a configure script. -AC_INIT(Qsampler, 0.4.2, rncbc@rncbc.org, qsampler) +AC_INIT(Qsampler, 0.5.1, rncbc@rncbc.org, qsampler) AC_CONFIG_SRCDIR(src/qsampler.cpp) AC_CONFIG_HEADERS(src/config.h) -AC_CONFIG_FILES(Makefile qsampler.spec src/src.pri src/qsampler.desktop) - -# Build date and time. -AC_CACHE_VAL([ac_cv_build_date], - [ac_cv_build_date=$(date +"%b %d %Y %H:%M %z")]) -ac_build_date="$ac_cv_build_date" -AC_DEFINE_UNQUOTED(CONFIG_BUILD_DATE, ["$ac_build_date"], [Build date and time.]) +AC_CONFIG_FILES(Makefile qsampler.spec src/src.pri) # Build version string. AC_CACHE_VAL([ac_cv_build_version], [ - ac_cv_build_version=$(git describe --tags --abbrev=6 2>/dev/null) + ac_cv_build_version=$(git describe --tags --dirty --abbrev=6 2>/dev/null) if test -n "$ac_cv_build_version"; then - ac_cv_build_version=$(echo $ac_cv_build_version | sed -r 's/^[[^_]]+_//') - ac_cv_build_version=$(echo $ac_cv_build_version | sed -r 's/-g/git./') - ac_cv_build_version=$(echo $ac_cv_build_version | sed -r 's/[[_|-]]+/./g') + ac_cv_build_version=$(echo $ac_cv_build_version | sed 's/^[[^_]]*[[_v]]//i') + ac_cv_build_version=$(echo $ac_cv_build_version | sed 's/-g/git./') + ac_cv_build_version=$(echo $ac_cv_build_version | sed 's/[[_|-]]\+/./g') + ac_cv_build_version_extra=$(git rev-parse --abbrev-ref HEAD 2>/dev/null) + if test "x$ac_cv_build_version_extra" != "xmaster"; then + ac_cv_build_version="$ac_cv_build_version [[$ac_cv_build_version_extra]]" + fi else ac_cv_build_version=$PACKAGE_VERSION fi @@ -27,7 +25,7 @@ # Sanitized version string. AC_CACHE_VAL([ac_cv_version], [ - ac_cv_version=$(echo $ac_cv_build_version | sed -r 's/^([[0-9|\.]]+).*$/\1/') + ac_cv_version=$(echo $PACKAGE_VERSION | sed -r 's/^([[0-9|\.]]+).*$/\1/') ]) ac_version="$ac_cv_version" AC_DEFINE_UNQUOTED(CONFIG_VERSION, ["$ac_version"], [Version string.]) @@ -66,7 +64,7 @@ # Enable debugging argument option. AC_ARG_ENABLE(debug, - AC_HELP_STRING([--enable-debug], [enable debugging (default=no)]), + AS_HELP_STRING([--enable-debug], [enable debugging (default=no)]), [ac_debug="$enableval"]) if test "x$ac_debug" = "xyes"; then @@ -82,59 +80,68 @@ # Enable Qt4/5 availability. AC_ARG_ENABLE(qt4, - AC_HELP_STRING([--enable-qt4], [enable Qt4 build (default=no)]), + AS_HELP_STRING([--enable-qt4], [enable Qt4 build (default=no)]), [ac_qt4="$enableval"], [ac_qt4="no"]) # Enable libgig availability. AC_ARG_ENABLE(libgig, - AC_HELP_STRING([--enable-libgig], [enable libgig interface (default=yes)]), + AS_HELP_STRING([--enable-libgig], [enable libgig interface (default=yes)]), [ac_libgig="$enableval"], [ac_libgig="yes"]) # Enable X11 unique/single instance. AC_ARG_ENABLE(xunique, - AC_HELP_STRING([--enable-xunique], [enable X11 unique/single instance (default=yes)]), + AS_HELP_STRING([--enable-xunique], [enable X11 unique/single instance (default=yes)]), [ac_xunique="$enableval"], [ac_xunique="yes"]) # Enable debugger stack-trace option (assumes --enable-debug). AC_ARG_ENABLE(stacktrace, - AC_HELP_STRING([--enable-stacktrace], [enable debugger stack-trace (default=no)]), + AS_HELP_STRING([--enable-stacktrace], [enable debugger stack-trace (default=no)]), [ac_stacktrace="$enableval"]) # Standard installation base dirs. +ac_path=$PATH ac_with_paths="" # Set for alternate Qt4/5 installation dir. +AC_ARG_WITH(qt, + AS_HELP_STRING([--with-qt=PATH], [use alternate Qt install path]), + [ac_qt_path="$withval"], [ac_qt_path="no"]) + AC_ARG_WITH(qt4, - AC_HELP_STRING([--with-qt4=PATH], [use alternate Qt4 install path]), + AS_HELP_STRING([--with-qt4=PATH], [use alternate Qt4 install path]), [ac_qt4_path="$withval"], [ac_qt4_path="no"]) AC_ARG_WITH(qt5, - AC_HELP_STRING([--with-qt5=PATH], [use alternate Qt5 install path]), + AS_HELP_STRING([--with-qt5=PATH], [use alternate Qt5 install path]), [ac_qt5_path="$withval"], [ac_qt5_path="no"]) +if test "x$ac_qt_path" != "xno"; then + ac_path="$ac_qt_path/bin:$ac_path" +fi + if test "x$ac_qt4_path" != "xno"; then - ac_with_paths="$ac_with_paths $ac_qt4_path" + ac_path="$ac_qt4_path/bin:$ac_path" ac_qt4="yes" fi if test "x$ac_qt5_path" != "xno"; then - ac_with_paths="$ac_with_paths $ac_qt5_path" + ac_path="$ac_qt5_path/bin:$ac_path" ac_qt4="no" fi # Set for alternate liblscp installation dir. AC_ARG_WITH(liblscp, - AC_HELP_STRING([--with-liblscp=PATH], [use alternate liblscp install path]), + AS_HELP_STRING([--with-liblscp=PATH], [use alternate liblscp install path]), [ac_with_paths="$ac_with_paths $withval"]) # Set for alternate libgig installation dir. AC_ARG_WITH(libgig, - AC_HELP_STRING([--with-libgig=PATH], [use alternate libgig install path]), + AS_HELP_STRING([--with-libgig=PATH], [use alternate libgig install path]), [ac_with_paths="$ac_with_paths $withval"]) @@ -163,7 +170,7 @@ ac_gxx_version_major=$(($ac_cv_gxx_version_major + 0)) ]) ac_gxx_version_major=$ac_cv_gxx_version_major -if test $ac_gxx_version_major -gt 4 -a $ac_gxx_version_major -lt 6; then +if test $ac_gxx_version_major -ge 4 -a $ac_gxx_version_major -lt 6; then CXXFLAGS="-std=c++11 $CXXFLAGS" fi @@ -181,39 +188,37 @@ CPPFLAGS="-fPIC $CPPFLAGS" # Prepend alternate dependencies paths. -ac_path=$PATH - for X in $ac_with_paths; do if test -d $X/bin; then - ac_path="$X/bin:$ac_path" + ac_path="$X/bin:$ac_path" fi if test -d $X/include; then - CFLAGS="-I$X/include $CFLAGS " - CPPFLAGS="-I$X/include $CPPFLAGS" - ac_incpath="$X/include $ac_incpath" + CFLAGS="-I$X/include $CFLAGS " + CPPFLAGS="-I$X/include $CPPFLAGS" + ac_incpath="$X/include $ac_incpath" fi for Y in $ac_libdirs; do - if test -d $X/$Y; then - LIBS="-L$X/$Y $LIBS" - ac_libs="-L$X/$Y $ac_libs" - fi + if test -d $X/$Y; then + LIBS="-L$X/$Y $LIBS" + ac_libs="-L$X/$Y $ac_libs" + fi done done # A common error message: ac_errmsg="not found in current PATH. Maybe QT development environment isn't available." -if test "x$ac_qt4" = "xyes"; then - AC_PATH_PROG(ac_qmake, qmake-qt4, [no], $ac_path) -else - AC_PATH_PROG(ac_qmake, qmake-qt5, [no], $ac_path) -fi -if test "x$ac_qmake" = "xno"; then - AC_PATH_PROG(ac_cv_qmake, qmake, [no], $ac_path) - ac_qmake=$ac_cv_qmake -fi +# Check for proper qmake path/version alternatives. +AC_PATH_TOOL(ac_qmake, qmake, [no], $ac_path) + if test "x$ac_qmake" = "xno"; then - AC_MSG_ERROR([qmake $ac_errmsg]) + if test "x$ac_qt4" = "xyes"; then + AC_PATH_TOOL(ac_cv_qmake, qmake-qt4, [no], $ac_path) + ac_qmake=$ac_cv_qmake + else + AC_PATH_TOOL(ac_cv_qmake, qmake-qt5, [no], $ac_path) + ac_qmake=$ac_cv_qmake + fi fi # Check for proper Qt major version. @@ -224,10 +229,20 @@ ac_qt_version_major=$ac_cv_qt_version_major if test "x$ac_qt4" = "xyes"; then if test $ac_qt_version_major -ne 4; then - AC_MSG_ERROR([qmake-qt4 $ac_errmsg (qt4-devel)]) + AC_PATH_TOOL(ac_cv_qmake, qmake-qt4, [no], $ac_path) + ac_qmake=$ac_cv_qmake fi else if test $ac_qt_version_major -ne 5; then + AC_PATH_TOOL(ac_cv_qmake, qmake-qt5, [no], $ac_path) + ac_qmake=$ac_cv_qmake + fi +fi + +if test "x$ac_qmake" = "xno"; then + if test "x$ac_qt4" = "xyes"; then + AC_MSG_ERROR([qmake-qt4 $ac_errmsg (qt4-devel)]) + else AC_MSG_ERROR([qmake-qt5 $ac_errmsg (qt5-devel)]) fi fi @@ -242,7 +257,7 @@ fi # Check it again, now with updated PATH, just in case... -AC_PATH_PROG(ac_cv_qmake, qmake, [no], $ac_path) +AC_PATH_TOOL(ac_cv_qmake, qmake, [no], $ac_path) ac_qmake=$ac_cv_qmake if test "x$ac_qmake" = "xno"; then AC_MSG_ERROR([qmake $ac_errmsg]) @@ -297,28 +312,28 @@ fi # Check for Qt moc utility. -AC_PATH_PROG(ac_moc, moc, [no], $ac_path) +AC_PATH_TOOL(ac_moc, moc, [no], $ac_path) if test "x$ac_moc" = "xno"; then AC_MSG_ERROR([moc $ac_errmsg]) fi AC_SUBST(ac_moc) # Check for Qt uic utility. -AC_PATH_PROG(ac_uic, uic, [no], $ac_path) +AC_PATH_TOOL(ac_uic, uic, [no], $ac_path) if test "x$ac_uic" = "xno"; then AC_MSG_ERROR([uic $ac_errmsg]) fi AC_SUBST(ac_uic) # Check for Qt lupdate utility. -AC_PATH_PROG(ac_lupdate, lupdate, [no], $ac_path) +AC_PATH_TOOL(ac_lupdate, lupdate, [no], $ac_path) if test "x$ac_lupdate" = "xno"; then AC_MSG_ERROR([lupdate $ac_errmsg]) fi AC_SUBST(ac_lupdate) # Check for Qt lrelease utility. -AC_PATH_PROG(ac_lrelease, lrelease, [no], $ac_path) +AC_PATH_TOOL(ac_lrelease, lrelease, [no], $ac_path) if test "x$ac_release" = "xno"; then AC_MSG_ERROR([lrelease $ac_errmsg]) fi @@ -342,6 +357,9 @@ AC_DEFINE(CONFIG_LIBLSCP, 1, [Define if liblscp is available.]) ac_cflags="$ac_cflags $LSCP_CFLAGS" ac_libs="$ac_libs $LSCP_LIBS" + CFLAGS="$CFLAGS $LSCP_CFLAGS" + CPPFLAGS="$CPPFLAGS $LSCP_CFLAGS" + LIBS="$LIBS $LSCP_LIBS" else AC_MSG_ERROR([*** LSCP library not found (liblscp).]) fi @@ -474,6 +492,9 @@ AC_DEFINE(CONFIG_LIBGIG, 1, [Define if libgig is available.]) ac_cflags="$ac_cflags $GIG_CFLAGS" ac_libs="$ac_libs $GIG_LIBS" + CFLAGS="$CFLAGS $GIG_CFLAGS" + CPPFLAGS="$CPPFLAGS $GIG_CFLAGS" + LIBS="$LIBS $GIG_LIBS" AC_DEFINE(CONFIG_LIBGIG_SETAUTOLOAD, 1, [Define if libgig provides gig::File::SetAutoLoad() method.]) ac_libgig_setautoload="yes" else @@ -500,6 +521,9 @@ fi # Check for X11 unique/single instance. +if test "x$ac_xunique" = "xyes" -a "x$ac_qt4" = "xno"; then + PKG_CHECK_MODULES([QT5X11EXTRAS], [Qt5X11Extras], [ac_xunique="yes"], [ac_xunique="no"]) +fi if test "x$ac_xunique" = "xyes"; then AC_DEFINE(CONFIG_XUNIQUE, 1, [Define if X11 unique/single instance is enabled.]) if test "x$ac_qt4" = "xno"; then @@ -537,7 +561,7 @@ # Output summary message echo -echo " $PACKAGE_NAME $ac_build_version ($ac_build_date)" +echo " $PACKAGE_NAME $ac_build_version" echo echo " Build target . . . . . . . . . . . . . . . . . . .: $ac_debug" echo