1From d079cac1110cc2761417f0dcb0a142b217eb1eda Mon Sep 17 00:00:00 2001 2From: Fabrice Fontaine <fontaine.fabrice@gmail.com> 3Date: Fri, 31 Jan 2020 20:26:29 +0100 4Subject: [PATCH] Add libmagic.pc 5 6libmagic can optionally depends on xz (for lzma) or bzip2 since version 75.38 and 8https://github.com/file/file/commit/b259a07ea95827f565faa20f0316e5b2704064f7 9so add libmagic.pc so package (such as gerbera) that links with libmagic 10will be able to use pkg-config to retrieve those static dependencies 11For example, this will avoid the following build failure: 12 13[100%] Linking CXX executable gerbera 14/home/br-user/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: /home/br-user/autobuild/run/instance-0/output-1/host/arm-buildroot-linux-uclibcgnueabi/sysroot/usr/lib/libmagic.a(compress.o): in function `uncompressbuf': 15compress.c:(.text+0x69c): undefined reference to `BZ2_bzDecompressInit' 16/home/br-user/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: compress.c:(.text+0x710): undefined reference to `BZ2_bzDecompress' 17/home/br-user/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: compress.c:(.text+0x730): undefined reference to `BZ2_bzDecompressEnd' 18/home/br-user/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: compress.c:(.text+0x7bc): undefined reference to `lzma_auto_decoder' 19/home/br-user/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: compress.c:(.text+0x828): undefined reference to `lzma_code' 20/home/br-user/autobuild/run/instance-0/output-1/host/opt/ext-toolchain/bin/../lib/gcc/arm-buildroot-linux-uclibcgnueabi/8.3.0/../../../../arm-buildroot-linux-uclibcgnueabi/bin/ld: compress.c:(.text+0x848): undefined reference to `lzma_end' 21 22Fixes: 23 - http://autobuild.buildroot.org/results/37b1ef54dc41100689f311fbc31fc9300dc6ae63 24 25Signed-off-by: Fabrice Fontaine <fontaine.fabrice@gmail.com> 26[Upstream status: https://bugs.astron.com/view.php?id=136] 27--- 28 Makefile.am | 5 +++++ 29 configure.ac | 2 +- 30 libmagic.pc.in | 10 ++++++++++ 31 3 files changed, 16 insertions(+), 1 deletion(-) 32 create mode 100644 libmagic.pc.in 33 34diff --git a/Makefile.am b/Makefile.am 35index 8bd927d9..2ab67ed7 100644 36--- a/Makefile.am 37+++ b/Makefile.am 38@@ -3,3 +3,8 @@ ACLOCAL_AMFLAGS = -I m4 39 EXTRA_DIST = MAINT 40 41 SUBDIRS = src magic tests doc python 42+ 43+# This variable must have 'exec' in its name, in order to be installed 44+# by 'install-exec' target (instead of default 'install-data') 45+pkgconfigexecdir = $(libdir)/pkgconfig 46+pkgconfigexec_DATA = libmagic.pc 47diff --git a/configure.ac b/configure.ac 48index ac37fccd..b2e2e5b8 100644 49--- a/configure.ac 50+++ b/configure.ac 51@@ -217,5 +217,5 @@ if test "$ac_cv_header_lzma_h$ac_cv_lib_lzma_lzma_stream_decoder" = "yesyes"; t 52 AC_DEFINE([XZLIBSUPPORT], 1, [Enable xzlib compression support]) 53 fi 54 55-AC_CONFIG_FILES([Makefile src/Makefile magic/Makefile tests/Makefile doc/Makefile python/Makefile]) 56+AC_CONFIG_FILES([Makefile src/Makefile magic/Makefile tests/Makefile doc/Makefile python/Makefile libmagic.pc]) 57 AC_OUTPUT 58diff --git a/libmagic.pc.in b/libmagic.pc.in 59new file mode 100644 60index 00000000..3ad1290b 61--- /dev/null 62+++ b/libmagic.pc.in 63@@ -0,0 +1,10 @@ 64+prefix=@prefix@ 65+exec_prefix=@exec_prefix@ 66+libdir=@libdir@ 67+includedir=@includedir@ 68+ 69+Name: libmagic 70+Description: Magic number recognition library 71+Version: @VERSION@ 72+Libs: -L${libdir} -lmagic 73+Libs.private: @LIBS@ 74-- 752.24.1 76 77