]> 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 211233638f039766d1d541a0ea05084e3ff7cb45..c70984551a1e5b2ff93648abaf76ed0d9e9d7329 100755 (executable)
@@ -1,11 +1,91 @@
-#!/bin/bash
+#!/bin/sh
 
-if [ "$help" != "1" ]
+if [ "$help" = "1" ]
 then
+       cat << EOF
+GTK+ options:
+
+  --gtk2-prefix=path      - Override the gtk+-2.0 prefix for pkg-config
 
-cat << EOF >> ../producers.dat
-pixbuf                 libmltgtk2.so
 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 $pkgconfig_prefix gdk-pixbuf-2.0 2> /dev/null
+       disable_pixbuf=$?
+
+       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 "- GTK2 components not found: disabling"
+               touch ../disable-gtk2
+               exit 0
+       fi
+
+       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
+
+       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
+
+       [ "$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