summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbdoulaye Walsimou Gaye <awg@embtoolkit.org>2011-07-24 18:02:53 +0200
committerAbdoulaye Walsimou Gaye <awg@embtoolkit.org>2011-07-24 18:02:53 +0200
commitb86336aa196216ae70a45ffa5c875b7e623a1f81 (patch)
treee854aaee0738d64314ff9f1a8aa4d4746459830b
parentfeb218043ceddf79a06c42c7c376ed5999e700fd (diff)
parent4884a876bf7ba76399213652ca7f8ea927c0f26c (diff)
downloadembtoolkit-b86336aa196216ae70a45ffa5c875b7e623a1f81.tar.gz
embtoolkit-b86336aa196216ae70a45ffa5c875b7e623a1f81.tar.bz2
embtoolkit-b86336aa196216ae70a45ffa5c875b7e623a1f81.tar.xz
Merge branch 'embtk-0.1.0-rc14-dev'
-rw-r--r--Kconfig6
-rw-r--r--Makefile15
-rw-r--r--kconfig/m4.kconfig2
-rw-r--r--mk/macros.mk46
-rw-r--r--packages/graphics/imlib2/imlib2.mk58
-rw-r--r--packages/graphics/pango/pango.mk72
6 files changed, 109 insertions, 90 deletions
diff --git a/Kconfig b/Kconfig
index 7ae59e7..e29f9b6 100644
--- a/Kconfig
+++ b/Kconfig
@@ -28,6 +28,10 @@ config EMBTK_DOTCONFIG
bool
default y
+config EMBTK_DEFAULT_DL
+ string
+ option env="EMBTK_DEFAULT_DL"
+
menu "Architecture/variants/options Selection"
source "kconfig/arch.kconfig"
source "kconfig/arch-variant.kconfig"
@@ -84,7 +88,7 @@ config EMBTK_NUMBER_BUILD_JOBS
config EMBTK_DOWNLOAD_DIR
string "Download directory"
- default "$(EMBTK_ROOT)/dl"
+ default $EMBTK_DEFAULT_DL
help
Directory where downloaded packages are stored.
diff --git a/Makefile b/Makefile
index 75ad2ce..657aeb1 100644
--- a/Makefile
+++ b/Makefile
@@ -84,21 +84,26 @@ All: $(EMBTK_BUILD)
xconfig: basic
ifeq ($(CONFIG_EMBTK_DOTCONFIG),y)
- $(Q)make -f scripts/Makefile.build obj=scripts/kconfig xconfig
+ $(Q)make -f scripts/Makefile.build obj=scripts/kconfig \
+ EMBTK_DEFAULT_DL="$(EMBTK_ROOT)/dl/" xconfig
else
$(Q)if [ -e $(EMBTK_DOTCONFIG).old ]; then \
cp $(EMBTK_DOTCONFIG).old $(EMBTK_DOTCONFIG); \
- $(MAKE) -f scripts/Makefile.build obj=scripts/kconfig xconfig; \
+ $(MAKE) -f scripts/Makefile.build obj=scripts/kconfig \
+ EMBTK_DEFAULT_DL="$(EMBTK_ROOT)/dl/" xconfig; \
else \
- $(MAKE) -f scripts/Makefile.build obj=scripts/kconfig xconfig; \
+ $(MAKE) -f scripts/Makefile.build obj=scripts/kconfig \
+ EMBTK_DEFAULT_DL="$(EMBTK_ROOT)/dl/" xconfig; \
fi
endif
menuconfig: basic
- $(Q)$(MAKE) -f scripts/Makefile.build obj=scripts/kconfig menuconfig
+ $(Q)$(MAKE) -f scripts/Makefile.build obj=scripts/kconfig \
+ EMBTK_DEFAULT_DL="$(EMBTK_ROOT)/dl/" menuconfig
randconfig: basic
- $(Q)$(MAKE) -f scripts/Makefile.build obj=scripts/kconfig randconfig
+ $(Q)$(MAKE) -f scripts/Makefile.build obj=scripts/kconfig \
+ EMBTK_DEFAULT_DL="$(EMBTK_ROOT)/dl/" randconfig
basic:
$(Q)$(MAKE) -f scripts/Makefile.build obj=scripts/basic
diff --git a/kconfig/m4.kconfig b/kconfig/m4.kconfig
index 5d9969f..f9285b1 100644
--- a/kconfig/m4.kconfig
+++ b/kconfig/m4.kconfig
@@ -32,7 +32,7 @@ config EMBTK_HAVE_M4
config EMBTK_M4_VERSION_STRING
string
- default "1.4.15"
+ default "1.4.16"
config EMBTK_M4_NEED_PATCH
bool
diff --git a/mk/macros.mk b/mk/macros.mk
index 18f9a1d..4ae3164 100644
--- a/mk/macros.mk
+++ b/mk/macros.mk
@@ -154,6 +154,30 @@ endif
@echo
$(call embtk_echo_blue,"################################################################################")
+#
+# embtk_pkgconfig_getlibs:
+# A macro to get pkg-config libs entry for a target package
+# Usage: $(call embtk_pkgconfig_getlibs,pkgname)
+#
+define embtk_pkgconfig_getlibs
+ $(shell \
+ PKG_CONFIG_PATH=$(EMBTK_PKG_CONFIG_PATH) \
+ PKG_CONFIG_LIBDIR="$(EMBTK_PKG_CONFIG_LIBDIR)" \
+ $(PKGCONFIG_BIN) $(strip $(1)) --libs)
+endef
+
+#
+# embtk_pkgconfig_getcflags:
+# A macro to get pkg-config cflags entry for a target package
+# Usage: $(call embtk_pkgconfig_getcflags,pkgname)
+#
+define embtk_pkgconfig_getcflags
+ $(shell \
+ PKG_CONFIG_PATH=$(EMBTK_PKG_CONFIG_PATH) \
+ PKG_CONFIG_LIBDIR="$(EMBTK_PKG_CONFIG_LIBDIR)" \
+ $(PKGCONFIG_BIN) $(strip $(1)) --cflags)
+endef
+
#Macro to adapt libtool files (*.la) for cross compiling
__ltlibdirold=libdir='\/usr\/$(LIBDIR)'
__ltlibdirnew=libdir='$(SYSROOT)\/usr\/$(LIBDIR)'
@@ -223,7 +247,23 @@ __embtk_pkg_configured-y = $(shell test -e $($(PKGV)_BUILD_DIR)/.configured && e
# A macro to test if a package is already installed.
# It returns y if installed and nothing if not.
#
-__embtk_pkg_installed-y = $(shell test -e $($(PKGV)_BUILD_DIR)/.installed && echo y)
+__installed_f=$($(PKGV)_BUILD_DIR)/.installed
+__pkgkconfig_f=$($(PKGV)_BUILD_DIR)/.embtk.$($(PKGV)_NAME).kconfig
+__pkgkconfig_f_old=$($(PKGV)_BUILD_DIR)/.embtk.$($(PKGV)_NAME).kconfig.old
+__embtk_pkg_installed-y = $(shell \
+ if [ -e $(__installed_f) ] && [ -e $(__pkgkconfig_f) ]; then \
+ cp $(__pkgkconfig_f) $(__pkgkconfig_f_old); \
+ grep 'CONFIG_EMBTK_.*$(PKGV)_.*' $(EMBTK_DOTCONFIG) \
+ > $(__pkgkconfig_f); \
+ cmp -s $(__pkgkconfig_f) $(__pkgkconfig_f_old); \
+ if [ "x$$?" = "x0" ]; then \
+ echo y; \
+ fi; \
+ else \
+ mkdir -p $($(PKGV)_BUILD_DIR); \
+ grep 'CONFIG_EMBTK_.*$(PKGV)_.*' $(EMBTK_DOTCONFIG) \
+ > $(__pkgkconfig_f); \
+ fi;)
#
# A macro which runs configure script (conpatible with autotools configure)
@@ -399,7 +439,7 @@ endef
# $(call embtk_install_hostpkg,package)
#
define embtk_install_hostpkg
- $(Q)$(if $(__embtk_pkg_installed-y),true, \
+ $(Q)$(if $(__embtk_pkg_installed-y),true, \
$(call __embtk_install_hostpkg_make,$(1),autotools))
endef
@@ -410,7 +450,7 @@ endef
# $(call embtk_makeinstall_hostpkg,package)
#
define embtk_makeinstall_hostpkg
- $(Q)$(if $(__embtk_pkg_installed-y),true, \
+ $(Q)$(if $(__embtk_pkg_installed-y),true, \
$(call __embtk_install_hostpkg_make,$(1)))
endef
diff --git a/packages/graphics/imlib2/imlib2.mk b/packages/graphics/imlib2/imlib2.mk
index c51dfdf..f79238a 100644
--- a/packages/graphics/imlib2/imlib2.mk
+++ b/packages/graphics/imlib2/imlib2.mk
@@ -23,50 +23,34 @@
# \date June 2010
################################################################################
-IMLIB2_NAME := imlib2
-IMLIB2_VERSION := $(call embtk_get_pkgversion,IMLIB2)
-IMLIB2_SITE := http://downloads.sourceforge.net/project/enlightenment/imlib2-src/$(IMLIB2_VERSION)
-IMLIB2_SITE_MIRROR3 := ftp://ftp.embtoolkit.org/embtoolkit.org/packages-mirror
-IMLIB2_PATCH_SITE := ftp://ftp.embtoolkit.org/embtoolkit.org/imlib2/$(IMLIB2_VERSION)
-IMLIB2_PACKAGE := imlib2-$(IMLIB2_VERSION).tar.gz
-IMLIB2_SRC_DIR := $(PACKAGES_BUILD)/imlib2-$(IMLIB2_VERSION)
-IMLIB2_BUILD_DIR := $(PACKAGES_BUILD)/imlib2-$(IMLIB2_VERSION)
-
-IMLIB2_BINS = imlib2_bumpmap imlib2_colorspace imlib2-config imlib2_conv \
- imlib2_grab imlib2_poly imlib2_show imlib2_test imlib2_view
-IMLIB2_SBINS =
-IMLIB2_INCLUDES = Imlib2.h
-IMLIB2_LIBS = imlib2 libImlib2.*
-IMLIB2_PKGCONFIGS = imlib2.pc
-
-IMLIB2_DEPS := libpng_install freetype_install libjpeg_install
+IMLIB2_NAME := imlib2
+IMLIB2_VERSION := $(call embtk_get_pkgversion,imlib2)
+IMLIB2_SITE := http://downloads.sourceforge.net/project/enlightenment/imlib2-src/$(IMLIB2_VERSION)
+IMLIB2_SITE_MIRROR3 := ftp://ftp.embtoolkit.org/embtoolkit.org/packages-mirror
+IMLIB2_PATCH_SITE := ftp://ftp.embtoolkit.org/embtoolkit.org/imlib2/$(IMLIB2_VERSION)
+IMLIB2_PACKAGE := imlib2-$(IMLIB2_VERSION).tar.gz
+IMLIB2_SRC_DIR := $(PACKAGES_BUILD)/imlib2-$(IMLIB2_VERSION)
+IMLIB2_BUILD_DIR := $(PACKAGES_BUILD)/imlib2-$(IMLIB2_VERSION)
+
+IMLIB2_BINS = imlib2_bumpmap imlib2_colorspace imlib2-config \
+ imlib2_conv imlib2_grab imlib2_poly imlib2_show \
+ imlib2_test imlib2_view
+IMLIB2_SBINS =
+IMLIB2_INCLUDES = Imlib2.h
+IMLIB2_LIBS = imlib2 libImlib2.*
+IMLIB2_PKGCONFIGS = imlib2.pc
+
+IMLIB2_DEPS := libpng_install freetype_install libjpeg_install
imlib2_install:
- test -e $(IMLIB2_BUILD_DIR)/.installed || \
- $(MAKE) $(IMLIB2_BUILD_DIR)/.installed
+ $(call embtk_install_pkg,imlib2)
$(Q)$(MAKE) $(IMLIB2_BUILD_DIR)/.special
-$(IMLIB2_BUILD_DIR)/.installed: $(IMLIB2_DEPS) download_imlib2 \
- $(IMLIB2_BUILD_DIR)/.decompressed $(IMLIB2_BUILD_DIR)/.configured
- $(call embtk_generic_message,"Compiling and installing \
- imlib2-$(IMLIB2_VERSION) in your root filesystem...")
- $(Q)$(MAKE) -C $(IMLIB2_BUILD_DIR) $(J)
- $(Q)$(MAKE) -C $(IMLIB2_BUILD_DIR) DESTDIR=$(SYSROOT) install
- $(Q)$(MAKE) libtool_files_adapt
- $(Q)$(MAKE) pkgconfig_files_adapt
- @touch $@
-
download_imlib2:
- $(call embtk_download_pkg,IMLIB2)
-
-$(IMLIB2_BUILD_DIR)/.decompressed:
- $(call embtk_decompress_pkg,IMLIB2)
-
-$(IMLIB2_BUILD_DIR)/.configured:
- $(call embtk_configure_pkg,IMLIB2)
+ $(call embtk_download_pkg,imlib2)
imlib2_clean:
- $(call embtk_cleanup_pkg,IMLIB2)
+ $(call embtk_cleanup_pkg,imlib2)
.PHONY: $(IMLIB2_BUILD_DIR)/.special
diff --git a/packages/graphics/pango/pango.mk b/packages/graphics/pango/pango.mk
index 07f7358..3b74fa1 100644
--- a/packages/graphics/pango/pango.mk
+++ b/packages/graphics/pango/pango.mk
@@ -23,55 +23,43 @@
# \date December 2009
################################################################################
-PANGO_NAME := pango
-PANGO_MAJOR_VERSION := $(call embtk_get_pkgversion,PANGO_MAJOR)
-PANGO_VERSION := $(call embtk_get_pkgversion,PANGO)
-PANGO_SITE := http://ftp.gnome.org/pub/gnome/sources/pango/$(PANGO_MAJOR_VERSION)
-PANGO_SITE_MIRROR3 := ftp://ftp.embtoolkit.org/embtoolkit.org/packages-mirror
-PANGO_PATCH_SITE := ftp://ftp.embtoolkit.org/embtoolkit.org/pango/$(PANGO_VERSION)
-PANGO_PACKAGE := pango-$(PANGO_VERSION).tar.bz2
-PANGO_SRC_DIR := $(PACKAGES_BUILD)/pango-$(PANGO_VERSION)
-PANGO_BUILD_DIR := $(PACKAGES_BUILD)/pango-$(PANGO_VERSION)
+PANGO_NAME := pango
+PANGO_MAJOR_VERSION := $(call embtk_get_pkgversion,pango_major)
+PANGO_VERSION := $(call embtk_get_pkgversion,pango)
+PANGO_SITE := http://ftp.gnome.org/pub/gnome/sources/pango/$(PANGO_MAJOR_VERSION)
+PANGO_SITE_MIRROR3 := ftp://ftp.embtoolkit.org/embtoolkit.org/packages-mirror
+PANGO_PATCH_SITE := ftp://ftp.embtoolkit.org/embtoolkit.org/pango/$(PANGO_VERSION)
+PANGO_PACKAGE := pango-$(PANGO_VERSION).tar.bz2
+PANGO_SRC_DIR := $(PACKAGES_BUILD)/pango-$(PANGO_VERSION)
+PANGO_BUILD_DIR := $(PACKAGES_BUILD)/pango-$(PANGO_VERSION)
-PANGO_BINS = pango*
-PANGO_SBINS =
-PANGO_INCLUDES = pango*
-PANGO_LIBS = pango-* pango* libpango*
-PANGO_PKGCONFIGS = pango*.pc
+PANGO_BINS = pango*
+PANGO_SBINS =
+PANGO_INCLUDES = pango*
+PANGO_LIBS = pango-* pango* libpango*
+PANGO_PKGCONFIGS = pango*.pc
-ifeq ($(CONFIG_EMBTK_HAVE_PANGO_WITH_X),y)
-PANGO_CONFIGURE_OPTS := --with-x
-PANGO_DEPS := libx11_install
-else
-PANGO_CONFIGURE_OPTS := --without-x
-endif
-PANGO_DEPS += glib_install fontconfig_install cairo_install
+PANGO_CONFIGURE_OPTS-y := $(if $(CONFIG_EMBTK_HAVE_PANGO_WITH_X), \
+ --with-x,--without-x)
+PANGO_DEPS-y := $(if $(CONFIG_EMBTK_HAVE_PANGO_WITH_X), \
+ libx11_install)
+
+PANGO_CONFIGURE_OPTS := $(PANGO_CONFIGURE_OPTS-y)
+PANGO_DEPS := glib_install fontconfig_install $(PANGO_DEPS-y) \
+ cairo_install
pango_install:
- @test -e $(PANGO_BUILD_DIR)/.installed || \
- $(MAKE) $(PANGO_BUILD_DIR)/.installed
+ $(call embtk_install_pkg,pango)
+ $(Q)test -e $(PANGO_BUILD_DIR)/.patchlibtool || \
+ $(MAKE) $(PANGO_BUILD_DIR)/.patchlibtool
$(Q)$(MAKE) $(PANGO_BUILD_DIR)/.special
-$(PANGO_BUILD_DIR)/.installed: $(PANGO_DEPS) download_pango \
- $(PANGO_BUILD_DIR)/.decompressed $(PANGO_BUILD_DIR)/.configured
- $(call embtk_generic_message,"Compiling and installing \
- pango-$(PANGO_VERSION) in your root filesystem...")
- $(Q)$(MAKE) -C $(PANGO_BUILD_DIR) $(J)
- $(Q)$(MAKE) -C $(PANGO_BUILD_DIR) DESTDIR=$(SYSROOT) install
- $(Q)$(MAKE) libtool_files_adapt
- $(Q)$(MAKE) pkgconfig_files_adapt
- $(Q)$(MAKE) $(PANGO_BUILD_DIR)/.patchlibtool
- @touch $@
-
download_pango:
- $(call embtk_download_pkg,PANGO)
-
-$(PANGO_BUILD_DIR)/.decompressed:
- $(call embtk_decompress_pkg,PANGO)
+ $(call embtk_download_pkg,pango)
-$(PANGO_BUILD_DIR)/.configured:
- $(call embtk_configure_pkg,PANGO)
+pango_clean:
+ $(call embtk_cleanup_pkg,pango)
$(PANGO_BUILD_DIR)/.patchlibtool:
$(Q)PANGO_LT_FILES=`find $(SYSROOT)/usr/$(LIBDIR)/* -type f -name *.la`; \
@@ -83,12 +71,10 @@ $(PANGO_BUILD_DIR)/.patchlibtool:
< $$i > $$i.new; \
mv $$i.new $$i; \
done
+ @touch $@
.PHONY: pango_clean $(PANGO_BUILD_DIR)/.special
$(PANGO_BUILD_DIR)/.special:
$(Q)-cp -R $(SYSROOT)/usr/$(LIBDIR)/pango $(ROOTFS)/usr/$(LIBDIR)/
@touch $@
-
-pango_clean:
- $(call embtk_cleanup_pkg,PANGO)