From 4c33390408eef8c515808a34be5104bae68f9b20 Mon Sep 17 00:00:00 2001 From: Rene Rivera Date: Mon, 11 Mar 2024 08:38:17 -0500 Subject: [PATCH 01/10] Make the library modular usable. --- build.jam | 22 ++++++++++++++++++++++ build/Jamfile.v2 | 6 ++---- 2 files changed, 24 insertions(+), 4 deletions(-) create mode 100644 build.jam diff --git a/build.jam b/build.jam new file mode 100644 index 00000000..04069bc6 --- /dev/null +++ b/build.jam @@ -0,0 +1,22 @@ +# Copyright René Ferdinand Rivera Morell 2023 +# 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/nowide + : common-requirements + /boost/config//boost_config + /boost/filesystem//boost_filesystem + include + ; + +explicit + [ alias boost_nowide : build//boost_nowide ] + [ alias all : boost_nowide test ] + ; + +call-if : boost-library nowide + : install boost_nowide + ; diff --git a/build/Jamfile.v2 b/build/Jamfile.v2 index 8ea6ae74..73755de2 100644 --- a/build/Jamfile.v2 +++ b/build/Jamfile.v2 @@ -7,7 +7,7 @@ # # See library home page at https://www.boost.org/libs/nowide -import ../../config/checks/config : requires ; +import config : requires ; import configure ; import feature ; @@ -17,7 +17,7 @@ local requirements = shared:BOOST_NOWIDE_DYN_LINK=1 ; -project boost/nowide +project : source-location ../src : requirements $(requirements) [ requires @@ -46,5 +46,3 @@ lib boost_nowide : $(SOURCES).cpp : ../src ; - -boost-install boost_nowide ; From c66a3d3cca41a5bdf8866dddf642aa494f963245 Mon Sep 17 00:00:00 2001 From: Rene Rivera Date: Fri, 29 Mar 2024 21:15:59 -0500 Subject: [PATCH 02/10] Switch to library requirements instead of source. As source puts extra source in install targets. --- build.jam | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/build.jam b/build.jam index 04069bc6..fa1801bd 100644 --- a/build.jam +++ b/build.jam @@ -7,8 +7,8 @@ import project ; project /boost/nowide : common-requirements - /boost/config//boost_config - /boost/filesystem//boost_filesystem + /boost/config//boost_config + /boost/filesystem//boost_filesystem include ; From 1525dc1e35c4471f8f36dc71d60e5a139035fdea Mon Sep 17 00:00:00 2001 From: Rene Rivera Date: Sun, 28 Apr 2024 20:16:16 -0500 Subject: [PATCH 03/10] Add missing NO_LIB usage requirements. --- build/Jamfile.v2 | 3 ++- 1 file changed, 2 insertions(+), 1 deletion(-) diff --git a/build/Jamfile.v2 b/build/Jamfile.v2 index 73755de2..198abe66 100644 --- a/build/Jamfile.v2 +++ b/build/Jamfile.v2 @@ -1,7 +1,7 @@ # Copyright (c) 2002, 2006 Beman Dawes # Copyright (c) 2012 Artyom Beilis (Tonkikh) # Copyright (c) 2020-2021 Alexander Grund -# +# # Distributed under the Boost Software License, Version 1.0. # https://www.boost.org/LICENSE_1_0.txt # @@ -15,6 +15,7 @@ feature.feature boost.nowide.lfs : auto no : optional propagated ; local requirements = shared:BOOST_NOWIDE_DYN_LINK=1 + BOOST_NOWIDE_NO_LIB=1 ; project From a4d7bd27a6bcefdd1a3a456e1629f2254aca9239 Mon Sep 17 00:00:00 2001 From: Rene Rivera Date: Fri, 3 May 2024 19:18:48 -0500 Subject: [PATCH 04/10] Add missing use dep for building the file_test_helpers lib. --- test/Jamfile.v2 | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/test/Jamfile.v2 b/test/Jamfile.v2 index f632ed58..8aa57eab 100644 --- a/test/Jamfile.v2 +++ b/test/Jamfile.v2 @@ -1,7 +1,7 @@ # Copyright (c) 2003, 2006 Beman Dawes # Copyright (c) 2012 Artyom Beilis (Tonkikh) # Copyright (c) 2020-2022 Alexander Grund -# +# # Distributed under the Boost Software License, Version 1.0. # https://www.boost.org/LICENSE_1_0.txt @@ -23,11 +23,11 @@ project : requirements . pedantic on - [ check-target-builds ../config//cxx11_moveable_fstreams "std::fstream is moveable and swappable" : : no ] + [ check-target-builds ../config//cxx11_moveable_fstreams "std::fstream is moveable and swappable" : : no ] ; lib shell32 ; -lib file_test_helpers : file_test_helpers.cpp : static -/boost/nowide//boost_nowide ; +lib file_test_helpers : file_test_helpers.cpp : static -/boost/nowide//boost_nowide /boost/nowide//boost_nowide ; explicit file_test_helpers ; run test_codecvt.cpp ; From 3d7e61b4b520eb10d96a241f475ef1f6e679ca47 Mon Sep 17 00:00:00 2001 From: Rene Rivera Date: Sat, 4 May 2024 23:30:44 -0500 Subject: [PATCH 05/10] Add missing import-search for cconfig/predef checks. --- build/Jamfile.v2 | 1 + 1 file changed, 1 insertion(+) diff --git a/build/Jamfile.v2 b/build/Jamfile.v2 index 198abe66..1abc8828 100644 --- a/build/Jamfile.v2 +++ b/build/Jamfile.v2 @@ -7,6 +7,7 @@ # # See library home page at https://www.boost.org/libs/nowide +import-search /boost/config/checks ; import config : requires ; import configure ; import feature ; From 1fe91022f82ea902ca0e527fe2f1fb875b915382 Mon Sep 17 00:00:00 2001 From: Rene Rivera Date: Sun, 5 May 2024 09:00:01 -0500 Subject: [PATCH 06/10] Add requires-b2 check to top-level build file. --- build.jam | 2 ++ 1 file changed, 2 insertions(+) diff --git a/build.jam b/build.jam index fa1801bd..799030e3 100644 --- a/build.jam +++ b/build.jam @@ -3,6 +3,8 @@ # (See accompanying file LICENSE_1_0.txt or copy at # http://www.boost.org/LICENSE_1_0.txt) +require-b2 5.1 ; + import project ; project /boost/nowide From cfa8548a338529f2bd993e77d888e449d60d732a Mon Sep 17 00:00:00 2001 From: Rene Rivera Date: Fri, 14 Jun 2024 11:33:56 -0500 Subject: [PATCH 07/10] Bump B2 require to 5.2 --- build.jam | 4 +--- 1 file changed, 1 insertion(+), 3 deletions(-) diff --git a/build.jam b/build.jam index 799030e3..b4a3e6df 100644 --- a/build.jam +++ b/build.jam @@ -3,9 +3,7 @@ # (See accompanying file LICENSE_1_0.txt or copy at # http://www.boost.org/LICENSE_1_0.txt) -require-b2 5.1 ; - -import project ; +require-b2 5.2 ; project /boost/nowide : common-requirements From 44fb92dd25198eae55d55543e846cf8e832eea79 Mon Sep 17 00:00:00 2001 From: Rene Rivera Date: Sat, 20 Jul 2024 22:52:05 -0500 Subject: [PATCH 08/10] Update copyright dates. --- build.jam | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build.jam b/build.jam index b4a3e6df..76aec6e9 100644 --- a/build.jam +++ b/build.jam @@ -1,4 +1,4 @@ -# Copyright René Ferdinand Rivera Morell 2023 +# Copyright René Ferdinand Rivera Morell 2023-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) From c548d0c37309a8d2163b67d55276c4517d1229b4 Mon Sep 17 00:00:00 2001 From: Rene Rivera Date: Tue, 23 Jul 2024 22:34:24 -0500 Subject: [PATCH 09/10] Move inter-lib dependencies to a project variable and into the build targets. --- build.jam | 7 +++++-- build/Jamfile.v2 | 1 + 2 files changed, 6 insertions(+), 2 deletions(-) diff --git a/build.jam b/build.jam index 76aec6e9..49f3022e 100644 --- a/build.jam +++ b/build.jam @@ -5,10 +5,12 @@ require-b2 5.2 ; +constant boost_dependencies : + /boost/config//boost_config + /boost/filesystem//boost_filesystem ; + project /boost/nowide : common-requirements - /boost/config//boost_config - /boost/filesystem//boost_filesystem include ; @@ -20,3 +22,4 @@ explicit call-if : boost-library nowide : install boost_nowide ; + diff --git a/build/Jamfile.v2 b/build/Jamfile.v2 index 1abc8828..e776f03a 100644 --- a/build/Jamfile.v2 +++ b/build/Jamfile.v2 @@ -21,6 +21,7 @@ local requirements = project : source-location ../src + : common-requirements $(boost_dependencies) : requirements $(requirements) [ requires cxx11_auto_declarations From 02e9a8fefab3460115290f446bd124bd26e14611 Mon Sep 17 00:00:00 2001 From: Rene Rivera Date: Thu, 15 Aug 2024 21:20:54 -0500 Subject: [PATCH 10/10] The custom feature(s) need to be at the root as they need to be defined for all subprojects on load. --- build.jam | 4 ++++ build/Jamfile.v2 | 3 --- 2 files changed, 4 insertions(+), 3 deletions(-) diff --git a/build.jam b/build.jam index 49f3022e..133aeb89 100644 --- a/build.jam +++ b/build.jam @@ -5,6 +5,10 @@ require-b2 5.2 ; +import feature ; + +feature.feature boost.nowide.lfs : auto no : optional propagated ; + constant boost_dependencies : /boost/config//boost_config /boost/filesystem//boost_filesystem ; diff --git a/build/Jamfile.v2 b/build/Jamfile.v2 index e776f03a..49271b05 100644 --- a/build/Jamfile.v2 +++ b/build/Jamfile.v2 @@ -10,9 +10,6 @@ import-search /boost/config/checks ; import config : requires ; import configure ; -import feature ; - -feature.feature boost.nowide.lfs : auto no : optional propagated ; local requirements = shared:BOOST_NOWIDE_DYN_LINK=1