Skip to content

Commit 291cedc

Browse files
committed
Merge branch 'modular' of https://github.com/grafikrobot/boostorg.interprocess into grafikrobot-modular
2 parents 8028d33 + 62acbe0 commit 291cedc

File tree

6 files changed

+78
-56
lines changed

6 files changed

+78
-56
lines changed

Jamfile.v2

-5
This file was deleted.

build.jam

+31
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,31 @@
1+
# Copyright René Ferdinand Rivera Morell 2023-2024
2+
# Distributed under the Boost Software License, Version 1.0.
3+
# (See accompanying file LICENSE_1_0.txt or copy at
4+
# http://www.boost.org/LICENSE_1_0.txt)
5+
6+
require-b2 5.2 ;
7+
8+
constant boost_dependencies :
9+
/boost/assert//boost_assert
10+
/boost/config//boost_config
11+
/boost/container//boost_container
12+
/boost/core//boost_core
13+
/boost/intrusive//boost_intrusive
14+
/boost/move//boost_move
15+
/boost/static_assert//boost_static_assert
16+
/boost/type_traits//boost_type_traits
17+
/boost/winapi//boost_winapi ;
18+
19+
project /boost/interprocess
20+
: common-requirements
21+
<include>include
22+
;
23+
24+
explicit
25+
[ alias boost_interprocess : : : : <library>$(boost_dependencies) ]
26+
[ alias all : boost_interprocess example test ]
27+
;
28+
29+
call-if : boost-library interprocess
30+
;
31+

doc/Jamfile.v2

+9-9
Original file line numberDiff line numberDiff line change
@@ -15,15 +15,15 @@ path-constant here : . ;
1515

1616
doxygen autodoc
1717
:
18-
[ glob ../../../boost/interprocess/*.hpp ]
19-
[ glob ../../../boost/interprocess/allocators/*.hpp ]
20-
[ glob ../../../boost/interprocess/containers/*.hpp ]
21-
[ glob ../../../boost/interprocess/indexes/*.hpp ]
22-
[ glob ../../../boost/interprocess/ipc/*.hpp ]
23-
[ glob ../../../boost/interprocess/mem_algo/*.hpp ]
24-
[ glob ../../../boost/interprocess/smart_ptr/*.hpp ]
25-
[ glob ../../../boost/interprocess/streams/*.hpp ]
26-
[ glob ../../../boost/interprocess/sync/*.hpp ]
18+
[ glob ../include/boost/interprocess/*.hpp ]
19+
[ glob ../include/boost/interprocess/allocators/*.hpp ]
20+
[ glob ../include/boost/interprocess/containers/*.hpp ]
21+
[ glob ../include/boost/interprocess/indexes/*.hpp ]
22+
[ glob ../include/boost/interprocess/ipc/*.hpp ]
23+
[ glob ../include/boost/interprocess/mem_algo/*.hpp ]
24+
[ glob ../include/boost/interprocess/smart_ptr/*.hpp ]
25+
[ glob ../include/boost/interprocess/streams/*.hpp ]
26+
[ glob ../include/boost/interprocess/sync/*.hpp ]
2727
:
2828
<doxygen:param>EXTRACT_ALL=NO
2929
<doxygen:param>HIDE_UNDOC_MEMBERS=YES

doc/interprocess.qbk

+9-9
Original file line numberDiff line numberDiff line change
@@ -4298,7 +4298,7 @@ be also useful to build small databases for embedded systems limiting the size o
42984298
the used memory to a predefined memory chunk, instead of letting the database
42994299
fragment the heap memory.
43004300

4301-
[*Note:] The external memory supplied by the user shall be aligned to the maximum value between
4301+
[*Note:] The external memory supplied by the user shall be aligned to the maximum value between
43024302
`alignof(max_align_t)` and the alignment of the strictest over-aligned type to be built inside
43034303
that memory.
43044304

@@ -6528,7 +6528,7 @@ will manage the index. `segment_manager` will define interesting internal types
65286528
For example, the index type `flat_map_index` based in `boost::interprocess::flat_map`
65296529
is just defined as:
65306530

6531-
[import ../../../boost/interprocess/indexes/flat_map_index.hpp]
6531+
[import ../include/boost/interprocess/indexes/flat_map_index.hpp]
65326532
[flat_map_index]
65336533

65346534

@@ -6622,8 +6622,8 @@ define `BOOST_INTERPROCESS_SHARED_DIR_FUNC` and implement the following function
66226622

66236623
[c++]
66246624

6625-
namespace boost {
6626-
namespace interprocess {
6625+
namespace boost {
6626+
namespace interprocess {
66276627
namespace ipcdetail {
66286628
void get_shared_dir(std::string &shared_dir);
66296629
//wstring overload is only needed for Windows systems
@@ -6651,13 +6651,13 @@ those heavy headers.
66516651
On systems without POSIX shared memory support, shared memory objects are implemented as memory mapped files, using a directory
66526652
placed in "/tmp" that can include (if `BOOST_INTERPROCESS_HAS_KERNEL_BOOTTIME` is defined) the last bootup time (if the OS supports it).
66536653
As in Windows, in any error case obtaining this directory the library throws an error . When your shared directory is a compile-time constant,
6654-
define `BOOST_INTERPROCESS_SHARED_DIR_PATH` when using the library and that path will be used to place shared memory files. When you have
6655-
to determine the shared directory at runtime, define `BOOST_INTERPROCESS_SHARED_DIR_FUNC` and implement the function
6654+
define `BOOST_INTERPROCESS_SHARED_DIR_PATH` when using the library and that path will be used to place shared memory files. When you have
6655+
to determine the shared directory at runtime, define `BOOST_INTERPROCESS_SHARED_DIR_FUNC` and implement the function
66566656

66576657
[c++]
66586658

6659-
namespace boost {
6660-
namespace interprocess {
6659+
namespace boost {
6660+
namespace interprocess {
66616661
namespace ipcdetail {
66626662
void get_shared_dir(std::string &shared_dir);
66636663
}
@@ -7061,7 +7061,7 @@ thank them:
70617061
* [@https://svn.boost.org/trac/boost/ticket/10229 Trac #10229 (['"Compiling errors in interprocess\detail\os_file_functions.hpp"])].
70627062
* [@https://svn.boost.org/trac/boost/ticket/10506 Trac #10506 (['"Infinite loop in create_or_open_file"])].
70637063
* [@https://github.com/boostorg/interprocess/pull/11 GitHub Pull #11 (['"Compile fix for BOOST_USE_WINDOWS_H"])].
7064-
7064+
70657065
* Reorganized Doxygen marks to obtain a better header reference.
70667066

70677067
[endsect]

example/Jamfile.v2

+16-22
Original file line numberDiff line numberDiff line change
@@ -11,42 +11,36 @@
1111
# Boost Software License, Version 1.0. (See accompanying file
1212
# LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt)
1313

14+
import testing ;
15+
1416
# this rule enumerates through all the sources and invokes
1517
# the run rule for each source, the result is a list of all
1618
# the run rules, which we can pass on to the test_suite rule:
1719

20+
project : requirements
21+
<library>/boost/interprocess//boost_interprocess
22+
<toolset>acc:<linkflags>-lrt
23+
<toolset>acc-pa_risc:<linkflags>-lrt
24+
<toolset>gcc,<target-os>windows:<linkflags>"-lole32 -loleaut32 -lpsapi -ladvapi32"
25+
<target-os>hpux,<toolset>gcc:<linkflags>"-Wl,+as,mpas"
26+
<target-os>windows,<toolset>clang:<linkflags>"-lole32 -loleaut32 -lpsapi -ladvapi32"
27+
<target-os>linux:<linkflags>"-lrt"
28+
<library>/boost/multi_index//boost_multi_index
29+
<library>/boost/unordered//boost_unordered
30+
;
31+
1832
rule test_all
1933
{
2034
local all_rules = ;
2135

2236
for local fileb in [ glob comp*.cpp ]
2337
{
24-
all_rules += [ link $(fileb)
25-
: # additional args
26-
<toolset>acc:<linkflags>-lrt
27-
<toolset>acc-pa_risc:<linkflags>-lrt
28-
<toolset>gcc,<target-os>windows:<linkflags>"-lole32 -loleaut32 -lpsapi -ladvapi32"
29-
<target-os>hpux,<toolset>gcc:<linkflags>"-Wl,+as,mpas"
30-
<target-os>windows,<toolset>clang:<linkflags>"-lole32 -loleaut32 -lpsapi -ladvapi32"
31-
<target-os>linux:<linkflags>"-lrt"
32-
: # test-files
33-
: # requirements
34-
] ;
38+
all_rules += [ link $(fileb) ] ;
3539
}
3640

3741
for local fileb in [ glob doc_*.cpp ]
3842
{
39-
all_rules += [ run $(fileb)
40-
: # additional args
41-
: # test-files
42-
: # requirements
43-
<toolset>acc:<linkflags>-lrt
44-
<toolset>acc-pa_risc:<linkflags>-lrt
45-
<toolset>gcc-mingw:<linkflags>"-lole32 -loleaut32 -lpsapi -ladvapi32"
46-
<target-os>hpux,<toolset>gcc:<linkflags>"-Wl,+as,mpas"
47-
<target-os>windows,<toolset>clang:<linkflags>"-lole32 -loleaut32 -lpsapi -ladvapi32"
48-
<target-os>linux:<linkflags>"-lrt"
49-
] ;
43+
all_rules += [ run $(fileb) ] ;
5044
}
5145

5246
return $(all_rules) ;

test/Jamfile.v2

+13-11
Original file line numberDiff line numberDiff line change
@@ -15,23 +15,25 @@
1515
# the run rule for each source, the result is a list of all
1616
# the run rules, which we can pass on to the test_suite rule:
1717

18+
project : requirements
19+
<library>/boost/interprocess//boost_interprocess
20+
<library>/boost/date_time//boost_date_time
21+
<toolset>acc:<linkflags>-lrt
22+
<toolset>acc-pa_risc:<linkflags>-lrt
23+
<toolset>gcc,<target-os>windows:<linkflags>"-lole32 -loleaut32 -lpsapi -ladvapi32"
24+
<target-os>hpux,<toolset>gcc:<linkflags>"-Wl,+as,mpas"
25+
<target-os>windows,<toolset>clang:<linkflags>"-lole32 -loleaut32 -lpsapi -ladvapi32"
26+
<target-os>linux:<linkflags>"-lrt"
27+
<library>/boost/chrono//boost_chrono
28+
;
29+
1830
rule test_all
1931
{
2032
local all_rules = ;
2133

2234
for local fileb in [ glob *.cpp ]
2335
{
24-
all_rules += [ run $(fileb)
25-
: # additional args
26-
: # test-files
27-
: # requirements
28-
<toolset>acc:<linkflags>-lrt
29-
<toolset>acc-pa_risc:<linkflags>-lrt
30-
<toolset>gcc,<target-os>windows:<linkflags>"-lole32 -loleaut32 -lpsapi -ladvapi32"
31-
<target-os>hpux,<toolset>gcc:<linkflags>"-Wl,+as,mpas"
32-
<target-os>windows,<toolset>clang:<linkflags>"-lole32 -loleaut32 -lpsapi -ladvapi32"
33-
<target-os>linux:<linkflags>"-lrt"
34-
] ;
36+
all_rules += [ run $(fileb) ] ;
3537
}
3638

3739
return $(all_rules) ;

0 commit comments

Comments
 (0)