PR = banner VPATH = . PREFIX = CC = $(PREFIX)gcc CX = $(PREFIX)g++ AS = $(PREFIX)as AR = $(PREFIX)ar LD = $(PREFIX)ld SIZE = $(PREFIX)size DUMP = $(PREFIX)objdump COPY = $(PREFIX)objcopy BLD= ./bld/ AFLAGS = -adhlns=$(@:%.o=%.lst) #CFLAGS = CFLAGS = -Os -Wall CFLAGS+= -fno-exceptions -fno-unwind-tables -fno-stack-check CFLAGS+= -Wa,-adhlns=$(@:%.o=%.lst) XFLAGS = $(CFLAGS) XFLAGS+= -fno-rtti LFLAGS = -lsndfile LDLIBS = # startup musí být linkován první SOURCES = banner.c fft.cpp main.cpp WIDTH = 80 OBJS = $(addsuffix .o,$(basename $(SOURCES))) BOBJS = $(addprefix $(BLD),$(OBJS)) all: $(BLD) $(PR) banner.c: font.h font.h: ./mkfont ./mkfont --width $(WIDTH) --font /usr/share/fonts/truetype/liberation/LiberationSerif-Bold.ttf ./mkfont: gcc -Os -Wall -I/usr/include/freetype2 mkfont.c -o mkfont -lfreetype $(BLD): mkdir $(BLD) # build native application $(PR): $(BOBJS) $(CX) -o $(PR) $(BOBJS) $(LFLAGS) $(BLD)%.o: %.c $(CC) -std=c11 -c $(CFLAGS) -o $@ $< $(BLD)%.o: %.cpp $(CX) -c $(XFLAGS) -o $@ $< $(BLD)%.o: %.s $(AS) $(AFLAGS) -o $@ $< clean: rm -f $(BLD)* $(PR) distclean: clean rm -f ./mkfont font.h rm -f *.vaw *.mp3