Makefile 1.0 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344
  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_H += fs/fs.h
  10. LIB_OBJS += $(OUTPUT)fs/debugfs.o
  11. LIB_OBJS += $(OUTPUT)fs/fs.o
  12. LIBFILE = libapikfs.a
  13. CFLAGS = -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6 -D_FORTIFY_SOURCE=2 $(EXTRA_WARNINGS) $(EXTRA_CFLAGS) -fPIC
  14. EXTLIBS = -lelf -lpthread -lrt -lm
  15. ALL_CFLAGS = $(CFLAGS) $(BASIC_CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
  16. ALL_LDFLAGS = $(LDFLAGS)
  17. RM = rm -f
  18. $(LIBFILE): $(LIB_OBJS)
  19. $(QUIET_AR)$(RM) $@ && $(AR) rcs $(OUTPUT)$@ $(LIB_OBJS)
  20. $(LIB_OBJS): $(LIB_H)
  21. libapi_dirs:
  22. $(QUIET_MKDIR)mkdir -p $(OUTPUT)fs/
  23. $(OUTPUT)%.o: %.c libapi_dirs
  24. $(QUIET_CC)$(CC) -o $@ -c $(ALL_CFLAGS) $<
  25. $(OUTPUT)%.s: %.c libapi_dirs
  26. $(QUIET_CC)$(CC) -S $(ALL_CFLAGS) $<
  27. $(OUTPUT)%.o: %.S libapi_dirs
  28. $(QUIET_CC)$(CC) -o $@ -c $(ALL_CFLAGS) $<
  29. clean:
  30. $(call QUIET_CLEAN, libapi) $(RM) $(LIB_OBJS) $(LIBFILE)
  31. .PHONY: clean