]>
Commit | Line | Data |
---|---|---|
970f6abe VZ |
1 | # configure.ac |
2 | ||
3 | dnl Process this file with autoconf to produce a configure script. | |
4 | dnl | |
5 | dnl Minor upgrades (compatible ABI): increment the package version | |
6 | dnl (third field in two places below) and set the PNGLIB_RELEASE | |
7 | dnl variable. | |
8 | dnl | |
9 | dnl Major upgrades (incompatible ABI): increment the package major | |
10 | dnl version (second field, or first if desired), set the minor | |
11 | dnl to 0, set PNGLIB_MAJOR below *and* follow the instructions in | |
12 | dnl Makefile.am to upgrade the package name. | |
13 | ||
14 | dnl This is here to prevent earlier autoconf from being used, it | |
15 | dnl should not be necessary to regenerate configure if the time | |
16 | dnl stamps are correct | |
17 | AC_PREREQ(2.59) | |
18 | ||
19 | dnl Version number stuff here: | |
20 | ||
21 | AC_INIT([libpng], [1.2.34], [png-mng-implement@lists.sourceforge.net]) | |
22 | AM_INIT_AUTOMAKE | |
23 | dnl stop configure from automagically running automake | |
24 | AM_MAINTAINER_MODE | |
25 | ||
26 | PNGLIB_VERSION=1.2.34 | |
27 | PNGLIB_MAJOR=1 | |
28 | PNGLIB_MINOR=2 | |
29 | PNGLIB_RELEASE=34 | |
30 | ||
31 | dnl End of version number stuff | |
32 | ||
33 | AC_CONFIG_SRCDIR([pngget.c]) | |
34 | AM_CONFIG_HEADER(config.h) | |
35 | ||
36 | # Checks for programs. | |
37 | AC_PROG_CC | |
38 | AC_PROG_LD | |
39 | AC_PROG_CPP | |
40 | AC_CHECK_TOOL(SED, sed, :) | |
41 | AC_LIBTOOL_WIN32_DLL | |
42 | AC_PROG_INSTALL | |
43 | AC_PROG_LN_S | |
44 | AC_PROG_MAKE_SET | |
45 | AC_PROG_LIBTOOL | |
46 | ||
47 | # Checks for header files. | |
48 | AC_HEADER_STDC | |
49 | AC_CHECK_HEADERS([malloc.h stdlib.h string.h strings.h]) | |
50 | ||
51 | # Checks for typedefs, structures, and compiler characteristics. | |
52 | AC_C_CONST | |
53 | AC_TYPE_SIZE_T | |
54 | AC_STRUCT_TM | |
55 | ||
56 | # Checks for library functions. | |
57 | AC_FUNC_STRTOD | |
58 | AC_CHECK_FUNCS([memset], , AC_ERROR([memset not found in libc])) | |
59 | AC_CHECK_FUNCS([pow], , AC_CHECK_LIB(m, pow, , AC_ERROR([cannot find pow])) ) | |
60 | AC_CHECK_LIB(z, zlibVersion, , AC_ERROR([zlib not installed])) | |
61 | ||
62 | LIBPNG_DEFINES=-DPNG_CONFIGURE_LIBPNG | |
63 | AC_MSG_CHECKING( | |
64 | [if assembler code in pnggccrd.c can be compiled without PNG_NO_MMX_CODE]) | |
65 | AC_TRY_COMPILE( | |
66 | [#include "$srcdir/pnggccrd.c"], | |
67 | [return 0;], | |
68 | AC_MSG_RESULT(yes) | |
69 | LIBPNG_NO_MMX="", | |
70 | AC_MSG_RESULT(no) | |
71 | LIBPNG_NO_MMX=-DPNG_NO_MMX_CODE) | |
72 | LIBPNG_DEFINES=$LIBPNG_DEFINES\ $LIBPNG_NO_MMX | |
73 | AC_SUBST(LIBPNG_DEFINES) | |
74 | AC_SUBST(LIBPNG_NO_MMX) | |
75 | ||
76 | AC_MSG_CHECKING([if libraries can be versioned]) | |
77 | GLD=`$LD --help < /dev/null 2>/dev/null | grep version-script` | |
78 | if test "$GLD"; then | |
79 | have_ld_version_script=yes | |
80 | AC_MSG_RESULT(yes) | |
81 | else | |
82 | have_ld_version_script=no | |
83 | AC_MSG_RESULT(no) | |
84 | AC_MSG_WARN(*** You have not enabled versioned symbols.) | |
85 | fi | |
86 | AM_CONDITIONAL(HAVE_LD_VERSION_SCRIPT, test "$have_ld_version_script" = "yes") | |
87 | ||
88 | if test "$have_ld_version_script" = "yes"; then | |
89 | AC_MSG_CHECKING([for symbol prefix]) | |
90 | SYMBOL_PREFIX=`echo "PREFIX=__USER_LABEL_PREFIX__" \ | |
91 | | ${CPP-${CC-gcc} -E} - 2>&1 \ | |
92 | | ${EGREP-grep} "^PREFIX=" \ | |
93 | | ${SED-sed} "s:^PREFIX=::"` | |
94 | AC_SUBST(SYMBOL_PREFIX) | |
95 | AC_MSG_RESULT($SYMBOL_PREFIX) | |
96 | fi | |
97 | ||
98 | # Substitutions for .in files | |
99 | AC_SUBST(PNGLIB_VERSION) | |
100 | AC_SUBST(PNGLIB_MAJOR) | |
101 | AC_SUBST(PNGLIB_MINOR) | |
102 | AC_SUBST(PNGLIB_RELEASE) | |
103 | ||
104 | # Additional arguments (and substitutions) | |
105 | # Allow the pkg-config directory to be set | |
106 | AC_ARG_WITH(pkgconfigdir, | |
107 | AC_HELP_STRING([--with-pkgconfigdir], | |
108 | [Use the specified pkgconfig dir (default is libdir/pkgconfig)]), | |
109 | [pkgconfigdir=${withval}], | |
110 | [pkgconfigdir='${libdir}/pkgconfig']) | |
111 | ||
112 | AC_SUBST([pkgconfigdir]) | |
113 | AC_MSG_NOTICE([pkgconfig directory is ${pkgconfigdir}]) | |
114 | ||
115 | # Make the *-config binary config scripts optional | |
116 | AC_ARG_WITH(binconfigs, | |
117 | AC_HELP_STRING([--with-binconfigs], | |
118 | [Generate shell libpng-config scripts as well as pkg-config data] | |
119 | [@<:@default=yes@:>@]), | |
120 | [if test "${withval}" = no; then | |
121 | binconfigs= | |
122 | AC_MSG_NOTICE([libpng-config scripts will not be built]) | |
123 | else | |
124 | binconfigs='${binconfigs}' | |
125 | fi], | |
126 | [binconfigs='${binconfigs}']) | |
127 | AC_SUBST([binconfigs]) | |
128 | ||
129 | # Allow the old version number library, libpng.so, to be removed from | |
130 | # the build | |
131 | AC_ARG_WITH(libpng-compat, | |
132 | AC_HELP_STRING([--with-libpng-compat], | |
133 | [Generate the obsolete libpng.so library @<:@default=yes@:>@]), | |
134 | [if test "${withval}" = no; then | |
135 | compatlib= | |
136 | AC_MSG_NOTICE([libpng.so will not be built]) | |
137 | else | |
138 | compatlib=libpng.la | |
139 | fi], | |
140 | [compatlib=libpng.la]) | |
141 | AC_SUBST([compatlib]) | |
142 | ||
143 | # Config files, substituting as above | |
144 | AC_CONFIG_FILES([Makefile libpng.pc:scripts/libpng.pc-configure.in]) | |
145 | AC_CONFIG_FILES([libpng-config:scripts/libpng-config.in], | |
146 | [chmod +x libpng-config]) | |
147 | ||
148 | AC_OUTPUT |