summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorAbdoulaye Walsimou Gaye <awg@embtoolkit.org>2013-03-30 20:29:07 +0100
committerAbdoulaye Walsimou Gaye <awg@embtoolkit.org>2013-03-30 20:29:07 +0100
commit06688245b53fd72344b907bf5eab282eff769a7c (patch)
treee26f2eeff897a852f62fca70fc77c3a022d5187c
parent7f01632ac8753c1a4efcce2abe27b4de65e9a0fb (diff)
downloadembtoolkit-06688245b53fd72344b907bf5eab282eff769a7c.tar.gz
embtoolkit-06688245b53fd72344b907bf5eab282eff769a7c.tar.bz2
embtoolkit-06688245b53fd72344b907bf5eab282eff769a7c.tar.xz
Toolchain: add GNU make 3.81 and build it when FreeBSD is host development machine
Signed-off-by: Abdoulaye Walsimou Gaye <awg@embtoolkit.org>
-rw-r--r--kconfig/gmake.kconfig39
-rw-r--r--kconfig/toolchain.kconfig3
-rw-r--r--mk/gmake.mk42
-rw-r--r--mk/toolchain.mk6
4 files changed, 89 insertions, 1 deletions
diff --git a/kconfig/gmake.kconfig b/kconfig/gmake.kconfig
new file mode 100644
index 0000000..7490d45
--- /dev/null
+++ b/kconfig/gmake.kconfig
@@ -0,0 +1,39 @@
+################################################################################
+# Embtoolkit
+# Copyright(C) 2013 Abdoulaye Walsimou GAYE.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+################################################################################
+#
+# \file gmake.kconfig
+# \brief gmake.kconfig of Embtoolkit.
+# \author Abdoulaye Walsimou GAYE <awg@embtoolkit.org>
+# \date March 2013
+################################################################################
+
+config EMBTK_HAVE_GMAKE
+ bool
+ default y
+ help
+ GNU make.
+
+config EMBTK_GMAKE_VERSION_STRING
+ string
+ default "3.81"
+
+config EMBTK_GMAKE_NEED_PATCH
+ bool
+config EMBTK_GMAKE_NEED_AUTORECONF
+ bool
diff --git a/kconfig/toolchain.kconfig b/kconfig/toolchain.kconfig
index 9bc282c..0485a73 100644
--- a/kconfig/toolchain.kconfig
+++ b/kconfig/toolchain.kconfig
@@ -170,6 +170,9 @@ source kconfig/automake.kconfig
# GNU sed
source kconfig/gsed.kconfig
+# GNU make
+source kconfig/gmake.kconfig
+
#
# pkgconf
#
diff --git a/mk/gmake.mk b/mk/gmake.mk
new file mode 100644
index 0000000..304a81a
--- /dev/null
+++ b/mk/gmake.mk
@@ -0,0 +1,42 @@
+################################################################################
+# Embtoolkit
+# Copyright(C) 2013 Abdoulaye Walsimou GAYE.
+#
+# This program is free software: you can redistribute it and/or modify
+# it under the terms of the GNU General Public License as published by
+# the Free Software Foundation, either version 2 of the License, or
+# (at your option) any later version.
+#
+# This program is distributed in the hope that it will be useful,
+# but WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
+# GNU General Public License for more details.
+#
+# You should have received a copy of the GNU General Public License
+# along with this program. If not, see <http://www.gnu.org/licenses/>.
+#
+################################################################################
+#
+# \file gmake.mk
+# \brief gmake.mk of Embtoolkit.
+# \author Abdoulaye Walsimou GAYE <awg@embtoolkit.org>
+# \date March 2013
+################################################################################
+
+GMAKE_NAME := gmake
+GMAKE_VERSION := $(call embtk_get_pkgversion,gmake)
+GMAKE_SITE := http://ftp.gnu.org/gnu/make
+GMAKE_PACKAGE := make-$(GMAKE_VERSION).tar.bz2
+GMAKE_SRC_DIR := $(embtk_toolsb)/make-$(GMAKE_VERSION)
+GMAKE_BUILD_DIR := $(embtk_toolsb)/make-$(GMAKE_VERSION)
+
+define embtk_install_gmake
+ $(call __embtk_install_hostpkg,gmake)
+endef
+
+define embtk_postinstall_gmake
+ if [ ! -e $(GMAKE_BUILD_DIR)/.gmake.embtk.postinstalled ]; then \
+ cd $(embtk_htools)/usr/bin; mv make gmake; \
+ touch $(GMAKE_BUILD_DIR)/.gmake.embtk.postinstalled; \
+ fi
+endef
diff --git a/mk/toolchain.mk b/mk/toolchain.mk
index fe12761..70f9642 100644
--- a/mk/toolchain.mk
+++ b/mk/toolchain.mk
@@ -146,6 +146,10 @@ AUTOTOOLS_INSTALL += automake_install
include mk/gsed.mk
__toolchain_gsed-y := $(if $(findstring freebsd,$(embtk_buildhost_os)),gsed_install)
+# GNU make
+include mk/gmake.mk
+__toolchain_gmake-y := $(if $(findstring freebsd,$(embtk_buildhost_os)),gmake_install)
+
# Toolchain internals
__xtools_compiler-$(CONFIG_EMBTK_LLVM_ONLY_TOOLCHAIN) := clangllvm-$(LLVM_VERSION)
__xtools_compiler-$(CONFIG_EMBTK_LLVM_DEFAULT_TOOLCHAIN) := clangllvm-$(LLVM_VERSION)
@@ -160,7 +164,7 @@ TOOLCHAIN_BUILD_DIR := $(TOOLCHAIN_DIR)
TOOLCHAIN_SRC_DIR := $(TOOLCHAIN_DIR)
TOOLCHAIN_PRE_DEPS-y := ccache_install $(AUTOTOOLS_INSTALL)
-TOOLCHAIN_PRE_DEPS-y += $(__toolchain_gsed-y)
+TOOLCHAIN_PRE_DEPS-y += $(__toolchain_gsed-y) $(__toolchain_gmake-y)
TOOLCHAIN_PRE_DEPS-y += $(if $(CONFIG_EMBTK_TOOLCHAIN_PREDEP_GPERF_HOST), \
gperf_host_install)