mirror of
https://github.com/cryb-to/cryb-otp.git
synced 2024-11-23 22:15:42 +00:00
Update to latest version of Cryb build system.
This commit is contained in:
parent
f7e4233b4c
commit
573227933a
11 changed files with 89 additions and 130 deletions
|
@ -1,5 +1,5 @@
|
||||||
SUBDIRS =
|
SUBDIRS =
|
||||||
|
|
||||||
if OTP_UTIL
|
if CRYB_CLI
|
||||||
SUBDIRS += otpkey
|
SUBDIRS += otpkey
|
||||||
endif OTP_UTIL
|
endif CRYB_CLI
|
||||||
|
|
120
configure.ac
120
configure.ac
|
@ -1,5 +1,5 @@
|
||||||
AC_PREREQ([2.63])
|
AC_PREREQ([2.63])
|
||||||
AC_INIT([cryb.otp], [0.20180426], [des@des.no], [cryb-otp], [http://cryb.to/])
|
AC_INIT([cryb.otp], [0.20180506], [des@des.no], [cryb-otp], [http://cryb.to/])
|
||||||
AC_CONFIG_SRCDIR([include/cryb/otp.h])
|
AC_CONFIG_SRCDIR([include/cryb/otp.h])
|
||||||
AC_CONFIG_MACRO_DIR([m4])
|
AC_CONFIG_MACRO_DIR([m4])
|
||||||
AM_INIT_AUTOMAKE([foreign no-dist-gzip dist-xz])
|
AM_INIT_AUTOMAKE([foreign no-dist-gzip dist-xz])
|
||||||
|
@ -75,31 +75,6 @@ AC_CHECK_DECLS([
|
||||||
AC_CHECK_FUNCS([strlcat strlcmp strlcpy])
|
AC_CHECK_FUNCS([strlcat strlcmp strlcpy])
|
||||||
AC_CHECK_FUNCS([wcslcat wcslcmp wcslcpy])
|
AC_CHECK_FUNCS([wcslcat wcslcmp wcslcpy])
|
||||||
|
|
||||||
############################################################################
|
|
||||||
#
|
|
||||||
# Extra libraries
|
|
||||||
#
|
|
||||||
|
|
||||||
# Cryb.to components
|
|
||||||
AX_PKG_CONFIG_REQUIRE([cryb-core])
|
|
||||||
AX_PKG_CONFIG_REQUIRE([cryb-oath])
|
|
||||||
|
|
||||||
# Cryb.to test framework
|
|
||||||
AX_PKG_CONFIG_CHECK([cryb-test],
|
|
||||||
[AC_MSG_NOTICE([Cryb test framework found, unit tests enabled.])],
|
|
||||||
[AC_MSG_WARN([Cryb test framework not found, unit tests disabled.])])
|
|
||||||
|
|
||||||
# libpam
|
|
||||||
save_LIBS="${LIBS}"
|
|
||||||
LIBS=""
|
|
||||||
AC_SEARCH_LIBS([pam_start], [pam], [
|
|
||||||
PAM_LIBS="${LIBS}"
|
|
||||||
], [
|
|
||||||
PAM_LIBS=""
|
|
||||||
])
|
|
||||||
LIBS="${save_LIBS}"
|
|
||||||
AC_SUBST(PAM_LIBS)
|
|
||||||
|
|
||||||
############################################################################
|
############################################################################
|
||||||
#
|
#
|
||||||
# Build options
|
# Build options
|
||||||
|
@ -143,77 +118,29 @@ AC_ARG_ENABLE([werror],
|
||||||
#
|
#
|
||||||
# Components
|
# Components
|
||||||
#
|
#
|
||||||
|
CRYB_INIT
|
||||||
|
|
||||||
# Everything
|
CRYB_LIB_REQUIRE([digest test])
|
||||||
AC_ARG_ENABLE([all],
|
|
||||||
AS_HELP_STRING([--disable-all],
|
|
||||||
[disable all libraries and tools]),
|
|
||||||
[enable_all=$enableval],
|
|
||||||
[enable_all=yes])
|
|
||||||
|
|
||||||
# Library
|
CRYB_LIB_PROVIDE([otp], [core oath])
|
||||||
elements="$elements lib"
|
|
||||||
AC_ARG_ENABLE([otp-lib],
|
|
||||||
AS_HELP_STRING([--enable-otp-lib],
|
|
||||||
[build the OTP library]),
|
|
||||||
[enable_otp_lib=$enableval],
|
|
||||||
[enable_otp_lib=$enable_all])
|
|
||||||
AM_CONDITIONAL([OTP_LIB], [test x"$enable_otp_lib" = x"yes"])
|
|
||||||
|
|
||||||
# BSD Auth module
|
CRYB_PROVIDE([bsdauth], [otp])
|
||||||
elements="$elements bsdauth"
|
CRYB_PROVIDE([pam], [otp])
|
||||||
requires="$requires bsdauth:lib"
|
CRYB_PROVIDE([radius], [otp])
|
||||||
AC_ARG_ENABLE([otp-bsdauth],
|
CRYB_PROVIDE([cli], [otp])
|
||||||
AS_HELP_STRING([--enable-otp-bsdauth],
|
|
||||||
[build the BSD Auth module]),
|
|
||||||
[enable_otp_bsdauth=$enableval],
|
|
||||||
[enable_otp_bsdauth=$enable_all])
|
|
||||||
AM_CONDITIONAL([OTP_BSDAUTH], [test x"$enable_otp_bsdauth" = x"yes"])
|
|
||||||
|
|
||||||
# PAM module
|
if test x"$enable_cryb_pam" = x"yes" ; then
|
||||||
elements="$elements pam"
|
save_LIBS="${LIBS}"
|
||||||
requires="$requires pam:lib"
|
LIBS=""
|
||||||
AC_ARG_ENABLE([otp-pam],
|
AC_CHECK_LIB([pam], [pam_start], [], [
|
||||||
AS_HELP_STRING([--enable-otp-pam],
|
AC_MSG_ERROR([libpam is required to build the PAM module])
|
||||||
[build the PAM module]),
|
])
|
||||||
[enable_otp_pam=$enableval],
|
PAM_LIBS="${LIBS}"
|
||||||
[enable_otp_pam=$enable_all])
|
LIBS="${save_LIBS}"
|
||||||
AM_CONDITIONAL([OTP_PAM], [test x"$enable_otp_pam" = x"yes"])
|
AC_SUBST(PAM_LIBS)
|
||||||
|
|
||||||
# RADIUS server
|
|
||||||
elements="$elements radius"
|
|
||||||
requires="$requires radius:lib"
|
|
||||||
AC_ARG_ENABLE([otp-radius],
|
|
||||||
AS_HELP_STRING([--enable-otp-radius],
|
|
||||||
[build the RADIUS server]),
|
|
||||||
[enable_otp_radius=$enableval],
|
|
||||||
[enable_otp_radius=$enable_all])
|
|
||||||
AM_CONDITIONAL([OTP_RADIUS], [test x"$enable_otp_radius" = x"yes"])
|
|
||||||
|
|
||||||
# Command-line utilities
|
|
||||||
elements="$elements util"
|
|
||||||
requires="$requires util:lib"
|
|
||||||
AC_ARG_ENABLE([otp-util],
|
|
||||||
AS_HELP_STRING([--enable-otp-util],
|
|
||||||
[build the command-line utilities]),
|
|
||||||
[enable_otp_util=$enableval],
|
|
||||||
[enable_otp_util=$enable_all])
|
|
||||||
AM_CONDITIONAL([OTP_UTIL], [test x"$enable_otp_util" = x"yes"])
|
|
||||||
|
|
||||||
# Check dependencies
|
|
||||||
AC_MSG_CHECKING([dependencies])
|
|
||||||
for req in $requires ; do
|
|
||||||
lhs=${req%:*}
|
|
||||||
lhs_ena=`eval echo \\\$enable_otp_$lhs`
|
|
||||||
if test x"$lhs_ena" = x"yes" ; then
|
|
||||||
rhs=${req#*:}
|
|
||||||
rhs_ena=`eval echo \\\$enable_otp_$rhs`
|
|
||||||
if test x"$rhs_ena" != x"yes" ; then
|
|
||||||
AC_MSG_ERROR([otp-$lhs requires otp-$rhs])
|
|
||||||
fi
|
fi
|
||||||
fi
|
|
||||||
done
|
CRYB_RESOLVE
|
||||||
AC_MSG_RESULT([ok])
|
|
||||||
|
|
||||||
############################################################################
|
############################################################################
|
||||||
#
|
#
|
||||||
|
@ -239,11 +166,4 @@ AC_CONFIG_FILES([
|
||||||
])
|
])
|
||||||
AC_OUTPUT
|
AC_OUTPUT
|
||||||
|
|
||||||
echo
|
CRYB_SUMMARY
|
||||||
echo The following Cryb OTP components will be built:
|
|
||||||
echo
|
|
||||||
for elem in $elements ; do
|
|
||||||
enable=`eval echo \\\$enable_otp_$elem`
|
|
||||||
printf "%16s: %s\n" $elem ${enable:-no}
|
|
||||||
done
|
|
||||||
echo
|
|
||||||
|
|
|
@ -2,9 +2,10 @@ crybdir = $(includedir)/cryb
|
||||||
|
|
||||||
cryb_HEADERS =
|
cryb_HEADERS =
|
||||||
|
|
||||||
if OTP_LIB
|
if CRYB_OTP
|
||||||
cryb_HEADERS += otp.h
|
cryb_HEADERS += \
|
||||||
endif OTP_LIB
|
otp.h
|
||||||
|
endif CRYB_OTP
|
||||||
|
|
||||||
noinst_HEADERS = \
|
noinst_HEADERS = \
|
||||||
impl.h
|
impl.h
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
SUBDIRS =
|
SUBDIRS =
|
||||||
|
|
||||||
if OTP_LIB
|
if CRYB_OTP
|
||||||
SUBDIRS += otp
|
SUBDIRS += otp
|
||||||
endif OTP_LIB
|
endif CRYB_OTP
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
SUBDIRS =
|
SUBDIRS =
|
||||||
|
|
||||||
if OTP_BSDAUTH
|
if CRYB_BSDAUTH
|
||||||
SUBDIRS += login_otp
|
SUBDIRS += login_otp
|
||||||
endif
|
endif CRYB_BSDAUTH
|
||||||
|
|
|
@ -28,7 +28,7 @@ dnl OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF
|
||||||
dnl SUCH DAMAGE.
|
dnl SUCH DAMAGE.
|
||||||
dnl
|
dnl
|
||||||
|
|
||||||
m4_define([AX_PKG_CONFIG_MACROS_VERSION], [0.20170404])
|
m4_define([AX_PKG_CONFIG_MACROS_VERSION], [0.20180506])
|
||||||
|
|
||||||
dnl
|
dnl
|
||||||
dnl AX_PROG_PKG_CONFIG([min-version])
|
dnl AX_PROG_PKG_CONFIG([min-version])
|
||||||
|
@ -39,8 +39,10 @@ dnl
|
||||||
AC_DEFUN([AX_PROG_PKG_CONFIG], [
|
AC_DEFUN([AX_PROG_PKG_CONFIG], [
|
||||||
m4_pattern_forbid([^AX_PKG_CONFIG_[A-Z_]+$])
|
m4_pattern_forbid([^AX_PKG_CONFIG_[A-Z_]+$])
|
||||||
AC_ARG_VAR([PKG_CONFIG], [path to pkg-config binary])
|
AC_ARG_VAR([PKG_CONFIG], [path to pkg-config binary])
|
||||||
AC_ARG_VAR([PKG_CONFIG_PATH], [list of directories to prepend to default search path])
|
AC_ARG_VAR([PKG_CONFIG_PATH],
|
||||||
AC_ARG_VAR([PKG_CONFIG_LIBDIR], [list of directories to search instead of default search path])
|
[list of directories to prepend to default search path])
|
||||||
|
AC_ARG_VAR([PKG_CONFIG_LIBDIR],
|
||||||
|
[list of directories to search instead of default search path])
|
||||||
if test x"${PKG_CONFIG}" = x"" ; then
|
if test x"${PKG_CONFIG}" = x"" ; then
|
||||||
AC_PATH_PROGS([PKG_CONFIG], [pkgconf pkg-config]) >/dev/null
|
AC_PATH_PROGS([PKG_CONFIG], [pkgconf pkg-config]) >/dev/null
|
||||||
else
|
else
|
||||||
|
@ -97,12 +99,17 @@ AC_DEFUN([AX_PKG_CONFIG_VAR], [
|
||||||
])
|
])
|
||||||
|
|
||||||
dnl
|
dnl
|
||||||
dnl AX_PKG_CONFIG_CHECK(package-name,
|
dnl AX_PKG_CONFIG_CHECK(package-name, [version-spec],
|
||||||
dnl [action-if-found], [action-if-not-found])
|
dnl [action-if-found], [action-if-not-found])
|
||||||
dnl -------------------------------------------
|
dnl -------------------------------------------
|
||||||
dnl
|
dnl
|
||||||
dnl Check if the specified package is installed. If it is, define
|
dnl Check if the specified package is installed. If it is, define
|
||||||
dnl HAVE_PACKAGE, PACKAGE_VERSION, PACKAGE_CFLAGS and PACKAGE_LIBS.
|
dnl HAVE_PACKAGE, PACKAGE_VERSION, PACKAGE_CFLAGS and PACKAGE_LIBS.
|
||||||
|
dnl
|
||||||
|
dnl The second argument, if non-empty, specifies a minimum (>=1.2.3 or
|
||||||
|
dnl >1.2.3), maximum (<=1.2.3 or <1.2.3) or exact (==1.2.3 or =1.2.3
|
||||||
|
dnl or 1.2.3) version to look for.
|
||||||
|
dnl
|
||||||
dnl The specified actions are performed in addition to the standard
|
dnl The specified actions are performed in addition to the standard
|
||||||
dnl actions.
|
dnl actions.
|
||||||
dnl
|
dnl
|
||||||
|
@ -110,10 +117,35 @@ AC_DEFUN([AX_PKG_CONFIG_CHECK], [
|
||||||
AC_REQUIRE([AX_PROG_PKG_CONFIG])
|
AC_REQUIRE([AX_PROG_PKG_CONFIG])
|
||||||
m4_define([_P], AS_TR_SH([m4_toupper([$1])]))
|
m4_define([_P], AS_TR_SH([m4_toupper([$1])]))
|
||||||
m4_define([_p], AS_TR_SH([m4_tolower([$1])]))
|
m4_define([_p], AS_TR_SH([m4_tolower([$1])]))
|
||||||
|
dnl
|
||||||
|
ver="$2"
|
||||||
|
ver="${ver##*\[<=>\]}"
|
||||||
|
case "$2" in
|
||||||
|
"")
|
||||||
|
vopt=""
|
||||||
|
vtext="$1"
|
||||||
|
;;
|
||||||
|
">=$ver"|">$ver")
|
||||||
|
vopt="--atleast-version=$ver"
|
||||||
|
vtext="$1 $ver or newer"
|
||||||
|
;;
|
||||||
|
"<=$ver"|"<$ver")
|
||||||
|
vopt="--max-version=$ver"
|
||||||
|
vtext="$1 $ver or older"
|
||||||
|
;;
|
||||||
|
"==$ver"|"=$ver"|"$ver")
|
||||||
|
vopt="--exact-version=$ver"
|
||||||
|
vtext="$1 $ver"
|
||||||
|
;;
|
||||||
|
*)
|
||||||
|
AC_MSG_ERROR([invalid version specification: "$2"])
|
||||||
|
;;
|
||||||
|
esac
|
||||||
|
dnl
|
||||||
AC_ARG_VAR(_P[_CFLAGS], [C compiler flags for $1])
|
AC_ARG_VAR(_P[_CFLAGS], [C compiler flags for $1])
|
||||||
AC_ARG_VAR(_P[_LIBS], [linker flags for $1])
|
AC_ARG_VAR(_P[_LIBS], [linker flags for $1])
|
||||||
AC_MSG_CHECKING([if $1 is installed])
|
AC_MSG_CHECKING([if ${vtext} is installed])
|
||||||
if AC_RUN_LOG(["${PKG_CONFIG}" --exists --print-errors "$1"]) ; then
|
if AC_RUN_LOG(["${PKG_CONFIG}" --exists $vopt --print-errors "$1"]) ; then
|
||||||
AC_MSG_RESULT([yes])
|
AC_MSG_RESULT([yes])
|
||||||
[ax_pc_cv_have_]_p=yes
|
[ax_pc_cv_have_]_p=yes
|
||||||
AC_DEFINE([HAVE_]_P, [1], [Define to 1 if you have $1])
|
AC_DEFINE([HAVE_]_P, [1], [Define to 1 if you have $1])
|
||||||
|
@ -133,11 +165,11 @@ dnl
|
||||||
AC_SUBST(_P[_LIBS], [$ax_pc_cv_]_p[_libs])
|
AC_SUBST(_P[_LIBS], [$ax_pc_cv_]_p[_libs])
|
||||||
AC_MSG_RESULT([${ax_pc_cv_]_p[_libs:-none}])
|
AC_MSG_RESULT([${ax_pc_cv_]_p[_libs:-none}])
|
||||||
dnl
|
dnl
|
||||||
m4_default([$2], [:])
|
m4_default([$3], [:])
|
||||||
else
|
else
|
||||||
AC_MSG_RESULT([no])
|
AC_MSG_RESULT([no])
|
||||||
[ax_pc_cv_have_]_p=no
|
[ax_pc_cv_have_]_p=no
|
||||||
m4_default([$3], [:])
|
m4_default([$4], [:])
|
||||||
fi
|
fi
|
||||||
m4_ifdef([AM_CONDITIONAL], [
|
m4_ifdef([AM_CONDITIONAL], [
|
||||||
AM_CONDITIONAL([HAVE_]_P, [test x"$ax_pc_cv_have_]_p[" = x"yes"])
|
AM_CONDITIONAL([HAVE_]_P, [test x"$ax_pc_cv_have_]_p[" = x"yes"])
|
||||||
|
@ -145,13 +177,13 @@ dnl
|
||||||
])
|
])
|
||||||
|
|
||||||
dnl
|
dnl
|
||||||
dnl AX_PKG_CONFIG_REQUIRE(package-name)
|
dnl AX_PKG_CONFIG_REQUIRE(package-name, [version-spec])
|
||||||
dnl -----------------------------------
|
dnl -----------------------------------
|
||||||
dnl
|
dnl
|
||||||
dnl As above, but fail if the package is not installed.
|
dnl As above, but fail if the package is not installed.
|
||||||
dnl
|
dnl
|
||||||
AC_DEFUN([AX_PKG_CONFIG_REQUIRE], [
|
AC_DEFUN([AX_PKG_CONFIG_REQUIRE], [
|
||||||
AX_PKG_CONFIG_CHECK([$1], [], [
|
AX_PKG_CONFIG_CHECK([$1], [$2], [], [
|
||||||
AC_MSG_ERROR([cannot proceed without $1])
|
AC_MSG_ERROR([cannot proceed without $1])
|
||||||
])
|
])
|
||||||
])
|
])
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
SUBDIRS =
|
SUBDIRS =
|
||||||
|
|
||||||
if OTP_PAM
|
if CRYB_PAM
|
||||||
SUBDIRS += pam_otp
|
SUBDIRS += pam_otp
|
||||||
endif OTP_PAM
|
endif CRYB_PAM
|
||||||
|
|
|
@ -1,5 +1,5 @@
|
||||||
SUBDIRS =
|
SUBDIRS =
|
||||||
|
|
||||||
if OTP_RADIUS
|
if CRYB_RADIUS
|
||||||
SUBDIRS += otpradiusd
|
SUBDIRS += otpradiusd
|
||||||
endif OTP_RADIUS
|
endif CRYB_RADIUS
|
||||||
|
|
|
@ -7,8 +7,14 @@ sbin_PROGRAMS = otpradiusd
|
||||||
otpradiusd_SOURCES = otpradiusd.c
|
otpradiusd_SOURCES = otpradiusd.c
|
||||||
|
|
||||||
otpradiusd_CFLAGS = \
|
otpradiusd_CFLAGS = \
|
||||||
|
$(CRYB_OATH_CFLAGS) \
|
||||||
|
$(CRYB_DIGEST_CFLAGS) \
|
||||||
$(CRYB_CORE_CFLAGS)
|
$(CRYB_CORE_CFLAGS)
|
||||||
|
|
||||||
otpradiusd_LDADD = $(libotp)
|
otpradiusd_LDADD = \
|
||||||
|
$(libotp) \
|
||||||
|
$(CRYB_OATH_CFLAGS) \
|
||||||
|
$(CRYB_DIGEST_CFLAGS) \
|
||||||
|
$(CRYB_CORE_CFLAGS)
|
||||||
|
|
||||||
dist_man8_MANS = otpradiusd.8
|
dist_man8_MANS = otpradiusd.8
|
||||||
|
|
|
@ -14,14 +14,14 @@ TESTS += t_cxx
|
||||||
t_cxx_SOURCES = t_cxx.cc
|
t_cxx_SOURCES = t_cxx.cc
|
||||||
t_cxx_CPPFLAGS = $(AM_CPPFLAGS) $(CRYB_CORE_CFLAGS)
|
t_cxx_CPPFLAGS = $(AM_CPPFLAGS) $(CRYB_CORE_CFLAGS)
|
||||||
t_cxx_LDADD =
|
t_cxx_LDADD =
|
||||||
if OTP_LIB
|
if CRYB_OTP
|
||||||
t_cxx_CPPFLAGS += -DWITH_OTP_LIB
|
t_cxx_CPPFLAGS += -DWITH_CRYB_OTP
|
||||||
t_cxx_LDADD += $(libotp)
|
t_cxx_LDADD += $(libotp)
|
||||||
endif OTP_LIB
|
endif CRYB_OTP
|
||||||
|
|
||||||
# libcryb-otp
|
# libcryb-otp
|
||||||
if OTP_LIB
|
if CRYB_OTP
|
||||||
endif OTP_LIB
|
endif CRYB_OTP
|
||||||
|
|
||||||
check_PROGRAMS = $(TESTS)
|
check_PROGRAMS = $(TESTS)
|
||||||
|
|
||||||
|
|
|
@ -57,7 +57,7 @@ public:
|
||||||
} \
|
} \
|
||||||
};
|
};
|
||||||
|
|
||||||
#if WITH_OTP_LIB
|
#if WITH_CRYB_OTP
|
||||||
#include <cryb/otp.h>
|
#include <cryb/otp.h>
|
||||||
TEST(otp)
|
TEST(otp)
|
||||||
#endif
|
#endif
|
||||||
|
|
Loading…
Reference in a new issue