package/xmlstarlet: fix host build
PATCH v2 1/1 package/xmlstarlet: fix host build
Provide the path to HOST_DIR for libxml, libxslt and libiconv like for the target variant to avoid a build issue on host where /bin is a symlink to /usr/bin.
Indeed, the configure script use a custom m4 macro XSTAR_LIB_CHECK to find xml2-config:
XSTAR_LIB_CHECK([LIBXML], [xml2-config])
This macro come from a local m4 file m4/xstar-check-libs.m4 where it use:
AC_PATH_PROG(LIBXXX()_CONFIG, xxx_config(),
[], [$LIBXXX()_PREFIX/bin$PATH_SEPARATOR$PATH]
Since no prefix seems to be defined by $LIBXXX()_PREFIX, AC_PATH_PROG look by itself at /bin/ for xml2-config. So the PATH variable set by Buildroot containing HOST_DIR/bin is ignored.
The wrong xml2-config is used during the build and the build fail when no xml2 headers are installed on the host.
Fixes:src/xml_C14N.c:12:31: erreur fatale?: libxml/xmlversion.h : No such file or directory
#include <libxml/xmlversion.h>
^In file included from src/trans.c:4:0:src/trans.h:32:30: erreur fatale?: libxml/xmlmemory.h : No such file or directory
#include <libxml/xmlmemory.h>
---
v2: improve the commit message (ThomasP)
--- package/xmlstarlet/xmlstarlet.mk | 5 +++++ 1 file changed, 5 insertions(+)
package/xmlstarlet/xmlstarlet.mk +5 -0
@@ -26,5 +26,10 @@ endif HOST_XMLSTARLET_DEPENDENCIES += host-libxml2 host-libxslt +HOST_XMLSTARLET_CONF_OPTS += \ + --with-libxml-prefix=$(HOST_DIR)/usr \ + --with-libxslt-prefix=$(HOST_DIR)/usr \ + --with-libiconv-prefix=$(HOST_DIR)/usr + $(eval $(autotools-package)) $(eval $(host-autotools-package))
Signature · 1 line
2.9.5
PATCH v2 1/1 package/xmlstarlet: fix host build
Hello,
Quoted 7 lines · Romain Naour
Fixes:
src/xml_C14N.c:12:31: erreur fatale?:libxml/xmlversion.h: No such file or directory#include <libxml/xmlversion.h> ^In file included from
src/trans.c:4:0:src/trans.h:32:30: erreur fatale?:libxml/xmlmemory.h: No such file or directory
#include <libxml/xmlmemory.h>
Still some french messages here, so I've fixed that.
package/xmlstarlet/xmlstarlet.mk endif · line 32
Quoted 4 lines
package/xmlstarlet/xmlstarlet.mk +4
-0+HOST_XMLSTARLET_CONF_OPTS += \ + --with-libxml-prefix=$(HOST_DIR)/usr \ + --with-libxslt-prefix=$(HOST_DIR)/usr \ + --with-libiconv-prefix=$(HOST_DIR)/usr
The last option is not needed, we don't have libiconv on the host.
Committed with those issues fixed. Thanks!
Thomas
Signature · 3 lines
Thomas Petazzoni, CTO, Free Electrons Embedded Linux and Kernel engineering http://free-electrons.com
PATCH v2 1/1 package/xmlstarlet: fix host build
In reply to Romain NaourQuoted 28 lines
Quoted 1 line
Quoted 1 line
Quoted 1 line
Quoted 1 line
"Romain" == Romain Naour <[email protected]> writes:
Provide the path to
HOST_DIRfor libxml, libxslt and libiconv like for the target variant to avoid a build issue on host where /bin is a symlink to/usr/bin.Indeed, the configure script use a custom m4 macro
XSTAR_LIB_CHECKto find xml2-config:
XSTAR_LIB_CHECK([LIBXML], [xml2-config])This macro come from a local m4 file m4/xstar-check-libs.m4 where it use:
AC_PATH_PROG(LIBXXX()_CONFIG,
xxx_config(),[], [$LIBXXX()_PREFIX/bin$PATH_SEPARATOR$PATH]Since no prefix seems to be defined by $LIBXXX()_PREFIX,
AC_PATH_PROGlook by itself at/bin/for xml2-config. So the PATH variable set by Buildroot containing HOST_DIR/bin is ignored.The wrong xml2-config is used during the build and the build fail when no xml2 headers are installed on the host.
Fixes:
src/xml_C14N.c:12:31: erreur fatale?:libxml/xmlversion.h: No such file or directory#include <libxml/xmlversion.h> ^
Quoted 8 lines
In file included from
src/trans.c:4:0:src/trans.h:32:30: erreur fatale?:libxml/xmlmemory.h: No such file or directory
#include <libxml/xmlmemory.h>Signed-off-by Romain Naour <[email protected]>Cc Bernd Kuhls <[email protected]>---
v2: improve the commit message (ThomasP)
Committed to 2017.08.x, thanks.
Signature · 1 line
Bye, Peter Korsgaard