Permalink
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
Showing
with
203 additions
and 17 deletions.
- +11 −15 Makefile → Makefile.am
- +141 −0 autogen.sh
- +49 −0 configure.ac
- +0 −2 launcher
- +2 −0 pinta.in
@@ -0,0 +1,141 @@ | ||
#! /bin/sh | ||
|
||
# Compares software version numbers | ||
# 10 means EQUAL | ||
# 11 means GREATER THAN | ||
# 9 means LESS THAN | ||
check_version() { | ||
test -z "$1" && return 1 | ||
local ver1=$1 | ||
while test `echo $ver1 | egrep -c [^0123456789.]` -gt 0 ; do | ||
char=`echo $ver1 | sed 's/.*\([^0123456789.]\).*/\1/'` | ||
char_dec=`echo -n "$char" | od -b | head -1 | awk {'print $2'}` | ||
ver1=`echo $ver1 | sed "s/$char/.$char_dec/g"` | ||
done | ||
test -z "$2" && return 1 | ||
local ver2=$2 | ||
while test `echo $ver2 | egrep -c [^0123456789.]` -gt 0 ; do | ||
char=`echo $ver2 | sed 's/.*\([^0123456789.]\).*/\1/'` | ||
char_dec=`echo -n "$char" | od -b | head -1 | awk {'print $2'}` | ||
ver2=`echo $ver2 | sed "s/$char/.$char_dec/g"` | ||
done | ||
|
||
ver1=`echo $ver1 | sed 's/\.\./.0/g'` | ||
ver2=`echo $ver2 | sed 's/\.\./.0/g'` | ||
|
||
do_version_check "$ver1" "$ver2" | ||
} | ||
|
||
do_version_check() { | ||
|
||
test "$1" -eq "$2" && return 10 | ||
|
||
ver1front=`echo $1 | cut -d "." -f -1` | ||
ver1back=`echo $1 | cut -d "." -f 2-` | ||
ver2front=`echo $2 | cut -d "." -f -1` | ||
ver2back=`echo $2 | cut -d "." -f 2-` | ||
|
||
if test "$ver1front" != "$1" || test "$ver2front" != "$2" ; then | ||
test "$ver1front" -gt "$ver2front" && return 11 | ||
test "$ver1front" -lt "$ver2front" && return 9 | ||
|
||
test "$ver1front" -eq "$1" || test -z "$ver1back" && ver1back=0 | ||
test "$ver2front" -eq "$2" || test -z "$ver2back" && ver2back=0 | ||
do_version_check "$ver1back" "$ver2back" | ||
return $? | ||
else | ||
test "$1" -gt "$2" && return 11 || return 9 | ||
fi | ||
} | ||
|
||
PROJECT=Pinta | ||
FILE= | ||
CONFIGURE=configure.ac | ||
|
||
: ${AUTOCONF=autoconf} | ||
: ${AUTOHEADER=autoheader} | ||
: ${AUTOMAKE=automake} | ||
: ${ACLOCAL=aclocal} | ||
: ${MONO=mono} | ||
: ${XBUILD=xbuild} | ||
|
||
DIE=0 | ||
|
||
($AUTOCONF --version) < /dev/null > /dev/null 2>&1 || { | ||
echo | ||
echo "You must have autoconf installed to compile $PROJECT." | ||
echo "Download the appropriate package for your distribution," | ||
echo "or get the source tarball at ftp://ftp.gnu.org/pub/gnu/" | ||
DIE=1 | ||
} | ||
|
||
($AUTOMAKE --version) < /dev/null > /dev/null 2>&1 || { | ||
echo | ||
echo "You must have automake installed to compile $PROJECT." | ||
echo "Get ftp://sourceware.cygnus.com/pub/automake/automake-1.4.tar.gz" | ||
echo "(or a newer version if it is available)" | ||
DIE=1 | ||
} | ||
|
||
($MONO --version) < /dev/null > /dev/null 2>&1 || { | ||
echo | ||
echo "You must have mono runtime installed to compile $PROJECT." | ||
DIE=1 | ||
} | ||
|
||
($XBUILD /version) < /dev/null > /dev/null 2>&1 || { | ||
echo | ||
echo "You must have mono-xbuild installed to compile $PROJECT." | ||
DIE=1 | ||
} | ||
|
||
if test "$DIE" -eq 1; then | ||
exit 1 | ||
fi | ||
|
||
xbuild_version=`xbuild /version | grep '^XBuild' | egrep -o '([0-9]+\.?){2,}'` | ||
check_version "$xbuild_version" "2.4" 2> /dev/null | ||
if test $? -eq 9; then | ||
echo | ||
echo "A newer version of XBuild is required to build $PROJECT ( >= 2.4 )" | ||
exit 1 | ||
fi | ||
|
||
mono_version=`xbuild /version | grep '^Mono' | egrep -o '([0-9]+\.?){2,}'` | ||
check_version "$xbuild_version" "2.4" 2> /dev/null | ||
if test $? -eq 9; then | ||
echo | ||
echo "A newer version of Mono is required to run $PROJECT ( >= 2.4 )" | ||
exit 1 | ||
fi | ||
|
||
#Check directoy | ||
srcdir=`dirname $0` | ||
test -z "$srcdir" && srcdir=. | ||
|
||
ORIGDIR=`pwd` | ||
cd $srcdir | ||
TEST_TYPE=-f | ||
aclocalinclude="-I . $ACLOCAL_FLAGS" | ||
|
||
test $TEST_TYPE $FILE || { | ||
echo "You must run this script in the top-level $PROJECT directory" | ||
exit 1 | ||
} | ||
|
||
if test -z "$*"; then | ||
echo "I am going to run ./configure with no arguments - if you wish " | ||
echo "to pass any to it, please specify them on the $0 command line." | ||
fi | ||
|
||
echo "Running $ACLOCAL $aclocalinclude ..." | ||
$ACLOCAL $aclocalinclude | ||
|
||
echo "Running $AUTOMAKE --gnu $am_opt ..." | ||
$AUTOMAKE --add-missing --gnu $am_opt | ||
|
||
echo "Running $AUTOCONF ..." | ||
$AUTOCONF | ||
|
||
echo Running $srcdir/configure $conf_flags "$@" ... | ||
$srcdir/configure $conf_flags "$@" \ |
@@ -0,0 +1,49 @@ | ||
dnl Process this file with autoconf to produce a configure script. | ||
AC_INIT([pinta], [0.4]) | ||
AM_INIT_AUTOMAKE([foreign]) | ||
|
||
AC_PREFIX_DEFAULT([/usr]) | ||
AC_PROG_INSTALL | ||
|
||
dnl pkg-config | ||
AC_PATH_PROG(PKG_CONFIG, pkg-config, no) | ||
if test "x$PKG_CONFIG" = "xno"; then | ||
AC_MSG_ERROR([You need to install pkg-config]) | ||
fi | ||
|
||
AC_PATH_PROG(XBUILD, xbuild, no) | ||
AC_PATH_PROG(MONO, mono, no) | ||
|
||
if test "x$XBUILD" = "xno"; then | ||
AC_MSG_ERROR([XBuild not found]) | ||
fi | ||
|
||
if test "x$MONO" = "xno"; then | ||
AC_MSG_ERROR([No mono runtime found]) | ||
fi | ||
|
||
AC_SUBST(XBUILD) | ||
AC_SUBST(MONO) | ||
|
||
PKG_CHECK_MODULES([GLADE_SHARP_20], [glade-sharp-2.0]) | ||
PKG_CHECK_MODULES([GLIB_SHARP_20], [glib-sharp-2.0]) | ||
PKG_CHECK_MODULES([GTK_SHARP_20], [gtk-sharp-2.0]) | ||
PKG_CHECK_MODULES([MONO_CAIRO], [mono-cairo]) | ||
|
||
AC_CONFIG_FILES([ | ||
Makefile | ||
pinta | ||
]) | ||
|
||
AC_OUTPUT | ||
|
||
cat <<EOF | ||
|
||
${PACKAGE}-${VERSION} | ||
|
||
Build Environment | ||
Install Prefix: ${prefix} | ||
XBuild Path: ${XBUILD} | ||
Mono Runtime: ${MONO} | ||
|
||
EOF |
@@ -0,0 +1,2 @@ | ||
#!/bin/sh | ||
exec @MONO@ @prefix@/lib/@PACKAGE@/Pinta.exe "$@" |