| 1 | AC_INIT([langupdate], [0.0.6], [codehelp@debian.org]) |
|---|
| 2 | |
|---|
| 3 | AC_PREFIX_DEFAULT(/usr/local) |
|---|
| 4 | AC_PREREQ(2.53) |
|---|
| 5 | AC_CONFIG_HEADER([config.h]) |
|---|
| 6 | |
|---|
| 7 | VERSION=AC_PACKAGE_VERSION |
|---|
| 8 | PACKAGE=AC_PACKAGE_NAME |
|---|
| 9 | AC_SUBST(VERSION) |
|---|
| 10 | AC_SUBST(PACKAGE) |
|---|
| 11 | |
|---|
| 12 | AC_CANONICAL_HOST |
|---|
| 13 | AC_CANONICAL_SYSTEM |
|---|
| 14 | |
|---|
| 15 | AM_INIT_AUTOMAKE([$PACKAGE], [$VERSION]) |
|---|
| 16 | |
|---|
| 17 | AC_PROG_INTLTOOL |
|---|
| 18 | INTLTOOLIZE=${INTLTOOLIZE:-intltoolize} |
|---|
| 19 | |
|---|
| 20 | AC_ISC_POSIX |
|---|
| 21 | AC_PROG_CC |
|---|
| 22 | AC_PROG_CXX |
|---|
| 23 | AC_PROG_CPP |
|---|
| 24 | AM_PROG_CC_STDC |
|---|
| 25 | AC_HEADER_STDC |
|---|
| 26 | AC_PROG_INSTALL |
|---|
| 27 | AC_PROG_LN_S |
|---|
| 28 | AC_PROG_MAKE_SET |
|---|
| 29 | AM_PROG_LIBTOOL |
|---|
| 30 | AC_C_CONST |
|---|
| 31 | AC_HEADER_STDBOOL |
|---|
| 32 | |
|---|
| 33 | GETTEXT_PACKAGE=langupdate |
|---|
| 34 | AC_SUBST(GETTEXT_PACKAGE) |
|---|
| 35 | AC_DEFINE_UNQUOTED(GETTEXT_PACKAGE, "$GETTEXT_PACKAGE", [langupdate]) |
|---|
| 36 | AM_GLIB_GNU_GETTEXT |
|---|
| 37 | AC_CHECK_FUNCS([setlocale]) |
|---|
| 38 | AC_CHECK_HEADERS([locale.h string.h unistd.h]) |
|---|
| 39 | |
|---|
| 40 | dnl ********************************************** |
|---|
| 41 | dnl Read the host arch into the apt cache config. |
|---|
| 42 | dnl ********************************************** |
|---|
| 43 | |
|---|
| 44 | lu_host_cpu=$host_cpu |
|---|
| 45 | if test "x$lu_host_cpu" = "xx86_64"; then |
|---|
| 46 | lu_host_cpu="amd64" |
|---|
| 47 | fi |
|---|
| 48 | AC_DEFINE_UNQUOTED(HOST_CPU, "$lu_host_cpu", [Host type]) |
|---|
| 49 | |
|---|
| 50 | lu_build_cpu=$build_cpu |
|---|
| 51 | if test "x$lu_build_cpu" = "xx86_64"; then |
|---|
| 52 | lu_build_cpu="amd64" |
|---|
| 53 | fi |
|---|
| 54 | AC_DEFINE_UNQUOTED(BUILD_CPU, "$lu_build_cpu", [Build machine]) |
|---|
| 55 | |
|---|
| 56 | dnl ************************************* |
|---|
| 57 | dnl GLib |
|---|
| 58 | dnl ************************************* |
|---|
| 59 | |
|---|
| 60 | AC_PATH_PROG(PKG_CONFIG,pkg-config) |
|---|
| 61 | AM_PATH_GLIB_2_0("2.14.0", , ,gobject) |
|---|
| 62 | if test "x$PKG_CONFIG" != x; then |
|---|
| 63 | GLIB_LIBS=`$PKG_CONFIG --libs glib-2.0` |
|---|
| 64 | GLIB_CFLAGS=`$PKG_CONFIG --cflags glib-2.0` |
|---|
| 65 | GOBJECT_LIBS=`$PKG_CONFIG --libs gobject-2.0` |
|---|
| 66 | GMODULE_LIBS=`$PKG_CONFIG --libs gmodule-2.0` |
|---|
| 67 | fi |
|---|
| 68 | AC_SUBST(GLIB_CFLAGS) |
|---|
| 69 | AC_SUBST(GLIB_LIBS) |
|---|
| 70 | AC_SUBST(GOBJECT_LIBS) |
|---|
| 71 | AC_SUBST(GMODULE_LIBS) |
|---|
| 72 | |
|---|
| 73 | dnl ***************** |
|---|
| 74 | dnl apt |
|---|
| 75 | dnl ***************** |
|---|
| 76 | AC_CHECK_LIB(apt-pkg, main, , |
|---|
| 77 | [AC_MSG_ERROR([Can't find the APT libraries -- please install libapt-pkg-dev])]) |
|---|
| 78 | |
|---|
| 79 | dnl ****************************** |
|---|
| 80 | dnl Defaults for GCC |
|---|
| 81 | dnl ****************************** |
|---|
| 82 | if test "x$GCC" = "xyes"; then |
|---|
| 83 | CFLAGS=${CFLAGS:-"-g2 -Wall"} |
|---|
| 84 | CXXFLAGS=${CXXFLAGS:-"-g2 -Wall"} |
|---|
| 85 | fi |
|---|
| 86 | |
|---|
| 87 | dnl ************************************* |
|---|
| 88 | dnl Check for xsltproc |
|---|
| 89 | dnl ************************************* |
|---|
| 90 | if test ! -f /etc/xml/catalog; then |
|---|
| 91 | for i in /usr/share/sgml/docbook/stylesheet/xsl/nwalsh /usr/share/docbook2X/xslt/man/ /usr/share/xml/docbook/stylesheet/nwalsh/manpages/ /sw/share/xml/xsl/docbook-xsl; |
|---|
| 92 | do |
|---|
| 93 | if test -d "$i"; then |
|---|
| 94 | DOCBOOK_ROOT=$i |
|---|
| 95 | fi |
|---|
| 96 | done |
|---|
| 97 | # Last resort - try net |
|---|
| 98 | if test -z "$DOCBOOK_ROOT"; then |
|---|
| 99 | XSLTPROC_FLAGS= |
|---|
| 100 | fi |
|---|
| 101 | else |
|---|
| 102 | XML_CATALOG=/etc/xml/catalog |
|---|
| 103 | CAT_ENTRY_START='<!--' |
|---|
| 104 | CAT_ENTRY_END='-->' |
|---|
| 105 | fi |
|---|
| 106 | |
|---|
| 107 | AM_CONDITIONAL(BUILD_XML,[test -d "${srcdir}/.svn"]) |
|---|
| 108 | if test -d "${srcdir}/.svn" ; then |
|---|
| 109 | |
|---|
| 110 | # It's just rude to go over the net to build |
|---|
| 111 | XSLTPROC_FLAGS=--nonet |
|---|
| 112 | DOCBOOK_ROOT= |
|---|
| 113 | XSLTROOT="../../doc/xml" |
|---|
| 114 | case "$host" in |
|---|
| 115 | *darwin*) |
|---|
| 116 | DOCBOOK_ROOT="/sw/share/xml/xsl/docbook-xsl" |
|---|
| 117 | XSLTROOT="/sw/share/xml/xsl/docbook-xsl/manpages/" |
|---|
| 118 | XSLTPROC_FLAGS="$XSLTPROC_FLAGS --novalid" |
|---|
| 119 | ;; |
|---|
| 120 | *redhat*) |
|---|
| 121 | XSLTPROC_FLAGS="$XSLTPROC_FLAGS --novalid" |
|---|
| 122 | ;; |
|---|
| 123 | esac |
|---|
| 124 | AC_SUBST(XSLTROOT) |
|---|
| 125 | |
|---|
| 126 | AC_CHECK_PROG(XSLTPROC,xsltproc,xsltproc,) |
|---|
| 127 | XSLTPROC_WORKS=no |
|---|
| 128 | if test -n "$XSLTPROC"; then |
|---|
| 129 | AC_MSG_CHECKING([whether xsltproc works]) |
|---|
| 130 | |
|---|
| 131 | if test -n "$XML_CATALOG"; then |
|---|
| 132 | DB_FILE="http://docbook.sourceforge.net/release/xsl/current/xhtml/docbook.xsl" |
|---|
| 133 | else |
|---|
| 134 | DB_FILE="$XSLTROOT/docbook.xsl" |
|---|
| 135 | fi |
|---|
| 136 | $XSLTPROC $XSLTPROC_FLAGS $DB_FILE << END |
|---|
| 137 | <?xml version="1.0" encoding='ISO-8859-1'?> |
|---|
| 138 | <!DOCTYPE book PUBLIC "-//OASIS//DTD DocBook XML V4.1.2//EN" |
|---|
| 139 | "http://www.oasis-open.org/docbook/xml/4.1.2/docbookx.dtd"> |
|---|
| 140 | <book id="test"> |
|---|
| 141 | </book> |
|---|
| 142 | END |
|---|
| 143 | if test "$?" = 0; then |
|---|
| 144 | XSLTPROC_WORKS=yes |
|---|
| 145 | fi |
|---|
| 146 | AC_MSG_RESULT($XSLTPROC_WORKS) |
|---|
| 147 | fi |
|---|
| 148 | fi |
|---|
| 149 | AM_CONDITIONAL(have_xsltproc, test "$XSLTPROC_WORKS" = "yes") |
|---|
| 150 | |
|---|
| 151 | AC_SUBST(XML_CATALOG) |
|---|
| 152 | AC_SUBST(XSLTPROC_FLAGS) |
|---|
| 153 | AC_SUBST(DOCBOOK_ROOT) |
|---|
| 154 | AC_SUBST(CAT_ENTRY_START) |
|---|
| 155 | AC_SUBST(CAT_ENTRY_END) |
|---|
| 156 | AC_SUBST(XSLTPROC) |
|---|
| 157 | |
|---|
| 158 | dnl ************************************* |
|---|
| 159 | dnl Extra warnings |
|---|
| 160 | dnl ************************************* |
|---|
| 161 | AC_MSG_CHECKING(what extra warning flags to pass to the C compiler) |
|---|
| 162 | if test ${GCC}x = yesx; then |
|---|
| 163 | warnFLAGS= |
|---|
| 164 | CFLAGS="${CFLAGS} -g2 -Wall" |
|---|
| 165 | AC_ARG_ENABLE(error-on-warning, |
|---|
| 166 | [ --disable-error-on-warning disable treating compile warnings as errors], |
|---|
| 167 | [case "${enableval}" in |
|---|
| 168 | yes) warnFLAGS="${warnFLAGS} -Werror" |
|---|
| 169 | CXXFLAGS="${CXXFLAGS} -Werror" ;; |
|---|
| 170 | no) ;; |
|---|
| 171 | *) AC_MSG_ERROR(bad value ${enableval} for --enable-error-on-warning) ;; |
|---|
| 172 | esac], |
|---|
| 173 | [ warnFLAGS="${warnFLAGS} -Werror" ]) |
|---|
| 174 | GCC_VERSION=`${CC} -dumpversion` |
|---|
| 175 | if test `echo ${GCC_VERSION} | cut -d. -f1` -ge 3; then |
|---|
| 176 | # This is gcc >= 3.x.x |
|---|
| 177 | if test `echo ${GCC_VERSION} | cut -d. -f2` -ge 4; then |
|---|
| 178 | # This is gcc >= 3.4.x |
|---|
| 179 | warnFLAGS="${warnFLAGS} -Wdeclaration-after-statement" |
|---|
| 180 | else if test `echo ${GCC_VERSION} | cut -d. -f1` -ge 4; then |
|---|
| 181 | # This is gcc == 4.x.x |
|---|
| 182 | warnFLAGS="${warnFLAGS} -Wdeclaration-after-statement -Wno-pointer-sign" |
|---|
| 183 | LDFLAGS="${LDFLAGS} -Wl,--as-needed" |
|---|
| 184 | fi |
|---|
| 185 | fi |
|---|
| 186 | else if test `echo ${GCC_VERSION} | cut -d. -f1` -ge 4; then |
|---|
| 187 | # This is gcc == 4.x.x |
|---|
| 188 | warnFLAGS="${warnFLAGS} -Wdeclaration-after-statement -Wno-pointer-sign" |
|---|
| 189 | fi |
|---|
| 190 | fi |
|---|
| 191 | CFLAGS="${CFLAGS} ${warnFLAGS}" |
|---|
| 192 | else |
|---|
| 193 | warnFLAGS= |
|---|
| 194 | fi |
|---|
| 195 | AC_MSG_RESULT($warnFLAGS) |
|---|
| 196 | |
|---|
| 197 | set_compile_warnings=no |
|---|
| 198 | |
|---|
| 199 | AC_ARG_ENABLE(compile-warnings, |
|---|
| 200 | [ --enable-compile-warnings |
|---|
| 201 | Enable verbose compiler warnings], |
|---|
| 202 | set_compile_warnings=yes) |
|---|
| 203 | |
|---|
| 204 | if test "$GCC" = "yes" -a "$set_compile_warnings" != "no"; then |
|---|
| 205 | CXXFLAGS="$CXXFLAGS -Wcast-align -Winline -Wsign-compare -Wall -Wpointer-arith" |
|---|
| 206 | fi |
|---|
| 207 | |
|---|
| 208 | case "$host" in |
|---|
| 209 | *bsd*) |
|---|
| 210 | AC_DEFINE(TTYPrompt, "/dev/cua[<0..n>]", [Define verbose tty device]) |
|---|
| 211 | ;; |
|---|
| 212 | *) |
|---|
| 213 | AC_DEFINE(TTYPrompt, "/dev/tty[<0..n>]", [Define verbose tty device]) |
|---|
| 214 | ;; |
|---|
| 215 | esac |
|---|
| 216 | |
|---|
| 217 | |
|---|
| 218 | dnl ************************************* |
|---|
| 219 | dnl Promote warnings to errors |
|---|
| 220 | dnl ************************************* |
|---|
| 221 | dnl (already done) enable_werror=no |
|---|
| 222 | |
|---|
| 223 | AC_ARG_ENABLE(compile-werror, |
|---|
| 224 | [ --enable-compile-werror |
|---|
| 225 | Causes all warnings to be treated as errors in GCC], |
|---|
| 226 | enable_werror=yes) |
|---|
| 227 | if test "x$GCC" = "xyes" -a "x$enable_wall" = "xyes"; then |
|---|
| 228 | CFLAGS="$CFLAGS -Wall" |
|---|
| 229 | CXXFLAGS="$CXXFLAGS -Wall" |
|---|
| 230 | fi |
|---|
| 231 | |
|---|
| 232 | AC_OUTPUT([ |
|---|
| 233 | Makefile |
|---|
| 234 | doc/Makefile |
|---|
| 235 | doc/xml/Makefile |
|---|
| 236 | doc/xml/catalog.xml |
|---|
| 237 | doc/xml/docbook.xsl |
|---|
| 238 | doc/man/Makefile |
|---|
| 239 | po/Makefile.in |
|---|
| 240 | src/Makefile |
|---|
| 241 | ]) |
|---|