tools: add support for additional items in .pc files for local builds

Some libraries require different compiler-flags when being used in a
local build compared to a build using installed libraries.

Reflect that by supporting local cflags variables in generated
pkg-config files. The local variants will be empty in the installed
pkg-config files.

The flags for the linker in the local variants will have to specify
the search patch for the library with "-Wl,-rpath-link=", while the
flags for the installed library will be "-L".

Add needed directory patterns.

Signed-off-by: Juergen Gross <jgross@suse.com>
Acked-by: Wei Liu <wei.liu2@citrix.com>
This commit is contained in:
Juergen Gross authored and Wei Liu committed 2017-03-14 14:13:14 +00:00
1 parent e3de52f2c8
commit 514cd1f15a
2 files changed
+11 -3

No files matched your search

+10 -2
View File
@@ -254,10 +254,18 @@ $(PKG_CONFIG_DIR)/%.pc: %.pc.in Makefile
@sed -e 's!@@version@@!$(PKG_CONFIG_VERSION)!g' \
-e 's!@@prefix@@!$(PKG_CONFIG_PREFIX)!g' \
-e 's!@@incdir@@!$(PKG_CONFIG_INCDIR)!g' \
-e 's!@@libdir@@!$(PKG_CONFIG_LIBDIR)!g' < $< > $@
-e 's!@@libdir@@!$(PKG_CONFIG_LIBDIR)!g' \
-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' < $< > $@
%.pc: %.pc.in Makefile
@sed -e 's!@@version@@!$(PKG_CONFIG_VERSION)!g' \
-e 's!@@prefix@@!$(PKG_CONFIG_PREFIX)!g' \
-e 's!@@incdir@@!$(PKG_CONFIG_INCDIR)!g' \
-e 's!@@libdir@@!$(PKG_CONFIG_LIBDIR)!g' < $< > $@
-e 's!@@libdir@@!$(PKG_CONFIG_LIBDIR)!g' \
-e 's!@@firmwaredir@@!$(XENFIRMWAREDIR)!g' \
-e 's!@@libexecbin@@!$(LIBEXEC_BIN)!g' \
-e 's!@@cflagslocal@@!!g' \
-e 's!@@libsflag@@!-L!g' < $< > $@
+1 -1
View File
@@ -6,4 +6,4 @@ Name: Xencontrol
Description: The Xencontrol library for Xen hypervisor
Version: @@version@@
Cflags: -I${includedir}
Libs: -L${libdir} -lxenctrl
Libs: @@libsflag@@${libdir} -lxenctrl
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.