diff options
author | Abdoulaye Walsimou Gaye <awg@embtoolkit.org> | 2011-06-10 23:59:26 +0200 |
---|---|---|
committer | Abdoulaye Walsimou Gaye <awg@embtoolkit.org> | 2011-06-10 23:59:26 +0200 |
commit | 7693b34c4aba1ff79707487b478592105293ee2a (patch) | |
tree | 9855944442ab5d617837154f0c4de20156b8c672 | |
parent | 0785b0fdb55b2db8baa88e20db74d4fa9baf25ec (diff) | |
download | embtoolkit-7693b34c4aba1ff79707487b478592105293ee2a.tar.gz embtoolkit-7693b34c4aba1ff79707487b478592105293ee2a.tar.bz2 embtoolkit-7693b34c4aba1ff79707487b478592105293ee2a.tar.xz |
Build system: generic macros: add ability to specify make options and directories
Signed-off-by: Abdoulaye Walsimou Gaye <awg@embtoolkit.org>
-rw-r--r-- | mk/macros.mk | 30 |
1 files changed, 23 insertions, 7 deletions
diff --git a/mk/macros.mk b/mk/macros.mk index 4aca579..f602b1a 100644 --- a/mk/macros.mk +++ b/mk/macros.mk @@ -285,21 +285,37 @@ endef # Usage: # $(call EMBTK_INSTALL_PKG,PACKAGE) # +__EMBTK_MULTI_MAKE = $(foreach builddir,$($(1)_MAKE_DIRS), \ + $(MAKE) -C $($(1)_BUILD_DIR)/$(builddir) \ + $($(1)_MAKE_OPTS) $(J)) + +__EMBTK_SINGLE_MAKE = $(MAKE) -C $($(1)_BUILD_DIR) $($(1)_MAKE_OPTS) $(J) + +__EMBTK_MULTI_MAKE_INSTALL = $(foreach builddir,$($(1)_MAKE_DIRS), \ + $(MAKE) -C $($(1)_BUILD_DIR)/$(builddir) \ + DESTDIR=$(SYSROOT)/$($(1)_SYSROOT_SUFFIX) $($(1)_MAKE_OPTS) install) + +__EMBTK_SINGLE_MAKE_INSTALL = $(MAKE) -C $($(1)_BUILD_DIR) \ + DESTDIR=$(SYSROOT)/$($(1)_SYSROOT_SUFFIX) $($(1)_MAKE_OPTS) install + define __EMBTK_INSTALL_PKG_MAKE $(call EMBTK_GENERIC_MSG,"Compiling and installing $($(1)_NAME)-$($(1)_VERSION) in your root filesystem...") $(Q)$(if $(strip $($(1)_DEPS)),$(MAKE) $($(1)_DEPS)) $(Q)$(call EMBTK_DOWNLOAD_PKG,$(1)) $(Q)$(call EMBTK_DECOMPRESS_PKG,$(1)) $(Q)$(call EMBTK_CONFIGURE_PKG,$(1)) - $(Q)$(MAKE) -C $($(1)_BUILD_DIR) $(J) - $(Q)$(MAKE) -C $($(1)_BUILD_DIR) \ - DESTDIR=$(SYSROOT)/$($(1)_SYSROOT_SUFFIX) install + $(Q)$(if $($(1)_MAKE_DIRS), \ + $(__EMBTK_MULTI_MAKE), \ + $(__EMBTK_SINGLE_MAKE)) + $(Q)$(if $($(1)_MAKE_DIRS), \ + $(__EMBTK_MULTI_MAKE_INSTALL), \ + $(__EMBTK_SINGLE_MAKE_INSTALL)) $(Q)$(call __EMBTK_FIX_LIBTOOL_FILES) $(Q)$(call __EMBTK_FIX_PKGCONFIG_FILES) @touch $($(1)_BUILD_DIR)/.installed endef define EMBTK_INSTALL_PKG - @$(if $(shell test -e $($(1)_BUILD_DIR)/.installed && echo y), \ + @$(if $(shell test -e $($(1)_BUILD_DIR)/.installed && echo y), \ true,$(call __EMBTK_INSTALL_PKG_MAKE,$(1))) endef @@ -315,12 +331,12 @@ define __EMBTK_INSTALL_HOSTPKG_MAKE $(Q)$(call EMBTK_DOWNLOAD_PKG,$(1)) $(Q)$(call EMBTK_DECOMPRESS_HOSTPKG,$(1)) $(Q)$(call EMBTK_CONFIGURE_HOSTPKG,$(1)) - $(Q)$(MAKE) -C $($(1)_BUILD_DIR) $(J) - $(Q)$(MAKE) -C $($(1)_BUILD_DIR) install + $(Q)$(MAKE) -C $($(1)_BUILD_DIR) $($(1)_MAKE_OPTS) $(J) + $(Q)$(MAKE) -C $($(1)_BUILD_DIR) $($(1)_MAKE_OPTS) install @touch $($(1)_BUILD_DIR)/.installed endef define EMBTK_INSTALL_HOSTPKG - @$(if $(shell test -e $($(1)_BUILD_DIR)/.installed && echo y), \ + @$(if $(shell test -e $($(1)_BUILD_DIR)/.installed && echo y), \ true,$(call __EMBTK_INSTALL_HOSTPKG_MAKE,$(1))) endef |