sylpheed: Fix includedir
PATCH v2 1/1 sylpheed: Fix includedir
The sylpheed headers are installed to the target directory, creating full staging directory path in the target rootfs, which is wrong.
This happens because the 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.
The includedir was set to staging include because sylpheed incorrectly adds includedir to its include path, and does not build with the default includedir set to /usr/include in the target filesystem.
This removes includedir setting and also removes it from include paths in Makefiles. The same approach is used in the OE.
--- package/sylpheed/sylpheed.mk | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-)
package/sylpheed/sylpheed.mk +9 -2
@@ -9,11 +9,18 @@ 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 +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
Signature · 1 line
1.7.11.4
PATCH v2 1/1 sylpheed: Fix includedir
Quoted 13 lines · Valentine Barshak
The sylpheed headers are installed to the target directory, creating full staging directory path in the target rootfs, which is wrong.
This happens because the headers are installed to $(DESTDIR)$(includedir), while DESTDIR is $(TARGET_DIR) and includedir is set to $(STAGING_DIR)/usr/include in theSYLPHEED_CONF_OPT.The includedir was set to staging include because sylpheed incorrectly adds includedir to its include path, and does not build with the default includedir set to
/usr/includein the target filesystem.
Quoted 5 lines
This removes includedir setting and also removes it from include paths in Makefiles. The same approach is used in the OE.
Signed-off-by Valentine Barshak<[email protected]>
with a small addition:
Quoted 13 lines
--- package/sylpheed/sylpheed.mk | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-)package/sylpheed/sylpheed.mk +0
-1@@ -9,11 +9,18 @@ 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 \
package/sylpheed/sylpheed.mk SYLPHEED_VERSION = $(SYLPHEED_VERSION_MAJOR).$(SYLPHEED_VERSION_MINOR) · line 20
Quoted 10 lines
package/sylpheed/sylpheed.mk +6
-1- --includedir=$(STAGING_DIR)/usr/include +SYLPHEED_CONF_OPT = --disable-gtkspell SYLPHEED_DEPENDENCIES = host-pkg-config libgtk2 +define SYLPHEED_PRECONFIGURE + for i in $$(find $(@D) -name "Makefile*"); do \ + sed -i 's:-I$$(includedir)::g' $$i; \ + done +endef
Put a small explanatory comment here, e.g.:
# Remove the -I$(includedir) from the Makefile, because it would
# refer to the host's /usr/include.
Regards,
Arnout
Quoted 6 lines
package/sylpheed/sylpheed.mk +3
-0+ +SYLPHEED_PRE_CONFIGURE_HOOKS += SYLPHEED_PRECONFIGURE + ifeq ($(BR2_PACKAGE_OPENSSL),y) SYLPHEED_DEPENDENCIES += openssl SYLPHEED_CONF_OPT += --enable-ssl
Signature · 6 lines
Arnout Vandecappelle arnout at mind be Senior Embedded Software Architect +32-16-286540 Essensium/Mind http://www.mind.be G.Geenslaan 9, 3001 Leuven, Belgium BE 872 984 063 RPR Leuven LinkedIn profile: http://www.linkedin.com/in/arnoutvandecappelle GPG fingerprint: 7CB5 E4CC 6C2E EFD4 6E3D A754 F963 ECAB 2450 2F1F
PATCH v2 1/1 sylpheed: Fix includedir
Quoted 52 lines · Arnout Vandecappelle
Quoted 13 lines · Valentine Barshak
The sylpheed headers are installed to the target directory, creating full staging directory path in the target rootfs, which is wrong.
This happens because the headers are installed to $(DESTDIR)$(includedir), while DESTDIR is $(TARGET_DIR) and includedir is set to $(STAGING_DIR)/usr/include in theSYLPHEED_CONF_OPT.The includedir was set to staging include because sylpheed incorrectly adds includedir to its include path, and does not build with the default includedir set to
/usr/includein the target filesystem.Quoted 5 lines
This removes includedir setting and also removes it from include paths in Makefiles. The same approach is used in the OE.
Signed-off-by Valentine Barshak<[email protected]>with a small addition:
Quoted 15 lines
--- package/sylpheed/sylpheed.mk | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-)package/sylpheed/sylpheed.mk +0
-1@@ -9,11 +9,18 @@ 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 \package/sylpheed/sylpheed.mk SYLPHEED_VERSION = · line 22
Quoted 10 lines
package/sylpheed/sylpheed.mk +6
-1- --includedir=$(STAGING_DIR)/usr/include +SYLPHEED_CONF_OPT = --disable-gtkspell SYLPHEED_DEPENDENCIES = host-pkg-config libgtk2 +define SYLPHEED_PRECONFIGURE + for i in $$(find $(@D) -name "Makefile*"); do \ + sed -i 's:-I$$(includedir)::g' $$i; \ + done +endefPut a small explanatory comment here, e.g.:
Quoted 4 lines
# Remove the -I$(includedir) from the
Makefile, because it would# refer to the host's /usr/include.
Thanks!
I've added the comment and slightly modified the commit log. Will send v3 in a bit.
Thanks,
Val.
Quoted 2 lines
Regards,
Arnout