build:
	make -C init
	make -C assert
	make -C ctype
	make -C stdio
	make -C stdlib
	make -C string
	make -C errno
	make -C setjmp
	make -C math
	gcc -m32 -shared -nostdlib -fno-stack-protector -L../librtl -L../posix -lrtl -lpthread -o libstdc.so init/crt_begin.o init/crt_end.o ctype/*.o errno/*.o stdio/*.o stdlib/*.o assert/*.o string/*.o setjmp/*.o
	gcc -m32 -shared -nostdlib -fno-stack-protector -L../librtl -lrtl -o libm.so init/crt_begin.o init/crt_end.o math/*.o

pre:
	make -C init

install:
	cp libstdc.so ../../CdRoot/System/Runtime
	cp libm.so ../../CdRoot/System/Runtime
	cp include/*.h ../../CdRoot/System/Include
	cp init/crt_begin.o ../../CdRoot/System/Runtime/C
	cp init/crt_end.o ../../CdRoot/System/Runtime/C
	cp init/init.o ../../CdRoot/System/Runtime/C/crt_static.o

clean:
	make -C assert clean
	make -C ctype clean
	make -C errno clean
	make -C stdio clean
	make -C stdlib clean
	make -C string clean
	make -C init clean
	make -C setjmp clean
	make -C math clean
	rm *.so -f
