toaruos/userspace/Makefile

76 lines
2.3 KiB
Makefile
Raw Normal View History

2011-04-30 04:54:07 +04:00
CC = i686-pc-toaru-gcc
CPP = i686-pc-toaru-g++
2012-11-23 04:27:58 +04:00
STRIP = i686-pc-toaru-strip
CFLAGS = -std=c99 -U__STRICT_ANSI__ -O3 -m32 -Wa,--32
CPPFLAGS = -O3 -m32 -Wa,--32
2012-11-23 04:27:58 +04:00
EXTRAFLAGS = -s
EXECUTABLES = $(patsubst %.c,%.o,$(wildcard lib/*.c)) $(patsubst %.c,../hdd/bin/%,$(wildcard *.c)) $(patsubst %.cpp,../hdd/bin/%,$(wildcard *.cpp))
2012-01-26 03:07:42 +04:00
BEG = ../util/mk-beg
END = ../util/mk-end
INFO = ../util/mk-info
ERRORS = 2>>/tmp/.`whoami`-build-errors || ../util/mk-error
ERRORSS = >>/tmp/.`whoami`-build-errors || ../util/mk-error
BEGRM = ../util/mk-beg-rm
ENDRM = ../util/mk-end-rm
2011-04-30 04:54:07 +04:00
2012-05-17 19:50:25 +04:00
TOOLCHAIN= ../toolchain/local/i686-pc-toaru
FREETYPE_INC = -I ${TOOLCHAIN}/include/freetype2/
FREETYPE_LIB = ${TOOLCHAIN}/lib/libfreetype.a
LIBPNG = ${TOOLCHAIN}/lib/libpng.a
2012-05-17 19:50:25 +04:00
LIBM = ${TOOLCHAIN}/lib/libm.a
LIBZ = ${TOOLCHAIN}/lib/libz.a
2012-03-07 01:32:26 +04:00
TARGETDIR = ../hdd/bin/
ETARGETS = terminal login compositor view game drawlines glogin julia solver wallpaper panel glock clock-win draw test-gfx threadtest bim blur_test test-borders serial-console
2012-03-07 01:32:26 +04:00
FTARGETS = $(ETARGETS:%=$(TARGETDIR)%)
2011-04-30 04:54:07 +04:00
LOCAL_LIBS = $(patsubst %.c,%.o,$(wildcard lib/*.c))
2011-10-28 10:09:55 +04:00
.PHONY: all clean
2011-04-30 04:54:07 +04:00
2011-10-28 10:09:55 +04:00
all: ${EXECUTABLES}
2011-10-28 10:09:55 +04:00
clean:
2012-01-26 03:07:42 +04:00
@${BEGRM} "RM" "Cleaning userspace full-toolchain applications."
@-rm -f ${EXECUTABLES}
@${ENDRM} "RM" "Cleaned userspace full-toolchain applications."
2011-04-30 04:54:07 +04:00
${FTARGETS}: $(TARGETDIR)% : %.c ${LOCAL_LIBS}
2012-03-07 01:32:26 +04:00
@${BEG} "CC" "$@ $< [w/libs]"
@${CC} -flto ${CFLAGS} ${EXTRAFLAGS} ${FREETYPE_INC} -o $@ $< ${LOCAL_LIBS} ${LIBM} ${FREETYPE_LIB} ${LIBPNG} ${LIBZ} ${ERRORS}
2012-11-23 04:27:58 +04:00
@${STRIP} $@
2012-02-07 09:34:35 +04:00
@${END} "CC" "$< [w/libs]"
2012-03-07 01:32:26 +04:00
$(TARGETDIR)%: %.cpp
2012-01-26 03:07:42 +04:00
@${BEG} "CPP" "$<"
@${CPP} ${CPPFLAGS} ${EXTRAFLAGS} -o $@ $< ${ERRORS}
2012-01-26 03:07:42 +04:00
@${END} "CPP" "$<"
2012-05-01 22:40:04 +04:00
$(TARGETDIR)ld: ld.c lib/ldlib.o
2012-01-26 03:07:42 +04:00
@${BEG} "CC" "$< [-fPIC]"
2012-05-01 22:40:04 +04:00
@${CC} ${CFLAGS} ${EXTRAFLAGS} -fPIC -o $@ $< lib/ldlib.o ${ERRORS}
2012-01-26 03:07:42 +04:00
@${END} "CC" "$< [-fPIC]"
2012-03-07 01:32:26 +04:00
$(TARGETDIR)%: %.c
2012-01-26 03:07:42 +04:00
@${BEG} "CC" "$<"
@${CC} ${CFLAGS} ${EXTRAFLAGS} -o $@ $< ${ERRORS}
2012-01-26 03:07:42 +04:00
@${END} "CC" "$<"
$(TARGETDIR)esh: esh.c lib/list.o lib/kbd.o
@${BEG} "CC" "$<"
@${CC} ${CFLAGS} ${EXTRAFLAGS} -o $@ $< lib/list.o lib/kbd.o ${ERRORS}
@${END} "CC" "$<"
lib/shmemfonts.o: lib/shmemfonts.c
@${BEG} "CC" "$< [lib]"
@${CC} ${CFLAGS} -c ${EXTRAFLAGS} ${FREETYPE_INC} -o $@ $< ${ERRORS}
@${END} "CC" "$< [lib]"
%.o: %.c
@${BEG} "CC" "$< [lib]"
@${CC} ${CFLAGS} -c ${EXTRAFLAGS} -o $@ $< ${ERRORS}
@${END} "CC" "$< [lib]"