1AC_PREREQ(2.63)
2
3# Package
4
5AC_INIT([unico],[1.0.2],[https://bugs.launchpad.net/unico],[unico])
6AC_CONFIG_SRCDIR([unico/unico.h])
7AC_CONFIG_MACRO_DIR([build])
8AC_CONFIG_AUX_DIR([build])
9AC_CONFIG_HEADERS([config.h])
10AM_INIT_AUTOMAKE([1.9 foreign dist-bzip2])
11m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])])
12
13NANO=`echo AC_PACKAGE_VERSION | cut -d'.' -f4`
14if test x"$NANO" = x || test "x$NANO" = "x0" ; then
15    UNICO_TRUNK="no"
16    PACKAGE_VERSION_NANO="0"
17else
18    UNICO_TRUNK="yes"
19    PACKAGE_VERSION_NANO="$NANO"
20fi
21AC_SUBST(UNICO_TRUNK)
22AC_SUBST(PACKAGE_VERSION_NANO)
23
24AC_USE_SYSTEM_EXTENSIONS
25AC_PROG_CC
26AM_PROG_CC_C_O
27LT_INIT
28AC_C_CONST
29AC_C_INLINE
30
31# Build dependencies
32
33AC_PATH_PROG([GLIB_MKENUMS], [glib-mkenums])
34AC_PATH_PROG([GLIB_GENMARSHAL], [glib-genmarshal])
35PKG_PROG_PKG_CONFIG
36
37AC_SUBST(glib_req, 2.26.0)
38AC_SUBST(gtk_req, 3.5.2)
39AC_SUBST(cairo_req, 1.10)
40
41PKG_CHECK_MODULES(DEPS, glib-2.0 >= $glib_req gtk+-3.0 >= $gtk_req cairo >= $cairo_req)
42AC_SUBST(DEPS_CFLAGS)
43AC_SUBST(DEPS_LIBS)
44
45# Debug flags
46
47if test x$UNICO_TRUNK = xyes; then
48    DEFAULT_DEBUG="yes"
49else
50    DEFAULT_DEBUG="no"
51fi
52AC_SUBST(DEFAULT_DEBUG)
53AC_ARG_ENABLE([debug],
54              [AS_HELP_STRING([--enable-debug=@<:@no/yes/full@:>@],[Control debug level @<:@default=debug_default@:>@])],
55              [], [enable_debug=$DEFAULT_DEBUG])
56AS_CASE([$enable_debug],
57        [yes],
58        [
59          test "$cflags_set" = set || CFLAGS="$CFLAGS -g"
60          DEBUG_CFLAGS="-D_DEBUG"
61        ],
62        [no],
63        [DEBUG_CFLAGS="-DNDEBUG"],
64        [AC_MSG_ERROR([Unknown argument for --enable-debug])]
65)
66AC_SUBST(DEBUG_CFLAGS)
67
68# Maintainer flags
69
70if test x$UNICO_TRUNK = xyes; then
71    DEFAULT_MAINTAINER_FLAGS="yes"
72else
73    DEFAULT_MAINTAINER_FLAGS="no"
74fi
75AC_SUBST(DEFAULT_MAINTAINER_FLAGS)
76AC_ARG_ENABLE([maintainer-flags],
77              [AS_HELP_STRING([--enable-maintainer-flags=@<:@no/yes@:>@],[Use strict compiler flags @<:@default=maintainer_flags_default@:>@])],
78              [],
79              [enable_maintainer_flags=$DEFAULT_MAINTAINER_FLAGS])
80AS_IF([test "x$enable_maintainer_flags" = "xyes" && test "x$GCC" = "xyes"],
81      [
82        AS_COMPILER_FLAGS([MAINTAINER_CFLAGS],
83                          ["-fno-common -Wall -Wextra -Werror -Wempty-body
84                            -Wno-missing-field-initializers -Wstrict-aliasing=2
85                            -Wno-unused-parameter -Wdeclaration-after-statement
86                            -Wpointer-arith -Wcast-align -Wwrite-strings
87                            -Wformat-security -Wformat-nonliteral -Winit-self
88                            -Wmissing-declarations -Wnested-externs -Wundef
89                            -Wold-style-definition -Wswitch-default
90                            -Wredundant-decls"])
91      ]
92)
93AC_SUBST(MAINTAINER_CFLAGS)
94
95# Variables
96
97UNICO_LIBADD="\$(DEPS_LIBS)"
98AC_SUBST(UNICO_LIBADD)
99
100UNICO_CFLAGS="-I\$(top_srcdir) -DUNICO_COMPILATION \$(DEPS_CFLAGS) \$(DEBUG_CFLAGS) \$(MAINTAINER_CFLAGS)"
101AC_SUBST(UNICO_CFLAGS)
102
103UNICO_LDFLAGS="-module -avoid-version -no-undefined"
104AC_SUBST(UNICO_LDFLAGS)
105
106GTK_VERSION=`$PKG_CONFIG --variable=gtk_binary_version gtk+-3.0`
107AC_SUBST(GTK_VERSION)
108
109# Files
110
111AC_CONFIG_FILES([
112Makefile
113build/Makefile
114po/Makefile
115unico/Makefile
116])
117AC_OUTPUT
118
119# Summary
120
121echo ""
122echo "  unico $PACKAGE_VERSION"
123echo "  ========================="
124echo ""
125echo "  Debug:  ${enable_debug}"
126echo "  Prefix: ${prefix}"
127echo ""
128echo "  Compiler flags: ${CPPFLAGS} ${DEBUG_CFLAGS} ${MAINTAINER_CFLAGS}"
129echo ""
130