]> git.proxmox.com Git - mirror_frr.git/blobdiff - configure.ac
Merge pull request #8508 from opensourcerouting/systemd-no-lib
[mirror_frr.git] / configure.ac
index effdb3a87aaeb145026b57d0be578b900b6632cc..a23011b7558d86dd6d94c215f4b6ec2ab2fb8537 100644 (file)
@@ -113,15 +113,6 @@ AC_CONFIG_HEADERS([config.h])
 AC_PATH_PROG([PERL], [perl])
 PKG_PROG_PKG_CONFIG
 
-dnl default is to match previous behavior
-exampledir=${sysconfdir}
-AC_ARG_ENABLE([exampledir],
-         AS_HELP_STRING([--enable-exampledir],
-                        [specify alternate directory for examples]),
-                        exampledir="$enableval",)
-dnl XXX add --exampledir to autoconf standard directory list somehow
-AC_SUBST([exampledir])
-
 dnl default is to match previous behavior
 pkgsrcrcdir=""
 AC_ARG_ENABLE([pkgsrcrcdir],
@@ -289,6 +280,8 @@ if test "$enable_clang_coverage" = "yes"; then
    ])
 fi
 
+AM_CONDITIONAL([SCRIPTING], [test "$enable_scripting" = "yes"])
+
 if test "$enable_scripting" = "yes"; then
    AX_PROG_LUA([5.3], [5.4], [], [
      AC_MSG_ERROR([Lua 5.3 is required to build with Lua support. No other version is supported.])
@@ -299,7 +292,9 @@ if test "$enable_scripting" = "yes"; then
    AX_LUA_LIBS([
      AC_DEFINE([HAVE_SCRIPTING], [1], [Have support for scripting])
      LIBS="$LIBS $LUA_LIB"
+     SCRIPTING=true
    ], [
+     SCRIPTING=false
      AC_MSG_ERROR([Lua 5.3 libraries are required to build with Lua support. No other version is supported.])
    ])
 fi
@@ -663,8 +658,6 @@ AC_ARG_ENABLE([irdp],
   AS_HELP_STRING([--disable-irdp], [disable IRDP server support in zebra (enabled by default if supported)]))
 AC_ARG_ENABLE([capabilities],
   AS_HELP_STRING([--disable-capabilities], [disable using POSIX capabilities]))
-AC_ARG_ENABLE([rusage],
-  AS_HELP_STRING([--disable-rusage], [disable using getrusage]))
 AC_ARG_ENABLE([gcc_ultra_verbose],
   AS_HELP_STRING([--enable-gcc-ultra-verbose], [enable ultra verbose GCC warnings]))
 AC_ARG_ENABLE([backtrace],
@@ -679,8 +672,6 @@ AC_ARG_ENABLE([fpm],
   AS_HELP_STRING([--enable-fpm], [enable Forwarding Plane Manager support]))
 AC_ARG_ENABLE([pcep],
   AS_HELP_STRING([--enable-pcep], [enable PCEP support for pathd]))
-AC_ARG_ENABLE([systemd],
-  AS_HELP_STRING([--enable-systemd], [enable Systemd support]))
 AC_ARG_ENABLE([werror],
   AS_HELP_STRING([--enable-werror], [enable -Werror (recommended for developers only)]))
 AC_ARG_ENABLE([cumulus],
@@ -775,26 +766,12 @@ case "${enable_cpu_time}" in
   ;;
 esac
 
-case "${enable_systemd}" in
-  "no") ;;
-  "yes")
-  AC_CHECK_LIB([systemd], [sd_notify], [LIBS="$LIBS -lsystemd"])
-  if test "$ac_cv_lib_systemd_sd_notify" = "no"; then
-    AC_MSG_ERROR([enable systemd has been specified but systemd development env not found on your system])
-  else
-    AC_DEFINE([HAVE_SYSTEMD], [1], [Compile systemd support in])
-  fi
-  ;;
-  "*") ;;
-esac
-
 if test "$enable_rr_semantics" != "no" ; then
   AC_DEFINE([HAVE_V6_RR_SEMANTICS], [1], [Compile in v6 Route Replacement Semantics])
 fi
 
 if test "$enable_datacenter" = "yes" ; then
   AC_DEFINE([HAVE_DATACENTER], [1], [Compile extensions for a DataCenter])
-  AC_MSG_WARN([The --enable-datacenter compile time option is deprecated.  Please modify the init script to pass -F datacenter to the daemons instead.])
   DFLT_NAME="datacenter"
 else
   DFLT_NAME="traditional"
@@ -1924,7 +1901,9 @@ dnl ---------------
 dnl gRPC
 dnl ---------------
 if test "$enable_grpc" = "yes"; then
-  PKG_CHECK_MODULES([GRPC], [grpc grpc++ protobuf], [
+  AC_LANG_PUSH([C++])
+  AX_CXX_COMPILE_STDCXX([11], [ext])
+  PKG_CHECK_MODULES([GRPC], [grpc >= 6.0.0 grpc++ >= 1.16.1 protobuf >= 3.6.1 ], [
     AC_CHECK_PROGS([PROTOC], [protoc], [/bin/false])
     if test "$PROTOC" = "/bin/false"; then
       AC_MSG_FAILURE([grpc requested but protoc not found.])
@@ -1936,6 +1915,7 @@ if test "$enable_grpc" = "yes"; then
     GRPC=false
     AC_MSG_ERROR([grpc/grpc++ were not found on your system.])
   ])
+  AC_LANG_POP([C++])
 fi
 
 dnl -----
@@ -2238,6 +2218,10 @@ AC_CHECK_DECL([CLOCK_MONOTONIC],
         AC_DEFINE([HAVE_CLOCK_MONOTONIC], [1], [Have monotonic clock])
 ], [AC_MSG_RESULT([no])], [FRR_INCLUDES])
 
+AC_CHECK_DECL([CLOCK_THREAD_CPUTIME_ID], [
+        AC_DEFINE([HAVE_CLOCK_THREAD_CPUTIME_ID], [1], [Have cpu-time clock])
+], [AC_MSG_RESULT([no])], [FRR_INCLUDES])
+
 AC_SEARCH_LIBS([clock_nanosleep], [rt], [
   AC_DEFINE([HAVE_CLOCK_NANOSLEEP], [1], [Have clock_nanosleep()])
 ])
@@ -2633,7 +2617,6 @@ AC_CONFIG_FILES([Makefile],[
 
 AC_CONFIG_FILES([
          config.version
-         changelog-auto
          redhat/frr.spec
          alpine/APKBUILD
          snapcraft/snapcraft.yaml
@@ -2690,7 +2673,6 @@ make                    : ${MAKE-make}
 linker flags            : ${LDFLAGS} ${SAN_FLAGS} ${LIBS} ${LIBCAP} ${LIBREADLINE} ${LIBM}
 state file directory    : ${frr_statedir}
 config file directory   : `eval echo \`echo ${sysconfdir}\``
-example directory       : `eval echo \`echo ${exampledir}\``
 module directory        : ${CFG_MODULE}
 script directory        : ${CFG_SCRIPT}
 user to run as          : ${enable_user}
@@ -2704,6 +2686,16 @@ vici socket path        : ${vici_socket}
 The above user and group must have read/write access to the state file
 directory and to the config files in the config file directory."
 
+if test -n "$enable_datacenter"; then
+  AC_MSG_WARN([The --enable-datacenter compile time option is deprecated.  Please modify the init script to pass -F datacenter to the daemons instead.])
+fi
+if test -n "$enable_time_check"; then
+  AC_MSG_WARN([The --enable-time-check compile time option is deprecated.  Please use the service cputime-stats configuration option instead.])
+fi
+if test -n "$enable_cpu_time"; then
+  AC_MSG_WARN([The --enable-cpu-time compile time option is deprecated.  Please use the service cputime-warning NNN configuration option instead.])
+fi
+
 if test "$enable_doc" != "no" -a "$frr_py_mod_sphinx" = "false"; then
   AC_MSG_WARN([sphinx is missing but required to build documentation])
 fi