Skip to contentSkip to conversation

e2fsprogs: fix static build against external libblkid

PATCH New Baruch Siach 2 participants 4 messages Jun 11, 2014

lore
Share & tools
lore
#0 lore raw

PATCH 1/1 e2fsprogs: fix static build against external libblkid

Fixes:
http://autobuild.buildroot.net/results/0159246b52659508a4bbba4126ab27b28a2b2e2c/

---
 ...n-fix-external-libblkid-test-for-static-l.patch | 34 ++++++++++++++++++++++
 1 file changed, 34 insertions(+)
 create mode 100644 package/e2fsprogs/e2fsprogs-0004-configure.in-fix-external-libblkid-test-for-static-l.patch
package/e2fsprogs/e2fsprogs-0004-configure.in-fix-external-libblkid-test-for-static-l.patch new file +34 -0
new file mode 100644
index 000000000000..65d6c4c024bc
@@ -0,0 +1,34 @@
+From b52e76432fe23490b891884f3a66504101c2a5bd Mon Sep 17 00:00:00 2001
+Message-Id: <b52e76432fe23490b891884f3a66504101c2a5bd.1402480818.git.baruch@tkos.co.il>
+From: Baruch Siach <[email protected]>
+Date: Wed, 11 Jun 2014 12:56:15 +0300
+Subject: [PATCH] configure.in: fix external libblkid test for static link
+
+External libblkid needs -luuid when linking statically. Use pkg-config to
+determine it correctly. Adding --static doesn't hurt even for dynamic
+linking.
+
+Signed-off-by: Baruch Siach <[email protected]>
+---
+
+Patch status: sent upstream: http://patchwork.ozlabs.org/patch/358584/
+
+ configure.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.in b/configure.in
+index 448a2926776a..ec6068320878 100644
+--- a/configure.in
++++ b/configure.in
+@@ -551,7 +551,7 @@ then
+ 		[LIBBLKID=`$PKG_CONFIG --libs blkid`;
+ 		 STATIC_LIBBLKID=`$PKG_CONFIG --static --libs blkid`],
+ 		[AC_MSG_ERROR([external blkid library not found])],
+-		[$LIBBLKID])
++		[`$PKG_CONFIG --static --libs blkid`])
+ 	BLKID_CMT=#
+ 	AC_MSG_RESULT([Disabling private blkid library])
+ else
+-- 
+2.0.0
+
Signature · 1 line
2.0.0
#1 lore raw

PATCH 1/1 e2fsprogs: fix static build against external libblkid

Quoted 35 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Baruch" == Baruch Siach <[email protected]> writes:

Fixes:
http://autobuild.buildroot.net/results/0159246b52659508a4bbba4126ab27b28a2b2e2c/

---
 ...n-fix-external-libblkid-test-for-static-l.patch | 34 ++++++++++++++++++++++
 1 file changed, 34 insertions(+)
 create mode 100644 package/e2fsprogs/e2fsprogs-0004-configure.in-fix-external-libblkid-test-for-static-l.patch
package/e2fsprogs/e2fsprogs-0004-configure.in-fix-external-libblkid-test-for-static-l.patch new file +18 -0
new file mode 100644
index 000000000000..65d6c4c024bc
@@ -0,0 +1,34 @@
+From b52e76432fe23490b891884f3a66504101c2a5bd Mon Sep 17 00:00:00 2001
+Message-Id: <b52e76432fe23490b891884f3a66504101c2a5bd.1402480818.git.baruch@tkos.co.il>
+From: Baruch Siach <[email protected]>
+Date: Wed, 11 Jun 2014 12:56:15 +0300
+Subject: [PATCH] configure.in: fix external libblkid test for static link
+
+External libblkid needs -luuid when linking statically. Use pkg-config to
+determine it correctly. Adding --static doesn't hurt even for dynamic
+linking.
+
+Signed-off-by: Baruch Siach <[email protected]>
+---
+
+Patch status: sent upstream: http://patchwork.ozlabs.org/patch/358584/
+
+ configure.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+

package/e2fsprogs/e2fsprogs-0004-configure.in-fix-external-libblkid-test-for-static-l.patch line 28

Quoted 10 lines
package/e2fsprogs/e2fsprogs-0004-configure.in-fix-external-libblkid-test-for-static-l.patch new file +10 -0
+diff --git a/configure.in b/configure.in
+index 448a2926776a..ec6068320878 100644
+--- a/configure.in
++++ b/configure.in
+@@ -551,7 +551,7 @@ then
+ 		[LIBBLKID=`$PKG_CONFIG --libs blkid`;
+ 		 STATIC_LIBBLKID=`$PKG_CONFIG --static --libs blkid`],
+ 		[AC_MSG_ERROR([external blkid library not found])],
+-		[$LIBBLKID])
++		[`$PKG_CONFIG --static --libs blkid`])

Why not '[$STATIC_LIBBLKID])' instead of rerunning pkg-config?

Signature · 1 line
Bye, Peter Korsgaard
#2 lore raw

PATCH 1/1 e2fsprogs: fix static build against external libblkid

Hi Peter,

Quoted 39 lines · Peter Korsgaard
Quoted 39 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Baruch" == Baruch Siach <[email protected]> writes:

Fixes:
http://autobuild.buildroot.net/results/0159246b52659508a4bbba4126ab27b28a2b2e2c/

---
 ...n-fix-external-libblkid-test-for-static-l.patch | 34 ++++++++++++++++++++++
 1 file changed, 34 insertions(+)
 create mode 100644 package/e2fsprogs/e2fsprogs-0004-configure.in-fix-external-libblkid-test-for-static-l.patch
package/e2fsprogs/e2fsprogs-0004-configure.in-fix-external-libblkid-test-for-static-l.patch new file +22 -0
new file mode 100644
index 000000000000..65d6c4c024bc
@@ -0,0 +1,34 @@
+From b52e76432fe23490b891884f3a66504101c2a5bd Mon Sep 17 00:00:00 2001
+Message-Id: <b52e76432fe23490b891884f3a66504101c2a5bd.1402480818.git.baruch@tkos.co.il>
+From: Baruch Siach <[email protected]>
+Date: Wed, 11 Jun 2014 12:56:15 +0300
+Subject: [PATCH] configure.in: fix external libblkid test for static link
+
+External libblkid needs -luuid when linking statically. Use pkg-config to
+determine it correctly. Adding --static doesn't hurt even for dynamic
+linking.
+
+Signed-off-by: Baruch Siach <[email protected]>
+---
+
+Patch status: sent upstream: http://patchwork.ozlabs.org/patch/358584/
+
+ configure.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.in b/configure.in
+index 448a2926776a..ec6068320878 100644
+--- a/configure.in
++++ b/configure.in
Quoted 8 lines

package/e2fsprogs/e2fsprogs-0004-configure.in-fix-external-libblkid-test-for-static-l.patch line 28

Quoted 6 lines
package/e2fsprogs/e2fsprogs-0004-configure.in-fix-external-libblkid-test-for-static-l.patch new file +6 -0
+@@ -551,7 +551,7 @@ then
+ 		[LIBBLKID=`$PKG_CONFIG --libs blkid`;
+ 		 STATIC_LIBBLKID=`$PKG_CONFIG --static --libs blkid`],
+ 		[AC_MSG_ERROR([external blkid library not found])],
+-		[$LIBBLKID])
++		[`$PKG_CONFIG --static --libs blkid`])

Why not '[$STATIC_LIBBLKID])' instead of rerunning pkg-config?

Quoting the autoconf manual:

AC_CHECK_LIB (LIBRARY, FUNCTION, [ACTION-IF-FOUND],
[ACTION-IF-NOT-FOUND], [OTHER-LIBRARIES])

So, if I understand correctly, $STATIC_LIBBLKID in [ACTION-IF-FOUND] gets defined only after the test has run successfully.

baruch

Signature · 3 lines
     http://baruch.siach.name/blog/                  ~. .~   Tk Open Systems
=}------------------------------------------------ooO--U--Ooo------------{=
   - baruch at tkos.co.il - tel: +972.2.679.5364, http://www.tkos.co.il -
#3 lore raw

PATCH 1/1 e2fsprogs: fix static build against external libblkid

Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line

"Baruch" == Baruch Siach <[email protected]> writes:

Hi,

Quoted 18 lines
Quoted 9 lines
Quoted 9 lines
package/e2fsprogs/e2fsprogs-0004-configure.in-fix-external-libblkid-test-for-static-l.patch new file +9 -0
+Patch status: sent upstream: http://patchwork.ozlabs.org/patch/358584/
+
+ configure.in | 2 +-
+ 1 file changed, 1 insertion(+), 1 deletion(-)
+
+diff --git a/configure.in b/configure.in
+index 448a2926776a..ec6068320878 100644
+--- a/configure.in
++++ b/configure.in
Quoted 8 lines

package/e2fsprogs/e2fsprogs-0004-configure.in-fix-external-libblkid-test-for-static-l.patch line 28

Quoted 6 lines

+@@ -551,7 +551,7 @@ then

package/e2fsprogs/e2fsprogs-0004-configure.in-fix-external-libblkid-test-for-static-l.patch new file +5 -0
+ 		[LIBBLKID=`$PKG_CONFIG --libs blkid`;
+ 		 STATIC_LIBBLKID=`$PKG_CONFIG --static --libs blkid`],
+ 		[AC_MSG_ERROR([external blkid library not found])],
+-		[$LIBBLKID])
++		[`$PKG_CONFIG --static --libs blkid`])

Why not '[$STATIC_LIBBLKID])' instead of rerunning pkg-config?

Quoted 7 lines

Quoting the autoconf manual:

AC_CHECK_LIB (LIBRARY, FUNCTION, [ACTION-IF-FOUND],
[ACTION-IF-NOT-FOUND], [OTHER-LIBRARIES])

So, if I understand correctly, $STATIC_LIBBLKID in [ACTION-IF-FOUND] gets defined only after the test has run successfully.

Sorry, you're right - I misread the patch. It should arguably still pass $LIBBLKID so the user can pass extra libraries, but looking at the configure script I see it clears it just above, so it cannot be used anyway.

Committed, thanks.

Signature · 1 line
Bye, Peter Korsgaard