Commit | Line | Data |
---|---|---|
1479465f GJ |
1 | # Copyright © 2004 Scott James Remnant <scott@netsplit.com>. |
2 | # Copyright © 2010, 2014, 2016 Guillem Jover <guillem@debian.org> | |
3 | ||
4 | # DPKG_LINKER_OPTIMIZATIONS | |
5 | # ------------------------- | |
6 | # Add configure option to disable linker optimizations. | |
7 | AC_DEFUN([DPKG_LINKER_OPTIMIZATIONS], [ | |
8 | AC_ARG_ENABLE([linker-optimizations], | |
9 | [AS_HELP_STRING([--disable-linker-optimizations], | |
10 | [Disable (detected) linker optimizations])], | |
11 | [], [enable_linker_optimizations=yes]) | |
12 | ||
13 | AS_IF([test "x$enable_linker_optimizations" = "xno"], [ | |
14 | LDFLAGS=$(echo "$LDFLAGS" | sed -e "s/ -Wl,-O[[0-9]]*\b//g") | |
15 | ], [ | |
16 | save_LDFLAGS=$LDFLAGS | |
17 | LDFLAGS="$LDFLAGS -Wl,-O1" | |
18 | AC_LINK_IFELSE([ | |
19 | AC_LANG_PROGRAM([[]], [[]]) | |
20 | ], [], [ | |
21 | LDFLAGS="$save_LDFLAGS" | |
22 | ]) | |
23 | ]) | |
24 | ]) | |
25 | ||
26 | # DPKG_LINKER_AS_NEEDED | |
27 | # --------------------- | |
28 | AC_DEFUN([DPKG_LINKER_AS_NEEDED], [ | |
29 | AC_CACHE_CHECK([for --as-needed linker flag], [dpkg_cv_linker_as_needed], [ | |
30 | save_LDFLAGS=$LDFLAGS | |
31 | LDFLAGS="$LDFLAGS -Wl,--as-needed" | |
32 | AC_LINK_IFELSE([ | |
33 | AC_LANG_PROGRAM([], []) | |
34 | ], [ | |
35 | dpkg_cv_linker_as_needed=yes | |
36 | ], [ | |
37 | dpkg_cv_linker_as_needed=no | |
38 | ]) | |
39 | LDFLAGS="$save_LDFLAGS" | |
40 | ]) | |
41 | AM_CONDITIONAL([HAVE_LINKER_AS_NEEDED], | |
42 | [test "x$dpkg_cv_linker_as_needed" = "xyes"]) | |
43 | ]) | |
44 | ||
45 | # DPKG_LINKER_VERSION_SCRIPT | |
46 | # -------------------------- | |
47 | AC_DEFUN([DPKG_LINKER_VERSION_SCRIPT], [ | |
48 | AC_CACHE_CHECK([for --version-script linker flag], [dpkg_cv_version_script], [ | |
49 | echo "{ global: symbol; local: *; };" >conftest.map | |
50 | save_LDFLAGS=$LDFLAGS | |
51 | LDFLAGS="$LDFLAGS -Wl,--version-script=conftest.map" | |
52 | AC_LINK_IFELSE([ | |
53 | AC_LANG_PROGRAM([], []) | |
54 | ], [ | |
55 | dpkg_cv_version_script=yes | |
56 | ], [ | |
57 | dpkg_cv_version_script=no | |
58 | ]) | |
59 | LDFLAGS="$save_LDFLAGS" | |
60 | rm -f conftest.map | |
61 | ]) | |
62 | AM_CONDITIONAL([HAVE_LINKER_VERSION_SCRIPT], | |
63 | [test "x$dpkg_cv_version_script" = "xyes"]) | |
64 | ]) |