Skip to content
This repository was archived by the owner on May 27, 2025. It is now read-only.
Open
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
1070 commits
Select commit Hold shift + click to select a range
119269b
csv::split::write() implemented; make(): in progress...
May 16, 2024
24d1375
csv::split::make(): in progress...
May 16, 2024
7e1c0bc
name_value::parser::mangle() method implemented
May 16, 2024
9c2367f
csv::split::make(): first cut implemented; debugging...
May 17, 2024
9a196d6
csv::split: typo fixed; debugging...
May 17, 2024
f82b3f1
csv::split: another typo fixed; debugging...
May 17, 2024
cbe844d
csv::split: by-size::wrote(): bug fixed: reset once size is reached
May 20, 2024
21d7a7a
csv::split::write(): flush flag added
May 29, 2024
b8287f1
csv::split::write(): flush flag: trivial typo
May 29, 2024
c8f843e
util/applications/comma-top
May 29, 2024
6729f92
comma-top: brushed up, default mode: bug fixed in quick and dirty top…
May 29, 2024
2592263
name-value-from-csv: unnamed: bug fixed: --unquote-numbers added to t…
Jun 3, 2024
ff38e79
csv-time-join: --output-diff implemented
Jun 6, 2024
74c2388
io::istreams: in progress...
Jun 6, 2024
70d2fae
timing: timestamped: moved here from snark
Jun 6, 2024
2b41512
csv::split: refactoring to add optional logging to index file
Jun 6, 2024
b715ddd
csv::split::how() method added
Jun 6, 2024
e18241c
synchronized::multiqueue moved to ordered::multiqueue
vlaskine Jun 11, 2024
ba1b17b
ordered::multiqueue: renamed to queues simplified
vlaskine Jun 11, 2024
5049273
containers::ordered::queues: simplified: type traits torn down
vlaskine Jun 11, 2024
0b41404
containers::ordered::queues: dependency on boost::posix_time removed
vlaskine Jun 11, 2024
b3c6cc3
io::streams::read() and ::operator++() implemented
vlaskine Jun 11, 2024
cc54589
io::streams::eof(): bug fixed
Jun 12, 2024
cc5a608
bash/comma-application-util: swiss: optional usage function check added
Jun 18, 2024
962a892
bash/comma-application-util: comma-source-relative implemented
vlaskine Jun 18, 2024
b6c56f9
comma-application-util: comma-source-relative: support for wildcards …
Jun 20, 2024
a6579f0
containers/CMakeLists.txt: Added ordered queues to install
Jul 9, 2024
a9fd6f7
containers/ordered/queues.h
Jul 9, 2024
c103b9c
containers/test/multidimensional_array_test.cpp: quick and dirty: cac…
Jul 23, 2024
54cd161
containers/test/multidimensional_array_test.cpp: quick and dirty: mem…
Jul 23, 2024
e0b9972
csv::write() implemented
Jul 25, 2024
48bac18
Merge branch 'master' of https://github.com/mission-systems-pty-ltd/c…
Jul 25, 2024
8f3a067
containers::multidimensional::index: implemented and tested
Jul 25, 2024
26efa9e
containers::multidimensional::index: implemented and tested
Jul 25, 2024
15fee76
name-value-convert: quoting inf and nan implemented and tested
vlaskine Jul 25, 2024
c814789
containers/multidimensional/array: made compatible with multidimensio…
Jul 31, 2024
82087f9
containers::multidimensional::array::index_type: using multidimension…
Jul 31, 2024
ab1bed6
containers::multidimensional::array::absolute_index() implemented
Aug 2, 2024
4ca3cb7
csv-shape: sliding-window: ascii implemented; in progress...
Aug 2, 2024
9fe5e1f
csv-shape: sliding-window: first cut implemented
Aug 2, 2024
002a4ef
csv-shape: sliding-window: --incremental implemented
Aug 2, 2024
83b0f29
csv-shape: sliding-window: bug fixed
Aug 2, 2024
6c4a0e9
csv-shape: sliding-window: bug fixed
Aug 2, 2024
0b8abc2
csv-shape: sliding-window --prepend-block implemented
vlaskine Aug 2, 2024
c7167d9
csv-shape: sliding-window: examples added
vlaskine Aug 2, 2024
d4a912e
csv-shape: sliding-window: examples added
vlaskine Aug 2, 2024
185757a
csv-shape: sliding-window: unit test added
vlaskine Aug 2, 2024
56656d3
csv-sort: bug fixed: now works for strings with no --format option; b…
vlaskine Aug 4, 2024
87b55dd
csv-crc: minor brush-up
vlaskine Aug 5, 2024
c21015f
comma-timeout-group.cpp: ignore zombie processes when waiting for group
david-jennings Aug 7, 2024
b7d3fa9
Merge ../../comma
Aug 7, 2024
246acf8
name-value-get <file>:<path> implemented
Aug 8, 2024
b9c783a
name-value-get <file>:<path> tail instead of head of the path is used
Aug 8, 2024
e22132e
name-value-convert <file>:<path> implemented
Aug 8, 2024
628aaf6
name_value/serialize: read_*( filename, permissive, split_filename ) …
Aug 8, 2024
8f5ab73
csv-repeat/period: increase test times by factor of ten
david-jennings Aug 13, 2024
ce3025e
csv/applications/csv-seek:
aspen-misssys Aug 14, 2024
79d80ba
csv/applications/csv-seek:
aspen-misssys Aug 14, 2024
10b4fcd
csv-seek: testing...
aspen-misssys Aug 14, 2024
6dd345f
csv-seek: testing: tests made optional for now while debugging
aspen-misssys Aug 14, 2024
0fa63d8
csv-seek: testing: expected: uncommented
aspen-misssys Aug 14, 2024
40ed6a6
comma-test-run: a quick fix added for comma-test-run not to stray out…
Aug 14, 2024
c529e11
comma-test-run: --root-path: todo placeholder added
Aug 14, 2024
f77ee4d
csv/applications/csv-seek: made existing index and ratio tests work.
Aug 14, 2024
bb38751
csv/application/csv-seek: larger files (such as video streams) requir…
Aug 14, 2024
f250e34
csv-seek: --help: examples brushed up, colour hue example added
vlaskine Aug 15, 2024
4061871
csv/applications/csv-seek:
aspen-misssys Aug 15, 2024
abffdd2
csv/applications/csv-seek: updated tests with more explicate naming
aspen-misssys Aug 15, 2024
51206c3
csv-seek: copyright added
vlaskine Aug 15, 2024
cf007ce
udp-client: brushed up in preparation to add a built-in publisher
Aug 22, 2024
e8a5213
udp-client: optional publishing: io-publish: publish moved out to det…
Aug 23, 2024
ee7473b
udp-client: republishing implemented (debugging...), --flush added
Aug 23, 2024
25a6fbd
udp-client: default flush behaviour restored for now
Aug 23, 2024
5d05353
udp-client: --flush added; default behaviour changed to non-flushing
vlaskine Aug 23, 2024
ab20e7e
udp-client: --timestamp: deprecated; --fields: plugging in...
vlaskine Aug 26, 2024
e675b2d
io-publish: bug fixed: if non-accepting output streams, exit accept t…
vlaskine Aug 26, 2024
c910869
udp-client: --help: notes on reading multiple udp packets on a single…
vlaskine Aug 26, 2024
58a1aa9
udp-client: --help: examples updated
vlaskine Aug 26, 2024
0581bce
csv-random: sample, shuffle: a couple of bugs fixed; make: pseudo-ran…
Aug 28, 2024
0c47e08
csv-random: true-random: --range implemented
Aug 28, 2024
17c20c5
csv-split: --help brushed up
vlaskine Aug 29, 2024
6b1249e
csv-split: brushed up
vlaskine Aug 29, 2024
8e5868b
csv-split: further brush-up
vlaskine Aug 29, 2024
4c76648
csv-split: --fields=,,size,, implemented; rudimental test added
vlaskine Aug 29, 2024
bc3772f
io-topics: log: header_fields added
vlaskine Aug 29, 2024
dd264dd
io-topics: log: header_fields renamed to header/fields; header/binary…
vlaskine Aug 29, 2024
3601032
io-topics: log: field list made alphabetic
vlaskine Aug 29, 2024
a1c42ec
io-topics: header/fields, header/binary: excluded from topics list
Aug 30, 2024
ebcec9d
comma-test-run: --tags, --tags-excluded: in progress...
Aug 30, 2024
c98bb0e
comma-test-run: --help: --tags, --tags-excluded: documented
vlaskine Aug 30, 2024
c5478af
comma-test-run --tags-list implemented
vlaskine Sep 2, 2024
0a89b81
io-topics: added support for templated commands
david-jennings Sep 4, 2024
8fa62cd
io-topics: added support for actions on exit
david-jennings Sep 4, 2024
95fd554
io-topics: --dry-run fixed and help improved
david-jennings Sep 6, 2024
0b9edb8
io: publish.* move from applications/detail to impl to expose to the …
Sep 6, 2024
615ffa1
io: publish.* move from applications/detail to impl to expose to the …
Sep 6, 2024
7f4f390
io-topics: added templated command support to publish and cat operations
david-jennings Sep 6, 2024
ad9384d
io-topics: disabled command expansion
david-jennings Sep 6, 2024
6ed799d
io-topics: added support for templated commands
david-jennings Sep 4, 2024
23504e6
io-topics: added support for actions on exit
david-jennings Sep 4, 2024
ef2f934
io-topics: --dry-run fixed and help improved
david-jennings Sep 6, 2024
0d68878
io-topics: added templated command support to publish and cat operations
david-jennings Sep 6, 2024
6868673
io-topics: disabled command expansion
david-jennings Sep 6, 2024
4aba3c3
io-topics: command substitution: in progress
Sep 6, 2024
db059d4
io-topics: expanded command implemented
Sep 6, 2024
25ed17b
merge conflict resolved
Sep 6, 2024
f9fe3ca
io/test/io-topics/command-template: moved to commands/substitution
Sep 6, 2024
9f13bb3
io-topics: command substitution simplified
vlaskine Sep 7, 2024
a95e607
io-topics: --env: first cut implemented, basic test added
vlaskine Sep 7, 2024
ebb2073
io-topics: variable substitution: plugged into on_exit, basic test added
vlaskine Sep 7, 2024
ac7dd96
io-topics: --help: variable substitution: more examples added
vlaskine Sep 7, 2024
8e660a2
missing headers included
vlaskine Sep 13, 2024
baae2a8
test/io-cat/single_feed/test: check of netstat installed added
vlaskine Sep 14, 2024
6be1bf8
python/comma/dictionary/test/test: pytest installation check added
vlaskine Sep 14, 2024
e1b5f3d
csv-intervals: initialization warnings fixed
vlaskine Sep 16, 2024
e9322d1
csv/impl/unstructured, csv-enumerate: compile warning fixed
vlaskine Sep 16, 2024
f0b36c1
csv/impl/unstructured.h: unused include removed
vlaskine Sep 16, 2024
34d5713
bash/test/comma_name_value_to_options: failing test fixed
vlaskine Sep 16, 2024
48f5e72
io/test/io-tee/simple: backslash escaped in output and expected
vlaskine Sep 16, 2024
9243d87
io/test/io-tee/comma_tee_function: backslash escaped in output and ex…
vlaskine Sep 16, 2024
31b3c13
python/CMakeLists.txt: change setup.py generated directories to be ow…
david-jennings Sep 17, 2024
3c78011
packed: constexpr used for size instead of enum
Sep 17, 2024
63ee7a3
csv-sort: using std::shuffle() instead of std::random_shuffle()
vlaskine Sep 17, 2024
8355a6c
csv-shuffle: --help brushed up
Sep 26, 2024
a1c8577
io-cat: --help brushed up
Sep 27, 2024
73ea6c7
io::server class added
Sep 27, 2024
3c307f4
io::server: refactored to implement io::iserver; io::oserver: replace…
vlaskine Sep 29, 2024
e39eae9
io::iserver: in progress...
vlaskine Sep 30, 2024
85780ce
io::iserver: in progress...
vlaskine Sep 30, 2024
f16adff
io::iserver: in progress...
vlaskine Sep 30, 2024
a152e38
io::iserver: in progress...
vlaskine Oct 1, 2024
730a6d0
io::impl::receive class added
Oct 2, 2024
1c7ffd1
io::impl::receive: in progress...
Oct 2, 2024
7a9be8c
io-cat: tcp server: in progress...
Oct 2, 2024
d821386
io-cat: tcp server: in progress...
Oct 2, 2024
f958380
io-cat: tcp server: in progress...
Oct 2, 2024
9f98e2c
csv-seek: --help: minor brush-up
Oct 4, 2024
9129c5e
csv::ascii::put(): tests for string-quoting added
Oct 8, 2024
28df9c6
io-cat: tcp server as input: plugging in...
Oct 8, 2024
1e1d069
io-cat: tcp server as input: plugging in...
Oct 8, 2024
3f4af74
io::server::select() method added
Oct 8, 2024
331f3f2
io-cat: tcp server as input: plugging in...
Oct 8, 2024
eb5dc60
io::select::descriptors::clear() implemented
Oct 8, 2024
113352e
io-cat: tcp server as input: plugging in...
Oct 8, 2024
5fe88d5
io-cat: connecting streams: bug fixed: spurious connected stream coun…
Oct 9, 2024
0229e4b
comma-test-util: comma_test_commands_until_error
vlaskine Oct 11, 2024
82f5b01
comma-test-util: comma_test_interactive_commands: until_first_error f…
vlaskine Oct 11, 2024
6731f19
comma-test-util: comma_test_interactive_commands_until_first_error co…
vlaskine Oct 11, 2024
ca733be
io::serial::port: first cut added
Oct 15, 2024
d0f46a8
io::serial::port: signed char* read/write methods added for convenience
Oct 15, 2024
da3509f
io/serial.h: use relative path to base/exception.h
david-jennings Oct 15, 2024
dbcbfd3
io::serial::port::properties implemented
Oct 15, 2024
0bc103a
comma-test-util: comma_test_interactive_commands: if command does not…
Oct 17, 2024
866b901
bash/test/comma_name_value_util/comma_path_value_mangle: basic test f…
Oct 18, 2024
937e297
comma-test-util: comma_test_interactive_commands: fixed, non-interact…
Oct 18, 2024
d038eac
util/application/comma-test-util: comma_test_interactive_commands: be…
Oct 21, 2024
a96903f
comma-test-util: comma_test_commands: unquoting improved
Oct 22, 2024
dd3c184
comma-test-util: comma_test_interactive_commands: unquoting improved
Oct 22, 2024
592755b
comma-test-util: comma_test_interactive_commands: unquoting improved
Oct 22, 2024
b939e47
util/test/test_util/commands: todo comment added
Oct 22, 2024
f363223
name_value/test/name-value-get: escaping fixed
Oct 22, 2024
f79ee81
csv/test/csv-strings: typo in test (missing quote) fixed
Oct 22, 2024
a73fa99
csv/test/csv-blocks/group/input: typo in test (missing closing quote)…
Oct 22, 2024
43f562c
util/test/test_util: expected files fixed
Oct 22, 2024
dde8e19
csv-play: --help: refactored
Oct 28, 2024
adf3697
csv-play: minor brush-up
Oct 28, 2024
6311331
csv-play: minor brush-up
Oct 28, 2024
4af210a
csv-play: optionally using clients rather than servers for output str…
Oct 28, 2024
6ad92be
csv-play: optionally using clients rather than servers for output str…
Oct 28, 2024
fa09228
comma-resources-util: explicitly request cpu,core,socket from lscpu
david-jennings Oct 29, 2024
1196036
python: dictionary.update(): first cut implemented; testing...
Nov 5, 2024
dd59342
python: dictionary.update(): lists: typo fixed, unit tests added
Nov 5, 2024
95ac8a0
python: dictionary.update(): test case and example added
Nov 5, 2024
8d5f8d7
python: dictionary.update(): using old f"{...}" notation for backward…
Nov 5, 2024
effe588
containers: cached: first cut implemented
vlaskine Nov 7, 2024
0ab47a0
containers: cached: beefed up; still, usage is clunky...
Nov 8, 2024
6b2c64a
containers: cached: usage improved; first cut complete
Nov 8, 2024
7d99e0c
containers: cached: using unique_ptr for now; proper move semantics: …
JaredSilbermann Nov 8, 2024
f452e28
containers: cached: typo fixed
Nov 8, 2024
62b17b3
containers/test/cached_test.cpp: typo fixed
Nov 8, 2024
af7e838
containers/test/cached_test.cpp: one typo missed in last commit
david-jennings Nov 8, 2024
9131460
csv-split.cpp: create correctly sized read buffer for larger records
david-jennings Nov 23, 2024
b475469
comma::containers::find_or_throw(): first cut implemented
vlaskine Dec 20, 2024
935d0e1
comma::enums: first cut of a few convenience methods implemented
vlaskine Dec 20, 2024
c5b1643
strings::choice: support for named enums added
Dec 23, 2024
caa567e
strings::choice: basic visiting unit test added
Dec 23, 2024
c548c14
string: strings::make_choice() convenience function implemented, basi…
vlaskine Dec 24, 2024
74afd88
named_variant: more basic tests added
Dec 30, 2024
ebcda93
variant::index() and named_variant::name() implemented, basic tests a…
Jan 2, 2025
08f53ca
io-publish: read timeout handling: implementing...
vlaskine Jan 21, 2025
1c1ab5c
io-publish: --timeout: first cut implemented; todo: test with --exec;…
vlaskine Jan 21, 2025
81b1e02
io-publish: --exec: inadvertently introduced bug fixed: break on read…
vlaskine Jan 21, 2025
022f4f4
io-publish: --reconnect-on-read-timeout renamed to --reconnect-on-tim…
vlaskine Jan 22, 2025
88a2609
python: files/namespaces privatised
Jan 24, 2025
705d78a
python/comma/numpy/test/test_functions.py: namespace problem for ubun…
vlaskine Feb 20, 2025
a99a0ce
base: exception method implementation moved to cpp
vlaskine Mar 24, 2025
8cc2876
comma-test-run: --until-first-failure: --assert-status alias added
vlaskine Apr 6, 2025
c5826e5
csv-calc, io-ls: comma::verbose phased out
vlaskine Apr 7, 2025
02d7024
comma-test-util: comma_test_commands: assert keyword added; todo: add…
vlaskine Apr 7, 2025
4120704
comma-test-util: assert keyword for interactive tests
Apr 13, 2025
87931d1
rename _comma_test_case_name and _comma_test_name_parse; unquote in…
rccrisp Apr 14, 2025
c6e03db
util/test/test_util/interactive_commands: test moved to util/test/tes…
vlaskine Apr 14, 2025
4658498
util/test/test_util/interactive_commands/assert: made it optional ins…
vlaskine Apr 14, 2025
a293ecb
comma-progress: using stl functional instead of boost functional
vlaskine Apr 23, 2025
bd8bce0
application: command_line_options: getting rid of boost functional
vlaskine Apr 23, 2025
aef388f
application: command_line_options: getting rid of boost functional
vlaskine Apr 23, 2025
7a3422d
csv-calc: getting rid of boost functional
vlaskine Apr 23, 2025
0ad9365
csv-units: getting rid of boost functional
vlaskine Apr 23, 2025
885777d
name_value/impl/json_writer: compilation problem fixed: const end (ce…
vlaskine Apr 23, 2025
4ec4e33
csv/test/csv-crc/test: bug fixed: variables with multiline values quoted
vlaskine Apr 23, 2025
5f5d18e
name_value/impl: yaml placeholder created
vlaskine Apr 23, 2025
86bacd5
name_value: property_tree: yaml support: in progress...
vlaskine Apr 23, 2025
7695298
name_value: property_tree: yaml support: in progress...
vlaskine Apr 23, 2025
93e2b14
name_value: property_tree: yaml support: in progress...
vlaskine Apr 23, 2025
b0a8580
name_value: property_tree: yaml support: in progress...
vlaskine Apr 24, 2025
162b36c
name_value: property_tree: yaml support: in progress...
vlaskine Apr 24, 2025
1100666
name_value: property_tree: yaml support: in progress...
vlaskine Apr 24, 2025
ceb6005
name_value: property_tree: yaml support: in progress...
vlaskine Apr 24, 2025
dcafd70
name_value: property_tree: yaml support: first cut done
vlaskine Apr 24, 2025
33d1f23
name_value: serialize: read_yaml() implemented; write_yaml() added, b…
vlaskine Apr 24, 2025
84a5bf0
name_value: serialize: read_yaml() implemented; write_yaml() added, b…
vlaskine Apr 24, 2025
3a16343
name_value: yaml support: compilation errors fixed
vlaskine Apr 28, 2025
c62953b
name_value: yaml: typo bug fixed: std::cin replaced with input stream…
vlaskine Apr 29, 2025
2d4703f
cmake: -std=c++20 added as an option
vlaskine May 1, 2025
521337e
csv::options: compile warning silenced, bug fixed: quote sign size sw…
vlaskine May 1, 2025
bab9827
containers::multidimentional::map::find(point) renamed to ...::at(poi…
vlaskine May 2, 2025
c065854
multidimensional_map_test: find(point) renamed to at(point)
vlaskine May 2, 2025
5777545
containers::multidimensional::map: deprecation warning fixed
vlaskine May 4, 2025
d4db4f8
python: containers.multidimensional.Map: in progress...
vlaskine May 4, 2025
8283399
python: comma.containers.multidimensional.Map: unit test placeholder …
vlaskine May 5, 2025
8f3023e
python: comma.containers.multidimensional.Map: a few bugs fixed; test…
vlaskine May 6, 2025
73b99c0
python: comma.containers.multidimensional.Map.at(): implemented; debu…
vlaskine May 12, 2025
3de93f0
python: comma.containers.multidimensional.Map.at(): implemented; debu…
vlaskine May 12, 2025
b5f73ba
python: comma.containers.multidimensional.Map.at(): a few bugs fixed,…
vlaskine May 12, 2025
262153d
python: comma.containers.multidimensional.Map.at(): a few bugs fixed,…
vlaskine May 15, 2025
5da710c
python: comma.containers.multidimensional.Map.nearest(): first basic …
vlaskine May 18, 2025
3fad0ed
python: bindings: trivial comma_free() added
vlaskine May 19, 2025
4907eea
csv/impl/to_ascii.h: optional-related compile warning fixed
vlaskine May 22, 2025
b11cb95
name-value-to-csv: compile warning fixed
vlaskine May 22, 2025
247c89f
csv-random: shuffle: std::random_shuffle() replaced with std::shuffle…
vlaskine May 22, 2025
11b9495
csv-join, csv-update: compile warnings fixed (somewhat)
vlaskine May 22, 2025
936030f
application: command_line_options: annoying compile warnings fixed
vlaskine May 28, 2025
d2897b2
command_line_options.h: change brace-initialization to equals
david-jennings May 30, 2025
31d1ba1
io/stream: fix istreams EOF behaviour and read logic
rccrisp Sep 10, 2025
2f4f55c
system/ansible: removed pip install numpy; added apt install python3-…
vlaskine Nov 6, 2025
fb97a23
a few compilation warnings fixed; a few boost dependencies removed
vlaskine Nov 6, 2025
a7a1cd9
system/ansible/install.yml: libyaml-dev added
vlaskine Nov 6, 2025
229ad7f
cmake: minimum required version made dependent on the current cmake v…
vlaskine Nov 26, 2025
fbbe9eb
io-publish: --exec: SIGPIPE signal handler restored to default just b…
vlaskine Dec 11, 2025
4e37c31
add build to .gitignore
mimhoff Dec 19, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
3 changes: 3 additions & 0 deletions .gitignore
Original file line number Diff line number Diff line change
Expand Up @@ -12,3 +12,6 @@ doc/generated
tags
compile_commands.json
.ycm_extra_conf.py
python/comma_py.egg-info/
python/dist/
build
8 changes: 4 additions & 4 deletions AUTHORS
Original file line number Diff line number Diff line change
@@ -1,4 +1,4 @@
Vsevolod Vlaskine <vsevolod.vlaskine@gmail.com>
Cedric Wohlleber <c.wohlleber@acfr.usyd.edu.au>
Matthew Herrmann <matthewinrandwick@gmail.com>
James Underwood <j.underwood@acfr.usyd.edu.au>
Vsevolod Vlaskine <vsevolod.vlaskine@gmail.com>
Cedric Wohlleber <c.wohlleber@acfr.usyd.edu.au>
Matthew Herrmann <matthewinrandwick@gmail.com>
James Underwood <j.underwood@acfr.usyd.edu.au>
7 changes: 3 additions & 4 deletions CMakeFiles/FindComma.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -3,10 +3,10 @@
# The following variables are set if comma is found.
# comma_FOUND - Set to true when comma is found.
# comma_USE_FILE - CMake file to use comma.
# comma_MAJOR_VERSION - The comma major version number.
# comma_MINOR_VERSION - The comma minor version number
# comma_version_major - The comma major version number.
# comma_version_minor - The comma minor version number
# (odd non-release).
# comma_BUILD_VERSION - The comma patch level
# comma_version_patch - The comma patch level
# (meaningless for odd minor).
# comma_INCLUDE_DIRS - Include directories for comma
# comma_LIBRARY_DIRS - Link directories for comma libraries
Expand Down Expand Up @@ -85,4 +85,3 @@ ENDIF ( comma_FOUND )
IF( NOT comma_FOUND )
MESSAGE(FATAL_ERROR ${comma_DIR_MESSAGE})
ENDIF( NOT comma_FOUND )

48 changes: 21 additions & 27 deletions CMakeFiles/check.c++.standard.cmake
Original file line number Diff line number Diff line change
@@ -1,7 +1,7 @@
SET( CXX_STANDARDS "0x;11;14;17" CACHE STRING "list of known c++ standards" )
SET( CXX_STANDARDS "0x;11;14;17;20" CACHE STRING "list of known c++ standards" )
MARK_AS_ADVANCED( FORCE CXX_STANDARDS )
STRING( REGEX REPLACE ";" "," CXX_STANDARDS_READABLE "${CXX_STANDARDS}" )
SET( CXX_STANDARD_DEFAULT "11" CACHE STRING "default c++ standard to use" )
SET( CXX_STANDARD_DEFAULT "17" CACHE STRING "default c++ standard to use" )
MARK_AS_ADVANCED( FORCE CXX_STANDARD_DEFAULT )
SET( CXX_STANDARD_TO_USE "${CXX_STANDARD_DEFAULT}" CACHE STRING "c++ standard to use (one of ${CXX_STANDARDS_READABLE})" )
SET_PROPERTY( CACHE CXX_STANDARD_TO_USE PROPERTY STRINGS ${CXX_STANDARDS} )
Expand All @@ -17,7 +17,6 @@
MARK_AS_ADVANCED( FORCE CXX_STANDARD_FLAGS )
ENDIF()

# A much better way to do this is with CXX_STANDARD but that requires CMake 3.1
include( CheckCXXCompilerFlag )
IF( ${CXX_STANDARD_TO_USE} MATCHES "0x" )
message( WARNING "
Expand All @@ -28,27 +27,22 @@
#########################################################################
" )
ENDIF()
FOREACH( STANDARD ${CXX_STANDARDS} )
# message( "Check if using C++${STANDARD}" )
IF( ${CXX_STANDARD_TO_USE} MATCHES "${STANDARD}" )
# message( "Yes, using C++${STANDARD}" )
IF( NOT ( ${CXX_STANDARD_TO_USE} MATCHES ${CXX_STANDARD_LAST} ) )
# message( "Have to check if ${CMAKE_CXX_COMPILER} supports C++${STANDARD}" )
message( "Attempt to use C++ standard ${STANDARD}" )
UNSET( compiler_supports_standard CACHE )
UNSET( compiler_flag_to_check CACHE )
SET( compiler_flag_to_check "-std=c++${STANDARD}" )
if ( CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND ${STANDARD} MATCHES "11" )
set( compiler_flag_to_check "${compiler_flag_to_check} -Wc++11-narrowing" )
endif()
CHECK_CXX_COMPILER_FLAG( "${compiler_flag_to_check}" compiler_supports_standard )
if( NOT compiler_supports_standard )
message( FATAL_ERROR "attempt to use C++ standard ${STANDARD} but ${CMAKE_CXX_COMPILER} does not support it" )
endif()
STRING( REPLACE " ${CXX_STANDARD_FLAGS}" "" CXX_FLAGS_NO_STANDARD "${CMAKE_CXX_FLAGS}" )
SET( CXX_STANDARD_FLAGS ${compiler_flag_to_check} CACHE STRING "updating compiler flags selecting C++ standard" FORCE )
SET( CXX_STANDARD_LAST ${CXX_STANDARD_TO_USE} CACHE STRING "updating C++ standard to use option" FORCE )
set( CMAKE_CXX_FLAGS "${CXX_FLAGS_NO_STANDARD} ${compiler_flag_to_check}" CACHE STRING "" FORCE )
ENDIF()
ENDIF()
ENDFOREACH()

IF( NOT ( ${CXX_STANDARD_TO_USE} MATCHES ${CXX_STANDARD_LAST} ) )
# message( "Have to check if ${CMAKE_CXX_COMPILER} supports C++${CXX_STANDARD_TO_USE}" )
message( "Attempt to use C++ standard ${CXX_STANDARD_TO_USE}" )
UNSET( compiler_supports_standard CACHE )
UNSET( compiler_flag_to_check CACHE )
SET( compiler_flag_to_check "-std=c++${CXX_STANDARD_TO_USE}" )
if ( CMAKE_CXX_COMPILER_ID MATCHES "Clang" AND ${CXX_STANDARD_TO_USE} MATCHES "11" )
set( extra_compiler_flags "${compiler_flag_to_check} -Wc++11-narrowing" )
endif()
CHECK_CXX_COMPILER_FLAG( "${compiler_flag_to_check} ${extra_compiler_flags}" compiler_supports_standard )
if( NOT compiler_supports_standard )
message( FATAL_ERROR "attempt to use C++ standard ${CXX_STANDARD_TO_USE} but ${CMAKE_CXX_COMPILER} does not support it" )
endif()
SET( CXX_STANDARD_LAST ${CXX_STANDARD_TO_USE} CACHE STRING "updating C++ standard to use option" FORCE )
set( CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} ${extra_compiler_flags}" CACHE STRING "" FORCE )
ENDIF()

set( CMAKE_CXX_STANDARD ${CXX_STANDARD_TO_USE} )
10 changes: 7 additions & 3 deletions CMakeFiles/comma-config.cmake.in
Original file line number Diff line number Diff line change
Expand Up @@ -35,9 +35,13 @@ SET(comma_REQUIRED_EXE_LINKER_FLAGS "@comma_REQUIRED_EXE_LINKER_FLAGS@")
SET(comma_REQUIRED_SHARED_LINKER_FLAGS "@comma_REQUIRED_SHARED_LINKER_FLAGS@")
SET(comma_REQUIRED_MODULE_LINKER_FLAGS "@comma_REQUIRED_MODULE_LINKER_FLAGS@")

SET(comma_MAJOR_VERSION "@comma_MAJOR_VERSION@")
SET(comma_MINOR_VERSION "@comma_MINOR_VERSION@")
SET(comma_BUILD_VERSION "@comma_BUILD_VERSION@")
SET(comma_version_major "@comma_version_major@")
SET(comma_version_minor "@comma_version_minor@")
SET(comma_version_patch "@comma_version_patch@")
SET(comma_MAJOR_VERSION "@comma_version_major@") # quick and dirty, otherwise comma so library version in dependent packages seem to get messed up
SET(comma_MINOR_VERSION "@comma_version_minor@") # quick and dirty, otherwise comma so library version in dependent packages seem to get messed up
SET(comma_BUILD_VERSION "@comma_version_patch@") # quick and dirty, otherwise comma so library version in dependent packages seem to get messed up
set(comma_version "@comma_version@")

SET(comma_USE_FILE "@comma_USE_FILE@")

Expand Down
6 changes: 6 additions & 0 deletions CMakeFiles/post_install/CMakeLists.txt
Original file line number Diff line number Diff line change
@@ -0,0 +1,6 @@
if( BUILD_SHARED_LIBS )
install( CODE "message( \"ldconfig: running...\" )" )
install( CODE "execute_process( COMMAND /sbin/ldconfig )" )
install( CODE "message( \"ldconfig: done\" )" )
endif( BUILD_SHARED_LIBS )

Loading