tools: don't require unavailable optional libraries in pkg-config files

blktap2 is optional, so there should be no pkg-config file requiring
xenblktapctl if it isn't enabled for the build.

Add a filter mechanism to tools/Rules.mk to filter out optional
libraries.

Signed-off-by: Juergen Gross <jgross@suse.com>
Acked-by: Wei Liu <wei.liu2@citrix.com>
Acked-by: Ian Jackson <ian.jackson@eu.citrix.com>
Release-acked-by: Julien Grall <julien.grall@arm.com>
This commit is contained in:
Juergen Gross authored and Wei Liu committed 2017-05-16 12:38:25 +01:00
1 parent 17880a0f10
commit 3946384089
1 file changed
+7 -2
+7 -2
View File
@@ -175,6 +175,7 @@ CFLAGS_libblktapctl =
SHDEPS_libblktapctl =
LDLIBS_libblktapctl =
SHLIB_libblktapctl =
PKG_CONFIG_REMOVE += xenblktapctl
endif
CFLAGS_libxenlight = -I$(XEN_XENLIGHT) $(CFLAGS_libxenctrl) $(CFLAGS_xeninclude)
@@ -250,6 +251,8 @@ endif
PKG_CONFIG_DIR ?= $(XEN_ROOT)/tools/pkg-config
PKG_CONFIG_FILTER = $(foreach l,$(PKG_CONFIG_REMOVE),-e 's!\([ ,]\)$(l),!\1!g' -e 's![ ,]$(l)$$!!g')
$(PKG_CONFIG_DIR)/%.pc: %.pc.in Makefile
mkdir -p $(PKG_CONFIG_DIR)
@sed -e 's!@@version@@!$(PKG_CONFIG_VERSION)!g' \
@@ -259,7 +262,8 @@ $(PKG_CONFIG_DIR)/%.pc: %.pc.in Makefile
-e 's!@@firmwaredir@@!$(XENFIRMWAREDIR)!g' \
-e 's!@@libexecbin@@!$(LIBEXEC_BIN)!g' \
-e 's!@@cflagslocal@@!$(PKG_CONFIG_CFLAGS_LOCAL)!g' \
-e 's!@@libsflag@@!-Wl,-rpath-link=!g' < $< > $@
-e 's!@@libsflag@@!-Wl,-rpath-link=!g' \
$(PKG_CONFIG_FILTER) < $< > $@
%.pc: %.pc.in Makefile
@sed -e 's!@@version@@!$(PKG_CONFIG_VERSION)!g' \
@@ -269,4 +273,5 @@ $(PKG_CONFIG_DIR)/%.pc: %.pc.in Makefile
-e 's!@@firmwaredir@@!$(XENFIRMWAREDIR)!g' \
-e 's!@@libexecbin@@!$(LIBEXEC_BIN)!g' \
-e 's!@@cflagslocal@@!!g' \
-e 's!@@libsflag@@!-L!g' < $< > $@
-e 's!@@libsflag@@!-L!g' \
$(PKG_CONFIG_FILTER) < $< > $@
Reference in new issue
Block a user
Blocking a user prevents them from interacting with repositories, such as opening or commenting on pull requests or issues. Learn more about blocking a user.