0003-fix-static-link-uuid.patch
1.77 KB
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
configure: use pkg-config to find libuuid
In some conditions, libuuid may be linked with -lintl. This can be the
case on uClibc when locales are enabled.
When doing a shared link, this dependency is automatically pulled in via
a DT_NEEDED ELF tag
For a static link, there is no such mechanism to pull in dependent
libraries.
Currently, the check for libuuid is done with AC_CHECK_LIB, but this
does not handle dependencies, and thus a stattic build fails.
Use pkg-config to find libuuid, that automatically pulls in the
dependencies of libuuid, if any.
Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
---
Note: of course, that relies on the fact that libuuid installs a proper
.pc file; a patch will be submitted upstream shortly.
But even considering the current situation, where libuuid does not
provide a proper .pc file (yet), this patch does not change the
behaviour we've had so far; it is a bet on the future! ;-)
diff -durN parted-3.1.orig/configure.ac parted-3.1/configure.ac
--- parted-3.1.orig/configure.ac 2014-11-29 16:27:49.520560137 +0100
+++ parted-3.1/configure.ac 2014-11-29 16:32:50.799702049 +0100
@@ -313,16 +313,7 @@
AC_SUBST([DL_LIBS])
dnl Check for libuuid
-UUID_LIBS=""
-AC_CHECK_LIB([uuid], [uuid_generate], [UUID_LIBS="-luuid"],
- [AC_MSG_ERROR(dnl
-[GNU Parted requires libuuid - a part of the util-linux-ng package (but
-usually distributed separately in libuuid-devel, uuid-dev or similar)
-This can probably be found on your distribution's CD or FTP site or at:
- http://userweb.kernel.org/~kzak/util-linux-ng/
-Note: originally, libuuid was part of the e2fsprogs package. Later, it
-moved to util-linux-ng-2.16, and that package is now the preferred source.])])
-AC_SUBST([UUID_LIBS])
+PKG_CHECK_MODULES([UUID],[uuid])
dnl Check for libdevmapper
DM_LIBS=