GithubHelp home page GithubHelp logo

swq123459 / header_only_boost Goto Github PK

View Code? Open in Web Editor NEW

This project forked from ki11roy/header_only_boost

0.0 1.0 0.0 14 KB

Scripts producing a header only subset of Boost libraries

Shell 100.00%

header_only_boost's Introduction

How To Build Header Only Boost

Couple of scripts to build true header only Boost libraries. Tested with Ubuntu 16.04 and Boost 1.70.0.

The main idea is to use Boost BCP tool on every library to find out if it produces 'src' folders in dependencies. We don't want extra dependencies so will remove everything except 'src' in 'libs' (examples, docs).

Prepare

Download and unpack Boost and remove everything unneeded.

./prepare.sh

List

Prepare lists of libraries to extraction. Runs bcp on every library and collects dependencies.

Produces header_only_libraries.txt and all_libraries.txt (with dependencies).

./list.sh
expand

accumulators 23M
align 872K
any 1.7M
array 688K
assert 616K
assign 9.1M
bind 928K
callable_traits 368K
circular_buffer 2.8M
compatibility 132K
concept_check 2.3M
config 720K
container_hash 1.5M
conversion 24K
convert 36M
core 752K
crc 892K
detail 11M
disjoint_sets 44K
dynamic_bitset 9.6M
endian 1.8M
foreach 8.1M
format 4.2M
function 8.9M
functional 16M
function_types 10M
fusion 32M
hana 20M
headers 16K
heap 9.9M
histogram 12M
hof 504K
integer 792K
intrusive 3.3M
io 640K
iterator 16M
lambda 7.6M
lexical_cast 11M
local_function 9.8M
logic 672K
metaparse 12M
move 1.2M
mp11 208K
mpl 11M
msm 30M
multi_array 8.9M
multi_index 12M
optional 3.5M
parameter_python 20K
phoenix 40M
poly_collection 17M
polygon 2.1M
pool 1.8M
predef 684K
preprocessor 3.4M
property_tree 14M
proto 21M
ptr_container 12M
qvm 3.2M
ratio 7.8M
rational 1.6M
safe_numerics 1.3M
scope_exit 9.1M
signals2 12M
smart_ptr 2.7M
sort 4.5M
static_assert 632K
throw_exception 644K
tokenizer 8.0M
tti 11M
tuple 940K
type_index 3.3M
typeof 7.2M
type_traits 2.0M
units 17M
unordered 4.3M
utility 3.5M
uuid 12M
variant 9.8M
vmd 2.9M
winapi 1.3M
xpressive 26M
yap 3.0M

Extract

Run bcp to get final distributive.

./extract.sh

Result

For those who are lazy here is the resulting bcp command line for the latest version (1.70):

bcp \
accumulators \
align \
any \
array \
assert \
assign \
bind \
callable_traits \
circular_buffer \
compatibility \
concept_check \
config \
container_hash \
conversion \
convert \
core \
crc \
detail \
disjoint_sets \
dynamic_bitset \
endian \
foreach \
format \
function \
functional \
function_types \
fusion \
hana \
headers \
heap \
histogram \
hof \
integer \
intrusive \
io \
iterator \
lambda \
lexical_cast \
local_function \
logic \
metaparse \
move \
mp11 \
mpl \
msm \
multi_array \
multi_index \
optional \
parameter_python \
phoenix \
poly_collection \
polygon \
pool \
predef \
preprocessor \
property_tree \
proto \
ptr_container \
qvm \
ratio \
rational \
safe_numerics \
scope_exit \
signals2 \
smart_ptr \
sort \
static_assert \
throw_exception \
tokenizer \
tti \
tuple \
type_index \
typeof \
type_traits \
units \
unordered \
utility \
uuid \
variant \
vmd \
winapi \
xpressive \
yap \
/tmp/boost

Perl Package

There is a Perl package which contains some of the listed libraries:

Archive

References

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    ๐Ÿ–– Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. ๐Ÿ“Š๐Ÿ“ˆ๐ŸŽ‰

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google โค๏ธ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.