Make the library modular usable.

This commit is contained in:
Rene Rivera 2024-03-11 08:38:17 -05:00
parent 46ddc517a2
commit 3d5eba2410
4 changed files with 88 additions and 22 deletions

61
build.jam Normal file
View File

@ -0,0 +1,61 @@
# Copyright René Ferdinand Rivera Morell 2024
# Distributed under the Boost Software License, Version 1.0.
# (See accompanying file LICENSE_1_0.txt or copy at
# http://www.boost.org/LICENSE_1_0.txt)
import project ;
project /boost/graph
: common-requirements
<source>/boost/algorithm//boost_algorithm
<source>/boost/any//boost_any
<source>/boost/array//boost_array
<source>/boost/assert//boost_assert
<source>/boost/bimap//boost_bimap
<source>/boost/bind//boost_bind
<source>/boost/concept_check//boost_concept_check
<source>/boost/config//boost_config
<source>/boost/container_hash//boost_container_hash
<source>/boost/conversion//boost_conversion
<source>/boost/core//boost_core
<source>/boost/detail//boost_detail
<source>/boost/foreach//boost_foreach
<source>/boost/function//boost_function
<source>/boost/integer//boost_integer
<source>/boost/iterator//boost_iterator
<source>/boost/lexical_cast//boost_lexical_cast
<source>/boost/math//boost_math
<source>/boost/move//boost_move
<source>/boost/mpl//boost_mpl
<source>/boost/multi_index//boost_multi_index
<source>/boost/optional//boost_optional
<source>/boost/parameter//boost_parameter
<source>/boost/preprocessor//boost_preprocessor
<source>/boost/property_map//boost_property_map
<source>/boost/property_tree//boost_property_tree
<source>/boost/random//boost_random
<source>/boost/range//boost_range
<source>/boost/regex//boost_regex
<source>/boost/serialization//boost_serialization
<source>/boost/smart_ptr//boost_smart_ptr
<source>/boost/spirit//boost_spirit
<source>/boost/static_assert//boost_static_assert
<source>/boost/throw_exception//boost_throw_exception
<source>/boost/tti//boost_tti
<source>/boost/tuple//boost_tuple
<source>/boost/type_traits//boost_type_traits
<source>/boost/typeof//boost_typeof
<source>/boost/unordered//boost_unordered
<source>/boost/utility//boost_utility
<source>/boost/xpressive//boost_xpressive
<include>include
;
explicit
[ alias boost_graph : build//boost_graph ]
[ alias all : boost_graph example test ]
;
call-if : boost-library graph
: install boost_graph
;

View File

@ -6,7 +6,7 @@
import mpi ;
project boost/graph
project
: requirements <include>../src
: source-location ../src
;
@ -24,5 +24,3 @@ lib boost_graph
:
:
;
boost-install boost_graph ;

View File

@ -3,7 +3,10 @@
# Distributed under the Boost Software License, Version 1.0. (See accompanying
# file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
import ../../config/checks/config : requires ;
require-b2 5.0.1 ;
import-search /boost/config/checks ;
import config : requires ;
import modules ;
import path ;
@ -75,15 +78,15 @@ run filtered_graph.cpp ;
run filtered_graph_edge_range.cpp ;
run filtered_vec_as_graph.cpp ;
run filtered-copy-example.cpp ;
exe fr_layout : fr_layout.cpp : [ requires cxx11_noexcept cxx11_rvalue_references sfinae_expr cxx11_auto_declarations cxx11_lambdas cxx11_unified_initialization_syntax cxx11_hdr_tuple cxx11_hdr_initializer_list cxx11_hdr_chrono cxx11_thread_local cxx11_constexpr cxx11_nullptr cxx11_numeric_limits cxx11_decltype cxx11_hdr_array cxx11_hdr_atomic cxx11_hdr_type_traits cxx11_allocator cxx11_explicit_conversion_operators ] ;
exe fr_layout : fr_layout.cpp /boost/timer//boost_timer : [ requires cxx11_noexcept cxx11_rvalue_references sfinae_expr cxx11_auto_declarations cxx11_lambdas cxx11_unified_initialization_syntax cxx11_hdr_tuple cxx11_hdr_initializer_list cxx11_hdr_chrono cxx11_thread_local cxx11_constexpr cxx11_nullptr cxx11_numeric_limits cxx11_decltype cxx11_hdr_array cxx11_hdr_atomic cxx11_hdr_type_traits cxx11_allocator cxx11_explicit_conversion_operators ] ;
run gerdemann.cpp ;
run graph.cpp ;
run graph_as_tree.cpp ;
run graph_property.cpp ;
run graph-assoc-types.cpp ;
run graph-property-iter-eg.cpp ;
run graph-thingie.cpp ../build//boost_graph ;
run graphviz.cpp ../build//boost_graph : $(TEST_DIR)/graphviz_example.dot ;
run graph-thingie.cpp /boost/graph//boost_graph ;
run graphviz.cpp /boost/graph//boost_graph : $(TEST_DIR)/graphviz_example.dot ;
run grid_graph_example.cpp ;
run grid_graph_properties.cpp ;
exe hawick_circuits : hawick_circuits.cpp ;
@ -114,7 +117,7 @@ exe mean_geodesic : mean_geodesic.cpp ;
exe minimum_degree_ordering : minimum_degree_ordering.cpp ;
run modify_graph.cpp ;
run neighbor_bfs.cpp ;
run ospf-example.cpp ../build//boost_graph : $(TEST_DIR)/figs/ospf-graph.dot $(TEST_DIR)/figs/ospf-sptree.dot $(TEST_DIR)/routing-table.dat ;
run ospf-example.cpp /boost/graph//boost_graph : $(TEST_DIR)/figs/ospf-graph.dot $(TEST_DIR)/figs/ospf-sptree.dot $(TEST_DIR)/routing-table.dat ;
run parallel-compile-time.cpp : $(TEST_DIR)/makefile-dependencies.dat $(TEST_DIR)/makefile-target-names.dat $(TEST_DIR)/target-compile-costs.dat ;
run planar_face_traversal.cpp ;
run prim-example.cpp ;
@ -129,7 +132,7 @@ run put-get-helper-eg.cpp ;
run quick_tour.cpp ;
run quick-tour.cpp ;
run r_c_shortest_paths_example.cpp ;
run read_graphviz.cpp ../build//boost_graph ;
run read_graphviz.cpp /boost/graph//boost_graph ;
exe read_write_dimacs : read_write_dimacs-eg.cpp ;
run remove_edge_if_bidir.cpp ;
run remove_edge_if_dir.cpp ;
@ -207,7 +210,7 @@ explicit girth ;
#run edge-connectivity.cpp ;
#
# These compile, but still use the old graphviz interface and die and runtime:
# run strong_components.cpp ../build//boost_graph ;
# run strong_components.cpp /boost/graph//boost_graph ;
#

View File

@ -7,9 +7,12 @@
# Define SGB (stanford graph base top level directory) and
# LEDA (also top level directory) at the command line of jam using -s
require-b2 5.0.1 ;
import-search /boost/config/checks ;
import modules ;
import path ;
import ../../config/checks/config : requires ;
import config : requires ;
path-constant TEST_DIR : . ;
@ -73,13 +76,14 @@ alias graph_test_regular :
[ run graph.cpp : : : <define>TEST=9 : graph_9 ]
[ compile graph_concepts.cpp ]
[ run graphviz_test.cpp
../build//boost_graph : --log_level=all ]
/boost/assign//boost_assign
/boost/graph//boost_graph : --log_level=all ]
[ run metis_test.cpp : $(METIS_INPUT_FILE) ]
[ run gursoy_atun_layout_test.cpp : : : [ requires cxx11_noexcept cxx11_rvalue_references sfinae_expr cxx11_auto_declarations cxx11_lambdas cxx11_unified_initialization_syntax cxx11_hdr_tuple cxx11_hdr_initializer_list cxx11_hdr_chrono cxx11_thread_local cxx11_constexpr cxx11_nullptr cxx11_numeric_limits cxx11_decltype cxx11_hdr_array cxx11_hdr_atomic cxx11_hdr_type_traits cxx11_allocator cxx11_explicit_conversion_operators ] ]
[ run layout_test.cpp : : : <test-info>always_show_run_output <toolset>intel:<debug-symbols>off [ requires cxx11_noexcept cxx11_rvalue_references sfinae_expr cxx11_auto_declarations cxx11_lambdas cxx11_unified_initialization_syntax cxx11_hdr_tuple cxx11_hdr_initializer_list cxx11_hdr_chrono cxx11_thread_local cxx11_constexpr cxx11_nullptr cxx11_numeric_limits cxx11_decltype cxx11_hdr_array cxx11_hdr_atomic cxx11_hdr_type_traits cxx11_allocator cxx11_explicit_conversion_operators ] ]
[ run serialize.cpp
../../serialization/build//boost_serialization
/boost/serialization//boost_serialization
: : : ]
[ compile reverse_graph_cc.cpp ]
@ -116,7 +120,7 @@ alias graph_test_regular :
[ run weighted_matching_test.cpp ]
[ run max_flow_test.cpp ]
[ run boykov_kolmogorov_max_flow_test.cpp ]
[ run cycle_ratio_tests.cpp ../build//boost_graph : $(CYCLE_RATIO_INPUT_FILE) ]
[ run cycle_ratio_tests.cpp /boost/graph//boost_graph : $(CYCLE_RATIO_INPUT_FILE) ]
[ run basic_planarity_test.cpp ]
[ run make_connected_test.cpp ]
[ run make_bicon_planar_test.cpp ]
@ -136,14 +140,14 @@ alias graph_test_regular :
[ run clustering_coefficient.cpp ]
[ run core_numbers_test.cpp ]
[ run read_propmap.cpp ]
[ run mcgregor_subgraphs_test.cpp ../build//boost_graph ]
[ run mcgregor_subgraphs_test.cpp /boost/graph//boost_graph ]
[ compile grid_graph_cc.cpp ]
[ run grid_graph_test.cpp ]
[ run incremental_components_test.cpp ]
[ run two_graphs_common_spanning_trees_test.cpp ]
[ run random_spanning_tree_test.cpp ../build//boost_graph ]
[ run two_graphs_common_spanning_trees_test.cpp /boost/assign//boost_assign ]
[ run random_spanning_tree_test.cpp /boost/graph//boost_graph ]
[ run random_matching_test.cpp : 1000 1020 ]
[ run graphml_test.cpp ../build//boost_graph : : "graphml_test.xml" ]
[ run graphml_test.cpp /boost/graph//boost_graph : : "graphml_test.xml" ]
[ run mas_test.cpp : $(TEST_DIR) ]
[ run stoer_wagner_test.cpp : $(TEST_DIR) ]
[ compile filtered_graph_properties_dijkstra.cpp ]
@ -169,12 +173,12 @@ alias graph_test_with_filesystem : :
alias graph_test_with_filesystem :
[ run all_planar_input_files_test.cpp
../../filesystem/build
../../system/build
/boost/filesystem//boost_filesystem
/boost/system//boost_system
: $(PLANAR_INPUT_FILES) ]
[ run parallel_edges_loops_test.cpp
../../filesystem/build
../../system/build
/boost/filesystem//boost_filesystem
/boost/system//boost_system
: $(PLANAR_INPUT_FILES) ]
;