소스 검색

xerces: fix dependency on iconv

All "select BR2_PACKAGE_LIBICONV" must use the "if !BR2_ENABLE_LOCALE"
condition, otherwise we can end up with a toolchain suppoting locales
*and* the libiconv package being compiled, which confuses other
packages. Example with glib:

gconvert.c:52:2: error: #error GNU libiconv in use but included
iconv.h not from libiconv

In addition to that, in xerces.mk, we add the dependency on libiconv
when it is available, to make sure it gets compiled before xerces.

Signed-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com>
Thomas Petazzoni 15 년 전
부모
커밋
aad29b55a8
2개의 변경된 파일2개의 추가작업 그리고 2개의 파일을 삭제
  1. 1 1
      package/xerces/Config.in
  2. 1 1
      package/xerces/xerces.mk

+ 1 - 1
package/xerces/Config.in

@@ -1,7 +1,7 @@
 config BR2_PACKAGE_XERCES
 	bool "xerces-c++"
 	depends on BR2_INSTALL_LIBSTDCPP
-	select BR2_PACKAGE_LIBICONV
+	select BR2_PACKAGE_LIBICONV if !BR2_ENABLE_LOCALE
 	help
 	  Xerces-C++ is a validating XML parser written in portable C++.
 

+ 1 - 1
package/xerces/xerces.mk

@@ -87,7 +87,7 @@ $(TARGET_DIR)/usr/lib/$(LIBXERCES_BINARY): $(STAGING_DIR)/usr/lib/$(LIBXERCES_BI
 	cp -a $(STAGING_DIR)/usr/lib/$(LIBXERCES_BINARY)* $(TARGET_DIR)/usr/lib
 	$(STRIPCMD) $(STRIP_STRIP_UNNEEDED) $(TARGET_DIR)/usr/lib/$(LIBXERCES_BINARY)
 
-xerces: $(TARGET_DIR)/usr/lib/$(LIBXERCES_BINARY)
+xerces: $(if $(BR2_PACKAGE_LIBICONV),libiconv) $(TARGET_DIR)/usr/lib/$(LIBXERCES_BINARY)
 
 xerces-bin: $(XERCES_DIR)/usr/lib/$(LIBXERCES_BINARY)