From: Michael Jeanson via lttng-dev <lttng-dev@lists.lttng.org>
To: lttng-dev@lists.lttng.org
Subject: [lttng-dev] [PATCH urcu] fix: add -lurcu-common to pkg-config libs for each flavor
Date: Fri, 30 Oct 2020 15:39:56 -0400 [thread overview]
Message-ID: <20201030193956.292208-1-mjeanson@efficios.com> (raw)
The urcu-common library contains common code like the write-free queue
and compat code, each urcu flavor library is dynamicly linked with it.
Most but not all toolchains will automatically link an executable with a
transitive depency of an explicitly linked library if said binary uses a
symbol from the transitive dependency.
Since this behavior is not present in all toolchains, add
'-lurcu-common' to the 'Libs' field of each flavors pkg-config file so
that executables using symbols from urcu-common can be reliably linked
using pkg-config.
Signed-off-by: Michael Jeanson <mjeanson@efficios.com>
---
src/liburcu-bp.pc.in | 2 +-
src/liburcu-cds.pc.in | 2 +-
src/liburcu-mb.pc.in | 2 +-
src/liburcu-qsbr.pc.in | 2 +-
src/liburcu-signal.pc.in | 2 +-
src/liburcu.pc.in | 2 +-
6 files changed, 6 insertions(+), 6 deletions(-)
diff --git a/src/liburcu-bp.pc.in b/src/liburcu-bp.pc.in
index c5f2355..7cba58a 100644
--- a/src/liburcu-bp.pc.in
+++ b/src/liburcu-bp.pc.in
@@ -7,5 +7,5 @@ Name: Userspace RCU BulletProof
Description: A userspace RCU (read-copy-update) library, bulletproof version
Version: @PACKAGE_VERSION@
Requires:
-Libs: -L${libdir} -lurcu-bp
+Libs: -L${libdir} -lurcu-common -lurcu-bp
Cflags: -I${includedir}
diff --git a/src/liburcu-cds.pc.in b/src/liburcu-cds.pc.in
index e3d13af..1cb19b6 100644
--- a/src/liburcu-cds.pc.in
+++ b/src/liburcu-cds.pc.in
@@ -7,5 +7,5 @@ Name: Userspace RCU Concurrent Data Structures
Description: Data structures leveraging RCU and atomic operations to provide efficient concurrency-aware storage
Version: @PACKAGE_VERSION@
Requires:
-Libs: -L${libdir} -lurcu-cds
+Libs: -L${libdir} -lurcu-common -lurcu-cds
Cflags: -I${includedir}
diff --git a/src/liburcu-mb.pc.in b/src/liburcu-mb.pc.in
index cd669ef..1684701 100644
--- a/src/liburcu-mb.pc.in
+++ b/src/liburcu-mb.pc.in
@@ -7,5 +7,5 @@ Name: Userspace RCU Memory barriers
Description: A userspace RCU (read-copy-update) library, memory barriers version
Version: @PACKAGE_VERSION@
Requires:
-Libs: -L${libdir} -lurcu-mb
+Libs: -L${libdir} -lurcu-common -lurcu-mb
Cflags: -I${includedir}
diff --git a/src/liburcu-qsbr.pc.in b/src/liburcu-qsbr.pc.in
index 0732602..d123a10 100644
--- a/src/liburcu-qsbr.pc.in
+++ b/src/liburcu-qsbr.pc.in
@@ -7,5 +7,5 @@ Name: Userspace RCU QSBR
Description: A userspace RCU (read-copy-update) library, quiescent state version
Version: @PACKAGE_VERSION@
Requires:
-Libs: -L${libdir} -lurcu-qsbr
+Libs: -L${libdir} -lurcu-common -lurcu-qsbr
Cflags: -I${includedir}
diff --git a/src/liburcu-signal.pc.in b/src/liburcu-signal.pc.in
index f9bc3a3..844c449 100644
--- a/src/liburcu-signal.pc.in
+++ b/src/liburcu-signal.pc.in
@@ -7,5 +7,5 @@ Name: Userspace RCU signal
Description: A userspace RCU (read-copy-update) library, signal version
Version: @PACKAGE_VERSION@
Requires:
-Libs: -L${libdir} -lurcu-signal
+Libs: -L${libdir} -lurcu-common -lurcu-signal
Cflags: -I${includedir}
diff --git a/src/liburcu.pc.in b/src/liburcu.pc.in
index 22bf2c8..b9f812b 100644
--- a/src/liburcu.pc.in
+++ b/src/liburcu.pc.in
@@ -7,5 +7,5 @@ Name: Userspace RCU
Description: A userspace RCU (read-copy-update) library, standard version
Version: @PACKAGE_VERSION@
Requires:
-Libs: -L${libdir} -lurcu
+Libs: -L${libdir} -lurcu-common -lurcu
Cflags: -I${includedir}
--
2.28.0
_______________________________________________
lttng-dev mailing list
lttng-dev@lists.lttng.org
https://lists.lttng.org/cgi-bin/mailman/listinfo/lttng-dev
next reply other threads:[~2020-10-30 19:40 UTC|newest]
Thread overview: 2+ messages / expand[flat|nested] mbox.gz Atom feed top
2020-10-30 19:39 Michael Jeanson via lttng-dev [this message]
2020-11-02 13:41 ` [lttng-dev] [PATCH urcu] fix: add -lurcu-common to pkg-config libs for each flavor Mathieu Desnoyers via lttng-dev
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=20201030193956.292208-1-mjeanson@efficios.com \
--to=lttng-dev@lists.lttng.org \
--cc=mjeanson@efficios.com \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for NNTP newsgroup(s).