diff options
Diffstat (limited to 'configure.ac')
-rw-r--r-- | configure.ac | 62 |
1 files changed, 37 insertions, 25 deletions
diff --git a/configure.ac b/configure.ac index bd370d6..b246808 100644 --- a/configure.ac +++ b/configure.ac | |||
@@ -9,10 +9,18 @@ AC_CONFIG_MACRO_DIR([m4]) | |||
9 | 9 | ||
10 | m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) | 10 | m4_ifdef([AM_SILENT_RULES], [AM_SILENT_RULES([yes])]) |
11 | 11 | ||
12 | AC_SUBST([USER_CFLAGS], "-O2 $CFLAGS") | 12 | AC_PROG_CC |
13 | CFLAGS="$CFLAGS -Wall -std=gnu99 -g" | 13 | AC_PROG_CC_STDC |
14 | AM_PROG_CC_C_O | ||
15 | AC_PROG_LIBTOOL | ||
16 | LT_INIT | ||
17 | |||
18 | CFLAGS="$CFLAGS -Wall -std=gnu99" | ||
14 | 19 | ||
15 | case $host_os in | 20 | case $host_os in |
21 | *cygwin*) | ||
22 | HOST_OS=cygwin | ||
23 | ;; | ||
16 | *darwin*) | 24 | *darwin*) |
17 | HOST_OS=darwin | 25 | HOST_OS=darwin |
18 | HOST_ABI=macosx | 26 | HOST_ABI=macosx |
@@ -24,13 +32,14 @@ case $host_os in | |||
24 | ;; | 32 | ;; |
25 | *hpux*) | 33 | *hpux*) |
26 | HOST_OS=hpux; | 34 | HOST_OS=hpux; |
27 | CFLAGS="$CFLAGS -mlp64 -D_XOPEN_SOURCE=600 -D__STRICT_ALIGNMENT" | 35 | CFLAGS="$CFLAGS -mlp64" |
36 | CPPFLAGS="$CPPFLAGS -D_XOPEN_SOURCE=600 -D__STRICT_ALIGNMENT" | ||
28 | AC_SUBST([PLATFORM_LDADD], ['-lpthread']) | 37 | AC_SUBST([PLATFORM_LDADD], ['-lpthread']) |
29 | ;; | 38 | ;; |
30 | *linux*) | 39 | *linux*) |
31 | HOST_OS=linux | 40 | HOST_OS=linux |
32 | HOST_ABI=elf | 41 | HOST_ABI=elf |
33 | CFLAGS="$CFLAGS -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_POSIX_SOURCE -D_GNU_SOURCE" | 42 | CPPFLAGS="$CPPFLAGS -D_DEFAULT_SOURCE -D_BSD_SOURCE -D_POSIX_SOURCE -D_GNU_SOURCE" |
34 | ;; | 43 | ;; |
35 | *netbsd*) | 44 | *netbsd*) |
36 | HOST_OS=netbsd | 45 | HOST_OS=netbsd |
@@ -42,18 +51,24 @@ case $host_os in | |||
42 | ;; | 51 | ;; |
43 | *mingw*) | 52 | *mingw*) |
44 | HOST_OS=win | 53 | HOST_OS=win |
45 | CFLAGS="$CFLAGS -D_GNU_SOURCE -D_POSIX -D_POSIX_SOURCE -D_REENTRANT -D_POSIX_THREAD_SAFE_FUNCTIONS -DWIN32_LEAN_AND_MEAN -D_WIN32_WINNT=0x0600 -DOPENSSL_NO_SPEED -DNO_SYSLOG -D__USE_MINGW_ANSI_STDIO" | 54 | CPPFLAGS="$CPPFLAGS -D_GNU_SOURCE -D_POSIX -D_POSIX_SOURCE -D__USE_MINGW_ANSI_STDIO" |
55 | CPPFLAGS="$CPPFLAGS -D_REENTRANT -D_POSIX_THREAD_SAFE_FUNCTIONS" | ||
56 | CPPFLAGS="$CPPFLAGS -DWIN32_LEAN_AND_MEAN -D_WIN32_WINNT=0x0600" | ||
57 | CPPFLAGS="$CPPFLAGS -DOPENSSL_NO_SPEED -DNO_SYSLOG" | ||
58 | CFLAGS="$CFLAGS -static-libgcc" | ||
59 | LDFLAGS="$LDFLAGS -static-libgcc" | ||
46 | AC_SUBST([PLATFORM_LDADD], ['-lws2_32']) | 60 | AC_SUBST([PLATFORM_LDADD], ['-lws2_32']) |
47 | ;; | 61 | ;; |
48 | *solaris*) | 62 | *solaris*) |
49 | HOST_OS=solaris | 63 | HOST_OS=solaris |
50 | HOST_ABI=elf | 64 | HOST_ABI=elf |
51 | CFLAGS="$CFLAGS -D__EXTENSIONS__ -D_XOPEN_SOURCE=600 -DBSD_COMP" | 65 | CPPFLAGS="$CPPFLAGS -D__EXTENSIONS__ -D_XOPEN_SOURCE=600 -DBSD_COMP" |
52 | AC_SUBST([PLATFORM_LDADD], ['-lnsl -lsocket']) | 66 | AC_SUBST([PLATFORM_LDADD], ['-lnsl -lsocket']) |
53 | ;; | 67 | ;; |
54 | *) ;; | 68 | *) ;; |
55 | esac | 69 | esac |
56 | 70 | ||
71 | AM_CONDITIONAL([HOST_CYGWIN], [test x$HOST_OS = xcygwin]) | ||
57 | AM_CONDITIONAL([HOST_DARWIN], [test x$HOST_OS = xdarwin]) | 72 | AM_CONDITIONAL([HOST_DARWIN], [test x$HOST_OS = xdarwin]) |
58 | AM_CONDITIONAL([HOST_FREEBSD], [test x$HOST_OS = xfreebsd]) | 73 | AM_CONDITIONAL([HOST_FREEBSD], [test x$HOST_OS = xfreebsd]) |
59 | AM_CONDITIONAL([HOST_HPUX], [test x$HOST_OS = xhpux]) | 74 | AM_CONDITIONAL([HOST_HPUX], [test x$HOST_OS = xhpux]) |
@@ -68,11 +83,6 @@ AC_CHECK_FUNC([clock_gettime],, | |||
68 | AC_CHECK_FUNC([dl_iterate_phdr],, | 83 | AC_CHECK_FUNC([dl_iterate_phdr],, |
69 | [AC_SEARCH_LIBS([dl_iterate_phdr],[dl])]) | 84 | [AC_SEARCH_LIBS([dl_iterate_phdr],[dl])]) |
70 | 85 | ||
71 | AC_PROG_CC | ||
72 | AC_PROG_LIBTOOL | ||
73 | AC_PROG_CC_STDC | ||
74 | AM_PROG_CC_C_O | ||
75 | |||
76 | AC_MSG_CHECKING([if compiling with clang]) | 86 | AC_MSG_CHECKING([if compiling with clang]) |
77 | AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [[ | 87 | AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [[ |
78 | #ifndef __clang__ | 88 | #ifndef __clang__ |
@@ -85,6 +95,9 @@ AC_COMPILE_IFELSE([AC_LANG_PROGRAM([], [[ | |||
85 | AC_MSG_RESULT([$CLANG]) | 95 | AC_MSG_RESULT([$CLANG]) |
86 | AS_IF([test "x$CLANG" = "xyes"], [CLANG_FLAGS=-Qunused-arguments]) | 96 | AS_IF([test "x$CLANG" = "xyes"], [CLANG_FLAGS=-Qunused-arguments]) |
87 | 97 | ||
98 | CFLAGS="$CFLAGS $CLANG_FLAGS" | ||
99 | LDFLAGS="$LDFLAGS $CLANG_FLAGS" | ||
100 | |||
88 | # We want to check for compiler flag support. Prior to clang v5.1, there was no | 101 | # We want to check for compiler flag support. Prior to clang v5.1, there was no |
89 | # way to make clang's "argument unused" warning fatal. So we invoke the | 102 | # way to make clang's "argument unused" warning fatal. So we invoke the |
90 | # compiler through a wrapper script that greps for this message. | 103 | # compiler through a wrapper script that greps for this message. |
@@ -201,9 +214,6 @@ __asm__(".section .note.GNU-stack,\"\",@progbits");]])], | |||
201 | CFLAGS="$save_cflags $AM_CFLAGS" | 214 | CFLAGS="$save_cflags $AM_CFLAGS" |
202 | AM_PROG_AS | 215 | AM_PROG_AS |
203 | 216 | ||
204 | CFLAGS="$CFLAGS $CLANG_CFLAGS" | ||
205 | LDFLAGS="$LDFLAGS $CLANG_FLAGS" | ||
206 | |||
207 | AC_CHECK_FUNCS([arc4random_buf asprintf explicit_bzero funopen getauxval]) | 217 | AC_CHECK_FUNCS([arc4random_buf asprintf explicit_bzero funopen getauxval]) |
208 | AC_CHECK_FUNCS([getentropy issetugid memmem poll reallocarray]) | 218 | AC_CHECK_FUNCS([getentropy issetugid memmem poll reallocarray]) |
209 | AC_CHECK_FUNCS([strlcat strlcpy strndup strnlen strsep strtonum]) | 219 | AC_CHECK_FUNCS([strlcat strlcpy strndup strnlen strsep strtonum]) |
@@ -284,20 +294,28 @@ AC_ARG_ENABLE([asm], | |||
284 | AS_HELP_STRING([--disable-asm], [Disable assembly])) | 294 | AS_HELP_STRING([--disable-asm], [Disable assembly])) |
285 | AM_CONDITIONAL([OPENSSL_NO_ASM], [test "x$enable_asm" = "xno"]) | 295 | AM_CONDITIONAL([OPENSSL_NO_ASM], [test "x$enable_asm" = "xno"]) |
286 | 296 | ||
297 | AC_ARG_ENABLE([extratests], | ||
298 | AS_HELP_STRING([--enable-extratests], [Enable extra tests that may be unreliable on some platforms])) | ||
299 | AM_CONDITIONAL([ENABLE_EXTRATESTS], [test "x$enable_extratests" = xyes]) | ||
300 | |||
287 | old_cflags=$CFLAGS | 301 | old_cflags=$CFLAGS |
288 | CFLAGS="$old_cflags -I$srcdir/include" | 302 | CFLAGS="$CFLAGS -I$srcdir/include" |
303 | AC_MSG_CHECKING([if BSWAP4 builds without __STRICT_ALIGNMENT]) | ||
289 | AC_TRY_COMPILE([#include "$srcdir/crypto/modes/modes_lcl.h"], | 304 | AC_TRY_COMPILE([#include "$srcdir/crypto/modes/modes_lcl.h"], |
290 | [int a = 0; BSWAP4(a);], | 305 | [int a = 0; BSWAP4(a);], |
291 | BSWAP4=yes, BSWAP4=no) | 306 | AC_MSG_RESULT([yes]) |
307 | BSWAP4=yes, | ||
308 | AC_MSG_RESULT([no]) | ||
309 | BSWAP4=no) | ||
292 | CFLAGS="$old_cflags" | 310 | CFLAGS="$old_cflags" |
293 | 311 | ||
294 | case $host_cpu in | 312 | case $host_cpu in |
295 | *sparc*) | 313 | *sparc*) |
296 | CFLAGS="$CFLAGS -D__STRICT_ALIGNMENT" | 314 | CPPFLAGS="$CPPFLAGS -D__STRICT_ALIGNMENT" |
297 | ;; | 315 | ;; |
298 | *arm*) | 316 | *arm*) |
299 | AS_IF([test "x$BSWAP4" = "xyes"],, | 317 | AS_IF([test "x$BSWAP4" = "xyes"],, |
300 | CFLAGS="$old_cflags -D__STRICT_ALIGNMENT") | 318 | CPPFLAGS="$CPPFLAGS -D__STRICT_ALIGNMENT") |
301 | ;; | 319 | ;; |
302 | esac | 320 | esac |
303 | 321 | ||
@@ -306,13 +324,6 @@ AM_CONDITIONAL([HOST_ASM_ELF_X86_64], | |||
306 | AM_CONDITIONAL([HOST_ASM_MACOSX_X86_64], | 324 | AM_CONDITIONAL([HOST_ASM_MACOSX_X86_64], |
307 | [test "x$HOST_ABI" = "xmacosx" -a "$host_cpu" = "x86_64" -a "x$enable_asm" != "xno"]) | 325 | [test "x$HOST_ABI" = "xmacosx" -a "$host_cpu" = "x86_64" -a "x$enable_asm" != "xno"]) |
308 | 326 | ||
309 | AC_ARG_ENABLE([libtls], | ||
310 | AS_HELP_STRING([--enable-libtls], [Enable building the libtls library])) | ||
311 | AM_CONDITIONAL([ENABLE_LIBTLS], [test "x$enable_libtls" = xyes]) | ||
312 | AM_COND_IF([ENABLE_LIBTLS], [AC_CONFIG_FILES([libtls.pc])]) | ||
313 | |||
314 | LT_INIT | ||
315 | |||
316 | AC_CONFIG_FILES([ | 327 | AC_CONFIG_FILES([ |
317 | Makefile | 328 | Makefile |
318 | include/Makefile | 329 | include/Makefile |
@@ -325,6 +336,7 @@ AC_CONFIG_FILES([ | |||
325 | man/Makefile | 336 | man/Makefile |
326 | libcrypto.pc | 337 | libcrypto.pc |
327 | libssl.pc | 338 | libssl.pc |
339 | libtls.pc | ||
328 | openssl.pc | 340 | openssl.pc |
329 | ]) | 341 | ]) |
330 | 342 | ||