8d7993654d
- libplist depends on libm and optionally on zlib and libiconv (via libxml2), so add a patch fixing the build-system that way - disable shared object build when BR2_PREFER_STATIC_LIB is set Fixes: http://autobuild.buildroot.net/results/9a3/9a364e3d91634a2da2bc481da1dee0ad0e870941/ Signed-off-by: Samuel Martin <s.martin49@gmail.com> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
49 lines
1.7 KiB
Diff
49 lines
1.7 KiB
Diff
From 49f7f7566ecd45ce87be07ac46bb27cf2abf9c3c Mon Sep 17 00:00:00 2001
|
|
From: Samuel Martin <s.martin49@gmail.com>
|
|
Date: Sun, 31 Aug 2014 10:08:47 +0200
|
|
Subject: [PATCH] cmake: make sure the libxml2 module correctly set all ldflags
|
|
in case of static link
|
|
|
|
libxml2 dependencies against zlib and libiconv are optional.
|
|
|
|
When executing a statically linked build, the default libxml2 CMake
|
|
module fails to get the libxml2 dependencies (both the required and
|
|
optional ones); so the link phase fails.
|
|
|
|
However, pkg-config correctly gives these dependencies, even for static
|
|
build. So, extend the libxml2 library list with what the pkg_check_modules
|
|
CMake primitive (which will uses pkg-config) found.
|
|
|
|
Signed-off-by: Samuel Martin <s.martin49@gmail.com>
|
|
---
|
|
cmake/modules/FindLibXml2.cmake | 13 +++++++++++++
|
|
1 file changed, 13 insertions(+)
|
|
|
|
diff --git a/cmake/modules/FindLibXml2.cmake b/cmake/modules/FindLibXml2.cmake
|
|
index 8d3c77e..19bc930 100644
|
|
--- a/cmake/modules/FindLibXml2.cmake
|
|
+++ b/cmake/modules/FindLibXml2.cmake
|
|
@@ -39,6 +39,19 @@ FIND_LIBRARY(LIBXML2_LIBRARIES NAMES xml2 libxml2
|
|
${PC_LIBXML_LIBRARY_DIRS}
|
|
)
|
|
|
|
+# Make sure we get all ldflags in case of static link
|
|
+IF(NOT BUILD_SHARED_LIBS)
|
|
+ FOREACH(_lib ${PC_LIBXML_STATIC_LIBRARIES})
|
|
+ STRING(TOUPPER ${_lib} _Ulib)
|
|
+ FIND_LIBRARY(_${_Ulib}_LIBRARIES NAMES ${_lib} lib${_lib}
|
|
+ HINTS
|
|
+ ${PC_LIBXML_LIBDIR}
|
|
+ ${PC_LIBXML_LIBRARY_DIRS}
|
|
+ )
|
|
+ LIST(APPEND LIBXML2_LIBRARIES ${_${_Ulib}_LIBRARIES})
|
|
+ ENDFOREACH()
|
|
+ENDIF(NOT BUILD_SHARED_LIBS)
|
|
+
|
|
FIND_PROGRAM(LIBXML2_XMLLINT_EXECUTABLE xmllint)
|
|
# for backwards compat. with KDE 4.0.x:
|
|
SET(XMLLINT_EXECUTABLE "${LIBXML2_XMLLINT_EXECUTABLE}")
|
|
--
|
|
2.1.0
|
|
|