| 1 |
|
| 2 |
|
| 3 | ifeq ($(srctree),)
|
| 4 | srctree := $(patsubst %/,%,$(dir $(CURDIR)))
|
| 5 | srctree := $(patsubst %/,%,$(dir $(srctree)))
|
| 6 | srctree := $(patsubst %/,%,$(dir $(srctree)))
|
| 7 | endif
|
| 8 |
|
| 9 | include $(srctree)/tools/scripts/Makefile.include
|
| 10 |
|
| 11 |
|
| 12 | OUTPUT := $(O)
|
| 13 |
|
| 14 | ifeq ($(OUTPUT),)
|
| 15 | OUTPUT := $(CURDIR)/
|
| 16 | else
|
| 17 |
|
| 18 | ifneq ($(subdir),)
|
| 19 | OUTPUT := $(OUTPUT)/$(subdir)
|
| 20 | endif
|
| 21 | endif
|
| 22 |
|
| 23 | ifneq ($(patsubst %/,,$(lastword $(OUTPUT))),)
|
| 24 | OUTPUT := $(OUTPUT)/
|
| 25 | endif
|
| 26 |
|
| 27 | RV := $(OUTPUT)rv
|
| 28 | RV_IN := $(RV)-in.o
|
| 29 |
|
| 30 | VERSION := $(shell sh -c "make -sC ../../.. kernelversion | grep -v make")
|
| 31 | DOCSRC := ../../../Documentation/tools/rv/
|
| 32 |
|
| 33 | FEATURE_TESTS := libtraceevent
|
| 34 | FEATURE_TESTS += libtracefs
|
| 35 | FEATURE_DISPLAY := libtraceevent
|
| 36 | FEATURE_DISPLAY += libtracefs
|
| 37 |
|
| 38 | all: $(RV)
|
| 39 |
|
| 40 | include $(srctree)/tools/build/Makefile.include
|
| 41 | include Makefile.rv
|
| 42 |
|
| 43 |
|
| 44 | NON_CONFIG_TARGETS := clean install doc doc_clean doc_install
|
| 45 |
|
| 46 | config := 1
|
| 47 | ifdef MAKECMDGOALS
|
| 48 | ifeq ($(filter-out $(NON_CONFIG_TARGETS),$(MAKECMDGOALS)),)
|
| 49 | config := 0
|
| 50 | endif
|
| 51 | endif
|
| 52 |
|
| 53 | ifeq ($(config),1)
|
| 54 | include $(srctree)/tools/build/Makefile.feature
|
| 55 | include Makefile.config
|
| 56 | endif
|
| 57 |
|
| 58 | CFLAGS += $(INCLUDES) $(LIB_INCLUDES)
|
| 59 |
|
| 60 | export CFLAGS OUTPUT srctree
|
| 61 |
|
| 62 | $(RV): $(RV_IN)
|
| 63 | $(QUIET_LINK)$(CC) $(LDFLAGS) -o $(RV) $(RV_IN) $(EXTLIBS)
|
| 64 |
|
| 65 | static: $(RV_IN)
|
| 66 | $(eval LDFLAGS += -static)
|
| 67 | $(QUIET_LINK)$(CC) $(LDFLAGS) -o $(RV)-static $(RV_IN) $(EXTLIBS)
|
| 68 |
|
| 69 | rv.%: fixdep FORCE
|
| 70 | make -f $(srctree)/tools/build/Makefile.build dir=. $@
|
| 71 |
|
| 72 | $(RV_IN): fixdep FORCE
|
| 73 | make $(build)=rv
|
| 74 |
|
| 75 | clean: doc_clean fixdep-clean
|
| 76 | $(call QUIET_CLEAN, rv)
|
| 77 | $(Q)find . -name '*.o' -delete -o -name '\.*.cmd' -delete -o -name '\.*.d' -delete
|
| 78 | $(Q)rm -f rv rv-static fixdep FEATURE-DUMP rv-*
|
| 79 | $(Q)rm -rf feature
|
| 80 |
|
| 81 | check: $(RV)
|
| 82 | RV=$(RV) prove -o --directives -f tests/
|
| 83 |
|
| 84 | .PHONY: FORCE clean check
|