93 lines
2.4 KiB
Diff
93 lines
2.4 KiB
Diff
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
|
|
|