| From afc8712a9e6c72fbd03c36f84ecf8703e5d22a8c Mon Sep 17 00:00:00 2001 |
| From: Christopher Larson <chris_larson@mentor.com> |
| Date: Mon, 15 Feb 2016 16:11:32 -0700 |
| Subject: [PATCH 2/2] Add argument to control the libargp dependency |
| |
| This ensures that the builds are always deterministic. If the argument isn't |
| passed, the default behavior is to use libargp if the libc doesn't have argp. |
| |
| Upstream-Status: Pending |
| Signed-off-by: Christopher Larson <chris_larson@mentor.com> |
| --- |
| configure.ac | 55 ++++++++++++++++++++++++++++++++++++------------------- |
| 1 file changed, 36 insertions(+), 19 deletions(-) |
| |
| diff --git a/configure.ac b/configure.ac |
| index 04fcd25..11a5321 100644 |
| --- a/configure.ac |
| +++ b/configure.ac |
| @@ -32,6 +32,13 @@ AC_ARG_WITH([libgcrypt], |
| [with_libgcrypt=check] |
| ) |
| |
| +AC_ARG_WITH([libargp], |
| + AS_HELP_STRING([--without-libargp], |
| + [Disable libargp support. Systems whose libc lacks argp can use libargp instead. (Default: check if libc lacks argp)]), |
| + [with_libargp=$withval], |
| + [with_libargp=check] |
| +) |
| + |
| dnl Make sure anyone changing configure.ac/Makefile.am has a clue |
| AM_MAINTAINER_MODE |
| |
| @@ -82,27 +89,37 @@ AS_IF( |
| ] |
| ) |
| |
| -dnl First check if we have argp available from libc |
| -AC_LINK_IFELSE( |
| - [AC_LANG_PROGRAM( |
| - [#include <argp.h>], |
| - [int argc=1; char *argv[]={"test"}; argp_parse(0,argc,argv,0,0,0); return 0;] |
| - )], |
| - [libc_has_argp="true"], |
| - [libc_has_argp="false"] |
| +dnl Determine if we need libargp: either user requested, or libc has no argp |
| +AS_IF( |
| + [test "x$with_libargp" != "xyes"], |
| + [ |
| + AC_LINK_IFELSE( |
| + [AC_LANG_PROGRAM( |
| + [#include <argp.h>], |
| + [int argc=1; char *argv[]={"test"}; argp_parse(0,argc,argv,0,0,0); return 0;] |
| + )], |
| + [need_libargp=no], |
| + [need_libargp=yes |
| + if test "x$with_libargp" = "xno"; then |
| + AC_MSG_FAILURE([libargp disabled and libc does not have argp]) |
| + fi] |
| + ) |
| + ], |
| + [need_libargp=yes], |
| ) |
| |
| -dnl If libc doesn't provide argp, then test for libargp |
| -if test "$libc_has_argp" = "false" ; then |
| - AC_MSG_WARN("libc does not have argp") |
| - AC_CHECK_LIB([argp], [argp_parse], [have_argp="true"], [have_argp="false"]) |
| - |
| - if test "$have_argp" = "false"; then |
| - AC_MSG_ERROR("no libargp found") |
| - else |
| - LIBS+=" -largp" |
| - fi |
| -fi |
| +dnl Check for libargp |
| +AS_IF( |
| + [test "x$need_libargp" = "xyes"], |
| + [ |
| + AC_CHECK_LIB( |
| + [argp], |
| + [argp_parse], |
| + [LIBS="$LIBS -largp"], |
| + [AC_MSG_FAILURE([libargp not found])] |
| + ) |
| + ] |
| +) |
| |
| dnl ----------------- |
| dnl Configure options |
| -- |
| 2.2.1 |
| |