summaryrefslogtreecommitdiff
path: root/packages/development
diff options
context:
space:
mode:
authorAbdoulaye Walsimou Gaye <awg@embtoolkit.org>2014-05-11 15:51:38 +0200
committerAbdoulaye Walsimou Gaye <awg@embtoolkit.org>2014-05-11 15:51:38 +0200
commita2825bc53fb6c116f882c0b252cf7bed0631cb3d (patch)
tree20b2227d52c7604e711a22ed5d02fbb8c724ba2f /packages/development
parent5de829c9ee3bd76012df0a73e66ba1ea7a435c66 (diff)
downloadembtoolkit-a2825bc53fb6c116f882c0b252cf7bed0631cb3d.tar.gz
embtoolkit-a2825bc53fb6c116f882c0b252cf7bed0631cb3d.tar.bz2
embtoolkit-a2825bc53fb6c116f882c0b252cf7bed0631cb3d.tar.xz
Packages/development: New package boost-1.55.0
Signed-off-by: Abdoulaye Walsimou Gaye <awg@embtoolkit.org>
Diffstat (limited to 'packages/development')
-rw-r--r--packages/development/boost/boost.kconfig51
-rw-r--r--packages/development/boost/boost.mk76
-rw-r--r--packages/development/development.kconfig3
-rw-r--r--packages/development/development.mk3
4 files changed, 133 insertions, 0 deletions
diff --git a/packages/development/boost/boost.kconfig b/packages/development/boost/boost.kconfig
new file mode 100644
index 0000000..289260e
--- /dev/null
+++ b/packages/development/boost/boost.kconfig
@@ -0,0 +1,51 @@
+################################################################################
+# Embtoolkit
+# Copyright(C) 2014 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 boost.kconfig
+# \brief boost.kconfig of Embtoolkit
+# \author Abdoulaye Walsimou GAYE <awg@embtoolkit.org>
+# \date May 2014
+################################################################################
+
+config EMBTK_HAVE_BOOST
+ bool "Have boost"
+ select EMBTK_GCC_LANGUAGE_CPP
+ select KEMBTK_UCLIBC_UCLIBC_HAS_LOCALE if EMBTK_CLIB_UCLIBC
+ select KEMBTK_UCLIBC_UCLIBC_HAS_XLOCALE if EMBTK_CLIB_UCLIBC
+ select KEMBTK_EGLIBC_OPTION_EGLIBC_LOCALE_CODE if EMBTK_CLIB_EGLIBC
+ help
+ Free portable C++ libraries
+ see http://www.boost.org
+
+choice
+ prompt "boost version you wish"
+ depends on EMBTK_HAVE_BOOST
+ help
+ Here you can choose which version of boost you want to use.
+
+ config EMBTK_BOOST_VERSION_1_55_0
+ bool "boost-1.55.0"
+endchoice
+
+config EMBTK_BOOST_VERSION_STRING
+ string
+ default "1_55_0" if EMBTK_BOOST_VERSION_1_55_0
+
+config EMBTK_BOOST_NEED_PATCH
+ bool
diff --git a/packages/development/boost/boost.mk b/packages/development/boost/boost.mk
new file mode 100644
index 0000000..334fdb8
--- /dev/null
+++ b/packages/development/boost/boost.mk
@@ -0,0 +1,76 @@
+################################################################################
+# Embtoolkit
+# Copyright(C) 2014 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 boost.mk
+# \brief boost.mk of Embtoolkit
+# \author Abdoulaye Walsimou GAYE <awg@embtoolkit.org>
+# \date May 2014
+################################################################################
+
+BOOST_NAME := boost
+BOOST_VERSION := $(call embtk_get_pkgversion,boost)
+BOOST_SITE := http://downloads.sourceforge.net/project/boost/boost/$(subst _,.,$(BOOST_VERSION))
+BOOST_PACKAGE := boost_$(BOOST_VERSION).tar.bz2
+BOOST_SRC_DIR := $(embtk_pkgb)/boost_$(BOOST_VERSION)
+BOOST_BUILD_DIR := $(embtk_pkgb)/boost_$(BOOST_VERSION)
+
+BOOST_INCLUDES := boost
+BOOST_LIBS := libboost_*
+BOOST_CFALGS := $(TARGET_CXXFLAGS)
+BOOST_CPPFALGS :=
+BOOST_CXXFALGS := $(TARGET_CXXFLAGS)
+BOOST_LDFALGS := -L$(embtk_sysroot)/$(LIBDIR)
+BOOST_LDFALGS += -L$(embtk_sysroot)/usr/$(LIBDIR)
+
+BOOST_CONFIGURE_OPTS := --without-icu
+BOOST_MAKE_OPTS := -q variant=release
+BOOST_MAKE_OPTS += --without-atomic --without-coroutine
+BOOST_MAKE_OPTS += --without-log --without-python
+BOOST_MAKE_OPTS += link=shared runtime-link=shared
+BOOST_MAKE_OPTS += threading=multi toolset=gcc
+
+BOOST_DEPS := zlib_install
+
+# FIXME: consider using clang++ when libc++ will be fully integrated
+embtk_boost_cxx = using gcc:$(shell $(TARGETGCC) -dumpversion):$(TARGETGCC)
+embtk_boost_flags := <compileflags>\"$(BOOST_CXXFALGS)\"
+embtk_boost_flags += <linkflags>\"$(BOOST_LDFALGS)\"
+embtk_boost_userjam := $(BOOST_SRC_DIR)/user-config.jam
+
+define embtk_configure_boost
+ cd $(BOOST_SRC_DIR); \
+ $(CONFIG_EMBTK_SHELL) $(BOOST_SRC_DIR)/bootstrap.sh \
+ $(BOOST_CONFIGURE_OPTS)
+ echo "$(embtk_boost_cxx):$(embtk_boost_flags);" > $(embtk_boost_userjam)
+ echo "" >> $(embtk_boost_userjam)
+endef
+
+define pembtk_install_boost
+ $(call __embtk_preinstall_pkg,boost)
+ $(embtk_configure_boost)
+ cd $(BOOST_SRC_DIR); ./b2 install \
+ --user-config=$(embtk_boost_userjam) \
+ --prefix=$(embtk_sysroot)/usr \
+ $(BOOST_MAKE_OPTS)
+ $(call __embtk_postinstall_pkg,boost)
+endef
+
+define embtk_install_boost
+ $(if $(call __embtk_pkg_runrecipe-y,boost),$(pembtk_install_boost))
+endef
diff --git a/packages/development/development.kconfig b/packages/development/development.kconfig
index 8ccfa12..39d35f0 100644
--- a/packages/development/development.kconfig
+++ b/packages/development/development.kconfig
@@ -23,6 +23,9 @@
# \date October 2009
################################################################################
+# boost
+source packages/development/boost/boost.kconfig
+
# libbsd
source packages/development/libbsd/libbsd.kconfig
diff --git a/packages/development/development.mk b/packages/development/development.mk
index 32ba18e..b070ebc 100644
--- a/packages/development/development.mk
+++ b/packages/development/development.mk
@@ -25,6 +25,9 @@
embtk_pkgincdir := packages/development
+# boost
+$(call embtk_include_pkg,boost)
+
# libbsd
$(call embtk_include_pkg,libbsd)