summaryrefslogtreecommitdiff
path: root/configure
diff options
context:
space:
mode:
Diffstat (limited to 'configure')
-rwxr-xr-xconfigure201
1 files changed, 201 insertions, 0 deletions
diff --git a/configure b/configure
new file mode 100755
index 0000000..5db2bf0
--- /dev/null
+++ b/configure
@@ -0,0 +1,201 @@
+#!/usr/bin/env bash
+#
+# Copyright 2009-2014 Yorba Foundation
+#
+# This software is licensed under the GNU LGPL (version 2.1 or later).
+# See the COPYING file in this distribution.
+
+CONFIG_IN=configure.mk
+
+configure_help() {
+ cat <<- EOT
+Usage:
+ ./configure [OPTIONS]...
+
+Options:
+ -h, --help Print this help and exit.
+ --assume-pkgs Turn off package version checking.
+ --build=DIR Build secondary files in DIR.
+ --debug | --release Build executable for debugging or release.
+ [--release]
+ --profile Enable profiling support during C compile & link.
+ --prefix=PREFIX Prepend PREFIX to program installation paths.
+ [/usr/local]
+ --lib=LIBNAME Set system library directory name to LIBNAME
+ (usually 'lib' or 'lib64').
+ [lib]
+ --libdir LIBNAME Equivalent to --lib=LIBNAME
+ --libexec=LIBEXECDIR Set utility executable to LIBEXECDIR
+ (usually 'PREFIX/libexec/shotwell').
+ [PREFIX/libexec/shotwell]
+ --libexec LIBEXECDIR Equivalent to --libexec=LIBEXECDIR
+
+ --define=SYMBOL Define a symbol for the Vala compiler.
+
+
+ --disable-schemas-compile
+ Disable compiling the GSettings schema.
+ --disable-gsettings-convert-install
+ Disable installing the gsettings-data-convert file.
+ --disable-desktop-update
+ Disable desktop database update.
+ --disable-desktop-validate
+ Disable validation of .desktop files.
+ --disable-icon-update
+ Disable icon cache update.
+ --enable-build-for-glade
+ Enable build for Glade-related development.
+ --disable-help-install
+ Disable installation of online help.
+ --disable-extra-plugins-install
+ Disable installation of extra (non-core) plugins.
+ --install-headers
+ Install headers and VAPI files (developers only).
+ --unity-support
+ Enable support for progress bars in the Unity launcher.
+EOT
+}
+
+abort() {
+ printf "%s: Invalid argument %s\n" $0 $1
+ configure_help
+ exit 1
+}
+
+while [ $# != 0 ]
+do
+ option=`echo $1 | sed 's/=.*//'`
+ if [ `echo $1 | grep '='` ]
+ then
+ value=`echo $1 | sed 's/.*=//'`
+ fi
+
+ case $option in
+ -h | --help) configure_help
+ exit 0
+ ;;
+
+ --prefix) if [ ! $value ]
+ then
+ shift
+ value=$1
+ fi
+
+ variables="${variables}PREFIX=$value\n"
+ ;;
+
+ --lib | --libdir) if [ ! $value ]
+ then
+ shift
+ value=$1
+ fi
+
+ variables="${variables}LIB=$value\n"
+ ;;
+
+ --libexec) if [ ! $value ]
+ then
+ shift
+ value=$1
+ fi
+
+ variables="${variables}LIBEXECDIR=$value\n"
+ ;;
+
+ --assume-pkgs) variables="${variables}ASSUME_PKGS=1\n"
+ ;;
+
+ --build) if [ ! $value ]
+ then
+ shift
+ value=$1
+ fi
+
+ variables="${variables}BUILD_DIR=$value\n"
+ ;;
+
+ --debug) variables="${variables}BUILD_RELEASE=\nBUILD_DEBUG=1\n"
+ ;;
+
+ --profile) variables="${variables}PROFILE_FLAGS=-pg\n"
+ ;;
+
+ --release) variables="${variables}BUILD_DEBUG=\nBUILD_RELEASE=1\n"
+ ;;
+
+ --define) variables="${variables}USER_VALAFLAGS+=--define=$value\n"
+ ;;
+
+ --disable-schemas-compile) variables="${variables}DISABLE_SCHEMAS_COMPILE=1\n"
+ ;;
+
+ --disable-gsettings-convert-install) variables="${variables}DISABLE_GSETTINGS_CONVERT_INSTALL=1\n"
+ ;;
+
+ --disable-desktop-update) variables="${variables}DISABLE_DESKTOP_UPDATE=1\n"
+ ;;
+
+ --disable-desktop-validate) variables="${variables}DISABLE_DESKTOP_VALIDATE=1\n"
+ ;;
+
+ --disable-icon-update) variables="${variables}DISABLE_ICON_UPDATE=1\n"
+ ;;
+
+ --enable-build-for-glade) variables="${variables}ENABLE_BUILD_FOR_GLADE=1\n"
+ ;;
+ --disable-help-install) variables="${variables}DISABLE_HELP_INSTALL=1\n"
+ ;;
+ --disable-extra-plugins-install) variables="${variables}DISABLE_EXTRA_PLUGINS_INSTALL=1\n"
+ ;;
+
+ --install-headers) variables="${variables}INSTALL_HEADERS=1\n"
+ ;;
+
+ --unity-support) variables="${variables}UNITY_SUPPORT=1\n"
+ ;;
+
+ --enable-* | --disable-*)
+
+ echo WARNING: unrecognized option: $option
+ ;;
+
+ *) if [ `echo $option | grep '\-\-'` ]
+ then
+ # we've hit a bogus '--' -type argument, don't accept it.
+ abort $option
+ fi
+
+ # this argument isn't for us; pass it on to the makefile phase.
+ variables="${variables}${option}=${value}\n"
+ ;;
+ esac
+
+ value=""
+ shift
+done
+
+# detect version of libgphoto2 the compilation host has installed
+pkg-config --atleast-version 2.5 libgphoto2
+if [ $? == 1 ]
+then
+ pkg-config --atleast-version 2.4 libgphoto2
+ if [ $? == 1 ]
+ then
+ printf "No compatible libGPhoto installation found. Configuration cannot continue.\n";
+ exit 1
+ else
+ printf "Detected libGPhoto 2.4.x - using default code path.\n";
+ fi
+else
+ printf "Detected libGPhoto 2.5.x - using 2.5-aware code path.\n";
+ variables="${variables}WITH_GPHOTO_25=1\n"
+fi
+
+rm -f $CONFIG_IN
+if [ $variables ]
+then
+ echo -e -n $variables > $CONFIG_IN
+fi
+echo "CONFIG_IN=${CONFIG_IN}" >> $CONFIG_IN
+
+printf "Configured. Type 'make' to build, 'make install' to install.\n"