mirror of
https://github.com/NixOS/nix
synced 2024-10-18 00:16:11 -04:00
fromYAML: let configure fail if rapidyaml cannot be found
This commit is contained in:
parent
12062b6daf
commit
35ec57ae9c
18
configure.ac
18
configure.ac
|
@ -269,31 +269,25 @@ AS_CASE(["$readline_flavor"],
|
||||||
[AC_MSG_ERROR([bad value "$readline_flavor" for --with-readline-flavor, must be one of: editline, readline])])
|
[AC_MSG_ERROR([bad value "$readline_flavor" for --with-readline-flavor, must be one of: editline, readline])])
|
||||||
PKG_CHECK_MODULES([EDITLINE], [$readline_flavor_pc], [CXXFLAGS="$EDITLINE_CFLAGS $CXXFLAGS"])
|
PKG_CHECK_MODULES([EDITLINE], [$readline_flavor_pc], [CXXFLAGS="$EDITLINE_CFLAGS $CXXFLAGS"])
|
||||||
|
|
||||||
# Look for rapidyaml, an optional dependency.
|
# Look for rapidyaml.
|
||||||
have_ryml=
|
have_ryml=
|
||||||
AC_ARG_ENABLE([ryml], AS_HELP_STRING([--disable-ryml], [Do not enable rapidyaml and disable builtins.fromYAML]))
|
AC_ARG_ENABLE([ryml], AS_HELP_STRING([--disable-ryml], [Do not enable rapidyaml and disable builtins.fromYAML]), [], [have_ryml=1])
|
||||||
AC_ARG_VAR([RYML_CPPFLAGS], [C/C++ preprocessor flags for RAPIDYAML])
|
AC_ARG_VAR([RYML_CPPFLAGS], [C/C++ preprocessor flags for RAPIDYAML])
|
||||||
AC_ARG_VAR([RYML_LDFLAGS], [linker flags for RAPIDYAML])
|
AC_ARG_VAR([RYML_LDFLAGS], [linker flags for RAPIDYAML])
|
||||||
if test "x$enable_ryml" != "xno"; then
|
if test "x$have_ryml" != "x"; then
|
||||||
AC_LANG_PUSH([C++])
|
AC_LANG_PUSH([C++])
|
||||||
saveCXXFLAGS="$CXXFLAGS"
|
|
||||||
saveLDFLAGS="$LDFLAGS"
|
|
||||||
saveLIBS="$LIBS"
|
|
||||||
# append RYML_CPPFLAGS to CXXFLAGS because CPPFLAGS are not passed to the C++ compiler
|
# append RYML_CPPFLAGS to CXXFLAGS because CPPFLAGS are not passed to the C++ compiler
|
||||||
CXXFLAGS="$RYML_CPPFLAGS $CXXFLAGS"
|
CXXFLAGS="$RYML_CPPFLAGS $CXXFLAGS"
|
||||||
LDFLAGS="$RYML_LDFLAGS $RYML_LDFLAGS"
|
LDFLAGS="$RYML_LDFLAGS $RYML_LDFLAGS"
|
||||||
LIBS="-lryml $LIBS"
|
LIBS="-lryml $LIBS"
|
||||||
AC_CHECK_HEADERS([ryml.hpp], [have_ryml=1], [])
|
AC_CHECK_HEADERS([ryml.hpp], [true],
|
||||||
|
[AC_MSG_ERROR([Header of libryml is not found.])])
|
||||||
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
|
AC_LINK_IFELSE([AC_LANG_PROGRAM([[
|
||||||
#include <ryml.hpp>
|
#include <ryml.hpp>
|
||||||
]], [[ryml::Tree tree;]])],
|
]], [[ryml::Tree tree;]])],
|
||||||
[AC_DEFINE([HAVE_RYML], [1], [Use rapidyaml])
|
[AC_DEFINE([HAVE_RYML], [1], [Use rapidyaml])
|
||||||
AC_SUBST(RYML_LIBS, [-lryml])],
|
AC_SUBST(RYML_LIBS, [-lryml])],
|
||||||
[have_ryml=
|
[AC_MSG_ERROR([libryml is not found.])])
|
||||||
CXXFLAGS="$saveCXXFLAGS"
|
|
||||||
LDFLAGS="$saveLDFLAGS"
|
|
||||||
LIBS="$saveLIBS"
|
|
||||||
AC_MSG_RESULT([rapidyaml is not available])])
|
|
||||||
AC_LANG_POP([C++])
|
AC_LANG_POP([C++])
|
||||||
fi
|
fi
|
||||||
AC_SUBST(HAVE_RYML, [$have_ryml])
|
AC_SUBST(HAVE_RYML, [$have_ryml])
|
||||||
|
|
Loading…
Reference in a new issue