From 8e15cc9ede33470d28100160be53ca0251440c77 Mon Sep 17 00:00:00 2001 From: Abdoulaye Walsimou Gaye Date: Tue, 8 Dec 2009 00:30:21 +0100 Subject: Rootfs: freetype: Rework freetype build by installing it in sysroot and creating clean target Signed-off-by: Abdoulaye Walsimou Gaye --- mk/packages.mk | 3 ++- packages/graphics/freetype/freetype.mk | 39 +++++++++++++++++++++++----------- 2 files changed, 29 insertions(+), 13 deletions(-) diff --git a/mk/packages.mk b/mk/packages.mk index 603397b..36109e6 100644 --- a/mk/packages.mk +++ b/mk/packages.mk @@ -76,10 +76,11 @@ endif ROOTFS_COMPONENTS_CLEAN += directfb_clean #FreeType -ifeq ($(CONFIG_EMBTK_HAVE_FREETYPE),y) include $(EMBTK_ROOT)/packages/graphics/freetype/freetype.mk +ifeq ($(CONFIG_EMBTK_HAVE_FREETYPE),y) ROOTFS_COMPONENTS += freetype_install endif +ROOTFS_COMPONENTS_CLEAN += freetype_clean #libjpeg ifeq ($(CONFIG_EMBTK_HAVE_LIBJPEG),y) diff --git a/packages/graphics/freetype/freetype.mk b/packages/graphics/freetype/freetype.mk index a2076ce..143c0f6 100644 --- a/packages/graphics/freetype/freetype.mk +++ b/packages/graphics/freetype/freetype.mk @@ -27,6 +27,12 @@ FREETYPE_SITE := http://mirrors.linhub.com/savannah/freetype FREETYPE_PACKAGE := freetype-$(FREETYPE_VERSION).tar.bz2 FREETYPE_BUILD_DIR := $(PACKAGES_BUILD)/freetype-$(FREETYPE_VERSION) +FREETYPE_BINS = freetype* +FREETYPE_SBINS = +FREETYPE_INCLUDES = ft*build.h freetype* +FREETYPE_LIBS = libfreetype* +FREETYPE_PKGCONFIG = freetype*.pc + freetype_install: $(FREETYPE_BUILD_DIR)/.installed $(FREETYPE_BUILD_DIR)/.installed: zlib_target_install download_freetype \ @@ -34,12 +40,10 @@ $(FREETYPE_BUILD_DIR)/.installed: zlib_target_install download_freetype \ $(call EMBTK_GENERIC_MESSAGE,"Compiling and installing \ freetype-$(FREETYPE_VERSION) in your root filesystem...") $(Q)$(MAKE) -C $(FREETYPE_BUILD_DIR) $(J) - $(Q)$(MAKE) -C $(FREETYPE_BUILD_DIR) DESTDIR=$(ROOTFS) install + $(Q)$(MAKE) -C $(FREETYPE_BUILD_DIR) DESTDIR=$(SYSROOT) install $(Q)$(MAKE) $(FREETYPE_BUILD_DIR)/.libtoolpatched $(Q)$(MAKE) $(FREETYPE_BUILD_DIR)/.pkgconfigpatched $(Q)$(MAKE) $(FREETYPE_BUILD_DIR)/.freetype-configpatched - $(Q)-mv $(ROOTFS)/usr/include/* $(SYSROOT)/usr/include/ - $(Q)rm -rf $(ROOTFS)/usr/include @touch $@ download_freetype: @@ -61,8 +65,7 @@ $(FREETYPE_BUILD_DIR)/.configured: PKG_CONFIG_SYSROOT_DIR=$(ROOTFS) \ CC=$(TARGETCC_CACHED) CFLAGS="$(TARGET_CFLAGS)" \ ./configure --build=$(HOST_BUILD) --host=$(STRICT_GNU_TARGET) \ - --prefix=/usr \ - --datarootdir=$(SYSROOT)/usr --enable-static=no + --prefix=/usr --enable-static=no @touch $@ $(FREETYPE_BUILD_DIR)/.freetype-configpatched: @@ -75,29 +78,41 @@ $(FREETYPE_BUILD_DIR)/.freetype-configpatched: $(FREETYPE_BUILD_DIR)/.libtoolpatched: ifeq ($(CONFIG_EMBTK_64BITS_FS_COMPAT32),y) - $(Q)cd $(ROOTFS)/usr/lib32; \ - cat libfreetype.la | sed -e 's;\/usr\/lib;$(ROOTFS)\/usr\/lib32;' \ + $(Q)cd $(SYSROOT)/usr/lib32; \ + cat libfreetype.la | sed -e 's;\/usr\/lib;$(SYSROOT)\/usr\/lib32;' \ > libfreetype.la.new;\ cp libfreetype.la.new libfreetype.la; rm libfreetype.la.new else - $(Q)cd $(ROOTFS)/usr/lib; \ - cat libfreetype.la | sed -e 's;\/usr\/lib;$(ROOTFS)\/usr\/lib;' \ + $(Q)cd $(SYSROOT)/usr/lib; \ + cat libfreetype.la | sed -e 's;\/usr\/lib;$(SYSROOT)\/usr\/lib;' \ > libfreetype.la.new;\ cp libfreetype.la.new libfreetype.la; rm libfreetype.la.new endif $(FREETYPE_BUILD_DIR)/.pkgconfigpatched: ifeq ($(CONFIG_EMBTK_64BITS_FS_COMPAT32),y) - $(Q)cd $(ROOTFS)/usr/lib32/pkgconfig;\ - cat freetype2.pc | sed -e 's;prefix=/usr;prefix=$(ROOTFS)/usr;' \ + $(Q)cd $(SYSROOT)/usr/lib32/pkgconfig;\ + cat freetype2.pc | sed -e 's;prefix=/usr;prefix=$(SYSROOT)/usr;' \ -e 's;includedir=$${prefix}/include;includedir=$(SYSROOT)/usr/include;' \ > freetype2.pc.new;\ cp freetype2.pc.new freetype2.pc; rm freetype2.pc.new freetype2.pc.tmp else $(Q)cd $(ROOTFS)/usr/lib/pkgconfig; \ - cat freetype2.pc | sed -e 's;prefix=/usr;prefix=$(ROOTFS)/usr;' \ + cat freetype2.pc | sed -e 's;prefix=/usr;prefix=$(SYSROOT)/usr;' \ -e 's;includedir=$${prefix}/include;includedir=$(SYSROOT)/usr/include;' \ > freetype2.pc.new;\ cp freetype2.pc.new freetype2.pc; rm freetype2.pc.new endif +freetype_clean: + $(call EMBTK_GENERIC_MESSAGE,"cleanup freetype-$(FREETYPE_VERSION)...") + $(Q)-cd $(SYSROOT)/usr/bin; rm -rf $(FREETYPE_BINS) + $(Q)-cd $(SYSROOT)/usr/sbin; rm -rf $(FREETYPE_SBINS) + $(Q)-cd $(SYSROOT)/usr/include; rm -rf $(FREETYPE_INCLUDES) + $(Q)-cd $(SYSROOT)/usr/lib; rm -rf $(FREETYPE_LIBS) + $(Q)-cd $(SYSROOT)/usr/lib/pkgconfig; rm -rf $(FREETYPE_PKGCONFIGS) +ifeq ($(CONFIG_EMBTK_64BITS_FS_COMPAT32),y) + $(Q)-cd $(SYSROOT)/usr/lib32; rm -rf $(FREETYPE_LIBS) + $(Q)-cd $(SYSROOT)/usr/lib32/pkgconfig; rm -rf $(FREETYPE_PKGCONFIGS) +endif + -- cgit v1.2.3