- Implemented first part of signal support.
[planlOS.git] / system / kernel / CMakeLists.txt
blob8f977a700818c6d7a63f41b790ba5783e215da47
3 set(SRC
4 fs/devfs.c
5 fs/fs.c
6 fs/request.c
7 fs/scsi.c
8 lwip/arch/device.c
9 ke/apic.c
10 ke/cpu.c
11 ke/debug.c
12 ke/dma.c
13 ke/elf.c
14 ke/gdt.c
15 ke/interrupts.c
16 ke/intstubs.S
17 ke/level.c
18 ke/module.c
19 ke/panic.c
20 ke/pci.c
21 ke/process.c
22 ke/smp.c
23 ke/spinlock.c
24 ke/start.c
25 ke/start.S
26 ke/thread.c
27 ke/timer.c
28 mm/memory.c
29 mm/phys.c
30 mm/virt.c
31 net/net.c
32 net/socket.c
33 sys/pipe.c
34 sys/serial.c
35 sys/syscall.c
36 sys/terminal.c
37 ../../shared/string.c
38 ../../shared/sprintf.c
39 ../../shared/ctype.c
40 ke/stdlib.c
41 ke/stdio.c
42 ke/bsdmalloc.c
43 ke/smpstart.o
44 ke/signal.o
47 set(CMAKE_C_FLAGS "-fstrength-reduce -fno-builtin -m32 -Wall -Wextra -Wno-unused-parameter -nostdlib -nostdinc -Wno-long-long")
48 set(CMAKE_ASM-ATT_FLAGS "--32")
49 include_directories(../include ../include/lwip ../include/lwip/ipv4 ../../shared/include)
50 add_custom_command(OUTPUT ke/smpstart.o COMMAND ${CMAKE_ASM-ATT_COMPILER} --32 -o smpstart2.o ke/smpstart.S && ld -o smpstart.o smpstart2.o -Ttext 0x1000 --oformat binary -m elf_i386 && objcopy -B i386 -I binary -O elf32-i386 smpstart.o ke/smpstart.o && rm smpstart.o smpstart2.o DEPENDS ke/smpstart.S)
51 add_custom_command(OUTPUT ke/signal.o COMMAND ${CMAKE_ASM-ATT_COMPILER} --32 -o signal2.o ke/signal.S && ld -o signal.o signal2.o -Ttext 0xFFFFF000 --oformat binary -m elf_i386 && objcopy -B i386 -I binary -O elf32-i386 signal.o ke/signal.o && rm signal.o signal2.o DEPENDS ke/signal.S)
52 add_definitions(-DARCH_X86=1)
53 set(EXECUTABLE_OUTPUT_PATH ../../build/boot)
54 add_executable(planlOS ${SRC})
55 set_target_properties(planlOS PROPERTIES LINK_FLAGS "-T planlOS.ld")
56 target_link_libraries(planlOS lwip gcc)
58 add_subdirectory(lwip)
60 add_object(planlOS)