28 Commits

Author SHA1 Message Date
Will Sciaroni
aa317de2db
Restore CMake < 3.14 compatibility (#1098) 2025-05-22 10:06:06 +01:00
BartolomeyKant
a24977a3db
Fix cmake helper functions collision (#1065)
* add etl prefix name for cmake helper functions

* remove unused functions from GetGitRevistionDescription
2025-04-30 16:55:57 +01:00
BartolomeyKant
2fd4e171ba
rise up cmake minimum required (#1066)
Co-authored-by: John Wellbelove <jwellbelove@users.noreply.github.com>
2025-04-30 16:47:39 +01:00
jmartens-42
13759c1cbb
moved BUILD_TESTS check outside of root cmake check to allow building tests in submodules (#777)
added check for GNUC >= 11 for -Wstringop-overread ignore pragma since it isn't introduced until gcc/g++-11

Co-authored-by: Josh <joshua.martens@magna.com>
2023-10-26 20:07:23 +02:00
Flaviu Tamas
e66750de53
Don't warn on tag missing when subproject (#653) (#655)
Different solution than proposed in the issue, since that proposed
solution would given unexpected results when an intermediate
(untagged) commit is checked out.

This change simply skips warning about a missing git version when this
is a subproject, and uses the original version calculation logic.

I've also renamed `determine_version` to `determine_version_with_file`.
I'd originally done this in an intermediate version of this PR, but I
think that keeping the renaming is clearer code.
2023-01-04 09:39:28 +00:00
Kai Szuttor
1e11aff7b9
Only build tests if top level project (#639) 2022-11-25 15:59:08 +00:00
Joris Putcuyps
d2267f368a No need to initialize the C-compiler, small speed improvement (#621) 2022-10-19 12:22:52 +01:00
Patrick Kappl
cceb503866
Fix include directory of installed target (#578) 2022-08-08 09:41:12 +01:00
Andy
e88f32d565
Allow users to remove SYSTEM keyword because it forces C linkage for some gcc versions. (#574)
Co-authored-by: MacGregor, Andy <amacgregor@irobot.com>
2022-07-26 15:53:19 +01:00
Robin Mueller
48b0c52e92
New alias target etl::etl and CMake instructions update (#540)
* correction for link call in CMake instructions

* add alias target etl::etl
2022-05-17 17:08:47 +01:00
Robin Mueller
f5ebc9e1f3
added missing GNUInstallDirs include (#539) 2022-05-17 17:08:31 +01:00
Robin Mueller
ba1db8b55b
Some CMake handling improvements (#538)
* Some CMake handling improvements

- Set version from version.txt file if git retrieval fails
- Add FORCE flag to ETL_VERSION CACHE entry setting. The user
  should not have any reason to set this entry from the command line

* correction for cache entry text

* a little bit more context information

* message prefix for info printout

Co-authored-by: Robin Mueller <Robin Mueller>
2022-05-17 17:08:18 +01:00
John Wellbelove
36d126c93e Squashed commit of the following:
commit c217b3ec12b26104e8f1027c1766cc9d49b93a29
Author: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Date:   Thu Apr 21 11:57:55 2022 +0200

    Added mutex traits

    Added transparent comparator test to multimap

commit b6487b869e5599ea067d45af1778d5c0f90c6a52
Author: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Date:   Thu Apr 21 10:42:06 2022 +0200

    Modified char8_t, char16_t and char32_t macros.

    Added conditional compilation on the presense of native char8_t, char16_t and char32_t types.

commit 2c2bd86ce3d5d5d698e922518421a93f70a9cc1e
Author: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Date:   Thu Apr 21 10:29:04 2022 +0200

    Modified char8_t, char16_t and char32_t macros.

    Added conditional compilation on the presense of native char8_t, char16_t and char32_t types.

commit d16242d20e9b6df6752a926d862d0016a452bada
Author: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Date:   Wed Apr 20 13:53:37 2022 +0200

    Expanded constexpr test

commit fad097e6656cd4639c2d81bc8cad2467cae4b4ce
Author: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Date:   Wed Apr 20 13:53:05 2022 +0200

    Added ETL_OVERRIDE to state chart process_event()

commit 25403c2225f3aff0b99105a54cfc44f1cf88d527
Author: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Date:   Wed Apr 20 13:41:00 2022 +0200

    Added test_etl_traits

commit e42c778cf645cb8fc06e5930336e7f1183004dfe
Author: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Date:   Wed Apr 20 13:38:22 2022 +0200

    Removed unused code.

commit 5a25c0c1973f7094ef3aa5b6f29529e96450451c
Author: John Wellbelove <john.wellbelove@asterconsulting.co.uk>
Date:   Sun Apr 17 13:17:29 2022 +0200

    Large and small character support macros

commit 6a463fb65ef655b700a8dea381265a3c1b622658
Author: Melg Eight <public.melg8@gmail.com>
Date:   Sun Apr 17 13:54:34 2022 +0300

    Fix spelling (#535)

    Signed-off-by: Melg Eight <public.melg8@gmail.com>

commit 5468eb659c8b4ecdb3d08e8b8f0442c5a2549a48
Author: Gabriel Arjones <arjones@arjones.com>
Date:   Thu Apr 14 17:55:27 2022 -0300

    cmake: write an arch independent version file (#534)
2022-04-21 12:11:26 +02:00
valentink-eroad
733b50e9ae
CMake: add a flag to enable version lookup outside the root folder (#533)
Add ARGN to determine_version_with_git() parameters list to allow
specifying the optional ALLOW_LOOKING_ABOVE_CMAKE_SOURCE_DIR flag
2022-04-14 10:15:40 +02:00
Robin Mueller
39156c918b Extended CMake installation handling (#523)
* updated the version handling

- Introduces a new version.txt file
- This file is parsed by CMake to determine the current version

* assign version in project call

* use version variable

* Meson update

1. Minor fix for GCC build
2. Use external version file which can be used by CMake as well

* get version from git tag now

* ci/cd broke..

* maybe this solves the error

* updated workflow files

* one last test

* remove git describe call

* extended CMake installation handling

* only write version file if possible

* read version.txt as fallback

* missing version.txt arg
2022-04-08 09:37:21 +02:00
Robin Mueller
fbffca3b4c Update cmake & meson version handling (#522)
* updated the version handling

- Introduces a new version.txt file
- This file is parsed by CMake to determine the current version

* assign version in project call

* use version variable

* Meson update

1. Minor fix for GCC build
2. Use external version file which can be used by CMake as well

* get version from git tag now

* ci/cd broke..

* maybe this solves the error

* updated workflow files

* one last test

* remove git describe call
2022-04-08 09:37:21 +02:00
Adam Boseley
5bbf4c8927
Add "make install" option (#369)
Co-authored-by: Adam Boseley <aboseley@agjunction.com>
2021-04-18 08:49:47 +01:00
Adam Boseley
47102c7a0e
Export headers as system includes (#340)
Gcc doesn't apply warning to system includes paths. This change
allows a project to use high warning levels without getting swamped by ETL
issues.
2021-02-28 10:53:02 +00:00
John Wellbelove
9adf0c0535 CMakeLists test 2020-09-30 09:53:29 +01:00
John Wellbelove
e0403d85eb restore old CMakeLists.txt 2019-12-06 22:02:51 +00:00
John Wellbelove
3e5b19d307 Alternate CMakeLists.txt 2019-12-06 21:39:39 +00:00
Tobias Müller
f9dd536812 Add generic profile for Clang compiler (#138) 2019-07-26 08:48:29 +01:00
John Wellbelove
b3f7563ebb Merge remote-tracking branch 'origin/master' into feature/rvalue-references
# Conflicts:
#	include/etl/private/pvoidvector.h
2018-12-17 19:09:32 +00:00
John Wellbelove
7ceabcb571 Merge from GitLab CMake-CLion feature branch 2018-10-28 12:54:45 +00:00
John Wellbelove
bd008350a2 Merge remote-tracking branch 'origin/feature/changed_include_paths' into development
# Conflicts:
#	include/etl/version.h
2018-07-28 21:55:27 +01:00
John Wellbelove
7fbc543080 Merge remote-tracking branch 'origin/feature/CMake' into development
# Conflicts:
#	test/vs2017/etl.vcxproj.filters
2018-05-31 22:21:09 +01:00
John Wellbelove
4864e95b36 New directory layout 2018-03-18 17:48:29 +00:00
John Wellbelove
224df730c3 Merge remote-tracking branch 'origin/master' into development 2018-03-18 14:13:24 +00:00