# SPDX-License-Identifier: GPL-2.0-only

ifeq ($(srctree),)
  srctree	:= $(patsubst %/,%,$(dir $(CURDIR)))
  srctree	:= $(patsubst %/,%,$(dir $(srctree)))
  srctree	:= $(patsubst %/,%,$(dir $(srctree)))
endif

include $(srctree)/tools/scripts/Makefile.include

# O is an alias for OUTPUT
OUTPUT          := $(O)

ifeq ($(OUTPUT),)
  OUTPUT        := $(CURDIR)
else
  # subdir is used by the ../Makefile in $(call descend,)
  ifneq ($(subdir),)
    OUTPUT        := $(OUTPUT)/$(subdir)
  endif
endif

ifneq ($(patsubst %/,,$(lastword $(OUTPUT))),)
  OUTPUT        := $(OUTPUT)/
endif

RTLA		:= $(OUTPUT)rtla
RTLA_IN		:= $(RTLA)-in.o

VERSION		:= $(shell sh -c "make -sC ../../.. kernelversion | grep -v make")
DOCSRC		:= ../../../Documentation/tools/rtla/

FEATURE_TESTS	:= libtraceevent
FEATURE_TESTS	+= libtracefs
FEATURE_TESTS	+= libcpupower
FEATURE_TESTS	+= libbpf
FEATURE_TESTS	+= clang-bpf-co-re
FEATURE_TESTS	+= bpftool-skeletons
FEATURE_DISPLAY	:= libtraceevent
FEATURE_DISPLAY	+= libtracefs
FEATURE_DISPLAY	+= libcpupower
FEATURE_DISPLAY	+= libbpf
FEATURE_DISPLAY	+= clang-bpf-co-re
FEATURE_DISPLAY	+= bpftool-skeletons

all: $(RTLA)

include $(srctree)/tools/build/Makefile.include
include Makefile.rtla

# check for dependencies only on required targets
NON_CONFIG_TARGETS := clean install tarball doc doc_clean doc_install

config		:= 1
ifdef MAKECMDGOALS
ifeq ($(filter-out $(NON_CONFIG_TARGETS),$(MAKECMDGOALS)),)
 config		:= 0
endif
endif

ifeq ($(config),1)
  include $(srctree)/tools/build/Makefile.feature
  include Makefile.config
endif

CFLAGS		+= $(INCLUDES) $(LIB_INCLUDES)

export CFLAGS OUTPUT srctree

ifeq ($(BUILD_BPF_SKEL),1)
src/timerlat.bpf.o: src/timerlat.bpf.c
	$(QUIET_CLANG)$(CLANG) -g -O2 -target bpf -c $(filter %.c,$^) -o $@

src/timerlat.skel.h: src/timerlat.bpf.o
	$(QUIET_GENSKEL)$(SYSTEM_BPFTOOL) gen skeleton $< > $@
else
src/timerlat.skel.h:
	$(Q)echo '/* BPF skeleton is disabled */' > src/timerlat.skel.h
endif

$(RTLA): $(RTLA_IN)
	$(QUIET_LINK)$(CC) $(LDFLAGS) -o $(RTLA) $(RTLA_IN) $(EXTLIBS)

static: $(RTLA_IN)
	$(eval LDFLAGS += -static)
	$(QUIET_LINK)$(CC) -static $(LDFLAGS) -o $(RTLA)-static $(RTLA_IN)  $(EXTLIBS)

rtla.%: fixdep FORCE
	make -f $(srctree)/tools/build/Makefile.build dir=. $@

$(RTLA_IN): fixdep FORCE src/timerlat.skel.h
	make $(build)=rtla

clean: doc_clean fixdep-clean
	$(call QUIET_CLEAN, rtla)
	$(Q)find . -name '*.o' -delete -o -name '\.*.cmd' -delete -o -name '\.*.d' -delete
	$(Q)rm -f rtla rtla-static fixdep FEATURE-DUMP rtla-*
	$(Q)rm -rf feature
	$(Q)rm -f src/timerlat.bpf.o src/timerlat.skel.h
check: $(RTLA)
	RTLA=$(RTLA) prove -o -f tests/
.PHONY: FORCE clean check
