Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

boost: ostracize boost_system #7482

Merged
merged 1 commit into from
Oct 6, 2021
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
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 ;