404

[ Avaa Bypassed ]




Upload:

Command:

botdev@3.12.147.104: ~ $
# SPDX-License-Identifier: GPL-2.0
#
# This is a simple wrapper Makefile that calls the main Makefile.perf
# with a -j option to do parallel builds
#
# If you want to invoke the perf build in some non-standard way then
# you can use the 'make -f Makefile.perf' method to invoke it.
#

#
# Clear out the built-in rules GNU make defines by default (such as .o targets),
# so that we pass through all targets to Makefile.perf:
#
.SUFFIXES:

#
# We don't want to pass along options like -j:
#
unexport MAKEFLAGS

#
# Do a parallel build with multiple jobs, based on the number of CPUs online
# in this system: 'make -j8' on a 8-CPU system, etc.
#
# (To override it, run 'make JOBS=1' and similar.)
#
ifeq ($(JOBS),)
  JOBS := $(shell (getconf _NPROCESSORS_ONLN || egrep -c '^processor|^CPU[0-9]' /proc/cpuinfo) 2>/dev/null)
  ifeq ($(JOBS),0)
    JOBS := 1
  endif
endif

#
# Only pass canonical directory names as the output directory:
#
ifneq ($(O),)
  FULL_O := $(shell cd $(PWD); readlink -f $(O) || echo $(O))
endif

#
# Only accept the 'DEBUG' variable from the command line:
#
ifeq ("$(origin DEBUG)", "command line")
  ifeq ($(DEBUG),)
    override DEBUG = 0
  else
    SET_DEBUG = "DEBUG=$(DEBUG)"
  endif
else
  override DEBUG = 0
endif

define print_msg
  @printf '  BUILD:   Doing '\''make \033[33m-j'$(JOBS)'\033[m'\'' parallel build\n'
endef

define make
  @$(MAKE) -f Makefile.perf --no-print-directory -j$(JOBS) O=$(FULL_O) $(SET_DEBUG) $@
endef

#
# Needed if no target specified:
# (Except for tags and TAGS targets. The reason is that the
# Makefile does not treat tags/TAGS as targets but as files
# and thus won't rebuilt them once they are in place.)
#
all tags TAGS:
	$(print_msg)
	$(make)

ifdef MAKECMDGOALS
has_clean := 0
ifneq ($(filter clean,$(MAKECMDGOALS)),)
  has_clean := 1
endif # clean

ifeq ($(has_clean),1)
  rest := $(filter-out clean,$(MAKECMDGOALS))
  ifneq ($(rest),)
$(rest): clean
  endif # rest
endif # has_clean
endif # MAKECMDGOALS

#
# Explicitly disable parallelism for the clean target.
#
clean:
	$(make) -j1

#
# The build-test target is not really parallel, don't print the jobs info,
# it also uses only the tests/make targets that don't pollute the source
# repository, i.e. that uses O= or builds the tarpkg outside the source
# repo directories.
#
# For a full test, use:
#
# make -C tools/perf -f tests/make
#
build-test:
	@$(MAKE) SHUF=1 -f tests/make REUSE_FEATURES_DUMP=1 MK=Makefile SET_PARALLEL=1 --no-print-directory tarpkg out

#
# All other targets get passed through:
#
%: FORCE
	$(print_msg)
	$(make)

.PHONY: tags TAGS FORCE Makefile

Filemanager

Name Type Size Permission Actions
Documentation Folder 0755
arch Folder 0755
scripts Folder 0755
tests Folder 0755
trace Folder 0755
util Folder 0755
Makefile File 2.54 KB 0644
Makefile.config File 28.61 KB 0644
Makefile.perf File 29.12 KB 0644
check-headers.sh File 2.36 KB 0755
perf-archive.sh File 1.3 KB 0644
perf-completion.sh File 5.37 KB 0644
perf-with-kcore.sh File 6.73 KB 0644