#!/bin/sh
-path=`which mlt-config 2>/dev/null`
+pkg-config mlt-framework 2>/dev/null
[ $? != 0 ] && echo "MLT not installed - aborting" && exit 1
# Determine default prefix
-prefix=`dirname $path`
-prefix=`dirname $prefix`
+prefix=`pkg-config --variable=prefix mlt-framework`
+[ "$prefix" = "" ] && echo "Can't locate MLT's prefix - please reconfigure MLT." && exit 1
+
+# Default the libdir
+libdir=""
# Allow override from command line
-[ "$1" != "" ] && prefix="${1#--prefix=}"
+for i in "$@"
+do
+ case $i in
+ --prefix=* ) prefix="${i#--prefix=}" ;;
+ --libdir=* ) libdir="${i#--libdir=}" ;;
+ esac
+done
+
+# Determine the libdir if it's not specified in the args
+[ "$libdir" = "" ] && libdir=$prefix/lib
# Sanity check
[ ! -d "$prefix" ] && echo "Invalid prefix $prefix - aborting" && exit 1
-echo "prefix=$prefix" > config.mak
-echo "MLT++ configured - installed in $prefix."
+echo "version=`pkg-config --modversion mlt-framework`" > config.mak
+echo "soversion=1" >> config.mak
+echo "prefix=$prefix" >> config.mak
+echo "libdir=$libdir" >> config.mak
+
+targetos=$(uname -s)
+echo "targetos=$targetos" >> config.mak
+
+WARNINGS="-W -Wwrite-strings -Wcast-qual -Wpointer-arith -Wcast-align -Wredundant-decls"
+
+case $targetos in
+ Darwin)
+ echo LIBSUF=.dylib
+ echo "CXXFLAGS+=-D__DARWIN__ -Wall -fPIC `pkg-config --cflags mlt-framework`"
+ echo "LIBFLAGS=-dynamiclib -single_module"
+ echo "LDFLAGS+=`pkg-config --libs mlt-framework` `pkg-config mlt-miracle --libs` `pkg-config mlt-valerie --libs`"
+ ;;
+ Linux|FreeBSD)
+ echo LIBSUF=.so
+ echo "CXXFLAGS+=-pthread -Wall $WARNINGS -fPIC `pkg-config --cflags mlt-framework`"
+ echo "LIBFLAGS=-shared"
+ echo "LDFLAGS+=`pkg-config --libs mlt-framework` `pkg-config mlt-miracle --libs`"
+ ;;
+esac >> config.mak
+
+echo "MLT++ configured - will be installed in $prefix."