[CRIU] [PATCH 5/6] Makefiles: nuke $(SRC_DIR)
Kir Kolyshkin
kir at openvz.org
Sun Feb 19 19:13:59 PST 2017
As all builds are done from top source dir, there is no need
to have SRC_DIR.
Tag: взять-и-уебать
Signed-off-by: Kir Kolyshkin <kir at openvz.org>
---
Makefile | 12 ++++--------
Makefile.compel | 4 ++--
Makefile.config | 6 +++---
compel/Makefile | 2 +-
compel/plugins/Makefile | 2 +-
criu/Makefile | 22 +++++++++++-----------
criu/Makefile.crtools | 2 +-
criu/Makefile.packages | 3 +++
criu/arch/aarch64/Makefile | 6 +++---
criu/arch/arm/Makefile | 5 ++---
criu/arch/ppc64/Makefile | 4 ++--
criu/arch/x86/Makefile | 4 ++--
criu/pie/Makefile | 7 +++----
criu/pie/Makefile.library | 5 ++---
lib/Makefile | 1 +
lib/c/Makefile | 8 ++++----
lib/py/Makefile | 2 +-
lib/py/images/Makefile | 6 +++---
18 files changed, 49 insertions(+), 52 deletions(-)
diff --git a/Makefile b/Makefile
index b1a455a..75569f8 100644
--- a/Makefile
+++ b/Makefile
@@ -13,11 +13,6 @@ HOSTCFLAGS ?= $(CFLAGS)
export HOSTCFLAGS
#
-# Where we live.
-SRC_DIR := $(CURDIR)
-export SRC_DIR
-
-#
# Architecture specific options.
ifneq ($(filter-out x86 arm arm64 ppc64,$(ARCH)),)
$(error "The architecture $(ARCH) isn't supported")
@@ -144,7 +139,7 @@ all: criu lib
# Version headers.
include Makefile.versions
-VERSION_HEADER := $(SRC_DIR)/criu/include/version.h
+VERSION_HEADER := criu/include/version.h
GITID_FILE := .gitid
GITID := $(shell if [ -d ".git" ]; then git describe --always; fi)
@@ -193,7 +188,7 @@ criu-deps += include/common/asm
# Configure variables.
export CONFIG_HEADER := criu/include/config.h
ifeq ($(filter clean mrproper,$(MAKECMDGOALS)),)
-include $(SRC_DIR)/Makefile.config
+include Makefile.config
else
# To clean all files, enable make/build options here
export CONFIG_COMPAT := y
@@ -215,7 +210,7 @@ include Makefile.compel
# Next the socket CR library
#
SOCCR_A := soccr/libsoccr.a
-SOCCR_CONFIG := $(SRC_DIR)/soccr/config.h
+SOCCR_CONFIG := soccr/config.h
$(SOCCR_CONFIG): $(CONFIG_HEADER)
$(Q) test -f $@ || ln -s ../$(CONFIG_HEADER) $@
soccr/%: $(SOCCR_CONFIG) .FORCE
@@ -271,6 +266,7 @@ mrproper: subclean
$(Q) $(MAKE) $(build)=soccr $@
$(Q) $(MAKE) $(build)=compel $@
$(Q) $(MAKE) $(build)=compel/plugins $@
+ $(Q) $(MAKE) $(build)=lib $@
$(Q) $(RM) $(CONFIG_HEADER)
$(Q) $(RM) $(SOCCR_CONFIG)
$(Q) $(RM) $(VERSION_HEADER)
diff --git a/Makefile.compel b/Makefile.compel
index 3e7a174..7586ef3 100644
--- a/Makefile.compel
+++ b/Makefile.compel
@@ -1,9 +1,9 @@
-COMPEL_BIN := $(SRC_DIR)/compel/compel-host
+COMPEL_BIN := compel/compel-host
export COMPEL_BIN
COMPEL_VERSION_HEADER := compel/include/version.h
-$(COMPEL_VERSION_HEADER): $(SRC_DIR)/Makefile.versions
+$(COMPEL_VERSION_HEADER): Makefile.versions
$(call msg-gen, $(COMPEL_VERSION_HEADER))
$(Q) echo "/* Autogenerated, do not edit */" > $(COMPEL_VERSION_HEADER)
$(Q) echo "#ifndef COMPEL_SO_VERSION_H__" >> $(COMPEL_VERSION_HEADER)
diff --git a/Makefile.config b/Makefile.config
index 0a04115..5051610 100644
--- a/Makefile.config
+++ b/Makefile.config
@@ -1,6 +1,6 @@
include $(__nmk_dir)utils.mk
include $(__nmk_dir)msg.mk
-include $(SRC_DIR)/scripts/feature-tests.mak
+include scripts/feature-tests.mak
ifeq ($(call try-cc,$(FEATURE_TEST_LIBBSD_DEV),-lbsd),true)
LIBS_FEATURES += -lbsd
@@ -14,7 +14,7 @@ endif
export LIBS += $(LIBS_FEATURES)
-CONFIG_FILE = $(SRC_DIR)/.config
+CONFIG_FILE = .config
$(CONFIG_FILE):
touch $(CONFIG_FILE)
@@ -42,7 +42,7 @@ endif
endef
define config-header-rule
-$(CONFIG_HEADER): $(SRC_DIR)/scripts/feature-tests.mak $(CONFIG_FILE)
+$(CONFIG_HEADER): scripts/feature-tests.mak $(CONFIG_FILE)
$$(call msg-gen, $$@)
$(Q) @echo '#ifndef __CR_CONFIG_H__' > $$@
$(Q) @echo '#define __CR_CONFIG_H__' >> $$@
diff --git a/compel/Makefile b/compel/Makefile
index 159a3e1..983b1a4 100644
--- a/compel/Makefile
+++ b/compel/Makefile
@@ -1,4 +1,4 @@
-include $(SRC_DIR)/Makefile.versions
+include Makefile.versions
COMPEL_SO_VERSION := $(COMPEL_SO_VERSION_MAJOR)$(if $(COMPEL_SO_VERSION_MINOR),.$(COMPEL_SO_VERSION_MINOR))$(if $(COMPEL_SO_VERSION_SUBLEVEL),.$(COMPEL_SO_VERSION_SUBLEVEL))
COMPEL_SO_VERSION_CODE := $(shell expr $(COMPEL_SO_VERSION_MAJOR) \* 65536 \+ $(COMPEL_SO_VERSION_MINOR) \* 256 \+ $(COMPEL_SO_VERSION_SUBLEVEL))
diff --git a/compel/plugins/Makefile b/compel/plugins/Makefile
index ac23a11..5a9da91 100644
--- a/compel/plugins/Makefile
+++ b/compel/plugins/Makefile
@@ -14,7 +14,7 @@ ccflags-y += -I compel/include/uapi
asflags-y += -I compel/include/uapi
# General compel includes
-ccflags-y += -iquote $(SRC_DIR)/compel/include
+ccflags-y += -iquote compel/include
ccflags-y += -fpie -fno-stack-protector
# General compel/plugins includes
diff --git a/criu/Makefile b/criu/Makefile
index 5c19d0a..3275d0a 100644
--- a/criu/Makefile
+++ b/criu/Makefile
@@ -17,13 +17,13 @@ endif
#
# General flags.
ccflags-y += -fno-strict-aliasing
-ccflags-y += -iquote $(SRC_DIR)/criu/include
-ccflags-y += -iquote $(SRC_DIR)/include
-ccflags-y += -iquote $(SRC_DIR)/images
-ccflags-y += -iquote $(SRC_DIR)/criu/pie
-ccflags-y += -iquote $(SRC_DIR)/$(ARCH_DIR)
-ccflags-y += -iquote $(SRC_DIR)/$(ARCH_DIR)/include
-ccflags-y += -iquote $(SRC_DIR)/
+ccflags-y += -iquote criu/include
+ccflags-y += -iquote include
+ccflags-y += -iquote images
+ccflags-y += -iquote criu/pie
+ccflags-y += -iquote $(ARCH_DIR)
+ccflags-y += -iquote $(ARCH_DIR)/include
+ccflags-y += -iquote .
ccflags-y += -I/usr/include/libnl3
ccflags-y += $(COMPEL_UAPI_INCLUDES)
@@ -39,7 +39,7 @@ include $(__nmk_dir)msg.mk
#
# Needed libraries checks
-include $(SRC_DIR)/criu/Makefile.packages
+include criu/Makefile.packages
#
# Architecture dependent part.
@@ -108,8 +108,8 @@ subproper:
.PHONY: subproper
mrproper: subproper
-UAPI_HEADERS := $(SRC_DIR)/criu/include/criu-plugin.h
-UAPI_HEADERS += $(SRC_DIR)/criu/include/criu-log.h
+UAPI_HEADERS := criu/include/criu-plugin.h
+UAPI_HEADERS += criu/include/criu-log.h
install: $(obj)/criu
$(E) " INSTALL " $(obj)/criu
@@ -118,7 +118,7 @@ install: $(obj)/criu
$(Q) mkdir -p $(DESTDIR)$(INCLUDEDIR)/criu/
$(Q) install -m 644 $(UAPI_HEADERS) $(DESTDIR)$(INCLUDEDIR)/criu/
$(Q) mkdir -p $(DESTDIR)$(LIBEXECDIR)/criu/scripts
- $(Q) install -m 755 $(SRC_DIR)/scripts/systemd-autofs-restart.sh $(DESTDIR)$(LIBEXECDIR)/criu/scripts
+ $(Q) install -m 755 scripts/systemd-autofs-restart.sh $(DESTDIR)$(LIBEXECDIR)/criu/scripts
.PHONY: install
uninstall:
diff --git a/criu/Makefile.crtools b/criu/Makefile.crtools
index afc3daf..3cebd5c 100644
--- a/criu/Makefile.crtools
+++ b/criu/Makefile.crtools
@@ -89,7 +89,7 @@ obj-y += pie-util-vdso-elf32.o
CFLAGS_pie-util-vdso-elf32.o += -DCONFIG_VDSO_32
endif
-PROTOBUF_GEN := $(SRC_DIR)/scripts/protobuf-gen.sh
+PROTOBUF_GEN := scripts/protobuf-gen.sh
$(obj)/protobuf-desc.d: $(obj)/protobuf-desc-gen.h
diff --git a/criu/Makefile.packages b/criu/Makefile.packages
index 886394f..e39cc41 100644
--- a/criu/Makefile.packages
+++ b/criu/Makefile.packages
@@ -38,3 +38,6 @@ check-packages:
$(Q) $(call try-cc,$(PROGRAM_STUB),$(LIBS)) \
|| $(MAKE) -f $(obj)/Makefile.packages check-packages-failed
.PHONY: check-packages-failed check-packages
+
+$(obj)/Makefile.packages:
+ @true
diff --git a/criu/arch/aarch64/Makefile b/criu/arch/aarch64/Makefile
index 428e808..4203e3d 100644
--- a/criu/arch/aarch64/Makefile
+++ b/criu/arch/aarch64/Makefile
@@ -1,8 +1,8 @@
builtin-name := crtools.built-in.o
-ccflags-y += -iquote $(obj) -iquote $(SRC_DIR)
-ccflags-y += -iquote $(obj)/include -iquote $(SRC_DIR)/criu/include
-ccflags-y += -iquote $(SRC_DIR)/include
+ccflags-y += -iquote $(obj)
+ccflags-y += -iquote $(obj)/include -iquote criu/include
+ccflags-y += -iquote include
ccflags-y += $(COMPEL_UAPI_INCLUDES)
asflags-y += -D__ASSEMBLY__
diff --git a/criu/arch/arm/Makefile b/criu/arch/arm/Makefile
index b64d1c9..07daec7 100644
--- a/criu/arch/arm/Makefile
+++ b/criu/arch/arm/Makefile
@@ -1,8 +1,7 @@
builtin-name := crtools.built-in.o
-ccflags-y += -iquote $(obj) -iquote $(SRC_DIR) -iquote $(obj)/include
-ccflags-y += -iquote $(SRC_DIR)/criu/include -iquote $(SRC_DIR)/include
-
+ccflags-y += -iquote $(obj) -iquote $(obj)/include
+ccflags-y += -iquote criu/include -iquote include
ccflags-y += $(COMPEL_UAPI_INCLUDES)
asflags-y += -D__ASSEMBLY__
diff --git a/criu/arch/ppc64/Makefile b/criu/arch/ppc64/Makefile
index 4859bf0..177ea31 100644
--- a/criu/arch/ppc64/Makefile
+++ b/criu/arch/ppc64/Makefile
@@ -1,7 +1,7 @@
builtin-name := crtools.built-in.o
-ccflags-y += -iquote $(obj) -iquote $(SRC_DIR) -iquote $(obj)/include
-ccflags-y += -iquote $(SRC_DIR)/criu/include -iquote $(SRC_DIR)/include
+ccflags-y += -iquote $(obj) -iquote $(obj)/include
+ccflags-y += -iquote criu/include -iquote include
ccflags-y += $(COMPEL_UAPI_INCLUDES)
obj-y += cpu.o
diff --git a/criu/arch/x86/Makefile b/criu/arch/x86/Makefile
index 6bd5ac9..0e1717c 100644
--- a/criu/arch/x86/Makefile
+++ b/criu/arch/x86/Makefile
@@ -1,7 +1,7 @@
builtin-name := crtools.built-in.o
-ccflags-y += -iquote $(obj) -iquote $(SRC_DIR) -iquote $(obj)/include
-ccflags-y += -iquote $(SRC_DIR)/criu/include -iquote $(SRC_DIR)/include
+ccflags-y += -iquote $(obj) -iquote . -iquote $(obj)/include
+ccflags-y += -iquote criu/include -iquote include
ccflags-y += $(COMPEL_UAPI_INCLUDES)
asflags-y += -Wstrict-prototypes
diff --git a/criu/pie/Makefile b/criu/pie/Makefile
index 68a2f4b..88d376c 100644
--- a/criu/pie/Makefile
+++ b/criu/pie/Makefile
@@ -19,10 +19,9 @@ endif
#
CFLAGS := $(filter-out -pg $(CFLAGS-GCOV),$(CFLAGS))
CFLAGS := $(filter-out $(CFLAGS-ASAN),$(CFLAGS))
-CFLAGS += -iquote $(SRC_DIR)/criu/arch/$(ARCH)/include
-CFLAGS += -iquote $(SRC_DIR)/criu/include
-CFLAGS += -iquote $(SRC_DIR)/include
-CFLAGS += -iquote $(SRC_DIR)
+CFLAGS += -iquote criu/arch/$(ARCH)/include
+CFLAGS += -iquote criu/include
+CFLAGS += -iquote include
ccflags-y += $(COMPEL_UAPI_INCLUDES)
ccflags-y += -DCR_NOGLIBC
diff --git a/criu/pie/Makefile.library b/criu/pie/Makefile.library
index e84058c..7fe2596 100644
--- a/criu/pie/Makefile.library
+++ b/criu/pie/Makefile.library
@@ -34,9 +34,8 @@ endif
# applications, which is not the target of the
# project.
#
-iquotes := -iquote $(SRC_DIR)/$(PIE_DIR)/piegen
-iquotes += -iquote $(SRC_DIR)/$(ARCH_DIR)/include
-iquotes += -iquote $(SRC_DIR) -iquote $(SRC_DIR)/criu/include -iquote $(SRC_DIR)/include
+iquotes += -iquote $(ARCH_DIR)/include
+iquotes += -iquote criu/include -iquote include
CFLAGS := $(filter-out -pg $(CFLAGS-GCOV),$(CFLAGS)) $(iquotes)
CFLAGS := $(filter-out $(CFLAGS-ASAN),$(CFLAGS))
diff --git a/lib/Makefile b/lib/Makefile
index 084fee5..be90ea8 100644
--- a/lib/Makefile
+++ b/lib/Makefile
@@ -38,6 +38,7 @@ clean-lib:
.PHONY: clean-lib
clean: clean-lib
cleanup-y += lib/c/$(CRIU_SO) lib/c/criu.pc
+mrproper: clean
install: lib-c lib-py crit/crit lib/c/criu.pc.in
$(E) " INSTALL " lib
diff --git a/lib/c/Makefile b/lib/c/Makefile
index 68cf2b9..79a8e69 100644
--- a/lib/c/Makefile
+++ b/lib/c/Makefile
@@ -1,8 +1,8 @@
obj-y += criu.o
-obj-y += $(SRC_DIR)/images/rpc.pb-c.o
+obj-y += ./images/rpc.pb-c.o
-ccflags-y += -iquote $(SRC_DIR)/criu/$(ARCH_DIR)/include
-ccflags-y += -iquote $(SRC_DIR)/criu/include -iquote $(obj)/..
-ccflags-y += -iquote $(SRC_DIR)/images
+ccflags-y += -iquote criu/$(ARCH_DIR)/include
+ccflags-y += -iquote criu/include
+ccflags-y += -iquote images
ccflags-y += -fPIC -fno-stack-protector
ldflags-y += -z noexecstack
diff --git a/lib/py/Makefile b/lib/py/Makefile
index 59d54a2..edb966a 100644
--- a/lib/py/Makefile
+++ b/lib/py/Makefile
@@ -8,7 +8,7 @@ libpy-images:
.PHONY: libpy-images
rpc_pb2.py:
- $(Q) protoc -I=$(SRC_DIR)/images/ --python_out=$(obj) $(SRC_DIR)/images/$(@:_pb2.py=.proto)
+ $(Q) protoc -I=images/ --python_out=$(obj) images/$(@:_pb2.py=.proto)
cleanup-y += $(addprefix $(obj)/,rpc_pb2.py *.pyc)
diff --git a/lib/py/images/Makefile b/lib/py/images/Makefile
index a5990c4..a95f612 100644
--- a/lib/py/images/Makefile
+++ b/lib/py/images/Makefile
@@ -1,16 +1,16 @@
all-y += images magic.py pb.py
-proto := $(filter-out $(SRC_DIR)/images/rpc.proto, $(sort $(wildcard $(SRC_DIR)/images/*.proto)))
+proto := $(filter-out images/rpc.proto, $(sort $(wildcard images/*.proto)))
proto-py-modules := $(foreach m,$(proto),$(subst -,_,$(notdir $(m:.proto=_pb2))))
# We don't need rpc_pb2.py here, as it is not related to the images.
# Unfortunately, we can't drop ugly _pb2 suffixes here, because
# some _pb2 files depend on others _pb2 files.
images:
- $(Q) protoc -I=$(SRC_DIR)/images -I=/usr/include/ --python_out=$(obj) $(proto)
+ $(Q) protoc -I=images/ -I=/usr/include/ --python_out=$(obj) $(proto)
.PHONY: images
-magic.py: $(SRC_DIR)/scripts/magic-gen.py $(SRC_DIR)/criu/include/magic.h
+magic.py: scripts/magic-gen.py criu/include/magic.h
$(call msg-gen, $@)
$(Q) python $^ $(obj)/$@
--
2.9.3
More information about the CRIU
mailing list