aboutsummaryrefslogtreecommitdiff
path: root/configfrag.ac
diff options
context:
space:
mode:
Diffstat (limited to 'configfrag.ac')
-rw-r--r--configfrag.ac183
1 files changed, 183 insertions, 0 deletions
diff --git a/configfrag.ac b/configfrag.ac
new file mode 100644
index 0000000..b8b4126
--- /dev/null
+++ b/configfrag.ac
@@ -0,0 +1,183 @@
+dnl Configure fragment for general options.
+
+dnl Copyright (C) 2006, 2007 Free Software Foundation, Inc.
+
+dnl Permission to use, copy, modify and distribute this software and its
+dnl documentation is hereby granted, provided that both the copyright
+dnl notice and this permission notice appear in all copies of the
+dnl software, derivative works or modified versions, and any portions
+dnl thereof, and that both notices appear in supporting documentation.
+dnl
+dnl THE FREE SOFTWARE FOUNDATION ALLOWS FREE USE OF THIS SOFTWARE IN ITS
+dnl "AS IS" CONDITION. THE FREE SOFTWARE FOUNDATION DISCLAIMS ANY
+dnl LIABILITY OF ANY KIND FOR ANY DAMAGES WHATSOEVER RESULTING FROM THE
+dnl USE OF THIS SOFTWARE.
+
+#
+# Definitions.
+#
+
+AC_DEFINE([MACH], [1], [MACH])
+AC_DEFINE([CMU], [1], [CMU])
+AC_DEFINE([MACH_KERNEL], [1], [Standalone MACH kernel])
+AC_DEFINE([KERNEL], [1], [KERNEL])
+
+#
+# Formerly in `bogus/'.
+#
+
+# i386/bogus/com.h
+AC_DEFINE_UNQUOTED([NCOM], [$ncom], [NCOM])
+
+# i386/bogus/lpr.h
+AC_DEFINE_UNQUOTED([NLPR], [$nlpr], [NLPR])
+
+[if [ x"$enable_pae" = xyes ]; then]
+ AC_DEFINE([PAE], [1], [PAE support])
+ AM_CONDITIONAL([enable_pae], [true])
+[else]
+ AM_CONDITIONAL([enable_pae], [false])
+[fi]
+
+# When set, the bootstrap task symbols are preserved by the kernel debugger.
+# Used in `kern/bootstrap.c'.
+AC_DEFINE([BOOTSTRAP_SYMBOLS], [0], [BOOTSTRAP_SYMBOLS])
+
+# Multiprocessor support is still broken.
+AH_TEMPLATE([MULTIPROCESSOR], [set things up for a uniprocessor])
+AC_ARG_ENABLE([ncpus],
+ AS_HELP_STRING([--enable-ncpus=N], [specify the maximum number of cpus to be supported]),
+ [mach_ncpus=$enable_ncpus],
+ [mach_ncpus=1])
+AC_DEFINE_UNQUOTED([NCPUS], [$mach_ncpus], [number of CPUs])
+[if [ $mach_ncpus -gt 1 ]; then]
+ AC_DEFINE([MULTIPROCESSOR], [1], [set things up for a multiprocessor])
+[fi]
+
+# Restartable Atomic Sequences to get a really fast test-n-set. Can't be
+# enabled, as the `void recover_ras()' function is missing.
+AC_DEFINE([FAST_TAS], [0], [FAST_TAS])
+
+# Cache footprint support.
+AC_DEFINE([HW_FOOTPRINT], [0], [HW_FOOTPRINT])
+
+# Counters.
+AC_DEFINE([MACH_COUNTERS], [0], [MACH_COUNTERS])
+
+# IPC debugging interface.
+AC_DEFINE([MACH_DEBUG], [1], [MACH_DEBUG])
+
+# Fixed priority threads.
+AC_DEFINE([MACH_FIXPRI], [1], [MACH_FIXPRI])
+
+# Mach host (cpu resource alloc.).
+[if [ $mach_ncpus -gt 1 ]; then]
+ AC_DEFINE([MACH_HOST], [1], [MACH_HOST])
+[else]
+ AC_DEFINE([MACH_HOST], [0], [MACH_HOST])
+[fi]
+
+# IPC debugging calls.
+AC_DEFINE([MACH_IPC_DEBUG], [1], [MACH_IPC_DEBUG])
+
+# Testing code/printfs.
+AC_DEFINE([MACH_IPC_TEST], [0], [MACH_IPC_TEST])
+
+# Sanity-check locking.
+AC_DEFINE([MACH_LDEBUG], [0], [MACH_LDEBUG])
+
+# MP lock monitoring. Registers use of locks, contention. Depending on
+# hardware also records time spent with locks held. Used in `kern/lock_mon.c'.
+AC_DEFINE([MACH_LOCK_MON], [0], [MACH_LOCK_MON])
+
+# Does the architecture provide machine-specific interfaces?
+mach_machine_routines=${mach_machine_routines-0}
+AC_DEFINE_UNQUOTED([MACH_MACHINE_ROUTINES], [$mach_machine_routines],
+ [MACH_MACHINE_ROUTINES])
+
+# MP debugging. Use alternate locking routines to detect deadlocks. Used in
+# `kern/lock_mon.c'.
+AC_DEFINE([MACH_MP_DEBUG], [0], [MACH_MP_DEBUG])
+
+# Paged-out page map hints.
+AC_DEFINE([MACH_PAGEMAP], [1], [MACH_PAGEMAP])
+
+# Do pc sample histogram.
+[if [ $mach_ncpus -gt 1 ]; then]
+ # Apparently not MP-safe yet.
+ AC_DEFINE([MACH_PCSAMPLE], [0], [MACH_PCSAMPLE])
+[else]
+ AC_DEFINE([MACH_PCSAMPLE], [1], [MACH_PCSAMPLE])
+[fi]
+
+# Sample kernel too.
+AC_ARG_ENABLE([kernsample],
+ AS_HELP_STRING([--enable-kernsample], [enable sampling kernel]))
+[if [ x"$enable_kernsample" = xyes ]; then]
+ AC_DEFINE([MACH_KERNSAMPLE], [1], [MACH_KERNSAMPLE])
+[else]
+ AC_DEFINE([MACH_KERNSAMPLE], [0], [MACH_KERNSAMPLE])
+[fi]
+
+# TTD Remote Kernel Debugging.
+AC_DEFINE([MACH_TTD], [0], [MACH_TTD])
+
+# VM debugging calls.
+AC_DEFINE([MACH_VM_DEBUG], [1], [MACH_VM_DEBUG])
+
+# Mach-dep power conservation.
+AC_DEFINE([POWER_SAVE], [1], [POWER_SAVE])
+
+# Use statistical timing.
+AC_DEFINE([STAT_TIME], [1], [STAT_TIME])
+
+# Kernel tracing.
+AC_DEFINE([XPR_DEBUG], [0], [XPR_DEBUG])
+
+# Slab allocator debugging facilities.
+AC_DEFINE([SLAB_VERIFY], [0], [SLAB_VERIFY])
+
+# Enable the CPU pool layer in the slab allocator.
+AC_DEFINE([SLAB_USE_CPU_POOLS], [0], [SLAB_USE_CPU_POOLS])
+
+#
+# Options.
+#
+
+AC_HEADER_ASSERT()
+
+AC_ARG_ENABLE([kdb],
+ AS_HELP_STRING([--enable-kdb], [enable use of in-kernel debugger]))
+[if [ x"$enable_kdb" = xyes ]; then]
+ AC_DEFINE([MACH_KDB], [1], [Use the in-kernel debugger?])
+ AM_CONDITIONAL([enable_kdb], [true])
+[else]
+ # We need to be long winded here: bogus/mach_kdb.h made it default to zero,
+ # unless overridden.
+ AC_DEFINE([MACH_KDB], [0], [Use the in-kernel debugger?])
+ AM_CONDITIONAL([enable_kdb], [false])
+[fi]
+
+
+AC_ARG_ENABLE([kmsg],
+ AS_HELP_STRING([--disable-kmsg], [disable use of kmsg device]))
+[if [ x"$enable_kmsg" != xno ]; then]
+ AC_DEFINE([MACH_KMSG], [], [enable use of kmsg device])
+ AM_CONDITIONAL([enable_kmsg], [true])
+[else]
+ AM_CONDITIONAL([enable_kmsg], [false])
+[fi]
+
+#
+# Set up `SYSTYPE/SYSTYPE' and `SYSTYPE/include/mach/SYSTYPE' links.
+#
+
+# `${file}' and `$file' have different meanings here with respect to having the
+# files in the referenced directory considered for `make dist' or not. See
+# <http://lists.gnu.org/archive/html/bug-automake/2006-11/msg00027.html>.
+AC_CONFIG_LINKS([machine:$srcdir/$systype/$systype
+ mach/machine:$systype/include/mach/$systype])
+
+dnl Local Variables:
+dnl mode: autoconf
+dnl End: