Update gnulib files.
[platform/upstream/libtasn1.git] / configure.ac
1 dnl Process this file with autoconf to produce a configure script.
2 # Copyright (C) 2002, 2003, 2004, 2005, 2006, 2007, 2008 Free Software Foundation
3 #
4 # This file is part of LIBTASN1.
5 #
6 # This program is free software: you can redistribute it and/or modify
7 # it under the terms of the GNU General Public License as published by
8 # the Free Software Foundation, either version 3 of the License, or
9 # (at your option) any later version.
10 #
11 # This program is distributed in the hope that it will be useful,
12 # but WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
14 # GNU General Public License for more details.
15 #
16 # You should have received a copy of the GNU General Public License
17 # along with this program.  If not, see <http://www.gnu.org/licenses/>.
18
19 AC_PREREQ(2.61)
20 AC_INIT([libtasn1], [2.0], [bug-gnutls@gnu.org])
21 AC_CONFIG_AUX_DIR([build-aux])
22 AC_CONFIG_MACRO_DIR([m4])
23 AC_CONFIG_HEADERS(config.h)
24 AM_INIT_AUTOMAKE([1.10 -Wall -Werror -Wno-override])
25
26 # Library code modified:                              REVISION++
27 # Interfaces changed/added/removed:   CURRENT++       REVISION=0
28 # Interfaces added:                             AGE++
29 # Interfaces removed:                           AGE=0
30 AC_SUBST(LT_CURRENT, 5)
31 AC_SUBST(LT_REVISION, 0)
32 AC_SUBST(LT_AGE, 0)
33
34 AC_PROG_CC
35 gl_EARLY
36 AC_PROG_YACC
37 AC_PROG_LN_S
38
39 dnl Checks for programs.
40 AC_PROG_INSTALL
41 AM_MISSING_PROG(PERL, perl, $missing_dir)
42 AM_MISSING_PROG(HELP2MAN, help2man, $missing_dir)
43
44 AC_LIBTOOL_WIN32_DLL
45 AM_PROG_LIBTOOL
46
47 AC_CHECK_SIZEOF(unsigned long int, 4)
48 AC_CHECK_SIZEOF(unsigned int, 4)
49
50 sj_VALGRIND
51 sj_LINKER_SCRIPT
52 sj_UPDATE_HEADER_VERSION([$srcdir/lib/libtasn1.h])
53
54 # Check for gtk-doc.
55 GTK_DOC_CHECK(1.2)
56
57 # For gnulib compatibility modules in gl/.
58 gl_INIT
59
60 # Disable useless warnings.
61 W=
62 W="$W -Wsystem-headers"         # Don't let system headers trigger warnings
63 W="$W -Wc++-compat"             # We don't care strongly about C++ compilers
64 W="$W -Wtraditional"            # Warns on #elif which we use often
65 W="$W -Wtraditional-conversion" # Too many warnings for now
66 W="$W -Wconversion"             # Too many warnings for now
67 W="$W -Wsign-conversion"        # Too many warnings for now
68 W="$W -Wold-style-definition"   # 
69 W="$W -Wpadded"                 # Our structs are not padded
70 W="$W -Wundef"                  # 
71 W="$W -Wunreachable-code"       # Too many false positives
72 W="$W -Wunsafe-loop-optimizations"
73 W="$W -Wstrict-overflow"
74 gl_MANYWARN_ALL_GCC([WARNINGS])
75 gl_MANYWARN_COMPLEMENT(WARNINGS, [$WARNINGS], [$W])
76 for w in $WARNINGS; do
77   gl_WARN_ADD([$w])
78 done
79 gl_WARN_ADD([-Wno-missing-field-initializers])
80 gl_WARN_ADD([-Wno-sign-compare])
81 gl_WARN_ADD([-Wno-pointer-sign])
82 gl_WARN_ADD([-Wno-unused-parameter])
83 gl_WARN_ADD([-fdiagnostics-show-option])
84
85 AC_CONFIG_FILES([
86   Makefile
87   doc/Makefile
88   doc/cyclo/Makefile
89   doc/reference/Makefile
90   examples/Makefile
91   gl/Makefile
92   lib/Makefile
93   lib/libtasn1.pc
94   src/Makefile
95   tests/Makefile
96 ])
97 AC_OUTPUT
98
99 AC_MSG_NOTICE([summary of build options:
100
101   version:          ${VERSION} shared $LT_CURRENT:$LT_REVISION:$LT_AGE
102   Host type:        ${host}
103   Install prefix:   ${prefix}
104   Compiler:         ${CC}
105   Warning flags:    ${WARN_CFLAGS}
106   Library types:    Shared=${enable_shared}, Static=${enable_static}
107   Valgrind:         ${VALGRIND}
108   Linker script:    $have_ld_version_script
109 ])