]> git.sesse.net Git - mlt/blobdiff - src/modules/gtk2/configure
Avoid unnecessary compilation when running "./configure; make; make install" multiple...
[mlt] / src / modules / gtk2 / configure
index d6c7f3fe68cf974e2694fc845c5bc0a5628abf8e..c70984551a1e5b2ff93648abaf76ed0d9e9d7329 100755 (executable)
@@ -1,42 +1,90 @@
 #!/bin/sh
 
-if [ "$help" != "1" ]
+if [ "$help" = "1" ]
 then
+       cat << EOF
+GTK+ options:
 
-       pkg-config gtk+-2.0 2> /dev/null
+  --gtk2-prefix=path      - Override the gtk+-2.0 prefix for pkg-config
+
+EOF
+
+else
+       pkgconfig_prefix=
+       for i in "$@"
+       do
+               case $i in
+                       --gtk2-prefix=* )       pkgconfig_prefix="${i#--gtk2-prefix=}" ;;
+               esac
+       done
+       [ "$pkgconfig_prefix" != "" ] && pkgconfig_prefix="--define-variable=prefix=\"$pkgconfig_prefix\""
+
+       pkg-config $pkgconfig_prefix gtk+-2.0 2> /dev/null
        disable_gtk2=$?
 
-       pkg-config gdk-pixbuf-2.0 2> /dev/null
+       pkg-config $pkgconfig_prefix gdk-pixbuf-2.0 2> /dev/null
        disable_pixbuf=$?
 
-       pkg-config pangoft2 2> /dev/null
+       pkg-config $pkgconfig_prefix gdk-pixbuf-2.0 pangoft2 2> /dev/null
        disable_pango=$?
 
        if [ "$disable_gtk2" != "0" -a "$disable_pixbuf" != 0 -a "$disable_pango" != "0" ]
        then
-               echo No GTK2 components found - disabling
+               echo "- GTK2 components not found: disabling"
                touch ../disable-gtk2
                exit 0
        fi
 
-       [ "$disable_gtk2" != "0" ] && echo "- gtk2 not found: gtk2 preview disabled"
-       [ "$disable_pixbuf" != "0" ] && echo "- pixbuf not found: pixbuf loader and rescaler disabled"
-       [ "$disable_pango" != "0" ] && echo "- pango not found: pango titler disabled"
+       echo > config.mak
+       
+       if [ "$disable_gtk2" = "0" ]
+       then
+               echo "CFLAGS += -DUSE_GTK2" >> config.mak
+               echo "USE_GTK2=1" >> config.mak
+       else
+               echo "- gtk2 not found: gtk2 preview disabled"
+       fi
+       
+       if [ "$disable_pixbuf" = "0" ]
+       then
+               echo "CFLAGS += -DUSE_PIXBUF" >> config.mak
+               echo "USE_PIXBUF=1" >> config.mak
+       else
+               echo "- pixbuf not found: pixbuf loader and rescaler disabled"
+       fi
 
-       echo > config.h
-       [ "$disable_gtk2" = "0" ] && echo "#define USE_GTK2" >> config.h
-       [ "$disable_pixbuf" = "0" ] && echo "#define USE_PIXBUF" >> config.h
-       [ "$disable_pango" = "0" ] && echo "#define USE_PANGO" >> config.h
+       if [ "$disable_pango" = "0" ]
+       then
+               echo "CFLAGS += -DUSE_PANGO" >> config.mak
+                       echo "USE_PANGO=1" >> config.mak
+       else
+               echo "- pango not found: pango titler disabled"
+       fi
 
-       echo > config.mak
-       [ "$disable_gtk2" = "0" ] && echo "USE_GTK2=1" >> config.mak
-       [ "$disable_pixbuf" = "0" ] && echo "USE_PIXBUF=1" >> config.mak
-       [ "$disable_pango" = "0" ] && echo "USE_PANGO=1" >> config.mak
-
-       [ "$disable_pixbuf" = "0" ] && echo "pixbuf                     libmltgtk2$LIBSUF" >> ../producers.dat
-       [ "$disable_pango" = "0" ] && echo "pango                       libmltgtk2$LIBSUF" >> ../producers.dat
-       [ "$disable_pixbuf" = "0" ] && echo "gtkrescale         libmltgtk2$LIBSUF" >> ../filters.dat
-       [ "$disable_gtk2" = "0" ] && echo "gtk2_preview libmltgtk2$LIBSUF" >> ../consumers.dat
+       [ "$pkgconfig_prefix" != "" ] && echo "PKGCONFIG_PREFIX=$pkgconfig_prefix" >> 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
 
        exit 0
 fi