/[pcsclite]/trunk/Drivers/ccid/configure.in
ViewVC logotype

Contents of /trunk/Drivers/ccid/configure.in

Parent Directory Parent Directory | Revision Log Revision Log


Revision 2116 - (hide annotations) (download)
Mon Jul 31 15:10:48 2006 UTC (6 years, 9 months ago) by rousseau
File size: 6993 byte(s)
use ntohl/htonl from arpa/inet.h since the tag value for
IOCTL_FEATURE_VERIFY_PIN_DIRECT and IOCTL_FEATURE_MODIFY_PIN_DIRECT
_shall_ be encoded in big endian as documented in PCSC v2 part 10 ch 2.2
page 2.

The applications using this feature shall be updated (to respect the
PCSC specification)

Thanks to Ulrich Vogl for the bug report
1 rousseau 1734 # Process this file with autoconf to produce a configure script.
2     # You may need to use autoconf 2.56 or newer
3 rousseau 402
4 rousseau 1734 # $Id$
5 rousseau 402
6 rousseau 1734 # Require autoconf 2.52
7 rousseau 402 AC_PREREQ(2.52)
8    
9 rousseau 2020 AC_INIT(ccid, 1.0.1)
10 rousseau 402 AC_CONFIG_SRCDIR(src/ifdhandler.c)
11     AC_CONFIG_AUX_DIR(build)
12     AM_INIT_AUTOMAKE
13    
14 rousseau 1734 # Default install dir
15 rousseau 402 AC_PREFIX_DEFAULT(/usr/local)
16    
17 rousseau 1734 # Automake boilerplate.
18 rousseau 402 AC_CANONICAL_HOST
19    
20 rousseau 1734 # create a config.h file (Automake will add -DHAVE_CONFIG_H)
21 rousseau 402 AM_CONFIG_HEADER(config.h)
22    
23 rousseau 1734 # Options
24 rousseau 402 AM_MAINTAINER_MODE
25    
26 rousseau 1734 # Checks for programs.
27 rousseau 402 AC_PROG_CC
28 rousseau 448 AC_PROG_CPP
29 rousseau 402 AC_PROG_INSTALL
30     AC_PROG_MAKE_SET
31     AC_PROG_LN_S
32     AM_PROG_LEX
33 rousseau 1251
34 rousseau 1734 # check pcsc-lite version
35 rousseau 1754 PKG_CHECK_MODULES(PCSC, libpcsclite >= 1.2.9-beta9, [],
36 rousseau 1842 [ AC_MSG_RESULT([no])
37     if test -f /usr/local/lib/pkgconfig/libpcsclite.pc -a "x$PKG_CONFIG" != x ; then
38 rousseau 1359 AC_MSG_ERROR([use PKG_CONFIG_PATH=/usr/local/lib/pkgconfig ./configure])
39     else
40 rousseau 1754 AC_MSG_WARN([install pcsc-lite 1.2.9-beta9 or later])
41 rousseau 1359 fi
42     ])
43 rousseau 402
44 rousseau 1767 saved_CPPFLAGS="$CPPFLAGS"
45     CPPFLAGS="$CPPFLAGS $PCSC_CFLAGS"
46 rousseau 1328 AC_CHECK_HEADER(ifdhandler.h,,
47 rousseau 1768 [AC_MSG_ERROR([ifdhandler.h not found, install pcsc-lite 1.2.9-beta9 or later, or use ./configure PCSC_CFLAGS=...])],
48 rousseau 1328 [ #include <ifdhandler.h> ])
49 rousseau 1556 AC_CHECK_HEADER(reader.h,,
50 rousseau 1768 [AC_MSG_ERROR([reader.h not found, install pcsc-lite 1.2.9-beta9 or later, or use ./configure PCSC_CFLAGS=...])],
51 rousseau 1556 [ #include <reader.h> ])
52 rousseau 1767 CPPFLAGS="$saved_CPPFLAGS"
53 rousseau 1253
54 rousseau 1734 # Add libtool support.
55 rousseau 402 AM_PROG_LIBTOOL
56    
57 rousseau 1734 # Automatically update the libtool script if it becomes out-of-date.
58 rousseau 402 AC_SUBST(LIBTOOL_DEPS)
59    
60 rousseau 1734 # Checks for header files.
61 rousseau 402 AC_HEADER_STDC
62 rousseau 2116 AC_CHECK_HEADERS(errno.h fcntl.h stdlib.h unistd.h termios.h string.h errno.h sys/time.h sys/types.h stdarg.h arpa/inet.h,,
63 rousseau 876 [AC_MSG_WARN([some header files not found])])
64 rousseau 402
65 rousseau 1734 # Checks for typedefs, structures, and compiler characteristics.
66 rousseau 402 AC_C_CONST
67     AC_TYPE_SIZE_T
68     AC_HEADER_TIME
69    
70 rousseau 1734 # Checks for library functions.
71 rousseau 402 AC_CHECK_FUNCS(select strerror strncpy memcpy)
72    
73 rousseau 1734 # Select OS specific versions of source files.
74 rousseau 402 AC_SUBST(BUNDLE_HOST)
75     AC_SUBST(DYN_LIB_EXT)
76     case "$host" in
77     *-*-darwin*)
78     BUNDLE_HOST="MacOS"
79     DYN_LIB_EXT="dylib"
80    
81     AC_SUBST(COREFOUNDATION)
82     COREFOUNDATION="-Wl,-framework,CoreFoundation"
83    
84     AC_SUBST(IOKIT)
85     IOKIT="-Wl,-framework,IOKit"
86     if test "$GCC" = "yes"; then
87     CFLAGS="$CFLAGS -no-cpp-precomp"
88     fi
89     ;;
90 rousseau 2078 *-*-freebsd*)
91     BUNDLE_HOST="FreeBSD"
92     DYN_LIB_EXT="so"
93     ;;
94 rousseau 1846 *-*-openbsd*)
95     BUNDLE_HOST="OpenBSD"
96     DYN_LIB_EXT="so.0.0"
97     ;;
98 rousseau 1925 *-*-solaris*)
99     BUNDLE_HOST="Solaris"
100     DYN_LIB_EXT="so"
101     ;;
102 rousseau 402 *)
103     BUNDLE_HOST="Linux"
104     DYN_LIB_EXT="so"
105     esac
106    
107 rousseau 1942 # --disable-libusb
108 rousseau 460 AC_ARG_ENABLE(libusb,
109 rousseau 1942 AC_HELP_STRING([--disable-libusb],[do not use libusb]),
110     [ use_libusb="${enableval}" ], [ use_libusb=yes ] )
111 rousseau 436
112 rousseau 1770 # check if libusb is used
113     if test "x$use_libusb" != xno ; then
114 rousseau 1784 PKG_CHECK_MODULES(LIBUSB, libusb, [],
115     [
116     AC_MSG_RESULT([no])
117     AC_CHECK_PROG([LIBUSBCONFIG], [libusb-config], [yes])
118 rousseau 1770
119 rousseau 1784 if test "$LIBUSBCONFIG" = "yes" ; then
120     LIBUSB_CFLAGS="$LIBUSB_CFLAGS `libusb-config --cflags`"
121     LIBUSB_LIBS="$LIBUSB_LIBS `libusb-config --libs`"
122     else
123     AC_MSG_WARN([libusb-config not found.])
124     fi
125     ])
126 rousseau 1770
127 rousseau 1733 saved_CPPFLAGS="$CPPFLAGS"
128     saved_LIBS="$LIBS"
129    
130     CPPFLAGS="$CPPFLAGS $LIBUSB_CFLAGS"
131     LIBS="$LDFLAGS $LIBUSB_LIBS"
132    
133 rousseau 565 AC_CHECK_HEADERS(usb.h, [],
134 rousseau 1770 [ AC_MSG_ERROR([usb.h not found, use ./configure LIBUSB_CFLAGS=...]) ])
135 rousseau 436
136 rousseau 565 LIBS="$LIBS $COREFOUNDATION $IOKIT"
137 rousseau 402
138 rousseau 1770 AC_MSG_CHECKING([for usb_init])
139     AC_TRY_LINK_FUNC(usb_init, [ AC_MSG_RESULT([yes]) ],
140     [ AC_MSG_ERROR([libusb not found, use ./configure LIBUSB_LIBS=...]) ])
141    
142     AC_MSG_CHECKING([for usb_get_string_simple])
143     AC_TRY_LINK_FUNC(usb_get_string_simple, [ AC_MSG_RESULT([yes]) ],
144 rousseau 565 [ AC_MSG_ERROR([your libusb is too old. install version 0.1.7 or above]) ])
145 rousseau 1733
146 rousseau 1769 CPPFLAGS="$saved_CPPFLAGS"
147 rousseau 1733 LIBS="$saved_LIBS"
148 rousseau 1942
149     use_libusb=yes
150 rousseau 565 fi
151 rousseau 1733 AC_SUBST(LIBUSB_CFLAGS)
152     AC_SUBST(LIBUSB_LIBS)
153 rousseau 556
154 rousseau 1942 AC_MSG_RESULT([use libusb : $use_libusb])
155    
156 rousseau 1734 # check what to use for dlopen
157 rousseau 402 AC_SUBST(LIBDL)
158     AC_CHECK_LIB(dl, dlopen, [LIBDL="$LIBDL -ldl" ac_cv_func_dlopen_ldl=yes], ac_cv_func_dlopen_ldl=no)
159    
160 rousseau 2011 # check if the compiler support -fvisibility=hidden (GCC >= 4)
161     saved_CFLAGS="$CFLAGS"
162     CFLAGS="$CFLAGS -fvisibility=hidden"
163     AC_MSG_CHECKING([for -fvisibility=hidden])
164     AC_COMPILE_IFELSE([char foo;],
165     [ AC_MSG_RESULT([yes])
166     SYMBOL_VISIBILITY="-fvisibility=hidden" ],
167     AC_MSG_RESULT([no]))
168     CFLAGS="$saved_CFLAGS"
169     AC_SUBST(SYMBOL_VISIBILITY)
170    
171 rousseau 1944 # --disable-multi-thread
172 rousseau 460 AC_ARG_ENABLE(multi-thread,
173 rousseau 1944 AC_HELP_STRING([--disable-multi-thread],[disable multi threading]),
174 rousseau 460 [ multithread="${enableval}" ], [ multithread=yes ] )
175    
176     if test "${multithread}" != no ; then
177 rousseau 563 ACX_PTHREAD(
178     [ AC_DEFINE(HAVE_PTHREAD, 1,
179     [Define if you have POSIX threads libraries and header files.])
180     ], [ AC_MSG_ERROR([POSIX thread support required]) ])
181 rousseau 1944
182     multithread=yes
183 rousseau 460 fi
184     AC_MSG_RESULT([multi threading : $multithread])
185    
186 rousseau 1734 # --enable-bundle=NAME
187 rousseau 402 AC_ARG_ENABLE(bundle,
188 rousseau 460 AC_HELP_STRING([--enable-bundle=NAME],[bundle directory name
189     (default ifd-ccid.bundle)]),
190     [bundle="${enableval}"], [bundle=false])
191 rousseau 402 if test "${bundle}" = false ; then
192     bundle="ifd-ccid.bundle"
193     fi
194     AC_MSG_RESULT([bundle directory name : $bundle])
195     AC_DEFINE_UNQUOTED(BUNDLE, "$bundle", [bundle directory name])
196    
197 rousseau 1734 # --enable-usbdropdir=DIR
198 rousseau 402 AC_ARG_ENABLE(usbdropdir,
199 rousseau 460 AC_HELP_STRING([--enable-usbdropdir=DIR],[directory containing USB
200 rousseau 871 drivers (default to pcscd config or $(prefix)/pcsc/drivers)]),
201 rousseau 460 [usbdropdir="${enableval}"], [usbdropdir=false])
202 rousseau 402 if test "${usbdropdir}" = false ; then
203 rousseau 1328 usbdropdir=`pkg-config libpcsclite --variable=usbdropdir`
204 rousseau 402 fi
205     AC_MSG_RESULT([USB drop directory : $usbdropdir])
206     AC_DEFINE_UNQUOTED(PCSCLITE_HP_DROPDIR, "$usbdropdir", [directory containing USB drivers])
207 rousseau 1360 if test "${usbdropdir}" = "" ; then
208     AC_MSG_ERROR([use --enable-usbdropdir=DIR])
209     fi
210 rousseau 402
211 rousseau 1734 # --enable-ccidtwindir=DIR
212 rousseau 564 AC_ARG_ENABLE(ccidtwindir,
213     AC_HELP_STRING([--enable-ccidtwindir=DIR],[directory to install the
214 rousseau 871 serial Twin driver (default to pcscd config or $(prefix)/pcsc/drivers/serial)]),
215 rousseau 564 [ccidtwindir="${enableval}"], [ccidtwindir=false])
216     if test "${ccidtwindir}" = false ; then
217 rousseau 1328 ccidtwindir=`pkg-config libpcsclite --variable=usbdropdir`/serial
218 rousseau 564 fi
219     AC_MSG_RESULT([serial twin install dir : $ccidtwindir])
220    
221 rousseau 1943 # --disable-pcsclite
222 rousseau 896 AC_ARG_ENABLE(pcsclite,
223 rousseau 1943 AC_HELP_STRING([--disable-pcsclite],[do not use pcsc-lite debug support]),
224     [ pcsclite="${enableval}" ], [ pcsclite=yes ] )
225 rousseau 564
226 rousseau 896 if test "${pcsclite}" = no ; then
227 rousseau 1342 AM_CONDITIONAL(WITHOUT_PCSC, true)
228 rousseau 1349 else
229 rousseau 1734 # check that pcsc-lite is installed
230 rousseau 1405 OLD_LIBS="$LIBS"
231 rousseau 1802 LIBS="$LIBS $PCSC_LIBS"
232 rousseau 1404 AC_CHECK_LIB(pcsclite, SCardEstablishContext, [],
233 rousseau 1802 [AC_MSG_ERROR([SCardEstablishContext() not found, install pcsc-lite 1.2.9-beta9 or later, or use PCSC_LIBS=... ./configure])])
234 rousseau 1405 LIBS="$OLD_LIBS"
235 rousseau 1404
236 rousseau 1349 AM_CONDITIONAL(WITHOUT_PCSC, false)
237 rousseau 1943
238     pcsclite=yes
239 rousseau 896 fi
240     AC_MSG_RESULT([compiled for pcsc-lite : $pcsclite])
241    
242    
243 rousseau 1734 # Setup dist stuff
244 rousseau 402 AC_SUBST(ac_aux_dir)
245     AC_SUBST(bundle)
246     AC_SUBST(usbdropdir)
247 rousseau 564 AC_SUBST(ccidtwindir)
248 rousseau 402
249 rousseau 1734 # Write Makefiles.
250 rousseau 887 AC_CONFIG_FILES(Makefile
251     aclocal/Makefile
252     src/Makefile
253     readers/Makefile
254     examples/Makefile)
255    
256 rousseau 402 AC_OUTPUT
257    

Properties

Name Value
svn:eol-style native
svn:keywords Author Date Id Revision

  ViewVC Help
Powered by ViewVC 1.1.5