| 1 | dnl -*- mode: m4; -*- |
|---|
| 2 | |
|---|
| 3 | AC_PREREQ(2.60) |
|---|
| 4 | |
|---|
| 5 | define([PACKAGE_VERSION_MAJOR], [0]) |
|---|
| 6 | define([PACKAGE_VERSION_MINOR], [11]) |
|---|
| 7 | define([PACKAGE_VERSION_FIX], [6]) |
|---|
| 8 | |
|---|
| 9 | AC_INIT([opensc],[PACKAGE_VERSION_MAJOR.PACKAGE_VERSION_MINOR.PACKAGE_VERSION_FIX]) |
|---|
| 10 | AC_CONFIG_AUX_DIR([.]) |
|---|
| 11 | AC_CONFIG_HEADERS([config.h]) |
|---|
| 12 | AC_CONFIG_MACRO_DIR([m4]) |
|---|
| 13 | AM_INIT_AUTOMAKE([${PACKAGE_NAME}], [${PACKAGE_VERSION}]) |
|---|
| 14 | |
|---|
| 15 | OPENSC_VERSION_MAJOR="PACKAGE_VERSION_MAJOR" |
|---|
| 16 | OPENSC_VERSION_MINOR="PACKAGE_VERSION_MINOR" |
|---|
| 17 | OPENSC_VERSION_FIX="PACKAGE_VERSION_FIX" |
|---|
| 18 | |
|---|
| 19 | # LT Version numbers, remember to change them just *before* a release. |
|---|
| 20 | # (Code changed: REVISION++) |
|---|
| 21 | # (Oldest interface removed: OLDEST++) |
|---|
| 22 | # (Interfaces added: CURRENT++, REVISION=0) |
|---|
| 23 | OPENSC_LT_CURRENT="2" |
|---|
| 24 | OPENSC_LT_OLDEST="2" |
|---|
| 25 | OPENSC_LT_REVISION="0" |
|---|
| 26 | OPENSC_LT_AGE="0" |
|---|
| 27 | OPENSC_LT_AGE="$((${OPENSC_LT_CURRENT}-${OPENSC_LT_OLDEST}))" |
|---|
| 28 | |
|---|
| 29 | AC_CONFIG_SRCDIR([src/libopensc/sc.c]) |
|---|
| 30 | |
|---|
| 31 | AC_CANONICAL_HOST |
|---|
| 32 | AC_PROG_CC |
|---|
| 33 | PKG_PROG_PKG_CONFIG |
|---|
| 34 | AC_C_BIGENDIAN |
|---|
| 35 | |
|---|
| 36 | AC_MSG_CHECKING([svn checkout]) |
|---|
| 37 | if test -e "${srcdir}/packaged"; then |
|---|
| 38 | svn_checkout="no" |
|---|
| 39 | else |
|---|
| 40 | svn_checkout="yes" |
|---|
| 41 | fi |
|---|
| 42 | AC_MSG_RESULT([${svn_checkout}]) |
|---|
| 43 | |
|---|
| 44 | AC_ARG_WITH( |
|---|
| 45 | [cygwin-native], |
|---|
| 46 | [AS_HELP_STRING([--with-cygwin-native],[compile native win32])], |
|---|
| 47 | , |
|---|
| 48 | [with_cygwin_native="no"] |
|---|
| 49 | ) |
|---|
| 50 | |
|---|
| 51 | dnl Check for some target-specific stuff |
|---|
| 52 | test -z "${WIN32}" && WIN32="no" |
|---|
| 53 | test -z "${CYGWIN}" && CYGWIN="no" |
|---|
| 54 | case "${host}" in |
|---|
| 55 | *-*-hpux*) |
|---|
| 56 | CPPFLAGS="${CPPFLAGS} -D_HPUX_SOURCE -D_XOPEN_SOURCE_EXTENDED" |
|---|
| 57 | ;; |
|---|
| 58 | *-*-solaris*) |
|---|
| 59 | CPPFLAGS="${CPPFLAGS} -I/usr/local/include" |
|---|
| 60 | LDFLAGS="${LDFLAGS} -L/usr/local/lib -R/usr/local/lib" |
|---|
| 61 | need_dash_r="1" |
|---|
| 62 | ;; |
|---|
| 63 | *-*-sunos4*) |
|---|
| 64 | CPPFLAGS="${CPPFLAGS} -DSUNOS4" |
|---|
| 65 | ;; |
|---|
| 66 | *-*-aix*) |
|---|
| 67 | CPPFLAGS="${CPPFLAGS} -I/usr/local/include" |
|---|
| 68 | LDFLAGS="${LDFLAGS} -L/usr/local/lib" |
|---|
| 69 | if test "${LD}" != "gcc" -a -z "${blibpath}"; then |
|---|
| 70 | blibpath="/usr/lib:/lib:/usr/local/lib" |
|---|
| 71 | fi |
|---|
| 72 | ;; |
|---|
| 73 | *-*-osf*) |
|---|
| 74 | CPPFLAGS="${CPPFLAGS} -D_POSIX_PII_SOCKET" |
|---|
| 75 | ;; |
|---|
| 76 | *-*-darwin*) |
|---|
| 77 | LIBS="${LIBS} -Wl,-framework,CoreFoundation" |
|---|
| 78 | if test "${GCC}" = "yes"; then |
|---|
| 79 | CFLAGS="${CFLAGS} -no-cpp-precomp" |
|---|
| 80 | fi |
|---|
| 81 | ;; |
|---|
| 82 | *-mingw32*|*-winnt*) |
|---|
| 83 | WIN32="yes" |
|---|
| 84 | CPPFLAGS="${CPPFLAGS} -DWIN32_LEAN_AND_MEAN" |
|---|
| 85 | WIN_LIBPREFIX="lib" |
|---|
| 86 | ;; |
|---|
| 87 | *-cygwin*) |
|---|
| 88 | AC_MSG_CHECKING([cygwin mode to use]) |
|---|
| 89 | CYGWIN="yes" |
|---|
| 90 | if test "${with_cygwin_native}" = "yes"; then |
|---|
| 91 | AC_MSG_RESULT([Using native win32]) |
|---|
| 92 | CPPFLAGS="${CPPFLAGS} -DWIN32_LEAN_AND_MEAN" |
|---|
| 93 | CFLAGS="${CFLAGS} -mno-cygwin" |
|---|
| 94 | WIN32="yes" |
|---|
| 95 | else |
|---|
| 96 | AC_MSG_RESULT([Using cygwin]) |
|---|
| 97 | CPPFLAGS="${CPPFLAGS} -DCRYPTOKI_FORCE_WIN32" |
|---|
| 98 | WIN_LIBPREFIX="cyg" |
|---|
| 99 | AC_DEFINE([USE_CYGWIN], [1], [Define if you are on Cygwin]) |
|---|
| 100 | fi |
|---|
| 101 | ;; |
|---|
| 102 | esac |
|---|
| 103 | |
|---|
| 104 | full_usrlibdir="/usr/lib${libdir##*/lib}" |
|---|
| 105 | full_sysconfdir=`eval eval eval eval eval echo "${sysconfdir}" | sed "s#NONE#${prefix}#" | sed "s#NONE#${ac_default_prefix}#"` |
|---|
| 106 | |
|---|
| 107 | AC_ARG_ENABLE( |
|---|
| 108 | [strict], |
|---|
| 109 | [AS_HELP_STRING([--enable-strict],[enable strict compile mode @<:@disabled@:>@])], |
|---|
| 110 | , |
|---|
| 111 | [enable_strict="no"] |
|---|
| 112 | ) |
|---|
| 113 | |
|---|
| 114 | AC_ARG_ENABLE( |
|---|
| 115 | [pedantic], |
|---|
| 116 | [AS_HELP_STRING([--enable-pedantic],[enable pedantic compile mode @<:@disabled@:>@])], |
|---|
| 117 | , |
|---|
| 118 | [enable_pedantic="no"] |
|---|
| 119 | ) |
|---|
| 120 | |
|---|
| 121 | AC_ARG_ENABLE( |
|---|
| 122 | [zlib], |
|---|
| 123 | [AS_HELP_STRING([--enable-zlib],[enable zlib linkage @<:@detect@:>@])], |
|---|
| 124 | , |
|---|
| 125 | [enable_zlib="detect"] |
|---|
| 126 | ) |
|---|
| 127 | |
|---|
| 128 | AC_ARG_ENABLE( |
|---|
| 129 | [readline], |
|---|
| 130 | [AS_HELP_STRING([--enable-readline],[enable readline linkage @<:@detect@:>@])], |
|---|
| 131 | , |
|---|
| 132 | [enable_readline="detect"] |
|---|
| 133 | ) |
|---|
| 134 | |
|---|
| 135 | AC_ARG_ENABLE( |
|---|
| 136 | [openssl], |
|---|
| 137 | [AS_HELP_STRING([--enable-openssl],[enable openssl linkage @<:@detect@:>@])], |
|---|
| 138 | , |
|---|
| 139 | [enable_openssl="detect"] |
|---|
| 140 | ) |
|---|
| 141 | |
|---|
| 142 | AC_ARG_ENABLE( |
|---|
| 143 | [openct], |
|---|
| 144 | [AS_HELP_STRING([--enable-openct],[enable openct linkage @<:@disabled@:>@])], |
|---|
| 145 | , |
|---|
| 146 | [enable_openct="no"] |
|---|
| 147 | ) |
|---|
| 148 | |
|---|
| 149 | AC_ARG_ENABLE( |
|---|
| 150 | [pcsc], |
|---|
| 151 | [AS_HELP_STRING([--enable-pcsc],[enable pcsc support @<:@disabled@:>@])], |
|---|
| 152 | , |
|---|
| 153 | [enable_pcsc="no"] |
|---|
| 154 | ) |
|---|
| 155 | |
|---|
| 156 | AC_ARG_ENABLE( |
|---|
| 157 | [nsplugin], |
|---|
| 158 | [AS_HELP_STRING([--enable-nsplugin],[enable nsplugin (signer) @<:@disabled@:>@])], |
|---|
| 159 | , |
|---|
| 160 | [enable_nsplugin="no"] |
|---|
| 161 | ) |
|---|
| 162 | |
|---|
| 163 | AC_ARG_ENABLE( |
|---|
| 164 | [man], |
|---|
| 165 | [AS_HELP_STRING([--disable-man],[disable installation of manuals @<:@enabled for none Windows@:>@])], |
|---|
| 166 | , |
|---|
| 167 | [ |
|---|
| 168 | if test "${WIN32}" = "yes"; then |
|---|
| 169 | enable_man="no" |
|---|
| 170 | else |
|---|
| 171 | enable_man="yes" |
|---|
| 172 | fi |
|---|
| 173 | ] |
|---|
| 174 | ) |
|---|
| 175 | |
|---|
| 176 | AC_ARG_ENABLE( |
|---|
| 177 | [doc], |
|---|
| 178 | [AS_HELP_STRING([--enable-doc],[enable installation of documents @<:@disabled@:>@])], |
|---|
| 179 | , |
|---|
| 180 | [enable_doc="no"] |
|---|
| 181 | ) |
|---|
| 182 | |
|---|
| 183 | AC_ARG_WITH( |
|---|
| 184 | [xsl-stylesheetsdir], |
|---|
| 185 | [AS_HELP_STRING([--with-xsl-stylesheetsdir=PATH],[docbook xsl-stylesheets for svn build @<:@detect@:>@])], |
|---|
| 186 | [xslstylesheetsdir="${withval}"], |
|---|
| 187 | [xslstylesheetsdir="detect"] |
|---|
| 188 | ) |
|---|
| 189 | |
|---|
| 190 | AC_ARG_WITH( |
|---|
| 191 | [plugindir], |
|---|
| 192 | [AS_HELP_STRING([--with-plugindir=PATH],[install Mozilla plugin to PATH @<:@LIBDIR/mozilla/plugins@:>@])], |
|---|
| 193 | [plugindir="${withval}"], |
|---|
| 194 | [plugindir="\$(libdir)/mozilla/plugins"] |
|---|
| 195 | ) |
|---|
| 196 | |
|---|
| 197 | AC_ARG_WITH( |
|---|
| 198 | [pcsc-provider], |
|---|
| 199 | [AS_HELP_STRING([--with-pcsc-provider=PATH],[Path to system pcsc provider @<:@system default@:>@])], |
|---|
| 200 | , |
|---|
| 201 | [with_pcsc_provider="detect"] |
|---|
| 202 | ) |
|---|
| 203 | |
|---|
| 204 | AC_ARG_WITH( |
|---|
| 205 | [pinentry], |
|---|
| 206 | [AS_HELP_STRING([--with-pinentry=PROG],[run PROG as PIN-entry for OpenSC Signer @<:/usr/bin/gpinentry:>@])], |
|---|
| 207 | , |
|---|
| 208 | [with_pinentry="/usr/bin/gpinentry"] |
|---|
| 209 | ) |
|---|
| 210 | |
|---|
| 211 | dnl Checks for programs. |
|---|
| 212 | AC_PROG_CPP |
|---|
| 213 | AC_PROG_INSTALL |
|---|
| 214 | AC_PROG_LN_S |
|---|
| 215 | AC_PROG_MKDIR_P |
|---|
| 216 | AC_PROG_SED |
|---|
| 217 | AC_PROG_MAKE_SET |
|---|
| 218 | |
|---|
| 219 | dnl Add libtool support. |
|---|
| 220 | ifdef( |
|---|
| 221 | [LT_INIT], |
|---|
| 222 | [ |
|---|
| 223 | LT_INIT([win32-dll]) |
|---|
| 224 | LT_LANG([Windows Resource]) |
|---|
| 225 | ], |
|---|
| 226 | [ |
|---|
| 227 | AC_LIBTOOL_WIN32_DLL |
|---|
| 228 | AC_LIBTOOL_RC |
|---|
| 229 | AC_PROG_LIBTOOL |
|---|
| 230 | ] |
|---|
| 231 | ) |
|---|
| 232 | |
|---|
| 233 | dnl These required for svn checkout |
|---|
| 234 | AC_ARG_VAR([XSLTPROC], [xsltproc utility]) |
|---|
| 235 | AC_ARG_VAR([SVN], [subversion utility]) |
|---|
| 236 | AC_ARG_VAR([WGET], [wget utility]) |
|---|
| 237 | AC_ARG_VAR([WGET_OPTS], [wget options]) |
|---|
| 238 | AC_ARG_VAR([TR], [tr utility]) |
|---|
| 239 | AC_CHECK_PROGS([XSLTPROC],[xsltproc]) |
|---|
| 240 | AC_CHECK_PROGS([SVN],[svn]) |
|---|
| 241 | AC_CHECK_PROGS([WGET],[wget]) |
|---|
| 242 | AC_CHECK_PROGS([TR],[tr]) |
|---|
| 243 | test -z "${WGET_OPTS}" && WGET_OPTS="-nv" |
|---|
| 244 | |
|---|
| 245 | if test "${xslstylesheetsdir}" = "detect"; then |
|---|
| 246 | AC_MSG_CHECKING([xsl-stylesheets]) |
|---|
| 247 | xslstylesheetsdir="no" |
|---|
| 248 | for f in \ |
|---|
| 249 | /usr/share/xml/docbook/stylesheet/nwalsh \ |
|---|
| 250 | /usr/share/sgml/docbook/*; do |
|---|
| 251 | |
|---|
| 252 | test -e "${f}/html/docbook.xsl" && xslstylesheetsdir="${f}" |
|---|
| 253 | done |
|---|
| 254 | AC_MSG_RESULT([${xslstylesheetsdir}]) |
|---|
| 255 | elif test "${xslstylesheetsdir}" != "no"; then |
|---|
| 256 | AC_MSG_CHECKING([xsl-stylesheets]) |
|---|
| 257 | test -e "${xslstylesheetsdir}/html/docbook.xsl" || AC_MSG_ERROR([invalid]) |
|---|
| 258 | fi |
|---|
| 259 | |
|---|
| 260 | dnl svn checkout dependencies |
|---|
| 261 | if test "${svn_checkout}" = "yes"; then |
|---|
| 262 | AC_MSG_CHECKING([XSLTPROC requirement]) |
|---|
| 263 | if test -n "${XSLTPROC}"; then |
|---|
| 264 | AC_MSG_RESULT([ok]) |
|---|
| 265 | else |
|---|
| 266 | if test "${enable_man}" = "yes" -o "${enable_doc}" = "yes"; then |
|---|
| 267 | AC_MSG_ERROR([Missing XSLTPROC svn build with man or doc]) |
|---|
| 268 | else |
|---|
| 269 | AC_MSG_WARN(["make dist" will not work]) |
|---|
| 270 | fi |
|---|
| 271 | fi |
|---|
| 272 | |
|---|
| 273 | if test "${enable_man}" = "yes"; then |
|---|
| 274 | test "${xslstylesheetsdir}" = "no" && AC_MSG_ERROR([xsl-stylesheets are required for svn build with man]) |
|---|
| 275 | fi |
|---|
| 276 | |
|---|
| 277 | AC_MSG_CHECKING([svn doc build dependencies]) |
|---|
| 278 | if test -n "${SVN}" -a -n "${TR}" -a -n "${WGET}"; then |
|---|
| 279 | AC_MSG_RESULT([ok]) |
|---|
| 280 | else |
|---|
| 281 | if test "${enable_doc}" = "yes"; then |
|---|
| 282 | AC_MSG_ERROR([Missing SVN, TR or WGET for svn doc build]) |
|---|
| 283 | else |
|---|
| 284 | AC_MSG_WARN(["make dist" will not work]) |
|---|
| 285 | fi |
|---|
| 286 | fi |
|---|
| 287 | fi |
|---|
| 288 | |
|---|
| 289 | dnl C Compiler features |
|---|
| 290 | AC_C_INLINE |
|---|
| 291 | |
|---|
| 292 | dnl Checks for header files. |
|---|
| 293 | AC_HEADER_STDC |
|---|
| 294 | AC_HEADER_SYS_WAIT |
|---|
| 295 | AC_CHECK_HEADERS([ \ |
|---|
| 296 | errno.h fcntl.h malloc.h stdlib.h \ |
|---|
| 297 | inttypes.h string.h strings.h \ |
|---|
| 298 | sys/time.h unistd.h locale.h getopt.h \ |
|---|
| 299 | ]) |
|---|
| 300 | |
|---|
| 301 | dnl Checks for typedefs, structures, and compiler characteristics. |
|---|
| 302 | AC_C_CONST |
|---|
| 303 | AC_TYPE_UID_T |
|---|
| 304 | AC_TYPE_SIZE_T |
|---|
| 305 | AC_HEADER_TIME |
|---|
| 306 | |
|---|
| 307 | dnl Checks for library functions. |
|---|
| 308 | AC_FUNC_ERROR_AT_LINE |
|---|
| 309 | AC_FUNC_STAT |
|---|
| 310 | AC_FUNC_VPRINTF |
|---|
| 311 | AC_CHECK_FUNCS([ \ |
|---|
| 312 | getpass gettimeofday memset mkdir \ |
|---|
| 313 | strdup strerror setutent vsyslog \ |
|---|
| 314 | setlocale getopt_long \ |
|---|
| 315 | strlcpy |
|---|
| 316 | ]) |
|---|
| 317 | |
|---|
| 318 | dnl See if socket() is found from libsocket |
|---|
| 319 | AC_CHECK_LIB( |
|---|
| 320 | [socket], |
|---|
| 321 | [socket], |
|---|
| 322 | [ |
|---|
| 323 | LIBS="${LIBS} -lsocket" |
|---|
| 324 | AC_CHECK_LIB( |
|---|
| 325 | [resolv], |
|---|
| 326 | [res_query], |
|---|
| 327 | [LIBS="${LIBS} -lresolv"] |
|---|
| 328 | ) |
|---|
| 329 | ] |
|---|
| 330 | ) |
|---|
| 331 | |
|---|
| 332 | AC_ARG_VAR([LTLIB_CFLAGS], [C compiler flags for libltdl]) |
|---|
| 333 | AC_ARG_VAR([LTLIB_LIBS], [linker flags for libltdl]) |
|---|
| 334 | if test -z "${LTLIB_LIBS}"; then |
|---|
| 335 | AC_CHECK_LIB( |
|---|
| 336 | [ltdl], |
|---|
| 337 | [lt_dlopen], |
|---|
| 338 | [LTLIB_LIBS="-lltdl"], |
|---|
| 339 | [AC_MSG_ERROR([ltdl not found, please install libltdl and/or libtool])] |
|---|
| 340 | ) |
|---|
| 341 | fi |
|---|
| 342 | saved_CFLAGS="${CFLAGS}" |
|---|
| 343 | CFLAGS="${CFLAGS} ${LTLIB_CFLAGS}" |
|---|
| 344 | AC_CHECK_HEADER( |
|---|
| 345 | [ltdl.h], |
|---|
| 346 | , |
|---|
| 347 | [AC_MSG_ERROR([ltdl.h not found, please install libltdl and/or libtool])] |
|---|
| 348 | ) |
|---|
| 349 | CFLAGS="${saved_CFLAGS}" |
|---|
| 350 | |
|---|
| 351 | if test "${WIN32}" = "no"; then |
|---|
| 352 | dnl Special check for pthread support. |
|---|
| 353 | ACX_PTHREAD( |
|---|
| 354 | [AC_DEFINE( |
|---|
| 355 | [HAVE_PTHREAD], |
|---|
| 356 | [1], |
|---|
| 357 | [Define if you have POSIX threads libraries and header files.] |
|---|
| 358 | )], |
|---|
| 359 | [AC_MSG_ERROR([POSIX thread support required])] |
|---|
| 360 | ) |
|---|
| 361 | CC="${PTHREAD_CC}" |
|---|
| 362 | fi |
|---|
| 363 | |
|---|
| 364 | AC_ARG_VAR([ZLIB_CFLAGS], [C compiler flags for zlib]) |
|---|
| 365 | AC_ARG_VAR([ZLIB_LIBS], [linker flags for zlib]) |
|---|
| 366 | if test -z "${ZLIB_LIBS}"; then |
|---|
| 367 | AC_CHECK_LIB( |
|---|
| 368 | [z], |
|---|
| 369 | [inflate], |
|---|
| 370 | [ZLIB_LIBS="-lz"] |
|---|
| 371 | ) |
|---|
| 372 | fi |
|---|
| 373 | saved_CFLAGS="${CFLAGS}" |
|---|
| 374 | CFLAGS="${CFLAGS} ${ZLIB_CFLAGS}" |
|---|
| 375 | AC_CHECK_HEADERS([zlib.h]) |
|---|
| 376 | CFLAGS="${saved_CFLAGS}" |
|---|
| 377 | test -n "${ZLIB_LIBS}" -a "${ac_cv_header_zlib_h}" = "yes" && have_zlib="yes" |
|---|
| 378 | |
|---|
| 379 | case "${enable_zlib}" in |
|---|
| 380 | no) |
|---|
| 381 | have_zlib="no" |
|---|
| 382 | ;; |
|---|
| 383 | detect) |
|---|
| 384 | if test "${have_zlib}" = "yes"; then |
|---|
| 385 | enable_zlib="yes" |
|---|
| 386 | else |
|---|
| 387 | enable_zlib="no" |
|---|
| 388 | fi |
|---|
| 389 | ;; |
|---|
| 390 | esac |
|---|
| 391 | |
|---|
| 392 | if test "${enable_zlib}" = "yes"; then |
|---|
| 393 | if test "${have_zlib}" = "yes"; then |
|---|
| 394 | AC_DEFINE([ENABLE_ZLIB], [1], [Use zlib libraries and header files]) |
|---|
| 395 | else |
|---|
| 396 | AC_MSG_ERROR([zlib linkage required, but no zlib was found]) |
|---|
| 397 | fi |
|---|
| 398 | fi |
|---|
| 399 | |
|---|
| 400 | AC_ARG_VAR([READLINE_CFLAGS], [C compiler flags for readline]) |
|---|
| 401 | AC_ARG_VAR([READLINE_LIBS], [linker flags for readline]) |
|---|
| 402 | if test -z "${READLINE_LIBS}"; then |
|---|
| 403 | for l in "" -lncurses -ltermcap; do |
|---|
| 404 | unset ac_cv_lib_readline_readline |
|---|
| 405 | AC_CHECK_LIB( |
|---|
| 406 | [readline], |
|---|
| 407 | [readline], |
|---|
| 408 | [READLINE_LIBS="-lreadline ${l}"], |
|---|
| 409 | , |
|---|
| 410 | ["${l}"] |
|---|
| 411 | ) |
|---|
| 412 | test -n "${READLINE_LIBS}" && break; |
|---|
| 413 | done |
|---|
| 414 | fi |
|---|
| 415 | saved_CFLAGS="${CFLAGS}" |
|---|
| 416 | CFLAGS="${CFLAGS} ${READLINE_CFLAGS}" |
|---|
| 417 | AC_CHECK_HEADERS([readline/readline.h]) |
|---|
| 418 | CFLAGS="${saved_CFLAGS}" |
|---|
| 419 | test -n "${READLINE_LIBS}" -a "${ac_cv_header_readline_readline_h}" = "yes" && have_readline="yes" |
|---|
| 420 | |
|---|
| 421 | case "${enable_readline}" in |
|---|
| 422 | no) |
|---|
| 423 | have_readline="no" |
|---|
| 424 | ;; |
|---|
| 425 | detect) |
|---|
| 426 | if test "${have_readline}" = "yes"; then |
|---|
| 427 | enable_readline="yes" |
|---|
| 428 | else |
|---|
| 429 | enable_readline="no" |
|---|
| 430 | fi |
|---|
| 431 | ;; |
|---|
| 432 | esac |
|---|
| 433 | |
|---|
| 434 | if test "${enable_readline}" = "yes"; then |
|---|
| 435 | if test "${have_readline}" = "yes"; then |
|---|
| 436 | AC_DEFINE([ENABLE_READLINE], [1], [Use readline libraries and header files]) |
|---|
| 437 | else |
|---|
| 438 | AC_MSG_ERROR([readline linkage required, but no readline was found]) |
|---|
| 439 | fi |
|---|
| 440 | fi |
|---|
| 441 | |
|---|
| 442 | PKG_CHECK_MODULES( |
|---|
| 443 | [OPENSSL], |
|---|
| 444 | [libcrypto >= 0.9.7], |
|---|
| 445 | [have_openssl="yes"], |
|---|
| 446 | [PKG_CHECK_MODULES( |
|---|
| 447 | [OPENSSL], |
|---|
| 448 | [openssl >= 0.9.7], |
|---|
| 449 | [have_openssl="yes"], |
|---|
| 450 | [AC_CHECK_LIB( |
|---|
| 451 | [crypto], |
|---|
| 452 | [RSA_version], |
|---|
| 453 | [ |
|---|
| 454 | have_openssl="yes" |
|---|
| 455 | OPENSSL_LIBS="-lcrypto" |
|---|
| 456 | ], |
|---|
| 457 | [have_openssl="no"] |
|---|
| 458 | )] |
|---|
| 459 | )] |
|---|
| 460 | ) |
|---|
| 461 | |
|---|
| 462 | case "${enable_openssl}" in |
|---|
| 463 | no) |
|---|
| 464 | have_openssl="no" |
|---|
| 465 | ;; |
|---|
| 466 | detect) |
|---|
| 467 | if test "${have_openssl}" = "yes"; then |
|---|
| 468 | enable_openssl="yes" |
|---|
| 469 | else |
|---|
| 470 | enable_openssl="no" |
|---|
| 471 | fi |
|---|
| 472 | ;; |
|---|
| 473 | esac |
|---|
| 474 | |
|---|
| 475 | if test "${enable_openssl}" = "yes"; then |
|---|
| 476 | if test "${have_openssl}" = "yes"; then |
|---|
| 477 | AC_DEFINE([ENABLE_OPENSSL], [1], [Have OpenSSL libraries and header files]) |
|---|
| 478 | else |
|---|
| 479 | AC_MSG_ERROR([OpenSSL linkage required, but no OpenSSL was found]) |
|---|
| 480 | fi |
|---|
| 481 | fi |
|---|
| 482 | |
|---|
| 483 | if test "${enable_openct}" = "yes"; then |
|---|
| 484 | PKG_CHECK_MODULES( |
|---|
| 485 | [OPENCT], |
|---|
| 486 | [libopenct], |
|---|
| 487 | [AC_DEFINE([ENABLE_OPENCT], [1], [Have OpenCT libraries and header files])], |
|---|
| 488 | [AC_MSG_ERROR([openct requested but not available])] |
|---|
| 489 | ) |
|---|
| 490 | fi |
|---|
| 491 | |
|---|
| 492 | if test "${enable_pcsc}" = "yes"; then |
|---|
| 493 | AC_DEFINE([ENABLE_PCSC], [1], [Define if PC/SC is to be enabled]) |
|---|
| 494 | if test "${with_pcsc_provider}" = "detect"; then |
|---|
| 495 | case "${host}" in |
|---|
| 496 | *-*-darwin*) |
|---|
| 497 | DEFAULT_PCSC_PROVIDER="/System/Library/Frameworks/PCSC.framework/PCSC" |
|---|
| 498 | ;; |
|---|
| 499 | *-mingw32*|*-winnt*|*-cygwin*) |
|---|
| 500 | DEFAULT_PCSC_PROVIDER="winscard.dll" |
|---|
| 501 | ;; |
|---|
| 502 | *) |
|---|
| 503 | DEFAULT_PCSC_PROVIDER="${full_usrlibdir}/libpcsclite.so" |
|---|
| 504 | ;; |
|---|
| 505 | esac |
|---|
| 506 | else |
|---|
| 507 | DEFAULT_PCSC_PROVIDER="${with_pcsc_provider}" |
|---|
| 508 | fi |
|---|
| 509 | AC_DEFINE_UNQUOTED([DEFAULT_PCSC_PROVIDER], ["${DEFAULT_PCSC_PROVIDER}"], [Default PC/SC provider]) |
|---|
| 510 | fi |
|---|
| 511 | |
|---|
| 512 | dnl AM_PATH_LIBASSUAN([MINIMUM-VERSION, |
|---|
| 513 | dnl [ACTION-IF-FOUND [, ACTION-IF-NOT-FOUND ]]]) |
|---|
| 514 | dnl Test for libassuan and define LIBASSUAN_CFLAGS and LIBASSUAN_LIBS |
|---|
| 515 | AM_PATH_LIBASSUAN( |
|---|
| 516 | , |
|---|
| 517 | [have_assuan="yes"], |
|---|
| 518 | [have_assuan="no"] |
|---|
| 519 | ) |
|---|
| 520 | |
|---|
| 521 | if test "${enable_nsplugin}" = "yes"; then |
|---|
| 522 | if test "x${have_assuan}" != "xyes" -o "x${have_openssl}" != "xyes"; then |
|---|
| 523 | AC_MSG_ERROR([nsplugin requires assuan and openssl]) |
|---|
| 524 | fi |
|---|
| 525 | fi |
|---|
| 526 | |
|---|
| 527 | OPENSC_FEATURES="" |
|---|
| 528 | if test "${enable_zlib}" = "yes"; then |
|---|
| 529 | OPENSC_FEATURES="${OPENSC_FEATURES} zlib" |
|---|
| 530 | OPTIONAL_ZLIB_CFLAGS="${ZLIB_CFLAGS}" |
|---|
| 531 | OPTIONAL_ZLIB_LIBS="${ZLIB_LIBS}" |
|---|
| 532 | fi |
|---|
| 533 | if test "${enable_readline}" = "yes"; then |
|---|
| 534 | OPENSC_FEATURES="${OPENSC_FEATURES} readline" |
|---|
| 535 | OPTIONAL_READLINE_CFLAGS="${READLINE_CFLAGS}" |
|---|
| 536 | OPTIONAL_READLINE_LIBS="${READLINE_LIBS}" |
|---|
| 537 | fi |
|---|
| 538 | if test "${enable_openssl}" = "yes"; then |
|---|
| 539 | OPENSC_FEATURES="${OPENSC_FEATURES} openssl" |
|---|
| 540 | OPTIONAL_OPENSSL_CFLAGS="${OPENSSL_CFLAGS}" |
|---|
| 541 | OPTIONAL_OPENSSL_LIBS="${OPENSSL_LIBS}" |
|---|
| 542 | fi |
|---|
| 543 | if test "${enable_openct}" = "yes"; then |
|---|
| 544 | OPENSC_FEATURES="${OPENSC_FEATURES} openct" |
|---|
| 545 | OPTIONAL_OPENCT_CFLAGS="${OPENCT_CFLAGS}" |
|---|
| 546 | OPTIONAL_OPENCT_LIBS="${OPENCT_LIBS}" |
|---|
| 547 | fi |
|---|
| 548 | test "${enable_pcsc}" = "yes" && OPENSC_FEATURES="${OPENSC_FEATURES} pcsc(${DEFAULT_PCSC_PROVIDER})" |
|---|
| 549 | test "${enable_nsplugin}" = "yes" && OPENSC_FEATURES="${OPENSC_FEATURES} nsplugin" |
|---|
| 550 | |
|---|
| 551 | AC_DEFINE_UNQUOTED([OPENSC_ETC_PATH], ["${full_sysconfdir}"], [etc path for libopensc]) |
|---|
| 552 | AC_DEFINE_UNQUOTED([OPENSC_CONF_PATH], ["${full_sysconfdir}/opensc.conf"], [default config file for libopensc]) |
|---|
| 553 | test "${with_pinentry}" != "no" && AC_DEFINE_UNQUOTED([PIN_ENTRY], ["${with_pinentry}"], [PIN-entry program for OpenSC Signer]) |
|---|
| 554 | AC_DEFINE_UNQUOTED([OPENSC_FEATURES], ["${OPENSC_FEATURES}"], [Enabled OpenSC features]) |
|---|
| 555 | |
|---|
| 556 | openscincludedir="\$(includedir)/opensc" |
|---|
| 557 | pkcs11dir="\$(libdir)/pkcs11" |
|---|
| 558 | pkgconfigdir="\$(libdir)/pkgconfig" |
|---|
| 559 | |
|---|
| 560 | AC_SUBST([openscincludedir]) |
|---|
| 561 | AC_SUBST([pkcs11dir]) |
|---|
| 562 | AC_SUBST([plugindir]) |
|---|
| 563 | AC_SUBST([pkgconfigdir]) |
|---|
| 564 | AC_SUBST([xslstylesheetsdir]) |
|---|
| 565 | AC_SUBST([OPENSC_VERSION_MAJOR]) |
|---|
| 566 | AC_SUBST([OPENSC_VERSION_MINOR]) |
|---|
| 567 | AC_SUBST([OPENSC_VERSION_FIX]) |
|---|
| 568 | AC_SUBST([OPENSC_LT_CURRENT]) |
|---|
| 569 | AC_SUBST([OPENSC_LT_REVISION]) |
|---|
| 570 | AC_SUBST([OPENSC_LT_AGE]) |
|---|
| 571 | AC_SUBST([OPENSC_LT_OLDEST]) |
|---|
| 572 | AC_SUBST([WIN_LIBPREFIX]) |
|---|
| 573 | AC_SUBST([DEFAULT_PCSC_PROVIDER]) |
|---|
| 574 | AC_SUBST([OPTIONAL_ZLIB_CFLAGS]) |
|---|
| 575 | AC_SUBST([OPTIONAL_ZLIB_LIBS]) |
|---|
| 576 | AC_SUBST([OPTIONAL_READLINE_CFLAGS]) |
|---|
| 577 | AC_SUBST([OPTIONAL_READLINE_LIBS]) |
|---|
| 578 | AC_SUBST([OPTIONAL_OPENSSL_CFLAGS]) |
|---|
| 579 | AC_SUBST([OPTIONAL_OPENSSL_LIBS]) |
|---|
| 580 | AC_SUBST([OPTIONAL_OPENCT_CFLAGS]) |
|---|
| 581 | AC_SUBST([OPTIONAL_OPENCT_LIBS]) |
|---|
| 582 | |
|---|
| 583 | AM_CONDITIONAL([SVN_CHECKOUT], [test "${svn_checkout}" = "yes"]) |
|---|
| 584 | AM_CONDITIONAL([ENABLE_MAN], [test "${enable_man}" = "yes"]) |
|---|
| 585 | AM_CONDITIONAL([ENABLE_ZLIB], [test "${enable_zlib}" = "yes"]) |
|---|
| 586 | AM_CONDITIONAL([ENABLE_READLINE], [test "${enable_readline}" = "yes"]) |
|---|
| 587 | AM_CONDITIONAL([ENABLE_OPENSSL], [test "${enable_openssl}" = "yes"]) |
|---|
| 588 | AM_CONDITIONAL([ENABLE_OPENCT], [test "${enable_openct}" = "yes"]) |
|---|
| 589 | AM_CONDITIONAL([ENABLE_NSPLUGIN], [test "${enable_nsplugin}" = "yes"]) |
|---|
| 590 | AM_CONDITIONAL([ENABLE_DOC], [test "${enable_doc}" = "yes"]) |
|---|
| 591 | AM_CONDITIONAL([WIN32], [test "${WIN32}" = "yes"]) |
|---|
| 592 | AM_CONDITIONAL([CYGWIN], [test "${CYGWIN}" = "yes"]) |
|---|
| 593 | |
|---|
| 594 | if test "${enable_pedantic}" = "yes"; then |
|---|
| 595 | enable_strict="yes"; |
|---|
| 596 | CFLAGS="${CFLAGS} -pedantic" |
|---|
| 597 | fi |
|---|
| 598 | if test "${enable_strict}" = "yes"; then |
|---|
| 599 | CFLAGS="${CFLAGS} -Wall -Wextra" |
|---|
| 600 | fi |
|---|
| 601 | if test "$GCC" = "yes"; then |
|---|
| 602 | # This should be resolved not ignored. |
|---|
| 603 | CFLAGS="-fno-strict-aliasing ${CFLAGS}" |
|---|
| 604 | fi |
|---|
| 605 | |
|---|
| 606 | AC_CONFIG_FILES([ |
|---|
| 607 | Makefile |
|---|
| 608 | doc/Makefile |
|---|
| 609 | doc/nonpersistent/Makefile |
|---|
| 610 | etc/Makefile |
|---|
| 611 | src/Makefile |
|---|
| 612 | src/common/Makefile |
|---|
| 613 | src/include/Makefile |
|---|
| 614 | src/include/winconfig.h |
|---|
| 615 | src/include/opensc/Makefile |
|---|
| 616 | src/libopensc/Makefile |
|---|
| 617 | src/libopensc/opensc-config |
|---|
| 618 | src/libopensc/libopensc.pc |
|---|
| 619 | src/libopensc/libpkcs15init.pc |
|---|
| 620 | src/libopensc/libscconf.pc |
|---|
| 621 | src/openssh/Makefile |
|---|
| 622 | src/pkcs11/Makefile |
|---|
| 623 | src/pkcs15init/Makefile |
|---|
| 624 | src/scconf/Makefile |
|---|
| 625 | src/signer/Makefile |
|---|
| 626 | src/signer/npinclude/Makefile |
|---|
| 627 | src/tests/Makefile |
|---|
| 628 | src/tests/regression/Makefile |
|---|
| 629 | src/tools/Makefile |
|---|
| 630 | win32/Makefile |
|---|
| 631 | win32/versioninfo.rc.in |
|---|
| 632 | ]) |
|---|
| 633 | AC_OUTPUT |
|---|
| 634 | |
|---|
| 635 | cat <<EOF |
|---|
| 636 | |
|---|
| 637 | OpenSC has been configured with the following options: |
|---|
| 638 | |
|---|
| 639 | |
|---|
| 640 | Version: ${PACKAGE_VERSION} |
|---|
| 641 | User binaries: $(eval eval eval echo "${bindir}") |
|---|
| 642 | Configuration files: $(eval eval eval echo "${sysconfdir}") |
|---|
| 643 | XSL stylesheets: ${xslstylesheetsdir} |
|---|
| 644 | |
|---|
| 645 | man support: ${enable_man} |
|---|
| 646 | doc support: ${enable_doc} |
|---|
| 647 | zlib support: ${enable_zlib} |
|---|
| 648 | readline support: ${enable_readline} |
|---|
| 649 | OpenSSL support: ${enable_openssl} |
|---|
| 650 | PC/SC support: ${enable_pcsc} |
|---|
| 651 | OpenCT support: ${enable_openct} |
|---|
| 652 | NSPlugin support: ${enable_nsplugin} |
|---|
| 653 | |
|---|
| 654 | PC/SC default provider: ${DEFAULT_PCSC_PROVIDER} |
|---|
| 655 | pinentry: ${with_pinentry} |
|---|
| 656 | |
|---|
| 657 | Host: ${host} |
|---|
| 658 | Compiler: ${CC} |
|---|
| 659 | Preprocessor flags: ${CPPFLAGS} |
|---|
| 660 | Compiler flags: ${CFLAGS} |
|---|
| 661 | Linker flags: ${LDFLAGS} |
|---|
| 662 | Libraries: ${LIBS} |
|---|
| 663 | |
|---|
| 664 | LTLIB_CFLAGS: ${LTLIB_CFLAGS} |
|---|
| 665 | LTLIB_LIBS: ${LTLIB_LIBS} |
|---|
| 666 | READLINE_CFLAGS: ${READLINE_CFLAGS} |
|---|
| 667 | READLINE_LIBS: ${READLINE_LIBS} |
|---|
| 668 | ZLIB_CFLAGS: ${ZLIB_CFLAGS} |
|---|
| 669 | ZLIB_LIBS: ${ZLIB_LIBS} |
|---|
| 670 | OPENSSL_CFLAGS: ${OPENSSL_CFLAGS} |
|---|
| 671 | OPENSSL_LIBS: ${OPENSSL_LIBS} |
|---|
| 672 | OPENCT_CFLAGS: ${OPENCT_CFLAGS} |
|---|
| 673 | OPENCT_LIBS: ${OPENCT_LIBS} |
|---|
| 674 | LIBASSUAN_CFLAGS: ${LIBASSUAN_CFLAGS} |
|---|
| 675 | LIBASSUAN_LIBS: ${LIBASSUAN_LIBS} |
|---|
| 676 | |
|---|
| 677 | EOF |
|---|
| 678 | |
|---|