fix memleak on tar_open() failure
[libtar.git] / configure.ac
blob46231007d518b662b767bcc33e0ba4bb9e019d33
1 dnl ### Normal initialization. ######################################
2 AC_INIT([libtar], [1.2.20])
3 AC_PREREQ([2.61])
4 AC_CONFIG_AUX_DIR([autoconf])
5 AC_CONFIG_HEADERS([config.h])
6 AC_COPYRIGHT([[
7 Copyright (c) 1998-2003 University of Illinois Board of Trustees
8 Copyright (c) 1998-2003 Mark D. Roth
9 All rights reserved.
10 ]])
11 AC_CONFIG_SRCDIR([lib/libtar.h])
12 AC_CONFIG_MACRO_DIR([autoconf])
13 AM_INIT_AUTOMAKE([dist-bzip2])
14 ENCAP_PKG([], [postinstall-encap])
17 dnl ### Load subdirectory modules. ##################################
18 PSG_MODULE([compat])
19 PSG_MODULE([listhash], [libtar])
22 dnl ### Set some option defaults. ###################################
23 if test -z "$CFLAGS"; then
24   CFLAGS="-O"
26 MKDIR="mkdir -p -m 755"
27 AC_SUBST([MKDIR])
30 dnl ### Check for compiler et al. ###################################
31 AC_USE_SYSTEM_EXTENSIONS
32 AC_PROG_CC
33 AC_PROG_LIBTOOL
34 AC_PROG_INSTALL
35 AC_PROG_LN_S
36 AC_PROG_MAKE_SET
39 dnl ### Compiler characteristics. ##################################
40 AC_C_CONST
41 AX_TLS
42 if test "$ac_cv_tls" = "none" ; then
43 AC_MSG_NOTICE([
44 ****************************************************************
45 WARNING: Your compiler does not support TLS __thread keywords,
46 so your version of libtar will not be thread-safe.
47 ****************************************************************
52 dnl ### Checks for header files. ###################################
53 AC_HEADER_STDC
54 AC_CHECK_HEADERS([unistd.h])
55 AC_HEADER_MAJOR
56 PSG_REPLACE_TYPE([major_t], [unsigned int], [
57   #include <sys/types.h>
58   #ifdef MAJOR_IN_MKDEV
59   # include <sys/mkdev.h>
60   #else
61   # ifdef MAJOR_IN_SYSMACROS
62   #  include <sys/sysmacros.h>
63   # endif
64   #endif
66 PSG_REPLACE_TYPE([minor_t], [unsigned int], [
67   #include <sys/types.h>
68   #ifdef MAJOR_IN_MKDEV
69   # include <sys/mkdev.h>
70   #else
71   # ifdef MAJOR_IN_SYSMACROS
72   #  include <sys/sysmacros.h>
73   # endif
74   #endif
76 PSG_REPLACE_TYPE([dev_t], [unsigned long], [
77   #include <sys/types.h>
78   #ifdef MAJOR_IN_MKDEV
79   # include <sys/mkdev.h>
80   #else
81   # ifdef MAJOR_IN_SYSMACROS
82   #  include <sys/sysmacros.h>
83   # endif
84   #endif
86 PSG_REPLACE_TYPE([socklen_t], [unsigned long], [
87   #include <sys/types.h>
88   #include <sys/socket.h>
90 PSG_REPLACE_TYPE([uint64_t], [long long])
91 AC_TYPE_MODE_T
92 AC_TYPE_OFF_T
93 AC_TYPE_SIZE_T
94 AC_TYPE_UID_T
95 PSG_REPLACE_TYPE([nlink_t], [unsigned short])
98 dnl ### Check for needed functions. ################################
99 COMPAT_FUNC_BASENAME
100 COMPAT_FUNC_DIRNAME
101 COMPAT_FUNC_FNMATCH
102 AC_CHECK_FUNCS([lchown])
103 COMPAT_FUNC_MAKEDEV
104 COMPAT_FUNC_SNPRINTF
105 COMPAT_FUNC_STRDUP
106 AC_FUNC_STRFTIME
107 COMPAT_FUNC_STRLCPY
108 COMPAT_FUNC_STRMODE
109 COMPAT_FUNC_STRSEP
112 dnl ### Check for libraries. #######################################
113 AC_ARG_WITH([zlib],
114   [  --without-zlib          Use external gzip binary instead of zlib],
115   [],
116   [with_zlib=yes])
117 if test "$with_zlib" = "yes"; then
118   AC_CHECK_LIB([z], [gzread])
122 dnl ### Create output files. #######################################
123 AC_CONFIG_FILES([Makefile lib/Makefile libtar/Makefile doc/Makefile])
124 AC_OUTPUT