Commit | Line | Data |
---|---|---|
1479465f GJ |
1 | # Copyright © 2004 Scott James Remnant <scott@netsplit.com> |
2 | # Copyright © 2007 Nicolas François <nicolas.francois@centraliens.net> | |
3 | # Copyright © 2006, 2009-2012, 2014-2015 Guillem Jover <guillem@debian.org> | |
4 | ||
5 | # DPKG_LIB_MD | |
6 | # ----------- | |
7 | # Check for the message digest library. | |
8 | AC_DEFUN([DPKG_LIB_MD], [ | |
9 | AC_ARG_VAR([MD_LIBS], [linker flags for md library]) | |
10 | AC_ARG_WITH([libmd], | |
11 | [AS_HELP_STRING([--with-libmd], | |
12 | [use libmd library for message digest functions])], | |
13 | [], [with_libmd=check]) | |
14 | have_libmd="no" | |
15 | AS_IF([test "x$with_libmd" != "xno"], [ | |
16 | AC_CHECK_HEADERS([md5.h], [ | |
17 | dpkg_save_libmd_LIBS=$LIBS | |
18 | AC_SEARCH_LIBS([MD5Init], [md], [have_libmd="yes"]) | |
19 | LIBS=$dpkg_save_libmd_LIBS | |
20 | AS_IF([test "x$ac_cv_search_MD5Init" = "xnone required"], [ | |
21 | have_libmd="builtin" | |
22 | ], [test "x$ac_cv_search_MD5Init" != "xno"], [ | |
23 | have_libmd="yes" | |
24 | MD_LIBS="$ac_cv_search_MD5Init" | |
25 | ]) | |
26 | ]) | |
27 | AS_IF([test "x$with_libmd" = "xyes" && test "x$have_libmd" = "xno"], [ | |
28 | AC_MSG_FAILURE([md5 digest functions not found]) | |
29 | ]) | |
30 | ]) | |
31 | AM_CONDITIONAL([HAVE_LIBMD_MD5], [test "x$have_libmd" != "xno"]) | |
32 | ])# DPKG_LIB_MD | |
33 | ||
34 | # DPKG_WITH_COMPRESS_LIB(NAME, HEADER, FUNC) | |
35 | # ------------------------------------------------- | |
36 | # Check for availability of a compression library. | |
37 | AC_DEFUN([DPKG_WITH_COMPRESS_LIB], [ | |
38 | AC_ARG_VAR(AS_TR_CPP($1)[_LIBS], [linker flags for $1 library]) | |
39 | AC_ARG_WITH([lib$1], | |
40 | [AS_HELP_STRING([--with-lib$1], | |
41 | [use $1 library for compression and decompression])], | |
42 | [], [with_lib$1=check]) | |
43 | have_lib$1="no" | |
44 | AS_IF([test "x$with_lib$1" != "xno"], [ | |
45 | AC_CHECK_LIB([$1], [$3], [ | |
46 | AC_CHECK_HEADER([$2], [ | |
47 | have_lib$1="yes" | |
48 | ]) | |
49 | ]) | |
50 | ||
51 | AS_IF([test "x$with_lib$1" != "xno"], [ | |
52 | AS_IF([test "x$have_lib$1" = "xyes"], [ | |
53 | AC_DEFINE([WITH_LIB]AS_TR_CPP($1), 1, | |
54 | [Define to 1 to use $1 library rather than console tool]) | |
55 | AS_IF([test "x$with_lib$1" = "xstatic"], [ | |
56 | dpkg_$1_libs="-Wl,-Bstatic -l$1 -Wl,-Bdynamic" | |
57 | ], [ | |
58 | dpkg_$1_libs="-l$1" | |
59 | ]) | |
60 | AS_TR_CPP($1)_LIBS="${AS_TR_CPP($1)_LIBS:+$AS_TR_CPP($1)_LIBS }$dpkg_$1_libs" | |
61 | ], [ | |
62 | AS_IF([test "x$with_lib$1" != "xcheck"], [ | |
63 | AC_MSG_FAILURE([lib$1 library or header not found]) | |
64 | ]) | |
65 | ]) | |
66 | ]) | |
67 | ]) | |
68 | ])# DPKG_WITH_COMPRESS_LIB | |
69 | ||
70 | # DPKG_LIB_Z | |
71 | # ------------- | |
72 | # Check for z library. | |
73 | AC_DEFUN([DPKG_LIB_Z], [ | |
74 | DPKG_WITH_COMPRESS_LIB([z], [zlib.h], [gzdopen]) | |
75 | ])# DPKG_LIB_Z | |
76 | ||
77 | # DPKG_LIB_LZMA | |
78 | # ------------- | |
79 | # Check for lzma library. | |
80 | AC_DEFUN([DPKG_LIB_LZMA], [ | |
81 | DPKG_WITH_COMPRESS_LIB([lzma], [lzma.h], [lzma_alone_decoder]) | |
82 | AC_CHECK_LIB([lzma], [lzma_stream_encoder_mt], [ | |
83 | AC_DEFINE([HAVE_LZMA_MT], [1], [xz multithreaded compression support]) | |
84 | ]) | |
85 | ])# DPKG_LIB_LZMA | |
86 | ||
87 | # DPKG_LIB_BZ2 | |
88 | # ------------ | |
89 | # Check for bz2 library. | |
90 | AC_DEFUN([DPKG_LIB_BZ2], [ | |
91 | DPKG_WITH_COMPRESS_LIB([bz2], [bzlib.h], [BZ2_bzdopen]) | |
92 | ])# DPKG_LIB_BZ2 | |
93 | ||
94 | # DPKG_LIB_SELINUX | |
95 | # ---------------- | |
96 | # Check for selinux library. | |
97 | AC_DEFUN([DPKG_LIB_SELINUX], [ | |
98 | AC_REQUIRE([PKG_PROG_PKG_CONFIG]) | |
99 | m4_ifndef([PKG_PROG_PKG_CONFIG], [m4_fatal([missing pkg-config macros])]) | |
100 | AC_ARG_VAR([SELINUX_LIBS], [linker flags for selinux library])dnl | |
101 | AC_ARG_WITH([libselinux], | |
102 | [AS_HELP_STRING([--with-libselinux], | |
103 | [use selinux library to set security contexts])], | |
104 | [], [with_libselinux=check]) | |
105 | SELINUX_MIN_VERSION=2.0.99 | |
106 | have_libselinux="no" | |
107 | AS_IF([test "x$with_libselinux" != "xno"], [ | |
108 | PKG_CHECK_MODULES([SELINUX], [libselinux >= $SELINUX_MIN_VERSION], [ | |
109 | AC_CHECK_HEADER([selinux/selinux.h], [ | |
110 | AC_DEFINE([WITH_LIBSELINUX], [1], | |
111 | [Define to 1 to compile in SELinux support]) | |
112 | have_libselinux="yes" | |
113 | ], [ | |
114 | AS_IF([test "x$with_libselinux" != "xcheck"], [ | |
115 | AC_MSG_FAILURE([libselinux header not found]) | |
116 | ]) | |
117 | ]) | |
118 | AC_CHECK_LIB([selinux], [setexecfilecon], [ | |
119 | AC_DEFINE([HAVE_SETEXECFILECON], [1], | |
120 | [Define to 1 if SELinux setexecfilecon is present]) | |
121 | ]) | |
122 | ], [ | |
123 | AS_IF([test "x$with_libselinux" != "xcheck"], [ | |
124 | AC_MSG_FAILURE([libselinux at least $SELINUX_MIN_VERSION not found]) | |
125 | ]) | |
126 | ]) | |
127 | ]) | |
128 | AM_CONDITIONAL([WITH_LIBSELINUX], [test "x$have_libselinux" = "xyes"]) | |
129 | AM_CONDITIONAL([HAVE_SETEXECFILECON], | |
130 | [test "x$ac_cv_lib_selinux_setexecfilecon" = "xyes"]) | |
131 | ])# DPKG_LIB_SELINUX | |
132 | ||
133 | # _DPKG_CHECK_LIB_CURSES_NARROW | |
134 | # ----------------------------- | |
135 | # Check for narrow curses library. | |
136 | AC_DEFUN([_DPKG_CHECK_LIB_CURSES_NARROW], [ | |
137 | AC_CHECK_LIB([ncurses], [initscr], [ | |
138 | CURSES_LIBS="${CURSES_LIBS:+$CURSES_LIBS }-lncurses" | |
139 | ], [ | |
140 | AC_CHECK_LIB([curses], [initscr], [ | |
141 | CURSES_LIBS="${CURSES_LIBS:+$CURSES_LIBS }-lcurses" | |
142 | ], [ | |
143 | AC_MSG_ERROR([no curses library found]) | |
144 | ]) | |
145 | ]) | |
146 | ])# DPKG_CHECK_LIB_CURSES_NARROW | |
147 | ||
148 | # DPKG_LIB_CURSES | |
149 | # --------------- | |
150 | # Check for curses library. | |
151 | AC_DEFUN([DPKG_LIB_CURSES], [ | |
152 | AC_REQUIRE([DPKG_UNICODE]) | |
153 | AC_ARG_VAR([CURSES_LIBS], [linker flags for curses library])dnl | |
154 | AC_CHECK_HEADERS([ncurses/ncurses.h ncurses.h curses.h ncurses/term.h term.h], | |
155 | [have_curses_header=yes]) | |
156 | AS_IF([test "x$USE_UNICODE" = "xyes"], [ | |
157 | AC_CHECK_HEADERS([ncursesw/ncurses.h ncursesw/term.h], | |
158 | [have_curses_header=yes]) | |
159 | AC_CHECK_LIB([ncursesw], [initscr], [ | |
160 | CURSES_LIBS="${CURSES_LIBS:+$CURSES_LIBS }-lncursesw" | |
161 | ], [ | |
162 | _DPKG_CHECK_LIB_CURSES_NARROW() | |
163 | ]) | |
164 | ], [ | |
165 | _DPKG_CHECK_LIB_CURSES_NARROW() | |
166 | ]) | |
167 | AS_IF([test "x$have_curses_header" != "xyes"], [ | |
168 | AC_MSG_FAILURE([curses header not found]) | |
169 | ]) | |
170 | have_libcurses=yes | |
171 | ])# DPKG_LIB_CURSES | |
172 | ||
173 | # DPKG_LIB_PS | |
174 | # ----------- | |
175 | # Check for GNU/Hurd ps library | |
176 | AC_DEFUN([DPKG_LIB_PS], [ | |
177 | AC_ARG_VAR([PS_LIBS], [linker flags for ps library])dnl | |
178 | AC_CHECK_LIB([ps], [proc_stat_list_create], [ | |
179 | PS_LIBS="-lps" | |
180 | have_libps=yes | |
181 | ]) | |
182 | ])# DPKG_LIB_PS | |
183 | ||
184 | # DPKG_LIB_KVM | |
185 | # ------------ | |
186 | # Check for BSD kvm library | |
187 | AC_DEFUN([DPKG_LIB_KVM], [ | |
188 | AC_ARG_VAR([KVM_LIBS], [linker flags for kvm library])dnl | |
189 | AC_CHECK_LIB([kvm], [kvm_openfiles], [ | |
190 | KVM_LIBS="-lkvm" | |
191 | have_libkvm=yes | |
192 | ]) | |
193 | ])# DPKG_LIB_KVM |