CC := gcc CFLAGS := -std=c99 -m32 -ffreestanding -O0 -g -Wall -Werror # TODO: make sure we can test the libc library without kernel code, # this means we have to separate initializers like __stdio_init.. # from the rest, also we have to provide a stub for kernel_panic INCLUDES = -I../../src/libc -I../../src/kernel -I../../src/hardware -I../../src/drivers -I../../src/drivers/hdi/ps2 -I../../src/drivers/video -I../../src/gui LD := ld all: test test_strlcpy: test_strlcpy.o ../../src/libc/string.o $(CC) -o test_strlcpy test_strlcpy.o ../../src/libc/string.o test_strlcpy.o: test_strlcpy.c $(CC) $(CFLAGS) $(INCLUDES) -c -o test_strlcpy.o test_strlcpy.c test_strlcat: test_strlcat.o ../../src/libc/string.o $(CC) -o test_strlcat test_strlcat.o ../../src/libc/string.o test_strlcat.o: test_strlcat.c $(CC) $(CFLAGS) $(INCLUDES) -c -o test_strlcat.o test_strlcat.c test_itoa: test_itoa.o ../../src/libc/stdlib.o ../../src/libc/string.o ../../src/kernel/memorymanagement.o ../../src/kernel/kernel.o $(CC) -o test_itoa test_itoa.o ../../src/libc/stdlib.o ../../src/libc/string.o ../../src/kernel/memorymanagement.o ../../src/kernel/kernel.o test_itoa.o: test_itoa.c ../../src/libc/stdlib.o $(CC) $(CFLAGS) $(INCLUDES) -c -o test_itoa.o test_itoa.c ../../src/libc/string.o: ../../src/libc/string.c $(CC) $(CFLAGS) $(INCLUDES) -c -o ../../src/libc/string.o ../../src/libc/string.c ../../src/libc/stdlib.o: ../../src/libc/stdlib.c $(CC) $(CFLAGS) $(INCLUDES) -c -o ../../src/libc/stdlib.o ../../src/libc/stdlib.c ../../src/kernel/memorymanagement.o: ../../src/kernel/memorymanagement.c $(CC) $(CFLAGS) $(INCLUDES) -c -o ../../src/kernel/memorymanagement.o ../../src/kernel/memorymanagement.c ../../src/kernel/kernel.o: ../../src/kernel/kernel.c $(CC) $(CFLAGS) $(INCLUDES) -c -o ../../src/kernel/kernel.o ../../src/kernel/kernel.c test: test_strlcpy test_strlcat test_itoa ./test_strlcpy ./test_strlcat ./test_itoa clean: -rm -f test_strlcpy test_strlcat test_itoa *.o