mirror of
https://github.com/ApfelTeeSaft/reactos.git
synced 2026-08-27 11:53:32 +00:00
118 lines
1.8 KiB
Plaintext
118 lines
1.8 KiB
Plaintext
#
|
|
# Global makefile
|
|
#
|
|
|
|
#
|
|
# Select your host
|
|
#
|
|
#HOST = djgpp-linux
|
|
#HOST = mingw32-linux
|
|
HOST = djgpp-msdos
|
|
#HOST = mingw32-windows
|
|
|
|
include rules.mak
|
|
|
|
#
|
|
# Required to run the system
|
|
#
|
|
LIBRARIES = kernel32 ntdll crtdll mingw32
|
|
COMPONENTS = iface_native ntoskrnl $(LIBRARIES)
|
|
.PHONY: $(COMPONENTS) $(COMPONENTS:%=%_clean)
|
|
|
|
#
|
|
# Select the server(s) you want to build
|
|
#
|
|
SERVERS = win32 posix linux os2
|
|
.PHONY: $(SERVERS) $(SERVERS:%=%_clean)
|
|
|
|
#
|
|
# Select the loader(s) you want to build
|
|
#
|
|
LOADERS = dos
|
|
.PHONY: $(LOADERS) $(LOADERS:%=%_clean)
|
|
|
|
#
|
|
# Select the device drivers and filesystems you want
|
|
#
|
|
DD_SERVICES = blue ide keyboard mouse null parallel sdisk serial sound test
|
|
FS_SERVICES = minix vfat ext2
|
|
KERNEL_SERVICES = $(DD_SERVICES) $(FS_SERVICES)
|
|
.PHONY: $(KERNEL_SERVICES) $(KERNEL_SERVICES:%=%_clean)
|
|
|
|
APPS = hello shell # args
|
|
.PHONY: $(APPS:%=%) $(APPS:%=%_clean)
|
|
|
|
all: $(COMPONENTS) $(LOADERS) $(KERNEL_SERVICES) $(APPS)
|
|
.PHONY: all
|
|
|
|
clean: $(COMPONENTS:%=%_clean) $(LOADERS:%=%_clean) \
|
|
$(KERNEL_SERVICES:%=%_clean) $(APPS:%=%_clean)
|
|
.PHONY: clean
|
|
|
|
#
|
|
# Applications
|
|
#
|
|
$(APPS): %:
|
|
make -C apps/$*
|
|
|
|
$(APPS:%=%_clean): %_clean:
|
|
make -C apps/$* clean
|
|
|
|
#
|
|
# Interfaces
|
|
#
|
|
|
|
iface_native:
|
|
make -C iface/native
|
|
|
|
iface_native_clean:
|
|
make -C iface/native clean
|
|
|
|
#
|
|
# Device driver rules
|
|
#
|
|
|
|
$(DD_SERVICES): %:
|
|
make -C services/dd/$*
|
|
|
|
$(DD_SERVICES:%=%_clean): %_clean:
|
|
make -C services/dd/$* clean
|
|
|
|
$(FS_SERVICES): %:
|
|
make -C services/fs/$*
|
|
|
|
$(FS_SERVICES:%=%_clean): %_clean:
|
|
make -C services/fs/$* clean
|
|
|
|
#
|
|
# Kernel loaders
|
|
#
|
|
|
|
$(LOADERS): %:
|
|
make -C loaders/$*
|
|
|
|
$(LOADERS:%=%_clean): %_clean:
|
|
make -C loaders/$* clean
|
|
|
|
#
|
|
# Libraries
|
|
#
|
|
|
|
$(LIBRARIES): %:
|
|
make -C lib/$*
|
|
|
|
$(LIBRARIES:%=%_clean): %_clean:
|
|
make -C lib/$* clean
|
|
|
|
#
|
|
# Required system components
|
|
#
|
|
|
|
ntoskrnl:
|
|
make -C ntoskrnl
|
|
|
|
ntoskrnl_clean:
|
|
make -C ntoskrnl clean
|
|
|
|
|