2024-09-09 08:52:07 +00:00
|
|
|
AC_PREREQ(2.64)
|
|
|
|
|
|
|
|
AC_INIT([kernel-tests],[1.0.0])
|
|
|
|
AM_INIT_AUTOMAKE([-Wall -Werror gnu foreign])
|
|
|
|
|
|
|
|
AM_MAINTAINER_MODE
|
|
|
|
|
|
|
|
AC_CONFIG_HEADER([config.h])
|
|
|
|
AC_CONFIG_MACRO_DIR([m4])
|
|
|
|
|
|
|
|
# Checks for programs.
|
|
|
|
AC_PROG_CC
|
|
|
|
AM_PROG_CC_C_O
|
2024-09-09 08:57:42 +00:00
|
|
|
m4_ifdef([AM_PROG_AR], [AM_PROG_AR])
|
2024-09-09 08:52:07 +00:00
|
|
|
AC_PROG_LIBTOOL
|
|
|
|
AC_PROG_CPP
|
|
|
|
AC_PROG_INSTALL
|
|
|
|
AC_PROG_MAKE_SET
|
2024-09-09 08:57:42 +00:00
|
|
|
AC_PROG_CXX
|
2024-09-09 08:52:07 +00:00
|
|
|
|
|
|
|
AC_ARG_WITH(sanitized-headers,
|
|
|
|
AS_HELP_STRING([--with-sanitized-headers=DIR],
|
|
|
|
[Specify the location of the sanitized Linux headers]),
|
|
|
|
[CPPFLAGS="$CPPFLAGS -I$withval"])
|
|
|
|
|
|
|
|
AC_ARG_ENABLE(big-tests,
|
|
|
|
AS_HELP_STRING([--enable-big-tests],
|
|
|
|
[Include tests that use a lot of disk [default=yes]]),
|
|
|
|
[case "${enableval}" in
|
|
|
|
yes) BIGTESTS=true ;;
|
|
|
|
no) BIGTESTS=false ;;
|
|
|
|
*) AC_MSG_ERROR([bad value ${enableval} for --enable-big-tests]) ;;
|
|
|
|
esac],
|
|
|
|
[BIGTESTS=true])
|
|
|
|
AM_CONDITIONAL(BIGTESTS, [test x$BIGTESTS = xtrue])
|
|
|
|
|
|
|
|
AC_ARG_WITH([kernel],
|
|
|
|
AS_HELP_STRING([--with-kernel=DIR],
|
|
|
|
[location of a built kernel; used for building kernel modules]),
|
|
|
|
[case "${with_kernel}" in
|
|
|
|
yes|'') AC_MSG_ERROR([--with-kernel must specify a path]) ;;
|
|
|
|
no) with_kernel= ;;
|
|
|
|
*)
|
|
|
|
if [test ! -f ${with_kernel}/Makefile]; then
|
|
|
|
AC_MSG_ERROR([bad value '${with_kernel}' for --with-kernel; cannot find '${with_kernel}/Makefile'])
|
|
|
|
fi ;;
|
|
|
|
esac])
|
|
|
|
if [test -z "${with_kernel}"]; then
|
|
|
|
AC_MSG_WARN([no kernel specified; kernel modules will not be included])
|
|
|
|
else
|
|
|
|
AC_SUBST([KERNEL_DIR], [${with_kernel}])
|
|
|
|
fi
|
|
|
|
AM_CONDITIONAL(KERNELMODULES, [test -n "${with_kernel}"])
|
|
|
|
|
2024-09-09 08:57:42 +00:00
|
|
|
AC_ARG_WITH([glib],
|
|
|
|
AC_HELP_STRING([--with-glib],
|
|
|
|
[enable glib, building HLOS systems which use glib]))
|
|
|
|
|
|
|
|
if (test "x${with_glib}" = "xyes"); then
|
|
|
|
AC_DEFINE(ENABLE_USEGLIB, 1, [Define if HLOS systems uses glib])
|
|
|
|
PKG_CHECK_MODULES(GTHREAD, gthread-2.0 >= 2.16, dummy=yes,
|
|
|
|
AC_MSG_ERROR(GThread >= 2.16 is required))
|
|
|
|
PKG_CHECK_MODULES(GLIB, glib-2.0 >= 2.16, dummy=yes,
|
|
|
|
AC_MSG_ERROR(GLib >= 2.16 is required))
|
|
|
|
GLIB_CFLAGS="$GLIB_CFLAGS $GTHREAD_CFLAGS"
|
|
|
|
GLIB_LIBS="$GLIB_LIBS $GTHREAD_LIBS"
|
|
|
|
|
|
|
|
AC_SUBST(GLIB_CFLAGS)
|
|
|
|
AC_SUBST(GLIB_LIBS)
|
|
|
|
fi
|
|
|
|
|
|
|
|
AM_CONDITIONAL(USE_GLIB, test "x${with_glib}" = "xyes")
|
|
|
|
|
|
|
|
msm_iommu_configured=no
|
|
|
|
autoconf="${with_kernel}/include/generated/autoconf.h"
|
|
|
|
if test -f ${autoconf}; then
|
|
|
|
if grep -q "^#define CONFIG_MSM_IOMMU 1" ${autoconf}; then
|
|
|
|
msm_iommu_configured=yes
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Build G-Link Tests only if kernel module enabled
|
|
|
|
msm_glink_configured=no
|
|
|
|
autoconf="${with_kernel}/include/generated/autoconf.h"
|
|
|
|
if test -f ${autoconf}; then
|
|
|
|
if grep -q "^#define CONFIG_MSM_GLINK 1" ${autoconf}; then
|
|
|
|
msm_glink_configured=yes
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Build bam_dmux loopback only if kernel module enabled
|
|
|
|
msm_bam_dmux_configured=no
|
|
|
|
autoconf="${with_kernel}/include/generated/autoconf.h"
|
|
|
|
if test -f ${autoconf}; then
|
|
|
|
if grep -q "^#define CONFIG_MSM_BAM_DMUX 1" ${autoconf}; then
|
|
|
|
msm_bam_dmux_configured=yes
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
|
|
|
# Build ocmem test only if kernel module enabled
|
|
|
|
msm_ocmem_configured=no
|
|
|
|
autoconf="${with_kernel}/include/generated/autoconf.h"
|
|
|
|
if test -f ${autoconf}; then
|
|
|
|
if grep -q "^#define CONFIG_MSM_OCMEM 1" ${autoconf}; then
|
|
|
|
msm_ocmem_configured=yes
|
|
|
|
fi
|
|
|
|
fi
|
|
|
|
|
2024-09-09 08:52:07 +00:00
|
|
|
#
|
|
|
|
# Build all kernel tests by default
|
|
|
|
#
|
|
|
|
# To add new tests add ENABLE_KERNEL_TEST and update AC_CONFIG_FILES
|
|
|
|
#
|
|
|
|
# Tests which will be too large to fit in an initrd/initramfs should not
|
|
|
|
# be installed if the conditional BIGTESTS is false.
|
|
|
|
#
|
|
|
|
|
|
|
|
# ion
|
|
|
|
ENABLE_KERNEL_TEST([ion],[include the ion test (default=yes)])
|
|
|
|
|
2024-09-09 08:57:42 +00:00
|
|
|
# ipc_logging
|
|
|
|
ENABLE_KERNEL_TEST([ipc_logging],[include the ipc_logging test (default=yes)])
|
|
|
|
|
2024-09-09 08:52:07 +00:00
|
|
|
# memory_prof
|
2024-09-09 08:57:42 +00:00
|
|
|
ENABLE_KERNEL_TEST([memory_prof],[include the memory profiling test (default=yes)],[$msm_iommu_configured])
|
2024-09-09 08:52:07 +00:00
|
|
|
|
|
|
|
# msm-bus
|
|
|
|
ENABLE_KERNEL_TEST([msm-bus],[include the MSM bus test (default=yes)])
|
|
|
|
|
|
|
|
# sps
|
|
|
|
ENABLE_KERNEL_TEST([sps],[include the sps test (default=yes)])
|
|
|
|
|
|
|
|
# v4l2apps
|
|
|
|
ENABLE_KERNEL_TEST([v4l2apps],[include the v4l2apps test (default=no)],[no])
|
|
|
|
|
|
|
|
# watchdog
|
|
|
|
ENABLE_KERNEL_TEST([watchdog],[include the watchdog test (default=yes)])
|
|
|
|
|
|
|
|
# ocmem
|
2024-09-09 08:57:42 +00:00
|
|
|
ENABLE_KERNEL_TEST([ocmem],[include the ocmem test (default=yes)],[$msm_ocmem_configured])
|
|
|
|
|
|
|
|
# iommu
|
|
|
|
ENABLE_KERNEL_TEST([iommu],[include the iommu test (default=yes)])
|
|
|
|
|
|
|
|
# ip_accelerator
|
|
|
|
ENABLE_KERNEL_TEST([ip_accelerator],[include the ip_accelerator test (default=yes)])
|
|
|
|
|
|
|
|
# bam_dmux_loopback
|
|
|
|
ENABLE_KERNEL_TEST([bam_dmux_loopback],[include the bam_dmux_loopback test (default=yes)], [$msm_bam_dmux_configured])
|
|
|
|
|
|
|
|
# hrtimer
|
|
|
|
ENABLE_KERNEL_TEST([hrtimer],[include the hrtimer test (default=yes)])
|
|
|
|
|
|
|
|
#swp
|
|
|
|
ENABLE_KERNEL_TEST([swp],[include the swp test (default=yes)])
|
|
|
|
|
|
|
|
# ipi
|
|
|
|
ENABLE_KERNEL_TEST([ipi],[include the ipi test (default=yes)])
|
|
|
|
|
|
|
|
# page-nom
|
|
|
|
ENABLE_KERNEL_TEST([page-nom],[include the page-nom test (default=yes)])
|
|
|
|
|
|
|
|
# modsign
|
|
|
|
ENABLE_KERNEL_TEST([modsign],[include the modsign test (default=yes)])
|
|
|
|
|
|
|
|
# coresight
|
|
|
|
ENABLE_KERNEL_TEST([coresight],[include the coresight test (default=yes)])
|
|
|
|
|
|
|
|
# bus-timeout
|
|
|
|
ENABLE_KERNEL_TEST([bus-timeout],[include the bus-timeout test (default=yes)])
|
|
|
|
|
|
|
|
# abnormal_reset
|
|
|
|
ENABLE_KERNEL_TEST([abnormal_reset],[include the abnormal_reset test (default=yes)])
|
|
|
|
|
|
|
|
#glink
|
|
|
|
ENABLE_KERNEL_TEST([glink],[include the glink test (default=yes)], [$msm_glink_configured])
|
|
|
|
|
|
|
|
# spinlock
|
|
|
|
ENABLE_KERNEL_TEST([spinlock],[include the spinlock test (default=yes)])
|
2024-09-09 08:52:07 +00:00
|
|
|
|
|
|
|
AC_SUBST([CFLAGS])
|
|
|
|
AC_SUBST([CC])
|
|
|
|
|
|
|
|
AC_CONFIG_FILES([
|
|
|
|
Makefile
|
2024-09-09 08:57:42 +00:00
|
|
|
bam_dmux_loopback/Makefile
|
2024-09-09 08:52:07 +00:00
|
|
|
ion/Makefile
|
2024-09-09 08:57:42 +00:00
|
|
|
ipc_logging/Makefile
|
2024-09-09 08:52:07 +00:00
|
|
|
memory_prof/Makefile
|
|
|
|
msm_bus/Makefile
|
|
|
|
ocmem/Makefile
|
2024-09-09 08:57:42 +00:00
|
|
|
msm_iommu/Makefile
|
2024-09-09 08:52:07 +00:00
|
|
|
sps/Makefile
|
2024-09-09 08:57:42 +00:00
|
|
|
coresight/Makefile
|
|
|
|
coresight/byte-cntr/Makefile
|
|
|
|
coresight/stm-trace-marker/Makefile
|
|
|
|
coresight/stm/Makefile
|
|
|
|
coresight/etm/Makefile
|
|
|
|
coresight/cti/Makefile
|
|
|
|
coresight/mult_trace/Makefile
|
|
|
|
coresight/platform/Makefile
|
|
|
|
coresight/profile/Makefile
|
|
|
|
coresight/sink_switch/Makefile
|
|
|
|
bus-timeout/Makefile
|
|
|
|
abnormal_reset/Makefile
|
2024-09-09 08:52:07 +00:00
|
|
|
v4l2apps/Makefile
|
|
|
|
watchdog/Makefile
|
2024-09-09 08:57:42 +00:00
|
|
|
ip_accelerator/Makefile
|
|
|
|
hrtimer/Makefile
|
|
|
|
swp/Makefile
|
|
|
|
ipi/Makefile
|
|
|
|
page-nom/Makefile
|
|
|
|
modsign/Makefile
|
|
|
|
glink/Makefile
|
|
|
|
spinlock/Makefile
|
2024-09-09 08:52:07 +00:00
|
|
|
])
|
|
|
|
AC_OUTPUT
|