You can not select more than 25 topics
Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
142 lines
5.0 KiB
142 lines
5.0 KiB
https://github.com/checkpoint-restore/criu/pull/1517
|
|
|
|
From d72536d9a821f9ff64f5dd62c9f8a282e3e5ec85 Mon Sep 17 00:00:00 2001
|
|
From: Mike Frysinger <vapier@chromium.org>
|
|
Date: Wed, 16 Jun 2021 15:43:04 -0400
|
|
Subject: [PATCH] build: respect $PKG_CONFIG settings
|
|
|
|
The build needs to respect $PKG_CONFIG env var like other standard
|
|
build systems and the the upstream pkg-config project itself. This
|
|
allows the package builder to point it to the right tool when doing
|
|
a cross-compile build. Otherwise the host pkg-config tool is used
|
|
which won't have access to the packages in the cross sysroot.
|
|
|
|
Signed-off-by: Mike Frysinger <vapier@chromium.org>
|
|
---
|
|
Makefile.config | 2 +-
|
|
criu/Makefile | 2 +-
|
|
scripts/nmk/scripts/tools.mk | 1 +
|
|
scripts/nmk/scripts/utils.mk | 2 +-
|
|
test/zdtm/Makefile.inc | 8 +++++---
|
|
test/zdtm/lib/Makefile | 2 +-
|
|
test/zdtm/static/Makefile | 2 +-
|
|
7 files changed, 11 insertions(+), 8 deletions(-)
|
|
|
|
diff --git a/Makefile.config b/Makefile.config
|
|
index 3d99e680be7f..6e3e1b062256 100644
|
|
--- a/Makefile.config
|
|
+++ b/Makefile.config
|
|
@@ -30,7 +30,7 @@ else
|
|
endif
|
|
|
|
ifeq ($(call pkg-config-check,libnftables),y)
|
|
- LIB_NFTABLES := $(shell pkg-config --libs libnftables)
|
|
+ LIB_NFTABLES := $(shell $(PKG_CONFIG) --libs libnftables)
|
|
ifeq ($(call try-cc,$(FEATURE_TEST_NFTABLES_LIB_API_0),$(LIB_NFTABLES)),true)
|
|
LIBS_FEATURES += $(LIB_NFTABLES)
|
|
FEATURE_DEFINES += -DCONFIG_HAS_NFTABLES_LIB_API_0
|
|
diff --git a/criu/Makefile b/criu/Makefile
|
|
index ceb49ce09925..11d454c81026 100644
|
|
--- a/criu/Makefile
|
|
+++ b/criu/Makefile
|
|
@@ -27,7 +27,7 @@ CFLAGS += -iquote include
|
|
CFLAGS += -iquote images
|
|
CFLAGS += -iquote $(ARCH_DIR)/include
|
|
CFLAGS += -iquote .
|
|
-CFLAGS += $(shell pkg-config --cflags libnl-3.0)
|
|
+CFLAGS += $(shell $(PKG_CONFIG) --cflags libnl-3.0)
|
|
CFLAGS += $(CONFIG-DEFINES)
|
|
|
|
ifeq ($(GMON),1)
|
|
diff --git a/scripts/nmk/scripts/tools.mk b/scripts/nmk/scripts/tools.mk
|
|
index c5794401c734..1681d4e9092b 100644
|
|
--- a/scripts/nmk/scripts/tools.mk
|
|
+++ b/scripts/nmk/scripts/tools.mk
|
|
@@ -17,6 +17,7 @@ AR := $(CROSS_COMPILE)ar
|
|
STRIP := $(CROSS_COMPILE)strip
|
|
OBJCOPY := $(CROSS_COMPILE)objcopy
|
|
OBJDUMP := $(CROSS_COMPILE)objdump
|
|
+PKG_CONFIG ?= pkg-config
|
|
NM := $(CROSS_COMPILE)nm
|
|
MAKE := make
|
|
MKDIR := mkdir -p
|
|
diff --git a/scripts/nmk/scripts/utils.mk b/scripts/nmk/scripts/utils.mk
|
|
index b9790615ca7f..f93fdf911cef 100644
|
|
--- a/scripts/nmk/scripts/utils.mk
|
|
+++ b/scripts/nmk/scripts/utils.mk
|
|
@@ -16,7 +16,7 @@ try-asm = $(call try-compile,assembler-with-cpp,$(1),$(2),$(3))
|
|
|
|
# pkg-config-check
|
|
# Usage: ifeq ($(call pkg-config-check, library),y)
|
|
-pkg-config-check = $(shell sh -c 'pkg-config $(1) && echo y')
|
|
+pkg-config-check = $(shell sh -c '$(PKG_CONFIG) $(1) && echo y')
|
|
|
|
#
|
|
# Remove duplicates.
|
|
diff --git a/test/zdtm/Makefile.inc b/test/zdtm/Makefile.inc
|
|
index 43763321f956..e4af9c51e9e4 100644
|
|
--- a/test/zdtm/Makefile.inc
|
|
+++ b/test/zdtm/Makefile.inc
|
|
@@ -37,6 +37,7 @@ HOSTCC ?= gcc
|
|
ifeq ($(origin CC), default)
|
|
CC := $(CROSS_COMPILE)$(HOSTCC)
|
|
endif
|
|
+PKG_CONFIG ?= pkg-config
|
|
CFLAGS += -g -O2 -Wall -Werror -U_FORTIFY_SOURCE -D_FORTIFY_SOURCE=0
|
|
CFLAGS += -Wdeclaration-after-statement -Wstrict-prototypes
|
|
CFLAGS += $(USERCFLAGS)
|
|
@@ -54,8 +55,9 @@ endif
|
|
RM := rm -f --one-file-system
|
|
|
|
ifeq ($(COMPAT_TEST),y)
|
|
+$(error bad juju)
|
|
# Firstly look for 32-bit libs and then in standard path.
|
|
- PKG_CONFIG_PATH := $(shell pkg-config --variable pc_path pkg-config)
|
|
+ PKG_CONFIG_PATH := $(shell $(PKG_CONFIG) --variable pc_path pkg-config)
|
|
PKG_CONFIG_PATH := /usr/lib32/pkgconfig:$(PKG_CONFIG_PATH)
|
|
ifeq ($(ARCH),x86)
|
|
export CFLAGS += -m32
|
|
@@ -66,11 +68,11 @@ endif
|
|
endif
|
|
|
|
define pkg-libs
|
|
- $(shell PKG_CONFIG_PATH="$(PKG_CONFIG_PATH)" pkg-config --libs $(1))
|
|
+ $(shell PKG_CONFIG_PATH="$(PKG_CONFIG_PATH)" $(PKG_CONFIG) --libs $(1))
|
|
endef
|
|
|
|
define pkg-cflags
|
|
- $(shell PKG_CONFIG_PATH="$(PKG_CONFIG_PATH)" pkg-config --cflags $(1))
|
|
+ $(shell PKG_CONFIG_PATH="$(PKG_CONFIG_PATH)" $(PKG_CONFIG) --cflags $(1))
|
|
endef
|
|
|
|
%.d: %.c
|
|
diff --git a/test/zdtm/lib/Makefile b/test/zdtm/lib/Makefile
|
|
index 05fe64e91703..5ecf8bccf27b 100644
|
|
--- a/test/zdtm/lib/Makefile
|
|
+++ b/test/zdtm/lib/Makefile
|
|
@@ -6,7 +6,7 @@ LIB := libzdtmtst.a
|
|
|
|
LIBSRC := datagen.c msg.c parseargs.c test.c streamutil.c lock.c ns.c tcp.c unix.c fs.c sysctl.c
|
|
|
|
-pkg-config-check = $(shell sh -c 'pkg-config $(1) && echo y')
|
|
+pkg-config-check = $(shell sh -c '$(PKG_CONFIG) $(1) && echo y')
|
|
ifeq ($(call pkg-config-check,libbpf),y)
|
|
LIBSRC += bpfmap_zdtm.c
|
|
endif
|
|
diff --git a/test/zdtm/static/Makefile b/test/zdtm/static/Makefile
|
|
index e60fe6dc2d66..c5f3c98be3ed 100644
|
|
--- a/test/zdtm/static/Makefile
|
|
+++ b/test/zdtm/static/Makefile
|
|
@@ -241,7 +241,7 @@ TST_NOFILE := \
|
|
sigtrap01 \
|
|
# jobctl00 \
|
|
|
|
-pkg-config-check = $(shell sh -c 'pkg-config $(1) && echo y')
|
|
+pkg-config-check = $(shell sh -c '$(PKG_CONFIG) $(1) && echo y')
|
|
ifeq ($(call pkg-config-check,libbpf),y)
|
|
TST_NOFILE += \
|
|
bpf_hash \
|
|
--
|
|
2.31.1
|
|
|