opkg: fix configure checks for gpgme
[oweals/opkg-lede.git] / configure.ac
index 810db5c4480ff5df7ddf8f7bac2c6cf4bb99000c..3e1d0bb20660f9ba41d184d23023f3cd8a325263 100644 (file)
@@ -1,6 +1,6 @@
 # Process this file with autoconf to produce a configure script
-AC_INIT(ipkg.c)
-AM_INIT_AUTOMAKE([ipkg], [0.99.163])
+AC_INIT(opkg.c)
+AM_INIT_AUTOMAKE([opkg], [0.99.163])
 AM_CONFIG_HEADER(config.h)
 
 AC_CANONICAL_HOST
@@ -19,9 +19,57 @@ AC_PROG_LN_S
 AM_PROG_INSTALL_STRIP
 AC_PROG_LIBTOOL
 
-# Checks for libraries (hah! ipkg is pretty much self-contained)
+# Checks for libraries
+
+# check for libcurl
 PKG_CHECK_MODULES(CURL, libcurl)
 
+
+
+dnl **********
+dnl GPGME
+dnl **********
+
+ok="no"
+min_gpgme_version=1.0.0
+AC_PATH_PROG(GPGME_CONFIG, gpgme-config, "failed")
+if test $GPGME_CONFIG != "failed" ; then
+      AC_MSG_CHECKING(for GPGME - version >= $min_gpgme_version)
+      req_major=`echo $min_gpgme_version | \
+                sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\1/'`
+      req_minor=`echo $min_gpgme_version | \
+                 sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\2/'`
+      req_micro=`echo $min_gpgme_version | \
+                 sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\)/\3/'`
+      gpgme_config_version=`$GPGME_CONFIG --version`
+      major=`echo $gpgme_config_version | \
+                 sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\1/'`
+      minor=`echo $gpgme_config_version | \
+                 sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\2/'`
+      micro=`echo $gpgme_config_version | \
+                sed 's/\([[0-9]]*\)\.\([[0-9]]*\)\.\([[0-9]]*\).*/\3/'`
+
+       if test "$major" -eq "$req_major"; then
+          if test "$minor" -ge "$req_minor"; then
+            if test "$micro" -ge "$req_micro"; then
+              ok="yes"
+            fi
+          fi
+       fi
+fi
+
+if test $ok = "yes"; then
+  GPGME_CFLAGS=`$GPGME_CONFIG --cflags`
+  GPGME_LIBS=`$GPGME_CONFIG --libs`
+  AC_MSG_RESULT(yes)
+else
+  AC_MSG_ERROR(GPGME $min_gpgme_version or later needed)
+fi
+
+AC_SUBST(GPGME_CFLAGS)
+AC_SUBST(GPGME_LIBS)
+
+
 # Checks for header files
 AC_HEADER_DIRENT
 AC_HEADER_STDC
@@ -51,23 +99,23 @@ AC_FUNC_UTIME_NULL
 AC_FUNC_VPRINTF
 AC_CHECK_FUNCS([memmove memset mkdir regcomp strchr strcspn strdup strerror strndup strrchr strstr strtol strtoul sysinfo utime])
 
-ipkglibdir=
-AC_ARG_WITH(ipkglibdir,
-[  --with-ipkglibdir=DIR   specifies directory to put status and info files.
-                          "/ipkg" is always added so if you want your files 
-                          to be in /usr/lib/ipkg you should indicate 
-                          --with-ipkglibdir=/usr/lib ],
+opkglibdir=
+AC_ARG_WITH(opkglibdir,
+[  --with-opkglibdir=DIR   specifies directory to put status and info files.
+                          "/opkg" is always added so if you want your files 
+                          to be in /usr/lib/opkg you should indicate 
+                          --with-opkglibdir=/usr/lib ],
 [case "${withval}" in
-yes)    AC_MSG_ERROR(bad value ${withval} given for ipkg libs directories ) ;;
+yes)    AC_MSG_ERROR(bad value ${withval} given for opkg libs directories ) ;;
 no)     ;;
-*)      ipkglibdir=$with_ipkglibdir ;;
+*)      opkglibdir=$with_opkglibdir ;;
 esac])
 
 # Default local prefix if it is empty
-if test x$ipkglibdir = x; then
-        ipkglibdir=/usr/lib
+if test x$opkglibdir = x; then
+        opkglibdir=/usr/lib
 fi
 
-AC_SUBST(ipkglibdir)
+AC_SUBST(opkglibdir)
 
-AC_OUTPUT(Makefile etc/Makefile familiar/Makefile familiar/control familiar/control-unstripped familiar/libipkg-control  familiar/libipkg-dev-control libbb/Makefile libipkg.pc ipkg.h)
+AC_OUTPUT(Makefile etc/Makefile familiar/Makefile familiar/control familiar/control-unstripped familiar/libopkg-control  familiar/libopkg-dev-control libbb/Makefile libopkg.pc opkg.h)