Skip to content

Commit

Permalink
(#7482) boost: ostracize boost_system
Browse files Browse the repository at this point in the history
  • Loading branch information
madebr authored Oct 6, 2021
1 parent 9dc51ca commit c9dd6e6
Show file tree
Hide file tree
Showing 12 changed files with 228 additions and 0 deletions.
66 changes: 66 additions & 0 deletions recipes/boost/all/conandata.yml
Original file line number Diff line number Diff line change
Expand Up @@ -66,6 +66,26 @@ patches:
base_path: "source_subfolder"
- patch_file: "patches/boost_mpi_check.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-chrono-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-contract-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-coroutine-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-filesystem-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-locale-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-log-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-random-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-thread-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-timer-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-type_erasure-no-system.patch"
base_path: "source_subfolder"
1.70.0:
- patch_file: "patches/0001-beast-fix-moved-from-executor.patch"
base_path: "source_subfolder"
Expand All @@ -83,6 +103,14 @@ patches:
base_path: "source_subfolder"
- patch_file: "patches/boost_mpi_check.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-contract-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-locale-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-random-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-type_erasure-no-system.patch"
base_path: "source_subfolder"
1.71.0:
- patch_file: "patches/bcp_namespace_issues_1_71.patch"
base_path: "source_subfolder"
Expand All @@ -98,6 +126,14 @@ patches:
base_path: "source_subfolder"
- patch_file: "patches/boost_mpi_check.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-contract-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-locale-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-random-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-type_erasure-no-system.patch"
base_path: "source_subfolder"
1.72.0:
- patch_file: "patches/bcp_namespace_issues_1_72.patch"
base_path: "source_subfolder"
Expand All @@ -117,6 +153,12 @@ patches:
base_path: "source_subfolder"
- patch_file: "patches/boost_mpi_check.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-locale-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-random-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-type_erasure-no-system.patch"
base_path: "source_subfolder"
1.73.0:
- patch_file: "patches/boost_build_qcc_fix_debug_build_parameter.patch"
base_path: "source_subfolder"
Expand All @@ -126,6 +168,12 @@ patches:
base_path: "source_subfolder"
- patch_file: "patches/boost_mpi_check.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-locale-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-random-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-type_erasure-no-system.patch"
base_path: "source_subfolder"
1.74.0:
- patch_file: "patches/boost_build_qcc_fix_debug_build_parameter_since_1_74.patch"
base_path: "source_subfolder"
Expand All @@ -135,6 +183,12 @@ patches:
base_path: "source_subfolder"
- patch_file: "patches/boost_mpi_check.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-locale-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-random-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-type_erasure-no-system.patch"
base_path: "source_subfolder"
1.75.0:
- patch_file: "patches/boost_build_qcc_fix_debug_build_parameter_since_1_74.patch"
base_path: "source_subfolder"
Expand All @@ -144,13 +198,25 @@ patches:
base_path: "source_subfolder"
- patch_file: "patches/boost_mpi_check.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-locale-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.77.0-type_erasure-no-system.patch"
base_path: "source_subfolder"
1.76.0:
- patch_file: "patches/boost_locale_fail_on_missing_backend.patch"
base_path: "source_subfolder"
- patch_file: "patches/boost_mpi_check.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-locale-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.77.0-type_erasure-no-system.patch"
base_path: "source_subfolder"
1.77.0:
- patch_file: "patches/boost_locale_fail_on_missing_backend.patch"
base_path: "source_subfolder"
- patch_file: "patches/boost_1_77_mpi_check.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.69.0-locale-no-system.patch"
base_path: "source_subfolder"
- patch_file: "patches/1.77.0-type_erasure-no-system.patch"
base_path: "source_subfolder"
21 changes: 21 additions & 0 deletions recipes/boost/all/patches/1.69.0-chrono-no-system.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
This library links to boost_system, even though that library is header-only.
--- libs/chrono/build/Jamfile.v2
+++ libs/chrono/build/Jamfile.v2
@@ -15,7 +15,7 @@
<target-os>linux:<linkflags>"-lrt -lpthread"
<toolset>pgi:<linkflags>"-lrt"
#<threading>single:<define>BOOST_CHRONO_THREAD_DISABLED
- <library>/boost/system//boost_system
+
#<define>BOOST_ERROR_CODE_HEADER_ONLY
#<define>BOOST_SYSTEM_INLINED
#<define>BOOST_COMMON_TYPE_USES_STATIC_ASSERT
@@ -80,7 +80,7 @@

: usage-requirements # pass these requirement to dependents (i.e. users)
<threading>single:<define>BOOST_CHRONO_THREAD_DISABLED
- <library>/boost/system//boost_system
+
#<define>BOOST_ERROR_CODE_HEADER_ONLY
#<define>BOOST_SYSTEM_INLINED
#<define>BOOST_COMMON_TYPE_USES_STATIC_ASSERT
11 changes: 11 additions & 0 deletions recipes/boost/all/patches/1.69.0-contract-no-system.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
This library links to boost_system, even though that library is header-only.
--- libs/contract/build/Jamfile.v2
+++ libs/contract/build/Jamfile.v2
@@ -18,5 +18,5 @@
;

# If lib as header-only, none of following will be used.
-lib boost_contract : contract.cpp : <link>shared <library>/boost//system ;
-lib boost_contract : contract.cpp : <link>static <library>/boost//system ;
+lib boost_contract : contract.cpp : <link>shared ;
+lib boost_contract : contract.cpp : <link>static ;
21 changes: 21 additions & 0 deletions recipes/boost/all/patches/1.69.0-coroutine-no-system.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
This library links to boost_system, even though that library is header-only.
--- libs/coroutine/build/Jamfile.v2
+++ libs/coroutine/build/Jamfile.v2
@@ -11,7 +11,7 @@
project boost/coroutine
: requirements
<library>/boost/context//boost_context
- <library>/boost/system//boost_system
+
<library>/boost/thread//boost_thread
<toolset>gcc,<segmented-stacks>on:<cxxflags>-fsplit-stack
<toolset>gcc,<segmented-stacks>on:<cxxflags>-DBOOST_USE_SEGMENTED_STACKS
@@ -40,7 +40,7 @@
exceptions.cpp
stack_traits_sources
: <link>shared:<library>../../context/build//boost_context
- <link>shared:<library>../../system/build//boost_system
+
<link>shared:<library>../../thread/build//boost_thread
;

21 changes: 21 additions & 0 deletions recipes/boost/all/patches/1.69.0-filesystem-no-system.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
This library links to boost_system, even though that library is header-only.
--- libs/filesystem/build/Jamfile.v2
+++ libs/filesystem/build/Jamfile.v2
@@ -26,7 +26,7 @@
;

lib boost_filesystem
- : $(SOURCES).cpp ../../system/build//boost_system
+ : $(SOURCES).cpp
: <link>shared:<define>BOOST_FILESYSTEM_DYN_LINK=1
<link>static:<define>BOOST_FILESYSTEM_STATIC_LINK=1
:
@@ -36,7 +36,7 @@
# means those clients have to be directly linked to Boost.System. For static
# linking this happens anyway, but for shared we need to make it happen. Since
# doing so is harmless even when not needed, we do it for all platforms.
- <link>shared:<library>../../system/build//boost_system
+
;

boost-install boost_filesystem ;
12 changes: 12 additions & 0 deletions recipes/boost/all/patches/1.69.0-locale-no-system.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
This library links to boost_system, even though that library is header-only.
--- libs/locale/build/Jamfile.v2
+++ libs/locale/build/Jamfile.v2
@@ -403,7 +403,7 @@
result += <source>util/gregorian.cpp ;
}

- result += <library>../../system/build//boost_system ;
+


if "$(flags-only)" = "flags"
12 changes: 12 additions & 0 deletions recipes/boost/all/patches/1.69.0-log-no-system.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
This library links to boost_system, even though that library is header-only.
--- libs/log/build/Jamfile.v2
+++ libs/log/build/Jamfile.v2
@@ -215,7 +215,7 @@

<library>/boost/date_time//boost_date_time
<library>/boost/filesystem//boost_filesystem
- <library>/boost/system//boost_system
+
<threading>single:<define>BOOST_LOG_NO_THREADS
<threading>multi:<library>/boost/atomic//boost_atomic
<threading>multi:<library>/boost/thread//boost_thread
11 changes: 11 additions & 0 deletions recipes/boost/all/patches/1.69.0-random-no-system.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
This library links to boost_system, even though that library is header-only.
--- libs/random/build/Jamfile.v2
+++ libs/random/build/Jamfile.v2
@@ -13,6 +13,6 @@
: usage-requirements <link>shared:<define>BOOST_RANDOM_DYN_LINK
;

-lib boost_random : [ glob *.cpp ] /boost//system ;
+lib boost_random : [ glob *.cpp ] ;

boost-install boost_random ;
21 changes: 21 additions & 0 deletions recipes/boost/all/patches/1.69.0-thread-no-system.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
This library links to boost_system, even though that library is header-only.
--- libs/thread/build/Jamfile.v2
+++ libs/thread/build/Jamfile.v2
@@ -54,7 +54,7 @@
#<define>BOOST_SYSTEM_NO_DEPRECATED
#<define>BOOST_THREAD_DONT_PROVIDE_INTERRUPTIONS

- <library>/boost/system//boost_system
+
#-pedantic -ansi -std=gnu++0x -Wextra -fpermissive
<warnings>all
<toolset>gcc:<cxxflags>-Wextra
@@ -140,7 +140,7 @@
#<define>BOOST_THREAD_THROW_IF_PRECONDITION_NOT_SATISFIED
#<define>BOOST_SYSTEM_NO_DEPRECATED
#<define>BOOST_THREAD_DONT_PROVIDE_INTERRUPTIONS
- <library>/boost/system//boost_system
+
;

rule tag ( name : type ? : property-set )
12 changes: 12 additions & 0 deletions recipes/boost/all/patches/1.69.0-timer-no-system.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
This library links to boost_system, even though that library is header-only.
--- libs/timer/build/Jamfile.v2
+++ libs/timer/build/Jamfile.v2
@@ -11,7 +11,7 @@
: source-location ../src
: requirements
<library>/boost/chrono//boost_chrono
- <library>/boost/system//boost_system
+
: usage-requirements # pass these requirement to dependants (i.e. users)
<link>shared:<define>BOOST_TIMER_DYN_LINK=1
<link>static:<define>BOOST_TIMER_STATIC_LINK=1
9 changes: 9 additions & 0 deletions recipes/boost/all/patches/1.69.0-type_erasure-no-system.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,9 @@
This library links to boost_system, even though that library is header-only.
--- libs/type_erasure/build/Jamfile.v2
+++ libs/type_erasure/build/Jamfile.v2
@@ -12,4 +12,4 @@
: usage-requirements <link>shared:<define>BOOST_TYPE_ERASURE_DYN_LINK
;

-lib boost_type_erasure : dynamic_binding.cpp /boost//thread /boost//system ;
+lib boost_type_erasure : dynamic_binding.cpp /boost//thread ;
11 changes: 11 additions & 0 deletions recipes/boost/all/patches/1.77.0-type_erasure-no-system.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
This library links to boost_system, even though that library is header-only.
--- libs/type_erasure/build/Jamfile.v2
+++ libs/type_erasure/build/Jamfile.v2
@@ -12,6 +12,6 @@
: usage-requirements <link>shared:<define>BOOST_TYPE_ERASURE_DYN_LINK
;

-lib boost_type_erasure : dynamic_binding.cpp /boost//thread /boost//system ;
+lib boost_type_erasure : dynamic_binding.cpp /boost//thread ;

boost-install boost_type_erasure ;

0 comments on commit c9dd6e6

Please sign in to comment.