3 # -- I N I T --------------------------------------------------
5 AC_INIT([Synfig Studio],[0.62.01],[http://synfig.org/Bugs],[synfigstudio])
6 AM_CONDITIONAL(DEVELOPMENT_SNAPSHOT, true)
9 AC_CONFIG_AUX_DIR(config)
10 AC_CONFIG_HEADERS([config.h])
12 dnl AC_CANONICAL_TARGET
19 # -- V A R I A B L E S ----------------------------------------
21 SVN_REPOSITORY=https://synfig.svn.sourceforge.net/svnroot/synfig/synfig-studio
23 # -- P R O G R A M S ------------------------------------------
39 AC_DEFINE(SHOW_EXTRA_INFO,[],[Show extra info in the about dialog])
46 AC_ARG_BRANCH_PROBABILITIES
50 --enable-g5opt enable optimizations specific to G5 proc],[
51 G5OPTFLAGS="-mpowerpc-gpopt -mno-multiple -mno-update -mcpu=970 -mtune=970 -falign-loops=16 -falign-functions=16"
64 AC_SUBST(LIBTOOL_DEPS)
67 ## FIXME: add i18n for .desktop and other non-compiled files
68 ## AM_GLIB_GNU_GETTEXT([external])
69 ## AC_PROG_INTLTOOL(0.11)
70 ALL_LINGUAS="ca fr es it ru de en_GB zh_CN"
71 AM_GNU_GETTEXT([external])
72 # This is here so autoreconf will run autopoint
73 AM_GNU_GETTEXT_VERSION([0.15])
77 AM_CONDITIONAL(WIN32_PKG, true)
78 AM_CONDITIONAL(MACOSX_PKG, false)
81 AM_CONDITIONAL(WIN32_PKG, false)
82 AM_CONDITIONAL(MACOSX_PKG, true)
83 AC_DEFINE(USE_OPEN_FOR_URLS,[],[On MacOS X "open <URL>" works, on Linux it tries to open a virtual console.] )
86 AM_CONDITIONAL(WIN32_PKG, false)
87 AM_CONDITIONAL(MACOSX_PKG, false)
90 # -- L I B R A R I E S ----------------------------------------
92 PKG_CHECK_MODULES(GTKMM, gtkmm-2.4 gthread-2.0,[
93 AC_MSG_CHECKING([for Gtk::AboutDialog::set_program_name])
94 synfigstudio_save_cxxflags="$CXXFLAGS"
95 CXXFLAGS="$GTKMM_CFLAGS $CXXFLAGS"
99 [#include <gtkmm/aboutdialog.h>]
101 [Gtk::AboutDialog about; about.set_program_name(PACKAGE_NAME)]
105 AC_DEFINE(HAVE_GTK_ABOUTDIALOG_SET_PROGRAM_NAME,[],[Define if GTKmm provides Gtk::AboutDialog::set_program_name()] )
106 AM_CONDITIONAL(HAVE_GTK_ABOUTDIALOG_SET_PROGRAM_NAME,true)
109 AM_CONDITIONAL(HAVE_GTK_ABOUTDIALOG_SET_PROGRAM_NAME,false)
112 CXXFLAGS="$synfigstudio_save_cxxflags"
113 AC_MSG_CHECKING([for Gtk::AboutDialog::set_wrap_license])
114 synfigstudio_save_cxxflags="$CXXFLAGS"
115 CXXFLAGS="$GTKMM_CFLAGS $CXXFLAGS"
119 [#include <gtkmm/aboutdialog.h>]
121 [Gtk::AboutDialog about; about.set_wrap_license(true)]
125 AC_DEFINE(HAVE_GTK_ABOUTDIALOG_SET_WRAP_LICENSE,[],[Define if GTKmm provides Gtk::AboutDialog::set_wrap_license()] )
126 AM_CONDITIONAL(HAVE_GTK_ABOUTDIALOG_SET_WRAP_LICENSE,true)
129 AM_CONDITIONAL(HAVE_GTK_ABOUTDIALOG_SET_WRAP_LICENSE,false)
132 CXXFLAGS="$synfigstudio_save_cxxflags"
134 AC_MSG_ERROR([ ** Gtkmm-2.4 Is a required library, aborting.])
136 AC_SUBST(GTKMM_CFLAGS)
139 PKG_CHECK_MODULES(SYNFIG, [synfig >= 0.62.01] [ETL >= 0.04.13] sigc++-2.0,,[
140 AC_MSG_ERROR([ ** Unable to set up dependent libraries (synfig >= 0.62.01, ETL >= 0.04.13)])
142 AC_SUBST(SYNFIG_CFLAGS)
143 AC_SUBST(SYNFIG_LIBS)
146 AC_DEFINE(STUDIO_WINSYS_H,"gtkmm/winsys.h",[blah])
147 AM_CONDITIONAL(WINDOWSYS_GTKMM,true)
149 AC_ARG_WITH(userdir,[
150 --with-userdir=(dirname) Relative path to user directory],[
154 with_userdir="Synfig"
157 with_userdir="Library/Synfig"
160 with_userdir=".synfig"
164 AC_DEFINE_UNQUOTED(SYNFIG_USER_APP_DIR,"$with_userdir",[Synfig User Data Directory])
166 # --- FMOD CHECK -------------
167 AC_ARG_WITH(libfmod,[
168 --with-libfmod Enable support for FMOD],[
170 AC_CHECK_LIB(fmod, FSOUND_Init,[
176 if test $with_libfmod = "yes" ; then {
177 AM_CONDITIONAL(WITH_FMOD,true)
178 FMOD_LIBS="/usr/lib/libfmod.so"
179 AC_DEFINE(WITH_FMOD,"I'm here damnit",[blah])
181 AM_CONDITIONAL(WITH_FMOD,false)
185 # Check for unordered_map or hash_map headers
186 AC_MSG_CHECKING([for unordered_map<int,int>::const_iterator])
189 [#include <tr1/unordered_map>]
191 [std::tr1::unordered_map<int,int>::const_iterator iter;]
194 AC_DEFINE([HASH_MAP_CLASS],[HASH_MAP_NAMESPACE::unordered_map],[The template name for unordered maps.])
195 AC_DEFINE([HASH_MAP_H],[<tr1/unordered_map>],[The header file to include for unordered maps.])
196 AC_DEFINE([HASH_MAP_NAMESPACE],[std::tr1],[The namespace for unordered maps.])
197 AC_DEFINE([FUNCTIONAL_H],[<tr1/functional>],[The header file for hash<T>.])
198 AC_DEFINE([FUNCTIONAL_HASH_ON_STRING],[1],[Define to 1 if hash<T> needs to use T=String rather than T=char* to hash strings.])
201 AC_CHECK_HEADERS([ext/hash_map],[
202 AC_DEFINE([HASH_MAP_CLASS],[HASH_MAP_NAMESPACE::hash_map],[The template name for unordered maps.])
203 AC_DEFINE([HASH_MAP_H],[<ext/hash_map>],[The header file to include for unordered maps.])
204 AC_DEFINE([HASH_MAP_NAMESPACE],[__gnu_cxx],[The namespace for unordered maps.])
205 AC_DEFINE([FUNCTIONAL_H],[<ext/functional>],[The header file for hash<T>.])
207 AC_MSG_ERROR([C++ compiler does not seem to support unordered containers])
211 # Check for unordered_set or hash_set headers
212 AC_MSG_CHECKING([for unordered_set<int,int>::const_iterator])
215 [#include <tr1/unordered_set>]
217 [std::tr1::unordered_set<int,int>::const_iterator iter;]
220 AC_DEFINE([HASH_SET_CLASS],[HASH_SET_NAMESPACE::unordered_set],[The template name for unordered sets.])
221 AC_DEFINE([HASH_SET_H],[<tr1/unordered_set>],[The header file to include for unordered sets.])
222 AC_DEFINE([HASH_SET_NAMESPACE],[std::tr1],[The namespace for unordered sets.])
225 AC_CHECK_HEADERS([ext/hash_set],[
226 AC_DEFINE([HASH_SET_CLASS],[HASH_SET_NAMESPACE::hash_set],[The template name for unordered sets.])
227 AC_DEFINE([HASH_SET_H],[<ext/hash_set>],[The header file to include for unordered sets.])
228 AC_DEFINE([HASH_SET_NAMESPACE],[__gnu_cxx],[The namespace for unordered sets.])
230 AC_MSG_ERROR([C++ compiler does not seem to support unordered containers])
234 # -- H E A D E R S --------------------------------------------
236 AC_CHECK_HEADERS([unistd.h signal.h fcntl.h])
237 AC_CHECK_HEADERS([sys/types.h sys/wait.h sys/stat.h sys/time.h sys/resource.h sys/errno.h])
239 # -- T Y P E S & S T R U C T S --------------------------------
241 # -- F U N C T I O N S ----------------------------------------
243 AC_CHECK_FUNCS([fork])
244 AC_CHECK_FUNCS([kill])
245 AC_CHECK_FUNCS([pipe])
246 AC_CHECK_FUNCS([setpriority mkfifo stat])
248 # -- A R G U M E N T S ----------------------------------------
250 # -- O U T P U T ----------------------------------------------
256 AC_SUBST(SVN_REPOSITORY)
258 AC_SUBST(API_VERSION)
266 imagedir="${datadir}/pixmaps/synfigstudio"
269 AC_CONFIG_FILES([Makefile
277 synfigstudio-thumbnailer.schemas
280 src/synfigapp/Makefile
283 pkg-info/macosx/synfig-studio.info
287 # -- S U M M A R Y --------------------------------------------
290 $PACKAGE_NAME v.$VERSION
291 Configuration Summary
294 Install Prefix -------------------> $prefix
295 Host Platform --------------------> $host
296 Icon Format ----------------------> $imageext
297 Debug Mode -----------------------> $debug
298 Profiling Mode -------------------> $profiling
299 Optimizations --------------------> $optimization
300 Window System --------------------> $windowsys
301 FMOD Enabled ---------------------> $with_libfmod
303 "'$'"CXX ------------------------------> '$CXX'
304 "'$'"CXXFLAGS -------------------------> '$CXXFLAGS'
305 "'$'"LDFLAGS --------------------------> '$LDFLAGS'
306 "'$'"SYNFIG_CFLAGS ---------------------> '$SYNFIG_CFLAGS'
307 "'$'"SYNFIG_LIBS -----------------------> '$SYNFIG_LIBS'
308 "'$'"GTKMM_CFLAGS ---------------------> '$GTKMM_CFLAGS'
309 "'$'"GTKMM_LIBS -----------------------> '$GTKMM_LIBS'