<div dir="ltr"><div dir="ltr"><div class="gmail_default" style="font-family:monospace,monospace"><span style="font-family:Arial,Helvetica,sans-serif">On Fri, 19 Feb 2021 at 19:20, Mathieu Desnoyers <<a href="mailto:mathieu.desnoyers@efficios.com">mathieu.desnoyers@efficios.com</a>> wrote:</span><br></div></div><div class="gmail_quote"><div class="gmail_default" style="font-family:monospace,monospace">[..]</div><blockquote class="gmail_quote" style="margin:0px 0px 0px 0.8ex;border-left:1px solid rgb(204,204,204);padding-left:1ex">Good to know. This does not provide any clarification on your build environment<br>
though (see my request above). Therefore we cannot attempt to reproduce on our side yet.<br></blockquote><div><br></div><div class="gmail_default" style="font-family:monospace,monospace">I'm building on top of my own distribution which is quite close to fedora rawhide (with tons of fixes) however before starting actual build I'm regenerating all ac/am/lt files using "autoreconf -fiv" because I'm patching <a href="http://configiure.ac">configiure.ac</a> and some Makefile.am files.</div><div class="gmail_default" style="font-family:monospace,monospace">I need that because 1.2.2 has underlinkig issues.</div><div class="gmail_default" style="font-family:monospace,monospace">Here is the patch which fixes underlinking:</div><div class="gmail_default" style="font-family:monospace,monospace">```</div><div class="gmail_default" style="font-family:monospace,monospace">--- a/src/Makefile.am~ 2021-02-17 19:52:04.000000000 +0000<br>+++ b/src/Makefile.am 2021-02-18 01:19:04.366349148 +0000<br>@@ -34,7 +34,7 @@<br><br> liburcu_la_SOURCES = urcu.c urcu-pointer.c $(COMPAT)<br> liburcu_la_CFLAGS = -DRCU_MEMBARRIER $(AM_CFLAGS)<br>-liburcu_la_LIBADD = <a href="http://liburcu-common.la">liburcu-common.la</a><br>+liburcu_la_LIBADD = <a href="http://liburcu-common.la">liburcu-common.la</a> $(PTHREAD_LIBS)<br><br> liburcu_memb_la_SOURCES = urcu.c urcu-pointer.c $(COMPAT)<br> liburcu_memb_la_CFLAGS = -DRCU_MEMBARRIER $(AM_CFLAGS)<br>@@ -42,22 +42,22 @@<br><br> liburcu_qsbr_la_SOURCES = urcu-qsbr.c urcu-pointer.c $(COMPAT)<br> liburcu_qsbr_la_CFLAGS = -DRCU_QSBR $(AM_CFLAGS)<br>-liburcu_qsbr_la_LIBADD = <a href="http://liburcu-common.la">liburcu-common.la</a><br>+liburcu_qsbr_la_LIBADD = <a href="http://liburcu-common.la">liburcu-common.la</a> $(PTHREAD_LIBS)<br><br> liburcu_mb_la_SOURCES = urcu.c urcu-pointer.c $(COMPAT)<br> liburcu_mb_la_CFLAGS = -DRCU_MB $(AM_CFLAGS)<br>-liburcu_mb_la_LIBADD = <a href="http://liburcu-common.la">liburcu-common.la</a><br>+liburcu_mb_la_LIBADD = <a href="http://liburcu-common.la">liburcu-common.la</a> $(PTHREAD_LIBS)<br><br> liburcu_signal_la_SOURCES = urcu.c urcu-pointer.c $(COMPAT)<br> liburcu_signal_la_CFLAGS = -DRCU_SIGNAL $(AM_CFLAGS)<br>-liburcu_signal_la_LIBADD = <a href="http://liburcu-common.la">liburcu-common.la</a><br>+liburcu_signal_la_LIBADD = <a href="http://liburcu-common.la">liburcu-common.la</a> $(PTHREAD_LIBS)<br><br> liburcu_bp_la_SOURCES = urcu-bp.c urcu-pointer.c $(COMPAT)<br>-liburcu_bp_la_LIBADD = <a href="http://liburcu-common.la">liburcu-common.la</a><br>+liburcu_bp_la_LIBADD = <a href="http://liburcu-common.la">liburcu-common.la</a> $(PTHREAD_LIBS)<br><br> liburcu_cds_la_SOURCES = rculfqueue.c rculfstack.c lfstack.c \<br> workqueue.c workqueue.h $(RCULFHASH) $(COMPAT)<br>-liburcu_cds_la_LIBADD = <a href="http://liburcu-common.la">liburcu-common.la</a><br>+liburcu_cds_la_LIBADD = <a href="http://liburcu-common.la">liburcu-common.la</a> $(PTHREAD_LIBS)<br><br> pkgconfigdir = $(libdir)/pkgconfig<br> pkgconfig_DATA = liburcu-cds.pc liburcu.pc liburcu-bp.pc liburcu-qsbr.pc \<br></div><div class="gmail_default" style="font-family:monospace,monospace">```</div><div class="gmail_default" style="font-family:monospace,monospace">Without that patch build fails on:</div><div class="gmail_default" style="font-family:monospace,monospace">```</div><div class="gmail_default" style="font-family:monospace,monospace">make[5]: Entering directory '/home/tkloczko/rpmbuild/BUILD/userspace-rcu-0.12.2/doc/examples/hlist'<br>+ /usr/bin/gcc -g -O2 -Wall -O2 -g -grecord-gcc-switches -pipe -Wall -Werror=format-security -Wp,-D_FORTIFY_SOURCE=2 -Wp,-D_GLIBCXX_ASSERTIONS -specs=/usr/lib/rpm/redhat/redhat-hardened-cc1 -fstack-protector-strong -specs=/usr/lib/rpm/redhat/redhat-annobin-cc1 -m64 -mtune=generic -fasynchronous-unwind-tables -fstack-clash-protection -fcf-protection -fdata-sections -ffunction-sections -flto=auto -flto-partition=none -L../../../src/.libs/ -Wl,-rpath /home/tkloczko/rpmbuild/BUILD/userspace-rcu-0.12.2/doc/examples/../../src/.libs/ -Wl,-z,relro -Wl,--as-needed -Wl,--gc-sections -Wl,-z,now -specs=/usr/lib/rpm/redhat/redhat-hardened-ld -flto=auto -flto-partition=none -fuse-linker-plugin -o cds_hlist_add_head_rcu cds_hlist_add_head_rcu.o -lurcu<br>/usr/bin/ld: ../../../src/.libs//liburcu.so: undefined reference to `pthread_join'<br>/usr/bin/ld: ../../../src/.libs//liburcu.so: undefined reference to `pthread_create'<br>collect2: error: ld returned 1 exit status</div><div class="gmail_default" style="font-family:monospace,monospace">```<br></div><div class="gmail_default" style="font-family:monospace,monospace"><br></div><div class="gmail_default" style="font-family:monospace,monospace">I must apologise. I made small mistake in my other patch which removes from <a href="http://configiure.ac">configiure.ac</a> amd all Makefile.am files hadcoding all -W<foo> and -g flags (I want to control such things completely from outside the build framework over CFLAGS and other env variables).</div><div class="gmail_default" style="font-family:monospace,monospace"><br></div><div class="gmail_default" style="font-family:monospace,monospace">After fixing that patch looks like 1.2.2 builds correctly however that underlinking issue is real.</div><div class="gmail_default" style="font-family:monospace,monospace"><br></div><div class="gmail_default" style="font-family:monospace,monospace">One more time sorry .. kind of my fault :/</div><div class="gmail_default" style="font-family:monospace,monospace"><br></div><div class="gmail_default" style="font-family:monospace,monospace">kloczek</div><div><div dir="ltr" class="gmail_signature"><div dir="ltr"><div dir="ltr"><font face="monospace, monospace">-- </font></div></div></div></div><div class="gmail_default" style="font-family:monospace,monospace">Tomasz Kłoczko | LinkedIn: <span style="text-decoration-line:underline;font-size:13px;background-color:transparent;vertical-align:baseline;white-space:pre-wrap"><a href="http://lnkd.in/FXPWxH" target="_blank" style="text-decoration-line:none">http://lnkd.in/FXPWxH</a></span></div></div></div>