use the spinlock_t header, and add the stubs to the kernel
[AROS.git] / rom / kernel / mmakefile.src
blobccd4e6aaed88b4281586a15a9fe36c2a045728a0
1 # $Id$
2 include $(TOP)/config/make.cfg
5 # Allow to override include files by placing them in arch-specific directories
6 # Note that kernel_#?.h files must be included using #include <name>, not #include "name"
7 # for this to work.
8 # __AROS_EXEC_LIBRARY__ definition is needed for UNIX-hosted builds. kernel_base.h includes
9 # kernel_cpu.h, which needs host OS includes for some CPU-specific defintions (host OS CPU context).
10 # The code in rom/kernel is plain AROS code, it must not depend on host includes in any way, in order
11 # not to overcomplicate the build. This definition prevents kernel_cpu.h from including host-specific
12 # stuff. The name of this definition is legacy, in ancient times exec.library included some private
13 # kernel's stuff and needed this.
14 USER_INCLUDES := $(PRIV_KERNEL_INCLUDES) -D__AROS_EXEC_LIBRARY__ \
15                 -DAROS_ARCHITECTURE="\"$(AROS_TARGET_PLATFORM)\"" \
17 # Allow to add architecture-specific options
18 -include $(SRCDIR)/arch/all-$(ARCH)/kernel/make.opts
19 -include $(SRCDIR)/arch/$(CPU)-$(ARCH)/kernel/make.opts
20 ifneq ($(AROS_TARGET_VARIANT),)
21 -include $(SRCDIR)/arch/$(CPU)-$(ARCH)/$(AROS_TARGET_VARIANT)/kernel/make.opts
22 endif
24 FUNCS :=     spininit spinislocked spintrylock spinlock spinunlock addexceptionhandler          \
25              addirqhandler bug cause cli createcontext deletecontext                            \
26              displayalert dispatch getbootinfo getscheduler issuper mapglobal modifyirqhandler  \
27              remexceptionhandler remirqhandler schedule setprotection setscheduler sti          \
28              switch unmapglobal virtualtophysical obtaininput releaseinput                      \
29              putchar maygetchar allocpages freepages getsystemattr formatstr                    \
30              initmemory statmemory _bug _displayalert getcpucount getcpunumber getcpumask       \
31              allockernelbase prepareexecbase
32 FILES     := kernel_init cpu_init kernel_cpu kernel_debug kernel_panic kernel_intr \
33              kernel_memory kernel_romtags kernel_scheduler kernel_globals tlsf
34 MMU_FILES := kernel_mm
35 # You can replace this with own algorithm
36 ALLOCATOR := mm_linear
38 ifeq ($(USE_MMU),1)
39     FILES += $(MMU_FILES) $(ALLOCATOR)
40 endif
42 %build_module mmake=kernel-kernel \
43   modname=kernel modtype=resource version=$(AROS_TARGET_PLATFORM) \
44   files="$(FILES) $(FUNCS)" nostartup=no archspecific=yes
46 %common