Files
bpfire/lfs/boost
Adolf Belka bbe2799bae boost: Update to 1_76_0 and using python3
- Update from 1_71_0 to 1_76_0
- Update rootfile for x86_64 and copy for other architectures by replacing
    x64 with x32 for i586, a32 for armv5tel and a64 for aarch64
- Make build use python3
- add link=shared to build to only have shared libraries created, except for
    libboost_exception and libboost_test_exec_monitor which are only
    created as static versions
- Changelog
    Fixes
      algorithm::reduce with crop now does not remove the counts in flow
        bins anymore if the selected range actually overlaps with the flow
        bins, making the treatment of flow bins consistent with inner bins
      accumulators::mean and accumulators::weighted_mean now compute the
        correct variance when operator+= was called, for example, when
        histograms with accumulators are added; this was wrong before
        leading to too small variances
      detection of weight support in user-defined accumulators was broken
        at compile-time if accumulator used operator+= instead of
        operator(); tests only accidentally passed for builtin weighted_sum

Signed-off-by: Adolf Belka <adolf.belka@ipfire.org>
Signed-off-by: Michael Tremer <michael.tremer@ipfire.org>
2021-05-10 19:27:27 +00:00

108 lines
3.8 KiB
Plaintext

###############################################################################
# #
# IPFire.org - A linux based firewall #
# Copyright (C) 2007-2018 IPFire Team <info@ipfire.org> #
# #
# 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 3 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/>. #
# #
###############################################################################
###############################################################################
# Definitions
###############################################################################
include Config
VER = 1_76_0
THISAPP = boost_$(VER)
DL_FILE = $(THISAPP).tar.gz
DL_FROM = $(URL_IPFIRE)
DIR_APP = $(DIR_SRC)/$(THISAPP)
TARGET = $(DIR_INFO)/$(THISAPP)
CFLAGS += -O3 -fno-strict-aliasing
CXXFLAGS += -O3 -fno-strict-aliasing
# The compiler uses a lot of memory to compile boost, hence we reduce
# the total number of processes a little bit to be able to build on
# smaller machines
MAX_PARALLELISM = $(shell echo $$(( $(SYSTEM_MEMORY) / 512)))
CONFIGURE_OPTIONS = \
--prefix=/usr \
--layout=tagged \
--without-chrono \
--without-context \
--without-coroutine \
--without-date_time \
--without-fiber \
--without-graph_parallel \
--without-mpi \
--without-program_options \
--build-dir=serial \
variant=release \
threading=single,multi \
debug-symbols=off \
pch=off \
link=shared \
cflags="$(CFLAGS)" \
cxxflags="$(CXXFLAGS)"
###############################################################################
# Top-level Rules
###############################################################################
objects = $(DL_FILE)
$(DL_FILE) = $(DL_FROM)/$(DL_FILE)
$(DL_FILE)_MD5 = e425bf1f1d8c36a3cd464884e74f007a
install : $(TARGET)
check : $(patsubst %,$(DIR_CHK)/%,$(objects))
download :$(patsubst %,$(DIR_DL)/%,$(objects))
md5 : $(subst %,%_MD5,$(objects))
###############################################################################
# Downloading, checking, md5sum
###############################################################################
$(patsubst %,$(DIR_CHK)/%,$(objects)) :
@$(CHECK)
$(patsubst %,$(DIR_DL)/%,$(objects)) :
@$(LOAD)
$(subst %,%_MD5,$(objects)) :
@$(MD5)
###############################################################################
# Installation Details
###############################################################################
$(TARGET) : $(patsubst %,$(DIR_DL)/%,$(objects))
@$(PREBUILD)
@rm -rf $(DIR_APP) && cd $(DIR_SRC) && tar axf $(DIR_DL)/$(DL_FILE)
cd $(DIR_APP) && ./bootstrap.sh --with-toolset=gcc --with-python=python3
cd $(DIR_APP) && ./b2 -d+2 -q $(MAKETUNING) $(CONFIGURE_OPTIONS) stage
cd $(DIR_APP) && ./b2 $(CONFIGURE_OPTIONS) install
@rm -rf $(DIR_APP)
@$(POSTBUILD)