mirror of
https://gitlab.com/mbunkus/mkvtoolnix.git
synced 2024-12-28 13:57:22 +00:00
68 lines
1.8 KiB
Plaintext
68 lines
1.8 KiB
Plaintext
dnl
|
|
dnl Check for nlohmann's json-cpp library
|
|
dnl
|
|
|
|
|
|
AC_CACHE_CHECK([nlohmann's json-cpp],[ac_cv_nlohmann_jsoncpp],[
|
|
AC_LANG_PUSH(C++)
|
|
|
|
ac_save_CXXFLAGS="$CXXFLAGS"
|
|
CXXFLAGS="$STD_CXX $CXXFLAGS"
|
|
|
|
AC_TRY_COMPILE([
|
|
#include <cstdint>
|
|
#include <iostream>
|
|
#include <limits>
|
|
|
|
#include <nlohmann/json.hpp>
|
|
],[
|
|
nlohmann::json json{
|
|
{ "unsigned_64bit_integer", std::numeric_limits<std::uint64_t>::max() },
|
|
{ "signed_64bit_integer", std::numeric_limits<std::int64_t>::min() },
|
|
};
|
|
|
|
std::cout << json.dump();
|
|
],[ac_cv_nlohmann_jsoncpp=yes],[ac_cv_nlohmann_jsoncpp=undetermined])
|
|
|
|
if test x"$ac_cv_nlohmann_jsoncpp" = xundetermined; then
|
|
AC_TRY_COMPILE([
|
|
#include <cstdint>
|
|
#include <iostream>
|
|
#include <limits>
|
|
|
|
#include <json.hpp>
|
|
],[
|
|
nlohmann::json json{
|
|
{ "unsigned_64bit_integer", std::numeric_limits<std::uint64_t>::max() },
|
|
{ "signed_64bit_integer", std::numeric_limits<std::int64_t>::min() },
|
|
};
|
|
|
|
std::cout << json.dump();
|
|
],[ac_cv_nlohmann_jsoncpp="yes, without the nlohmann subdir"],[ac_cv_nlohmann_jsoncpp=no])
|
|
fi
|
|
|
|
CXXFLAGS="$ac_save_CXXFLAGS"
|
|
|
|
AC_LANG_POP
|
|
])
|
|
|
|
if test x"$ac_cv_nlohmann_jsoncpp" = xno; then
|
|
AC_MSG_NOTICE([Using the internal version of nlohmann json-cpp])
|
|
|
|
NLOHMANN_JSON_INTERNAL=yes
|
|
AC_DEFINE([HAVE_NLOHMANN_JSONCPP],[0],[Define if nlohmann's json-cpp is available.])
|
|
|
|
else
|
|
AC_MSG_NOTICE([Using the system version of nlohmann json-cpp])
|
|
|
|
if test x"$ac_cv_nlohmann_jsoncpp" = xyes; then
|
|
AC_DEFINE([HAVE_NLOHMANN_JSONCPP],[1],[Define if nlohmann's json-cpp is available.])
|
|
else
|
|
AC_DEFINE([HAVE_NLOHMANN_JSONCPP],[2],[Define if nlohmann's json-cpp is available.])
|
|
fi
|
|
|
|
NLOHMANN_JSON_INTERNAL=no
|
|
fi
|
|
|
|
AC_SUBST(NLOHMANN_JSON_INTERNAL)
|