#!/bin/sh if [ "$help" = "1" ] then cat << EOF Qt options: --qt-libdir - Location of Qt lib directory [/usr/lib/qt4] --qt-includedir - Location of Qt include directory [/usr/include/qt4] --kde-libdir - Location of KDE lib directory [/usr/lib] --kde-includedir - Location of KDE include directory [/usr/include/kde] --exif-libdir - Location of libexif lib directory [/usr/lib] --exif-includedir - Location of libexif include directory [/usr/include/libexif] --without-kde - Don't link to KDE libraries EOF else targetos=$(uname -s) case $targetos in MINGW32*) export LIBSUF=.dll ;; Darwin) export LIBSUF=.dylib ;; Linux|FreeBSD|NetBSD) export LIBSUF=.so ;; *) ;; esac qt_includedir= qt_libdir= if [ "$QTDIR" != "" ] then qt_includedir="$QTDIR/include" qt_libdir="$QTDIR/lib" fi export without_kde= for i in "$@" do case $i in --qt-libdir=* ) qt_libdir="${i#--qt-libdir=}" ;; --qt-includedir=* ) qt_includedir="${i#--qt-includedir=}" ;; --kde-libdir=* ) kde_libdir="${i#--kde-libdir=}" ;; --kde-includedir=* ) kde_includedir="${i#--kde-includedir=}" ;; --exif-libdir=* ) exif_libdir="${i#--exif-libdir=}" ;; --exif-includedir=* ) exif_includedir="${i#--exif-includedir=}" ;; --without-kde ) without_kde="true" ;; esac done echo > config.mak pkg-config --exists 'libexif' if [ $? -eq 0 ] then echo "- Libexif found, enabling auto rotate" echo "USE_EXIF=1" >> config.mak echo EXIFCXXFLAGS=$(pkg-config --cflags libexif ) >> config.mak echo EXIFCXXFLAGS += -DUSE_EXIF >> config.mak echo EXIFLIBS=$(pkg-config --libs libexif) >> config.mak elif [ -d "$exif_libdir" -a -d "$exif_includedir" ] then # test if we have a libexif if [ -f "$exif_libdir/exif-data.h" ] then echo "- Libexif found, enabling auto rotate" echo "USE_EXIF=1" >> config.mak echo EXIFCXXFLAGS=-I$exif_includedir >> config.mak echo EXIFCXXFLAGS += -DUSE_EXIF >> config.mak echo EXIFLIBS=-L$exif_libdir lexif >> config.mak else echo "- Libexif not found, disabling exif features (auto rotate)" fi fi if [ -d "$qt_libdir" -a -d "$qt_includedir" ] then # test if we have a Qt5 or Qt4 if [ -f "$qt_libdir/libQt5Core.so" ] || [ -d "$qt_libdir/QtWidgets.framework" ] || [ -f "$qt_libdir/libQt5Core.a" ] then echo "- Qt version 5.x detected" # TODO re-enable KDE support when KDE Frameworks 5 widely available without_kde=true elif [ -f "$qt_libdir/libQtCore.so" ] || [ -d "$qt_libdir/QtCore.framework" ] || [ -f "$qt_libdir/libQtCore4.a" ] then echo "- Qt version 4.x detected" else echo "- Qt not found: disabling" touch ../disable-qt exit 0 fi echo "- Include directory: " $qt_includedir # Qt5 on Linux, BSD, or Windows if [ -f "$qt_libdir/libQt5Core.so" ] || [ -f "$qt_libdir/libQt5Core.a" ] then echo QTCXXFLAGS=-I$qt_includedir -I$qt_includedir/QtCore -I$qt_includedir/QtGui -I$qt_includedir/QtXml -I$qt_includedir/QtSvg -I$qt_includedir/QtOpenGL -I$qt_includedir/QtWidgets >> config.mak echo QTLIBS=-Wl,-rpath-link,"$qt_libdir" -L"$qt_libdir" -lQt5Core -lQt5Gui -lQt5Xml -lQt5Svg -lQt5OpenGL -lQt5Widgets >> config.mak # Qt5 on OS X elif [ -d "$qt_libdir/QtWidgets.framework" ] then echo QTCXXFLAGS=-I$qt_includedir -I$qt_includedir/QtCore -I$qt_includedir/QtGui -I$qt_includedir/QtXml -I$qt_includedir/QtSvg -I$qt_includedir/QtOpenGL -I$qt_includedir/QtWidgets >> config.mak echo QTLIBS=-F"$qt_libdir" -framework QtCore -framework QtGui -framework QtXml -framework QtSvg -framework QtOpenGL -framework QtWidgets >> config.mak # Qt4 on OS X elif [ -d "$qt_libdir/QtGui.framework" ] then echo QTCXXFLAGS=$(pkg-config --cflags QtCore QtGui QtXml QtSvg QtOpenGL) >> config.mak echo QTLIBS=$(pkg-config --libs QtCore QtGui QtXml QtSvg QtOpenGL) >> config.mak # Qt4 on Windows elif [ -f "$qt_libdir/libQtCore4.a" ] then echo QTCXXFLAGS=-I$qt_includedir -I$qt_includedir/QtCore -I$qt_includedir/QtGui -I$qt_includedir/QtXml -I$qt_includedir/QtSvg -I$qt_includedir/QtOpenGL >> config.mak echo QTLIBS=-Wl,-enable-auto-import -L$qt_libdir -lQtCore4 -lQtGui4 -lQtXml4 -lQtSvg4 -lQtOpenGL4 >> config.mak # Qt4 on Linux or BSD else echo QTCXXFLAGS=-I$qt_includedir -I$qt_includedir/QtCore -I$qt_includedir/QtGui -I$qt_includedir/QtXml -I$qt_includedir/QtSvg -I$qt_includedir/QtOpenGL >> config.mak echo QTLIBS=-L$qt_libdir -lQtCore -lQtGui -lQtXml -lQtSvg -lQtOpenGL >> config.mak fi else pkg-config --exists 'QtGui >= 4' if [ $? -eq 0 ] then echo "- Qt version 4.x detected" echo QTCXXFLAGS=$(pkg-config --cflags QtCore QtGui QtXml QtSvg QtOpenGL) >> config.mak echo QTLIBS=$(pkg-config --libs QtCore QtGui QtXml QtSvg QtOpenGL) >> config.mak else pkg-config --exists 'Qt5Gui' if [ $? -eq 0 ] then echo "- Qt version 5.x detected" echo QTCXXFLAGS=$(pkg-config --cflags Qt5Core Qt5Gui Qt5Xml Qt5Svg Qt5OpenGL Qt5Widgets) >> config.mak echo QTLIBS=$(pkg-config --libs Qt5Core Qt5Gui Qt5Xml Qt5Svg Qt5OpenGL Qt5Widgets) >> config.mak else echo "- Qt not found - disabling" touch ../disable-qt fi fi fi if [ "$without_kde" = "" ] then kde4-config if [ $? -eq 0 ] && [ "$qt4_found" != "" ] then # test if we have KDE4, required on some systems to get Qt extra formats (xcf, ...) if [ "$kde_includedir" = "" ] then kde_includedir=`kde4-config --install include` fi if [ "$kde_libdir" = "" ] then kde_libdir=`kde4-config --install lib` fi if [ -d "$kde_includedir" ] && [ -d "$kde_libdir" ] then echo "- KDE version 4.x detected, will enable extra image formats" echo "#define USE_KDE4" >> config.h echo "USE_KDE4=1" >> config.mak echo KDECXXFLAGS=-I$kde_includedir >> config.mak # the -L with kde4/devel is for Fedora echo KDELIBS=-L$kde_libdir -L${kde_libdir}/kde4/devel -lkdecore >> config.mak fi fi fi [ "$gpl3" = "true" ] && echo GPL3=1 >> config.mak exit 0 fi