1include ../../scripts/Makefile.include 2include ../../perf/config/utilities.mak # QUIET_CLEAN 3 4CC = $(CROSS_COMPILE)gcc 5AR = $(CROSS_COMPILE)ar 6 7# guard against environment variables 8LIB_H= 9LIB_OBJS= 10 11LIB_H += fs/debugfs.h 12LIB_H += fs/fs.h 13 14LIB_OBJS += $(OUTPUT)fs/debugfs.o 15LIB_OBJS += $(OUTPUT)fs/fs.o 16 17LIBFILE = libapikfs.a 18 19CFLAGS = -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6 -D_FORTIFY_SOURCE=2 $(EXTRA_WARNINGS) $(EXTRA_CFLAGS) -fPIC 20EXTLIBS = -lelf -lpthread -lrt -lm 21ALL_CFLAGS = $(CFLAGS) $(BASIC_CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 22ALL_LDFLAGS = $(LDFLAGS) 23 24RM = rm -f 25 26$(LIBFILE): $(LIB_OBJS) 27 $(QUIET_AR)$(RM) $@ && $(AR) rcs $(OUTPUT)$@ $(LIB_OBJS) 28 29$(LIB_OBJS): $(LIB_H) 30 31libapi_dirs: 32 $(QUIET_MKDIR)mkdir -p $(OUTPUT)fs/ 33 34$(OUTPUT)%.o: %.c libapi_dirs 35 $(QUIET_CC)$(CC) -o $@ -c $(ALL_CFLAGS) $< 36$(OUTPUT)%.s: %.c libapi_dirs 37 $(QUIET_CC)$(CC) -S $(ALL_CFLAGS) $< 38$(OUTPUT)%.o: %.S libapi_dirs 39 $(QUIET_CC)$(CC) -o $@ -c $(ALL_CFLAGS) $< 40 41clean: 42 $(call QUIET_CLEAN, libapi) $(RM) $(LIB_OBJS) $(LIBFILE) 43 44.PHONY: clean 45