Makefile 1006 B

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