浏览代码

sylpheed: Fix includedir

The sylpheed headers are installed to $(DESTDIR)$(includedir),
while DESTDIR is $(TARGET_DIR) and includedir is set to
$(STAGING_DIR)/usr/include in the SYLPHEED_CONF_OPT.
Thus, the full staging directory path is created in the
target root filesystem, which is wrong.

The includedir was set to staging include because sylpheed
incorrectly adds includedir to its include path, and does
not cross-compile with the default includedir set to
/usr/include.

This removes includedir setting and also removes it from
include paths in Makefiles to prevent using host headers
from /usr/include. The same approach is used in the OE.

Signed-off-by: Valentine Barshak <gvaxon@gmail.com>
Acked-by: Arnout Vandecappelle (Essensium/Mind) <arnout@mind.be>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Valentine Barshak 13 年之前
父节点
当前提交
0e572092a9
共有 1 个文件被更改,包括 11 次插入2 次删除
  1. 11 2
      package/sylpheed/sylpheed.mk

+ 11 - 2
package/sylpheed/sylpheed.mk

@@ -9,11 +9,20 @@ SYLPHEED_VERSION = $(SYLPHEED_VERSION_MAJOR).$(SYLPHEED_VERSION_MINOR)
 SYLPHEED_SOURCE = sylpheed-$(SYLPHEED_VERSION).tar.bz2
 SYLPHEED_SITE = http://sylpheed.sraoss.jp/sylpheed/v$(SYLPHEED_VERSION_MAJOR)
 
-SYLPHEED_CONF_OPT = --disable-gtkspell \
-                    --includedir=$(STAGING_DIR)/usr/include
+SYLPHEED_CONF_OPT = --disable-gtkspell
 
 SYLPHEED_DEPENDENCIES = host-pkg-config libgtk2
 
+# Remove the -I$(includedir) from the Makefiles
+# because it refers to the host /usr/include.
+define SYLPHEED_PRECONFIGURE
+	for i in $$(find $(@D) -name "Makefile*"); do \
+		sed -i 's:-I$$(includedir)::g' $$i; \
+	done
+endef
+
+SYLPHEED_PRE_CONFIGURE_HOOKS += SYLPHEED_PRECONFIGURE
+
 ifeq ($(BR2_PACKAGE_OPENSSL),y)
 SYLPHEED_DEPENDENCIES += openssl
 SYLPHEED_CONF_OPT += --enable-ssl