Makefile 1.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243
  1. include ../../scripts/Makefile.include
  2. include ../../perf/config/utilities.mak # QUIET_CLEAN
  3. ifeq ($(srctree),)
  4. srctree := $(patsubst %/,%,$(dir $(shell pwd)))
  5. srctree := $(patsubst %/,%,$(dir $(srctree)))
  6. srctree := $(patsubst %/,%,$(dir $(srctree)))
  7. #$(info Determined 'srctree' to be $(srctree))
  8. endif
  9. CC = $(CROSS_COMPILE)gcc
  10. AR = $(CROSS_COMPILE)ar
  11. MAKEFLAGS += --no-print-directory
  12. LIBFILE = $(OUTPUT)libapi.a
  13. CFLAGS := $(EXTRA_WARNINGS) $(EXTRA_CFLAGS)
  14. CFLAGS += -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6 -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=2 -fPIC
  15. CFLAGS += -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64
  16. RM = rm -f
  17. build := -f $(srctree)/tools/build/Makefile.build dir=. obj
  18. API_IN := $(OUTPUT)libapi-in.o
  19. export srctree OUTPUT CC LD CFLAGS V
  20. all: $(LIBFILE)
  21. $(API_IN): FORCE
  22. @$(MAKE) $(build)=libapi
  23. $(LIBFILE): $(API_IN)
  24. $(QUIET_AR)$(RM) $@ && $(AR) rcs $@ $(API_IN)
  25. clean:
  26. $(call QUIET_CLEAN, libapi) $(RM) $(LIBFILE); \
  27. find $(if $(OUTPUT),$(OUTPUT),.) -name \*.o -or -name \*.o.cmd -or -name \*.o.d | xargs $(RM)
  28. FORCE:
  29. .PHONY: clean FORCE