Makefile (4ef92c2ecd96ebad171e554020c83ce9fdb343ae) | Makefile (b4f9166847354cb839c275c062c6b17afba49211) |
---|---|
1include ../../scripts/Makefile.include 2include ../../perf/config/utilities.mak # QUIET_CLEAN 3 | 1include ../../scripts/Makefile.include 2include ../../perf/config/utilities.mak # QUIET_CLEAN 3 |
4ifeq ($(srctree),) 5srctree := $(patsubst %/,%,$(dir $(shell pwd))) 6srctree := $(patsubst %/,%,$(dir $(srctree))) 7srctree := $(patsubst %/,%,$(dir $(srctree))) 8#$(info Determined 'srctree' to be $(srctree)) 9endif 10 |
|
4CC = $(CROSS_COMPILE)gcc 5AR = $(CROSS_COMPILE)ar 6 | 11CC = $(CROSS_COMPILE)gcc 12AR = $(CROSS_COMPILE)ar 13 |
7# guard against environment variables 8LIB_H= 9LIB_OBJS= | 14MAKEFLAGS += --no-print-directory |
10 | 15 |
11LIB_H += fs/debugfs.h 12LIB_H += fs/tracefs.h 13LIB_H += fs/findfs.h 14LIB_H += fs/fs.h 15# See comment below about piggybacking... 16LIB_H += fd/array.h | 16LIBFILE = $(OUTPUT)libapikfs.a |
17 | 17 |
18LIB_OBJS += $(OUTPUT)fs/debugfs.o 19LIB_OBJS += $(OUTPUT)fs/tracefs.o 20LIB_OBJS += $(OUTPUT)fs/findfs.o 21LIB_OBJS += $(OUTPUT)fs/fs.o 22# XXX piggybacking here, need to introduce libapikfd, or rename this 23# to plain libapik.a and make it have it all api goodies 24LIB_OBJS += $(OUTPUT)fd/array.o | 18CFLAGS := $(EXTRA_WARNINGS) $(EXTRA_CFLAGS) 19CFLAGS += -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6 -D_FORTIFY_SOURCE=2 -fPIC 20CFLAGS += -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 |
25 | 21 |
26LIBFILE = libapikfs.a 27 28CFLAGS = -ggdb3 -Wall -Wextra -std=gnu99 -Werror -O6 -D_FORTIFY_SOURCE=2 $(EXTRA_WARNINGS) $(EXTRA_CFLAGS) -fPIC 29EXTLIBS = -lelf -lpthread -lrt -lm 30ALL_CFLAGS = $(CFLAGS) $(BASIC_CFLAGS) -D_LARGEFILE64_SOURCE -D_FILE_OFFSET_BITS=64 31ALL_LDFLAGS = $(LDFLAGS) 32 | |
33RM = rm -f 34 | 22RM = rm -f 23 |
35$(LIBFILE): $(LIB_OBJS) 36 $(QUIET_AR)$(RM) $@ && $(AR) rcs $(OUTPUT)$@ $(LIB_OBJS) | 24build := -f $(srctree)/tools/build/Makefile.build dir=. obj 25API_IN := $(OUTPUT)libapikfs-in.o |
37 | 26 |
38$(LIB_OBJS): $(LIB_H) | 27export srctree OUTPUT CC LD CFLAGS V |
39 | 28 |
40libapi_dirs: 41 $(QUIET_MKDIR)mkdir -p $(OUTPUT)fd $(OUTPUT)fs | 29all: $(LIBFILE) |
42 | 30 |
43$(OUTPUT)%.o: %.c libapi_dirs 44 $(QUIET_CC)$(CC) -o $@ -c $(ALL_CFLAGS) $< 45$(OUTPUT)%.s: %.c libapi_dirs 46 $(QUIET_CC)$(CC) -S $(ALL_CFLAGS) $< 47$(OUTPUT)%.o: %.S libapi_dirs 48 $(QUIET_CC)$(CC) -o $@ -c $(ALL_CFLAGS) $< | 31$(API_IN): FORCE 32 @$(MAKE) $(build)=libapikfs |
49 | 33 |
34$(LIBFILE): $(API_IN) 35 $(QUIET_AR)$(RM) $@ && $(AR) rcs $@ $(API_IN) 36 |
|
50clean: | 37clean: |
51 $(call QUIET_CLEAN, libapi) $(RM) $(LIB_OBJS) $(LIBFILE) | 38 $(call QUIET_CLEAN, libapikfs) $(RM) $(LIBFILE); \ 39 find $(if $(OUTPUT),$(OUTPUT),.) -name \*.o | xargs $(RM) |
52 | 40 |
53.PHONY: clean | 41FORCE: 42 43.PHONY: clean FORCE |