AC_INIT(README) AC_CANONICAL_SYSTEM AM_CONFIG_HEADER(config.h) AM_INIT_AUTOMAKE(gtk-sharp, @GTK_SHARP_VERSION@) AM_MAINTAINER_MODE API_VERSION=@ASSEMBLY_VERSION@ AC_SUBST(API_VERSION) POLICY_VERSIONS="@POLICY_VERSIONS@" AC_SUBST(POLICY_VERSIONS) PACKAGE_VERSION=gtk-sharp-2.0 AC_SUBST(PACKAGE_VERSION) case "$host" in *-*-mingw*|*-*-cygwin*) platform_win32=yes AC_DEFINE(PLATFORM_WIN32,1,[Platform is Win32]) CC="gcc -mno-cygwin -g" HOST_CC="gcc" ;; *) platform_win32=no ;; esac AM_CONDITIONAL(PLATFORM_WIN32, test x$platform_win32 = xyes) AC_CHECK_TOOL(CC, gcc, gcc) AC_PROG_CC AM_PROG_CC_STDC AC_PROG_INSTALL dnl may require a specific autoconf version dnl AC_PROG_CC_FOR_BUILD dnl CC_FOR_BUILD not automatically detected CC_FOR_BUILD=$CC BUILD_EXEEXT= if test "x$cross_compiling" = "xyes"; then CC_FOR_BUILD=cc BUILD_EXEEXT="" fi AC_SUBST(CC_FOR_BUILD) AC_SUBST(HOST_CC) AC_SUBST(BUILD_EXEEXT) # Set STDC_HEADERS AC_HEADER_STDC AC_LIBTOOL_WIN32_DLL AM_PROG_LIBTOOL if test x$platform_win32 = xyes; then # Get rid of 'cyg' prefixes in library names sed -e "s/\/cyg\//\/\//" libtool > libtool.new; mv libtool.new libtool; chmod 755 libtool fi # not 64 bit clean in cross-compile AC_CHECK_SIZEOF(void *, 4) CFLAGS='-g -Wall -Wunused -Wmissing-prototypes -Wmissing-declarations -Wstrict-prototypes -Wmissing-prototypes -Wnested-externs -Wshadow -Wpointer-arith -Wno-cast-qual -Wcast-align -Wwrite-strings' if test "x$enable_maintainer_mode" = "xyes"; then DEBUG_FLAGS='-debug' else DEBUG_FLAGS= AC_ARG_ENABLE(debug, [ --enable-debug Build debugger (.mdb) files for dlls], DEBUG_FLAGS='-debug' ) fi CSDEFINES='@VERSIONCSDEFINES@' CSFLAGS="$DEBUG_FLAGS $CSDEFINES" AC_SUBST(CSFLAGS) GTK_SHARP_VERSION_CFLAGS='@VERSIONCFLAGS@' AC_SUBST(GTK_SHARP_VERSION_CFLAGS) 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 dnl for use on the build system BUILD_GTK_CFLAGS=`$PKG_CONFIG --cflags gtk+-2.0` BUILD_GTK_LIBS=`$PKG_CONFIG --libs gtk+-2.0` AC_SUBST(BUILD_GTK_CFLAGS) AC_SUBST(BUILD_GTK_LIBS) MONO_REQUIRED_VERSION=1.0 PKG_CHECK_MODULES(MONO_DEPENDENCY, mono >= $MONO_REQUIRED_VERSION, has_mono=true, has_mono=false) AC_PATH_PROG(GACUTIL, gacutil, no) if test "x$GACUTIL" = "xno" ; then AC_MSG_ERROR([No gacutil tool found. You need to install either the mono or .Net SDK.]) fi AC_PATH_PROG(AL, al, no) if test "x$AL" = "xno" ; then AC_MSG_ERROR([No al tool found. You need to install either the mono or .Net SDK.]) fi if test "x$has_mono" = "xtrue"; then GACUTIL_FLAGS='/package $(PACKAGE_VERSION) /gacdir $(DESTDIR)$(prefix)/lib' GENERATED_SOURCES=generated/*.cs AC_PATH_PROG(RUNTIME, mono, no) # If mono is found, it's in the path. Require it to be in the path at runtime as well if test "x$RUNTIME" != "no" ; then RUNTIME=mono fi AC_PATH_PROG(CSC, mcs, no) if test `uname -s` = "Darwin"; then LIB_PREFIX= LIB_SUFFIX=.dylib else LIB_PREFIX=.so LIB_SUFFIX= fi SDCHECK="`$GACUTIL /l |grep ^System.Drawing, | head -n1 |cut -f1 -d','`" if test "x$SDCHECK" = "xSystem.Drawing"; then enable_dotnet=yes else enable_dotnet=no fi else AC_PATH_PROG(CSC, csc.exe, no) GACUTIL_FLAGS= GENERATED_SOURCES=generated\\\\*.cs enable_dotnet=yes if test x$CSC = "xno"; then AC_MSG_ERROR([You need to install either mono or .Net]) else RUNTIME= LIB_PREFIX= LIB_SUFFIX=.dylib fi fi CS="C#" if test "x$CSC" = "xno" ; then AC_MSG_ERROR([No $CS compiler found]) fi AC_SUBST(RUNTIME) AC_SUBST(CSC) AC_SUBST(GACUTIL) AC_SUBST(GACUTIL_FLAGS) AC_SUBST(LIB_PREFIX) AC_SUBST(LIB_SUFFIX) AC_SUBST(GENERATED_SOURCES) PKG_CHECK_MODULES(MONO_CAIRO, mono-cairo >= $MONO_REQUIRED_VERSION, has_mono_cairo=true, has_mono_cairo=false) AC_SUBST(MONO_CAIRO_LIBS) if test "x$has_mono_cairo" = "xfalse" -a "x$API_VERSION" = "x2.8.0.0"; then AC_MSG_ERROR([You need to install Mono.Cairo.dll and its pkgconfig file or set PKG_CONFIG_PATH to find it.]) fi GTK_REQUIRED_VERSION=@GTK_REQUIRED_VERSION@ PKG_CHECK_MODULES(GLIB, gobject-2.0 >= $GTK_REQUIRED_VERSION) AC_SUBST(GLIB_CFLAGS) AC_SUBST(GLIB_LIBS) PKG_CHECK_MODULES(PANGO, pango) AC_SUBST(PANGO_CFLAGS) AC_SUBST(PANGO_LIBS) PKG_CHECK_MODULES(GTK, gtk+-2.0 >= $GTK_REQUIRED_VERSION) AC_SUBST(GTK_CFLAGS) AC_SUBST(GTK_LIBS) ## Versions of dependencies GNOME_REQUIRED_VERSION=@GNOME_REQUIRED_VERSION@ ART_REQUIRED_VERSION=2.3.16 PKG_CHECK_MODULES(LIBART, libart-2.0 >= $ART_REQUIRED_VERSION, enable_libart=yes, enable_libart=no) AC_SUBST(LIBART_CFLAGS) AC_SUBST(LIBART_LIBS) PKG_CHECK_MODULES(GNOMEVFS, gnome-vfs-2.0 >= $GNOME_REQUIRED_VERSION, enable_gnomevfs=yes, enable_gnomevfs=no) AC_SUBST(GNOMEVFS_CFLAGS) AC_SUBST(GNOMEVFS_LIBS) PKG_CHECK_MODULES(GNOME, libgnomecanvas-2.0 >= $GNOME_REQUIRED_VERSION libgnomeui-2.0 >= $GNOME_REQUIRED_VERSION gtk+-2.0 >= $GTK_REQUIRED_VERSION libgnomeprintui-2.2 >= $GNOME_REQUIRED_VERSION gmodule-2.0 >= $GTK_REQUIRED_VERSION libpanelapplet-2.0 >= $GNOME_REQUIRED_VERSION, enable_gnome=yes, enable_gnome=no) AC_SUBST(GNOME_CFLAGS) AC_SUBST(GNOME_LIBS) GLADE_REQUIRED_VERSION=2.3.6 PKG_CHECK_MODULES(GLADE, libglade-2.0 >= $GLADE_REQUIRED_VERSION, enable_glade=yes, enable_glade=no) AC_SUBST(GLADE_CFLAGS) AC_SUBST(GLADE_LIBS) RSVG_REQUIRED_VERSION=2.0.1 PKG_CHECK_MODULES(RSVG_DEPENDENCIES, librsvg-2.0 >= $RSVG_REQUIRED_VERSION, enable_rsvg=yes, enable_rsvg=no) if test "x$enable_gnome" = "xyes"; then GTKHTML_REQUIRED_VERSION=3.8.0 PKG_CHECK_MODULES(GTKHTML_DEPENDENCIES, libgtkhtml-3.8 >= $GTKHTML_REQUIRED_VERSION, enable_gtkhtml=yes, enable_gtkhtml=no) if test "x$enable_gtkhtml" = "xyes"; then GTKHTML_VERSION=3.8 GTKHTML_SOVERSION=15 else GTKHTML_REQUIRED_VERSION=3.6.0 PKG_CHECK_MODULES(GTKHTML_DEPENDENCIES, libgtkhtml-3.6 >= $GTKHTML_REQUIRED_VERSION, enable_gtkhtml=yes, enable_gtkhtml=no) if test "x$enable_gtkhtml" = "xyes"; then GTKHTML_VERSION=3.6 GTKHTML_SOVERSION=18 else GTKHTML_REQUIRED_VERSION=3.2.0 PKG_CHECK_MODULES(GTKHTML_DEPENDENCIES, libgtkhtml-3.1 >= $GTKHTML_REQUIRED_VERSION, enable_gtkhtml=yes, enable_gtkhtml=no) if test "x$enable_gtkhtml" = "xyes"; then GTKHTML_VERSION=3.1 GTKHTML_SOVERSION=11 else GTKHTML_REQUIRED_VERSION=3.0.10 PKG_CHECK_MODULES(GTKHTML_DEPENDENCIES, libgtkhtml-3.0 >= $GTKHTML_REQUIRED_VERSION, enable_gtkhtml=yes, enable_gtkhtml=no) if test "x$enable_gtkhtml" = "xyes"; then GTKHTML_VERSION=3.0 GTKHTML_SOVERSION=4 else GTKHTML_VERSION= GTKHTML_SOVERSION= fi fi fi fi AC_SUBST(GTKHTML_VERSION) AC_SUBST(GTKHTML_SOVERSION) else enable_gtkhtml=no fi if test "x$enable_gnome" = "xyes"; then VTE_REQUIRED_VERSION=0.11.10 PKG_CHECK_MODULES(VTE_DEPENDENCIES, vte >= $VTE_REQUIRED_VERSION, enable_vte=yes, enable_vte=no) else enable_vte=no fi AC_PATH_PROG(MDASSEMBLER, mdassembler, no) AC_PATH_PROG(MONODOCER, monodocer, no) if test "x$MONODOCER" = "xno" -o "x$MDASSEMBLER" = "xno"; then enable_monodoc=no doc_sources_dir= else enable_monodoc=yes doc_sources_dir="`pkg-config --variable=sourcesdir monodoc`" fi AC_SUBST(MDASSEMBLER) AC_SUBST(MONODOCER) AM_CONDITIONAL(ENABLE_LIBART, test "x$enable_libart" = "xyes") AM_CONDITIONAL(ENABLE_GNOMEVFS, test "x$enable_gnomevfs" = "xyes") AM_CONDITIONAL(ENABLE_GNOME, test "x$enable_gnome" = "xyes") AM_CONDITIONAL(ENABLE_GLADE, test "x$enable_glade" = "xyes") AM_CONDITIONAL(ENABLE_RSVG, test "x$enable_rsvg" = "xyes") AM_CONDITIONAL(ENABLE_GTKHTML, test "x$enable_gtkhtml" = "xyes") AM_CONDITIONAL(ENABLE_VTE, test "x$enable_vte" = "xyes") AM_CONDITIONAL(ENABLE_DOTNET, test "x$enable_dotnet" = "xyes") AM_CONDITIONAL(ENABLE_MONODOC, test "x$enable_monodoc" = "xyes") AM_CONDITIONAL(ENABLE_ALL_OPTIONAL, test "x$enable_libart" = "xyes" -a "x$enable_gnomevfs" = "xyes" -a "x$enable_gnome" = "xyes" -a "x$enable_glade" = "xyes" -a "x$enable_rsvg" = "xyes" -a "x$enable_gtkhtml" = "xyes" -a "x$enable_vte" = "xyes" -a "x$enable_dotnet" = "xyes" -a "x$enable_monodoc" = "xyes") AC_SUBST(CFLAGS) AC_OUTPUT([ AssemblyInfo.cs Makefile policy.config sources/Makefile parser/Makefile parser/gapi-2.0.pc parser/gapi2-fixup parser/gapi2-parser generator/Makefile generator/gapi2-codegen glib/Makefile glib/glib-sharp-2.0.pc glib/glib-sharp.dll.config glib/glue/Makefile pango/Makefile pango/pango-sharp.dll.config pango/glue/Makefile atk/Makefile atk/atk-sharp.dll.config art/Makefile art/art-sharp.dll.config art/art-sharp-2.0.pc gdk/Makefile gdk/gdk-sharp.dll.config gdk/glue/Makefile gtk/Makefile gtk/gtk-sharp-2.0.pc gtk/gtk-sharp.dll.config gtk/glue/Makefile glade/Makefile glade/glade-sharp.dll.config glade/glade-sharp-2.0.pc glade/glue/Makefile gnome/Makefile gnome/gnome-sharp.dll.config gnome/gnome-sharp-2.0.pc gnome/glue/Makefile gnomevfs/Makefile gnomevfs/gnome-vfs-sharp.dll.config gnomevfs/gnome-vfs-sharp-2.0.pc gconf/Makefile gconf/doc/Makefile gconf/GConf/Makefile gconf/GConf/gconf-sharp.dll.config gconf/GConf/gconf-sharp-2.0.pc gconf/GConf.PropertyEditors/Makefile gconf/tools/Makefile gconf/tools/gconfsharp2-schemagen gtkhtml/Makefile gtkhtml/gtkhtml-sharp.dll.config gtkhtml/gtkhtml-sharp-2.0.pc rsvg/Makefile rsvg/rsvg-sharp.dll.config rsvg/rsvg-sharp-2.0.pc vte/Makefile vte/glue/Makefile vte/vte-sharp.dll.config vte/vte-sharp-2.0.pc gtkdotnet/Makefile gtkdotnet/gtk-dotnet.dll.config gtkdotnet/gtk-dotnet-2.0.pc doc/Makefile sample/GtkDemo/Makefile sample/Makefile sample/gconf/Makefile sample/gnomevfs/Makefile sample/pixmaps/Makefile sample/rsvg/Makefile sample/test/Makefile sample/valtest/Makefile sample/valtest/valtest.exe.config sample/opaquetest/Makefile sample/opaquetest/opaquetest.exe.config sample/cairo-sample.exe.config ]) echo "---" echo "Configuration summary" echo "" echo " * Installation prefix = $prefix" echo " * $CS compiler: $CSC $CSFLAGS" echo "" echo " Optional assemblies included in the build:" echo "" echo " * art-sharp.dll: $enable_libart" echo " * gnomevfs-sharp.dll: $enable_gnomevfs" echo " * gnome-sharp.dll: $enable_gnome" echo " * glade-sharp.dll: $enable_glade" echo " * rsvg-sharp.dll: $enable_rsvg " echo " * gtkhtml-sharp.dll: $enable_gtkhtml " echo " * vte-sharp.dll: $enable_vte " echo " * gtk-dotnet.dll: $enable_dotnet " echo "" echo " NOTE: if any of the above say 'no' you may install the" echo " corresponding development packages for them, rerun" echo " autogen.sh to include them in the build." echo "" echo " * Documentation build enabled: $enable_monodoc " if test "x$enable_monodoc" = "xyes" -a "x$doc_sources_dir" != "x$prefix/lib/monodoc/sources"; then echo " WARNING: The install prefix is different than the monodoc prefix." echo " Monodoc will not be able to load the documentation." fi echo "---"