AC_PATH_PROG([PGREP], [pgrep], [no])
AM_CONDITIONAL([HAVE_PGREP], [test "x$PGREP" != "xno"])
+# set $IN_GIT_REPO if we're in the Git repository; the `bootstrap` file
+# is not distributed in tarballs
+AS_IF([test -f "$srcdir/bootstrap"], [in_git_repo=yes], [in_git_repo=no])
+AM_CONDITIONAL([IN_GIT_REPO], [test "x$in_git_repo" = "xyes"])
+
# check for bison
AC_PROG_YACC
BISON=$YACC
AX_PTHREAD(,[AC_MSG_ERROR([Could not configure pthreads support])])
+# Check if linker has the -no-pie option.
+AX_CHECK_LINK_FLAG([-no-pie], [linker_have_no_pie_option=yes])
+AM_CONDITIONAL([LINKER_HAVE_NO_PIE_OPTION], [test "x$linker_have_no_pie_option" = "xyes"])
+
AX_LIB_SOCKET_NSL
LT_NO_UNDEFINED=""
_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_DESTROY], [Tear down tracing sessions])
_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_DISABLE_CHANNEL], [Disable tracing channels])
_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_DISABLE_EVENT], [Disable event rules])
-_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_DISABLE_ROTATION], [Unset an automatic rotation schedule])
+_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_DISABLE_ROTATION], [Unset a rotation schedule])
_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_ENABLE_CHANNEL], [Create or enable tracing channels])
_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_ENABLE_EVENT], [Create or enable event rules])
-_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_ENABLE_ROTATION], [Set an automatic rotation schedule])
+_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_ENABLE_ROTATION], [Set a rotation schedule])
_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_HELP], [Display help information about a command])
_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_LIST], [List tracing sessions, domains, channels, and events])
_AC_DEFINE_QUOTED_AND_SUBST([CMD_DESCR_LOAD], [Load tracing session configurations])
]
)
-# Check for open_memstream
-AC_CHECK_LIB([c], [open_memstream],
-[
- AC_DEFINE_UNQUOTED([LTTNG_HAVE_OPEN_MEMSTREAM], 1, [Has open_memstream support.])
-]
-)
-
# check for libpfm
AC_CHECK_LIB([pfm], [pfm_initialize],
[
])
AM_CONDITIONAL([LTTNG_TOOLS_BUILD_WITH_LIBPFM], [test "x$have_libpfm" = "xyes"])
-AC_ARG_ENABLE([git-version],
- [AC_HELP_STRING([--disable-git-version],
- [Do not use the git version for the build])],
- [have_git_version=$enableval], [have_git_version=yes]
-)
-
-AM_CONDITIONAL([LTTNG_TOOLS_BUILD_GIT_SOURCE],
- [test "x${have_git_version}" = "xyes"])
-
# For Python
# SWIG version needed or newer:
swig_version=2.0.0
fi
fi
-# set $IN_GIT_REPO if we're in the Git repository; the `bootstrap` file
-# is not distributed in tarballs
-AS_IF([test -f "$srcdir/bootstrap"], [in_git_repo=yes], [in_git_repo=no])
-AM_CONDITIONAL([IN_GIT_REPO], [test "x$in_git_repo" = "xyes"])
-
# enable building man pages (user's intention)
AC_ARG_ENABLE(
man-pages,
build_lib_consumer=no
build_lib_hashtable=no
build_lib_health=no
+build_lib_unix=no
build_lib_index=no
build_lib_kernel_consumer=no
build_lib_kernel_ctl=no
build_lib_relayd=yes
build_lib_testpoint=yes
build_lib_health=yes
- build_lib_health=yes
+ build_lib_unix=yes
]
)
]
)
+# Find arch type
+AS_CASE([$host_cpu],
+ [k1om], [ARCHTYPE="x86"],
+ [i386], [ARCHTYPE="x86"],
+ [i486], [ARCHTYPE="x86"],
+ [i586], [ARCHTYPE="x86"],
+ [i686], [ARCHTYPE="x86"],
+ [amd64], [ARCHTYPE="x86"],
+ [x86_64], [ARCHTYPE="x86"],
+ [powerpc], [ARCHTYPE="ppc"],
+ [ppc64], [ARCHTYPE="ppc"],
+ [powerpc64], [ARCHTYPE="ppc"],
+ [powerpc64le], [ARCHTYPE="ppc"],
+ [ppc], [ARCHTYPE="ppc"],
+ [s390], [ARCHTYPE="s390"],
+ [s390x], [ARCHTYPE="s390"],
+ [sparc], [ARCHTYPE="sparc64"],
+ [sparc64], [ARCHTYPE="sparc64"],
+ [alpha*], [ARCHTYPE="alpha"],
+ [ia64], [ARCHTYPE="ia64"],
+ [arm*], [ARCHTYPE="arm"],
+ [aarch64*], [ARCHTYPE="aarch64"],
+ [mips*], [ARCHTYPE="mips"],
+ [nios2*], [ARCHTYPE="nios2"],
+ [tile*], [ARCHTYPE="tile"],
+ [hppa*], [ARCHTYPE="hppa"],
+ [m68k], [ARCHTYPE="m68k"],
+ [riscv*], [ARCHTYPE="riscv"],
+ [ARCHTYPE="unknown"]
+)
+
+AC_SUBST(ARCHTYPE)
+
+AH_TEMPLATE([HAVE_MODULES_USERSPACE_CALLSTACK_CONTEXT], [Define if you have LTTng-modules userspace callstack tracing support])
+AC_MSG_CHECKING([for architecture support of userspace callstack tracing from the kernel])
+AS_IF([test "x$ARCHTYPE" = "xx86"],[
+ # Userspace callstack capture is only supported by the Linux kernel on x86.
+ AC_MSG_RESULT([yes])
+ have_modules_userspace_callstack_context=yes
+ AC_DEFINE([HAVE_MODULES_USERSPACE_CALLSTACK_CONTEXT], [1])
+], [
+ AC_MSG_RESULT([no])
+ have_modules_userspace_callstack_context=no
+])
+AM_CONDITIONAL([HAVE_MODULES_USERSPACE_CALLSTACK_CONTEXT], [test x$have_modules_userspace_callstack_context != xno])
# Export binaries build conditions.
AM_CONDITIONAL([BUILD_BIN_LTTNG], [test x$enable_bin_lttng != xno])
AM_CONDITIONAL([BUILD_LIB_CONSUMER], [test x$build_lib_consumer = xyes])
AM_CONDITIONAL([BUILD_LIB_HASHTABLE], [test x$build_lib_hashtable = xyes])
AM_CONDITIONAL([BUILD_LIB_HEALTH], [test x$build_lib_health = xyes])
+AM_CONDITIONAL([BUILD_LIB_UNIX], [test x$build_lib_unix = xyes])
AM_CONDITIONAL([BUILD_LIB_INDEX], [test x$build_lib_index = xyes])
AM_CONDITIONAL([BUILD_LIB_KERNEL_CONSUMER], [test x$build_lib_kernel_consumer = xyes])
AM_CONDITIONAL([BUILD_LIB_KERNEL_CTL], [test x$build_lib_kernel_ctl = xyes])
tests/regression/ust/buffers-pid/Makefile
tests/regression/ust/periodical-metadata-flush/Makefile
tests/regression/ust/multi-session/Makefile
+ tests/regression/ust/multi-lib/Makefile
tests/regression/ust/overlap/Makefile
tests/regression/ust/overlap/demo/Makefile
tests/regression/ust/linking/Makefile
tests/utils/tap/Makefile
tests/utils/testapp/Makefile
tests/utils/testapp/gen-ust-events/Makefile
+ tests/utils/testapp/gen-syscall-events-callstack/Makefile
tests/utils/testapp/gen-ust-nevents/Makefile
tests/utils/testapp/gen-ust-nevents-str/Makefile
tests/utils/testapp/gen-syscall-events/Makefile