diff options
author | Alexander Larsson <alexl@redhat.com> | 2010-01-29 16:33:18 +0100 |
---|---|---|
committer | Alexander Larsson <alexl@redhat.com> | 2010-02-04 16:47:27 +0100 |
commit | 193c54c0da71a5feb8fccfefb4de07526ef191c6 (patch) | |
tree | 687a9bde59d8c69d30a3eb484a557fe3fe2db720 | |
parent | e625b1a1fb672dcb827cd97592f745d9db653c29 (diff) |
Add autoconf and pkg-config setup
-rw-r--r-- | AUTHORS | 0 | ||||
-rw-r--r-- | ChangeLog | 0 | ||||
l--------- | INSTALL | 1 | ||||
-rw-r--r-- | Makefile.am | 7 | ||||
-rw-r--r-- | NEWS | 0 | ||||
-rw-r--r-- | README | 0 | ||||
-rwxr-xr-x | autogen.sh | 164 | ||||
-rw-r--r-- | configure.ac | 19 | ||||
-rw-r--r-- | spice-protocol.pc.in | 9 | ||||
-rw-r--r-- | spice/Makefile.am | 18 |
10 files changed, 218 insertions, 0 deletions
diff --git a/ChangeLog b/ChangeLog new file mode 100644 index 0000000..e69de29 --- /dev/null +++ b/ChangeLog @@ -0,0 +1 @@ +/usr/share/automake-1.11/INSTALL
\ No newline at end of file diff --git a/Makefile.am b/Makefile.am new file mode 100644 index 0000000..284ff9b --- /dev/null +++ b/Makefile.am @@ -0,0 +1,7 @@ +SUBDIRS = spice + +pkgconfigdir = $(libdir)/pkgconfig +pkgconfig_DATA = spice-protocol.pc + +DISTCLEANFILES = \ + spice-protocol.pc diff --git a/autogen.sh b/autogen.sh new file mode 100755 index 0000000..950c2f4 --- /dev/null +++ b/autogen.sh @@ -0,0 +1,164 @@ +#! /bin/sh + +srcdir=`dirname $0` +test -z "$srcdir" && srcdir=. + +ORIGDIR=`pwd` +cd $srcdir + +# FIXME: can replace this entire script with +# the following line if we can require autoconf 2.60: +# autoreconf -v --force --install || exit 1 + +PACKAGE=spice-protocol + +ACLOCAL_FLAGS="" +AUTOHEADER=${AUTOHEADER-autoheader} +AUTOMAKE_FLAGS="--add-missing --gnu" +AUTOCONF=${AUTOCONF-autoconf} + +# automake 1.8 requires autoconf 2.58 +# automake 1.7 requires autoconf 2.54 +automake_min_vers=1.7 +aclocal_min_vers=$automake_min_vers +autoconf_min_vers=2.54 + +# The awk-based string->number conversion we use needs a C locale to work +# as expected. Setting LC_ALL overrides whether the user set LC_ALL, +# LC_NUMERIC, or LANG. +LC_ALL=C + +ARGV0=$0 + +# Allow invocation from a separate build directory; in that case, we change +# to the source directory to run the auto*, then change back before running configure +srcdir=`dirname $ARGV0` +test -z "$srcdir" && srcdir=. + +ORIGDIR=`pwd` + +# Not all echo versions allow -n, so we check what is possible. This test is +# based on the one in autoconf. +case `echo "testing\c"; echo 1,2,3`,`echo -n testing; echo 1,2,3` in + *c*,-n*) ECHO_N= ;; + *c*,* ) ECHO_N=-n ;; + *) ECHO_N= ;; +esac + + +# some terminal codes ... +boldface="`tput bold 2>/dev/null || true`" +normal="`tput sgr0 2>/dev/null || true`" +printbold() { + echo $ECHO_N "$boldface" + echo "$@" + echo $ECHO_N "$normal" +} +printerr() { + echo "$@" >&2 +} + + +# Usage: +# compare_versions MIN_VERSION ACTUAL_VERSION +# returns true if ACTUAL_VERSION >= MIN_VERSION +compare_versions() { + ch_min_version=$1 + ch_actual_version=$2 + ch_status=0 + IFS="${IFS= }"; ch_save_IFS="$IFS"; IFS="." + set $ch_actual_version + for ch_min in $ch_min_version; do + ch_cur=`echo $1 | sed 's/[^0-9].*$//'`; shift # remove letter suffixes + if [ -z "$ch_min" ]; then break; fi + if [ -z "$ch_cur" ]; then ch_status=1; break; fi + if [ $ch_cur -gt $ch_min ]; then break; fi + if [ $ch_cur -lt $ch_min ]; then ch_status=1; break; fi + done + IFS="$ch_save_IFS" + return $ch_status +} + +# Usage: +# version_check PACKAGE VARIABLE CHECKPROGS MIN_VERSION SOURCE +# checks to see if the package is available +version_check() { + vc_package=$1 + vc_variable=$2 + vc_checkprogs=$3 + vc_min_version=$4 + vc_source=$5 + vc_status=1 + + vc_checkprog=`eval echo "\\$$vc_variable"` + if [ -n "$vc_checkprog" ]; then + printbold "using $vc_checkprog for $vc_package" + return 0 + fi + + printbold "checking for $vc_package >= $vc_min_version..." + for vc_checkprog in $vc_checkprogs; do + echo $ECHO_N " testing $vc_checkprog... " + if $vc_checkprog --version < /dev/null > /dev/null 2>&1; then + vc_actual_version=`$vc_checkprog --version | head -n 1 | \ + sed 's/^.*[ ]\([0-9.]*[a-z]*\).*$/\1/'` + if compare_versions $vc_min_version $vc_actual_version; then + echo "found $vc_actual_version" + # set variable + eval "$vc_variable=$vc_checkprog" + vc_status=0 + break + else + echo "too old (found version $vc_actual_version)" + fi + else + echo "not found." + fi + done + if [ "$vc_status" != 0 ]; then + printerr "***Error***: You must have $vc_package >= $vc_min_version installed" + printerr " to build $PROJECT. Download the appropriate package for" + printerr " from your distribution or get the source tarball at" + printerr " $vc_source" + printerr + fi + return $vc_status +} + +version_check autoconf AUTOCONF $AUTOCONF $autoconf_min_vers \ + "http://ftp.gnu.org/pub/gnu/autoconf/autoconf-${autoconf_min_vers}.tar.gz" || DIE=1 +version_check automake AUTOMAKE "$AUTOMAKE automake automake-1.10 automake-1.9 automake-1.8 automake-1.7" $automake_min_vers \ + "http://ftp.gnu.org/pub/gnu/automake/automake-${automake_min_vers}.tar.gz" || DIE=1 +ACLOCAL=`echo $AUTOMAKE | sed s/automake/aclocal/` + +if test -n "$DIE"; then + exit 1 +fi + + +if test -z "$*"; then + echo "$ARGV0: Note: \`./configure' will be run with no arguments." + echo " If you wish to pass any to it, please specify them on the" + echo " \`$0' command line." + echo +fi + +do_cmd() { + echo "$ARGV0: running \`$@'" + $@ +} + +# Run for top level directory + +printbold "Setting up $PACKAGE toplevel" +cd $srcdir +do_cmd $ACLOCAL $ACLOCAL_FLAGS +do_cmd $AUTOHEADER +do_cmd $AUTOMAKE $AUTOMAKE_FLAGS +do_cmd $AUTOCONF + +cd $ORIGDIR || exit $? +rm -f config.cache + +do_cmd $srcdir/configure --enable-maintainer-mode ${1+"$@"} || exit 1 + diff --git a/configure.ac b/configure.ac new file mode 100644 index 0000000..90cb583 --- /dev/null +++ b/configure.ac @@ -0,0 +1,19 @@ +AC_PREREQ([2.57]) + +m4_define([SPICE_MAJOR], 0) +m4_define([SPICE_MINOR], 5) +m4_define([SPICE_MICRO], 1) + +AC_INIT(spice-protocol, [SPICE_MAJOR.SPICE_MINOR.SPICE_MICRO], [], spice-protocol) + +AC_CONFIG_MACRO_DIR([m4]) +AM_CONFIG_HEADER([config.h]) + +AM_INIT_AUTOMAKE([dist-bzip2]) +AM_MAINTAINER_MODE + +AC_OUTPUT([ +Makefile +spice-protocol.pc +spice/Makefile +]) diff --git a/spice-protocol.pc.in b/spice-protocol.pc.in new file mode 100644 index 0000000..c7e76cd --- /dev/null +++ b/spice-protocol.pc.in @@ -0,0 +1,9 @@ +prefix=@prefix@ +includedir=@includedir@ + +Name: spice-protocol +Description: SPICE protocol headers +Version: @VERSION@ + +Libs: +Cflags: -I${includedir}/spice-1 diff --git a/spice/Makefile.am b/spice/Makefile.am new file mode 100644 index 0000000..5867653 --- /dev/null +++ b/spice/Makefile.am @@ -0,0 +1,18 @@ +NULL = + +spice_protocol_includedir=$(includedir)/spice-1/spice + +spice_protocol_include_HEADERS= \ + barrier.h \ + draw.h \ + end-packed.h \ + error_codes.h \ + ipc_ring.h \ + protocol.h \ + qxl_dev.h \ + start-packed.h \ + stats.h \ + types.h \ + vd_agent.h \ + vdi_dev.h \ + $(NULL) |