ipfire-3.x/boost/boost.nm

346 lines
8.2 KiB
Plaintext

###############################################################################
# IPFire.org - An Open Source Firewall Solution #
# Copyright (C) - IPFire Development Team <info@ipfire.org> #
###############################################################################
name = boost
ver_major = 1
ver_minor = 80
ver_plevel = 0
version = %{ver_major}.%{ver_minor}.%{ver_plevel}
release = 1
groups = System/Libraries
url = https://www.boost.org/
license = Boost
summary = The Boost C++ Libraries.
description
Boost provides free peer-reviewed portable C++ source libraries. The
emphasis is on libraries which work well with the C++ Standard
Library, in the hopes of establishing existing practice for
extensions and providing reference implementations so that the Boost
libraries are suitable for eventual standardization.
end
thisapp = %{name}_%{ver_major}_%{ver_minor}_%{ver_plevel}
source_dl = https://sourceforge.net/projects/boost/files/%{name}/%{version}/
build
requires
bzip2-devel
gcc-c++
icu-devel
python3-devel
xz-devel
zlib-devel
zstd-devel
end
# Obtain python3 abiflags.
python3_abiflags = %(python3-config --abiflags)
CFLAGS += -I/usr/include/python%{python3_version}%{python3_abiflags}
CXXFLAGS += -I/usr/include/python%{python3_version}%{python3_abiflags}
configure_options = \
--layout=system \
--build-dir=serial \
\
cflags="%{CFLAGS}" \
cxxflags="%{CXXFLAGS}" \
linkflags="%{LDFLAGS}" \
variant=release \
threading=multi \
runtime-link=shared \
link=shared,static \
debug-symbols=on \
python=%{python3_version} \
pch=off
prepare_cmds
# Create build dir.
mkdir -pv %{DIR_APP}/serial
# Bootstrap build environment.
./bootstrap.sh --with-toolset=gcc --with-icu \
--with-python=%{python3}
# Support for OpenMPI
echo "using mpi ;" >> project-config.jam
end
build
# Build boost.
./b2 -d+2 -q %{PARALLELISMFLAGS} %{configure_options} stage
end
install
# Install boost.
./b2 %{PARALLELISMFLAGS} %{configure_options} install \
--prefix=%{BUILDROOT}%{prefix} \
--libdir=%{BUILDROOT}%{libdir}
end
end
packages
package %{name}
requires
boost-chrono = %{thisver}
boost-context = %{thisver}
boost-date-time = %{thisver}
boost-filesystem = %{thisver}
boost-graph = %{thisver}
boost-iostreams = %{thisver}
boost-locale = %{thisver}
boost-math = %{thisver}
boost-program-options = %{thisver}
boost-python3 = %{thisver}
boost-random = %{thisver}
boost-regex = %{thisver}
boost-serialization = %{thisver}
boost-system = %{thisver}
boost-test = %{thisver}
boost-thread = %{thisver}
boost-timer = %{thisver}
boost-wave = %{thisver}
end
end
package %{name}-chrono
summary = Run-Time component of boost chrono library.
description
Run-Time support for Boost.Chrono, a set of useful time utilities.
end
files
%{libdir}/libboost_chrono*.so.*
end
end
package %{name}-context
summary = Run-Time component of boost context library.
description
A foundational library that provides a sort of cooperative multitasking
on asingle thread.
end
files
%{libdir}/libboost_context*.so.*
end
end
package %{name}-date-time
summary = Run-Time component of boost date-time library.
description
Run-Time support for Boost Date Time, set of date-time libraries based
on generic programming concepts.
end
files
%{libdir}/libboost_date_time*.so.*
end
end
package %{name}-filesystem
summary = Run-Time component of boost filesystem library.
description
Run-Time support for the Boost Filesystem Library, which provides
portable facilities to query and manipulate paths, files, and
directories.
end
files
%{libdir}/libboost_filesystem*.so.*
end
end
package %{name}-graph
summary = Run-Time component of boost graph library.
description
Run-Time support for the BGL graph library. BGL interface and graph
components are generic, in the same sense as the the Standard Template
Library (STL).
end
files
%{libdir}/libboost_graph*.so.*
end
end
package %{name}-iostreams
summary = Run-Time component of boost iostreams library.
description
Run-Time support for Boost.IOStreams, a framework for defining streams,
stream buffers and i/o filters.
end
files
%{libdir}/libboost_iostreams*.so.*
end
end
package %{name}-locale
summary = Run-Time component of boost locale library.
description
Run-Time support for Boost.Locale, a set of localization and Unicode
handling tools.
end
files
%{libdir}/libboost_locale*.so.*
end
end
package %{name}-math
summary = Math functions for boost TR1 library.
description
Run-Time support for C99 and C++ TR1 C-style Functions from math
portion of Boost.TR1.
end
files
%{libdir}/libboost_math*.so.*
end
end
package %{name}-program-options
summary = Run-Time component of boost program_options library.
description
Run-Time support of boost program options library, which allows program
developers to obtain (name, value) pairs from the user, via
conventional methods such as command line and configuration file.
end
files
%{libdir}/libboost_program_options*.so.*
end
end
package %{name}-python3
summary = Run-Time component of boost python library for Python 3.
description
The Boost Python Library is a framework for interfacing Python and
C++. It allows you to quickly and seamlessly expose C++ classes
functions and objects to Python, and vice versa, using no special
tools -- just your C++ compiler. This package contains run-time
support for Boost Python Library compiled for Python 3.
end
files
%{libdir}/libboost_python3*.so.*
end
end
package %{name}-random
summary = Run-Time component of boost random library.
description
Run-Time support for boost random library.
end
files
%{libdir}/libboost_random*.so.*
end
end
package %{name}-regex
summary = Run-Time component of boost regular expression library.
description
Run-Time support for boost regular expression library.
end
files
%{libdir}/libboost_regex*.so.*
end
end
package %{name}-serialization
summary = Run-Time component of boost serialization library.
description
Run-Time support for serialization for persistence and marshaling.
end
files
%{libdir}/libboost_serialization*.so.*
%{libdir}/libboost_wserialization*so.*
end
end
package %{name}-system
summary = Run-Time component of boost system support library.
description
Run-Time component of Boost operating system support library, including
the diagnostics support that will be part of the C++0x standard
library.
end
files
%{libdir}/libboost_system*.so.*
end
end
package %{name}-test
summary = Run-Time component of boost test library.
description
Run-Time support for simple program testing, full unit testing, and for
program execution monitoring.
end
files
%{libdir}/libboost_prg_exec_monitor*.so.*
%{libdir}/libboost_unit_test_framework*.so.*
end
end
package %{name}-thread
summary = Run-Time component of boost thread library.
description
Run-Time component Boost.Thread library, which provides classes and
functions for managing multiple threads of execution, and for
synchronizing data between the threads or providing separate copies of
data specific to individual threads.
end
files
%{libdir}/libboost_thread*.so.*
end
end
package %{name}-timer
summary = Run-Time component of boost timer library.
description
"How long does my C++ code take to run?"
The Boost Timer library answers that question and does so portably,
with as little as one #include and one additional line of code.
end
files
%{libdir}/libboost_timer*.so.*
end
end
package %{name}-wave
summary = Run-Time component of boost C99/C++ pre-processing library.
description
Run-Time support for the Boost.Wave library, a Standards conforming,
and highly configurable implementation of the mandated C99/C++
pre-processor functionality.
end
files
%{libdir}/libboost_wave*.so.*
end
end
package %{name}-devel
template DEVEL
requires = %{name} = %{thisver}
end
package %{name}-debuginfo
template DEBUGINFO
end
end