Yuri D'Elia
96a2c9cb4a
cmake: Improve a few comments
2022-10-03 23:57:00 +02:00
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
3d-gussner
992845198d
Merge pull request #3648 from wavexx/more_cleanups
...
cleanup: Expand tabs to fixup suspicious indentation warnings
2022-10-03 11:53:42 +02:00
3d-gussner
57c4716b8f
Merge pull request #3647 from wavexx/cmake-build
...
cmake build improvements
2022-10-03 11:53:18 +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
4cc6695195
cleanup: Expand tabs to fixup suspicious indentation warnings
2022-10-02 20:42:36 +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
9288462b59
cmake: Tighten ignores
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
Yuri D'Elia
47f89bb418
cmake: Do not set PROJECT_VERSION in PARENT_SCOPE
2022-10-02 20:32:32 +02:00
vintagepc
d8c9c4450f
Merge pull request #3641 from vintagepc/build-with-cmake
...
Build the firmware with cmake
2022-10-02 13:05:32 -04:00
Yuri D'Elia
0ffd33c142
Merge pull request #3639 from wavexx/cleanup_warnings
...
Cleanup warnings
2022-09-30 15:19:42 +02:00
Yuri D'Elia
c7b6b9a99b
cleanup: Suppress unused argument warnings
2022-09-30 15:08:11 +02:00
VintagePC
c522330433
Merge remote-tracking branch 'upstream/MK3' into build-with-cmake
2022-09-30 09:04:35 -04:00
Yuri D'Elia
b95d508574
cleanup: Remove implicit fallthrough in CRC validation
2022-09-30 12:55:47 +02:00
Yuri D'Elia
71be6b19d4
cleanup: Remove return value from MMU2Serial::write()
...
Removes a missing return warning.
Looks like we don't handle overflow at the moment and in all surrounding
code, so let's remove the return value for now.
2022-09-30 12:55:47 +02:00
Yuri D'Elia
6cfe000ac9
cleanup: Reorder members to match initialization order
2022-09-30 12:55:47 +02:00
Yuri D'Elia
398a4bf403
cleanup: Do not return const values from functions
...
This generates a warning under -Wextra, since in most cases a const
value doesn't prevent buggy code (as copies are allowed) while
preventing some optimizations (such as move operations) to take place.
2022-09-30 12:55:47 +02:00
Yuri D'Elia
d6af13dfc1
cleanup: Supress missing return warnings
...
Rewrite the function with a temporary to avoid the spourious no-return
warning.
The generated code is *unchanged*.
2022-09-30 12:31:07 +02:00
3d-gussner
9f6d3e2c10
Merge pull request #3633 from 3d-gussner/MK3_BETA_message
...
Remove BETA Warnings
2022-09-29 17:20:29 +02:00
3d-gussner
74e15ac233
Rename EN_ONLY to EN_FARM
...
remove DEBUG/DEVEL/ALPHA/BETA lcd warning
2022-09-29 16:39:02 +02:00
3d-gussner
346dfbdbb3
Fix MSG_SPOOL_JOIN
2022-09-29 10:54:46 +02:00
3d-gussner
c7b500af1e
BETA firmware message only in English
...
Rephrase BETA firmware message to fit on two screens
ALPHA message same as DEVEL
Fix ALPHA DEVEL message
2022-09-29 10:48:16 +02:00
Yuri D'Elia
4434d120c8
Merge pull request #3628 from wavexx/lcd_pad_fix
...
lcd_print_pad: do not overflow len when truncating the string
2022-09-26 11:58:00 +02:00
Yuri D'Elia
709d07310a
lcd_print_pad: do not overflow len when truncating the string
2022-09-26 11:26:10 +02:00
VintagePC
4a3b07f832
Fix include path
2022-09-25 10:55:23 -04:00
DRracer
d15246adde
Merge pull request #3607 from prusa3d/MK3_MMU2_fix1
...
MK3S/+: support for new MMU2S
2022-09-23 15:02:56 +02:00
Alex Voinea
97cd0c5f08
Merge pull request #3622 from leptun/MK3_MMU2_fix2
...
Mk3 mmu2 fix2
2022-09-23 15:01:38 +02:00
Alex Voinea
7fb53899dc
Merge branch 'MK3' into MK3_MMU2_fix1
2022-09-23 14:55:23 +02:00
Yuri D'Elia
3fe5311b82
Merge pull request #3620 from wavexx/warn_message_behavior
...
Improve warning behavior during thermal anomaly
2022-09-23 14:48:23 +02:00
Yuri D'Elia
26b091d50e
Remove unneeded lcd_finishstatus()
2022-09-23 11:54:16 +02:00
Yuri D'Elia
80c06bda55
Improve warning behavior during thermal anomaly
...
The current code forces any warning to return the user to the status
screen in order to show the message.
Thermal anomaly warnings can repeat at very short intervals, making menu
navigation (to pause/tune the print) impossible.
We now check if the message to be displayed is the same and only force a
kickback for new messages.
This partially reverts https://github.com/prusa3d/Prusa-Firmware/pull/3600
since we need the string to be null terminated for ease of comparison.
We pad the status line at display time instead using the new
lcd_print_pad() function which achieves the same effect.
2022-09-22 16:12:35 +02:00
Tom Mittendorf
24b638b5d4
fixed undefined behaviour when left shifting a negative number
2022-09-21 16:21:19 +02:00
Yuri D'Elia
a08984d94e
Merge pull request #3618 from wavexx/fix_startup
...
Do not hang during startup
2022-09-21 16:17:53 +02:00
Yuri D'Elia
9a9aadca87
Do not hang during startup
...
In ultralcd_init() do not use lcd_setstatuspgm() to initialize the
welcome message.
The internal call to lcd_finishstatus() requires the serial to be
already available. Split the function into lcd_padstatus() to pre-pad
the string and save some space.
2022-09-21 16:12:16 +02:00