Yuri D'Elia
75377f3081
cmake: Use/include Buddy formatting rules for consistency
2022-10-03 23:54:24 +02:00
Yuri D'Elia
0b23ab8e09
cmake: Fix/uniform non-xflash builds
2022-10-03 23:53:05 +02:00
Yuri D'Elia
9d716e9d69
cmake: Move a few variables closer to usage
2022-10-03 23:53:05 +02:00
Yuri D'Elia
3ec54d355e
cmake: Correctly patch binary during multi-language builds
...
lang-map.py expects to use the BIN file as an input-output argument.
The resulting BIN file contains an updated _PRI_LANG_SIGNATURE symbol.
2022-10-03 23:53:05 +02:00
Yuri D'Elia
ac1fca4a6a
cmake: Generate .hex files only where needed
...
This avoids generating useless intermediate .hex files during
multi-language builds.
2022-10-03 23:53:05 +02:00
Yuri D'Elia
ac84dd1457
cmake: Update the variant configuration correctly when changed
2022-10-03 20:55:27 +02:00
Yuri D'Elia
7d9dc1007c
cmake: Cleanup XFLASH multi-language rules
2022-10-03 19:51:41 +02:00
Yuri D'Elia
7e56a8255b
cmake: Define all targets, but only build ALL_MULTILANG by default
...
ALL_ENGLISH is mostly intended for debugging purposes
2022-10-03 17:51:31 +02:00
Yuri D'Elia
63605f4c86
cmake: Reformat to fix tab/space mixture
2022-10-03 17:40:48 +02:00
Yuri D'Elia
0ac4130b7d
cmake: Correctly split/gc sections while linking
...
Repeat the flags while linking for LTO
2022-10-02 20:44:02 +02:00
Yuri D'Elia
4412881439
cmake: Generate correct inline source listings in asm output
...
Manually provide a source path prefix to objdump
2022-10-02 20:32:32 +02:00
Yuri D'Elia
a8e85bd146
cmake: Work-around gcc 7 not supporting SOURCE_DATE_EPOCH
2022-10-02 20:32:32 +02:00
Yuri D'Elia
cdd822269a
cmake: Only make the target reproducible
2022-10-02 20:32:32 +02:00
Yuri D'Elia
1d520f9165
cmake: Make builds fully reproducible by default
...
- Work-around SOURCE flags being reset for each project when setting the
random-seed property by calling a support function.
- Likewise, set correct flags for reproducibility when creating archives.
- Strip source prefix paths from debug info
This should set the EPOCH using the last git commit date when available,
but it's not currently implemented. Just set the EPOCH to be 0 for now.
2022-10-02 20:32:32 +02:00
Yuri D'Elia
655b403c14
cmake: Uniform target compile/link flags
2022-10-02 20:32:32 +02:00
Yuri D'Elia
530702d1c9
cmake: Allow to configure/restrict the variant to be built
...
This introduces FW_VARIANTS as a configurable option, defaulting to the
full list of variants.
2022-10-02 20:32:32 +02:00
Yuri D'Elia
b3add22885
cmake: Move tests and CMakefiles to tests/
2022-10-02 20:32:32 +02:00
Yuri D'Elia
7f1bd0f046
cmake: Update Catch2
2022-10-02 20:32:32 +02:00
Yuri D'Elia
fea4c64056
cmake: Remove obsolete tests
2022-10-02 20:32:32 +02:00
VintagePC
c522330433
Merge remote-tracking branch 'upstream/MK3' into build-with-cmake
2022-09-30 09:04:35 -04:00
VintagePC
4a3b07f832
Fix include path
2022-09-25 10:55:23 -04:00
Guðni Már Gilbert
428f4a87ed
Remove unused CMake tests
2022-09-16 10:23:47 +02:00
VintagePC
598991dc69
- Fake-gen some folders to organize targets
...
- Support building both en and multilang together
2022-08-06 12:24:30 -04:00
VintagePC
04ea371936
Set source files explicitly for reproducible build
2022-08-06 10:57:03 -04:00
VintagePC
ea920536cb
Add version info to filenames
2022-08-05 21:03:41 -04:00
VintagePC
1e7e9aa391
fix typo
2022-08-05 17:45:48 -04:00
VintagePC
5f12c7f10b
* Synchronize flags with arduino
...
* Use cmake -E cat for merge
* Set AR/ranlib to GCC flavour
2022-08-05 16:54:07 -04:00
VintagePC
ca0d6caddf
Be explicit on languages
2022-07-28 18:16:15 -04:00
VintagePC
25ee23ca76
clean indentation
2022-07-28 08:11:11 -04:00
VintagePC
fa1be17b7c
cmake lang control
2022-07-28 08:07:08 -04:00
VintagePC
f453403ea9
bugfix
2022-07-27 22:25:40 -04:00
VintagePC
8a4b395aec
no-xflash case, add convenience target to build absolutely everything.
2022-07-27 20:24:12 -04:00
VintagePC
5bc936d4f5
Remove helper file, fix lang ordering, check sizes
2022-07-27 19:40:11 -04:00
VintagePC
9001d98061
Get version/dir from bootstrap, add pyelftools
2022-07-27 17:58:58 -04:00
3d-gussner
e187538973
Update bootstrap
2022-07-27 15:01:07 +02:00
VintagePC
739ccdf804
remove invalid command
2022-07-27 07:22:42 -04:00
VintagePC
f03e3c40ee
WIP/proof-of-concept
2022-07-26 19:33:09 -04:00
Marek Kuhn
2e25a853f4
Added prusatat test
2019-07-15 19:34:12 +02:00
Marek Bel
360a977520
Fix allDepleted(). Add tests.
2019-01-04 19:34:42 +01:00
Marek Bel
71826a3ab8
Fix tests build on Travis.
2018-11-27 18:00:20 +01:00
Marek Bel
67356ce356
Incomplete Timer test.
2018-06-11 22:50:52 +02:00
Marek Bel
68ce375a18
Add Catch2 test framework. Add example test. Add tests build instructions.
2018-06-11 22:14:22 +02:00