#
# Copyright (C) 2006 OpenWrt.org
#
# This is free software, licensed under the GNU General Public License v2.
# See /LICENSE for more information.
#

include $(TOPDIR)/rules.mk

PKG_NAME:=boost-build
PKG_VERSION:=2.0-m12
PKG_RELEASE:=1

PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
PKG_SOURCE_URL:=@SF/boost
PKG_MD5SUM:=38a40f1c0c2d6eb4f14aa4cf52e9236a

PKG_HOST_ONLY:=1

include $(INCLUDE_DIR)/host-build.mk

TAR_OPTIONS:=-x -C $(HOST_BUILD_DIR) --strip-components=1

BOOST_BUILD_INSTALL_DIR:=$(STAGING_DIR_HOST)/usr/share/boost-build

define Host/Configure
	$(SED) 's,/usr/share/boost-build,$(BOOST_BUILD_INSTALL_DIR),' $(HOST_BUILD_DIR)/jam_src/jambase.c

	# Configure (crosscompile) toolset (site-config.jam)
	echo "using gcc : : $(GNU_TARGET_NAME)-gcc : <archiver>$(GNU_TARGET_NAME)-ar ;" > $(HOST_BUILD_DIR)/site-config.jam
endef

define Host/Compile
	# bjam does not provide a configure-script nor a Makefile
	( cd $(HOST_BUILD_DIR)/jam_src ; ./build.sh gcc )
endef

define Host/Install
	# Install bjam binary
	$(INSTALL_DIR) $(STAGING_DIR_HOST)/bin
	$(CP) $(HOST_BUILD_DIR)/jam_src/bin.*/bjam $(STAGING_DIR_HOST)/bin/
	# Install boost.build files
	$(INSTALL_DIR) $(BOOST_BUILD_INSTALL_DIR)
	$(INSTALL_DIR) $(BOOST_BUILD_INSTALL_DIR)/build
	$(INSTALL_DIR) $(BOOST_BUILD_INSTALL_DIR)/kernel
	$(INSTALL_DIR) $(BOOST_BUILD_INSTALL_DIR)/notes
	$(INSTALL_DIR) $(BOOST_BUILD_INSTALL_DIR)/options
	$(INSTALL_DIR) $(BOOST_BUILD_INSTALL_DIR)/tools
	$(INSTALL_DIR) $(BOOST_BUILD_INSTALL_DIR)/util
	$(CP) $(HOST_BUILD_DIR)/*.jam $(BOOST_BUILD_INSTALL_DIR)
	$(CP) $(HOST_BUILD_DIR)/build/* $(BOOST_BUILD_INSTALL_DIR)/build
	$(CP) $(HOST_BUILD_DIR)/kernel/* $(BOOST_BUILD_INSTALL_DIR)/kernel
	$(CP) $(HOST_BUILD_DIR)/notes/* $(BOOST_BUILD_INSTALL_DIR)/notes
	$(CP) $(HOST_BUILD_DIR)/options/* $(BOOST_BUILD_INSTALL_DIR)/options
	$(CP) $(HOST_BUILD_DIR)/tools/* $(BOOST_BUILD_INSTALL_DIR)/tools
	$(CP) $(HOST_BUILD_DIR)/util/* $(BOOST_BUILD_INSTALL_DIR)/util
endef

define Host/Clean
	$(RM) $(STAGING_DIR_HOST)/bin/bjam
	$(RM) $(BOOST_BUILD_INSTALL_DIR)
endef

$(eval $(call HostBuild))
