Commit Graph

6408 Commits

Author SHA1 Message Date
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
DRracer f7d4095479
Merge branch 'MK3' into MK3_MMU2_fix1 2022-09-21 15:18:44 +02:00
Yuri D'Elia 86944d9ff6
Merge pull request #3616 from leptun/optimize_prusa_commands
Move strings to progmem
2022-09-21 15:07:58 +02:00
Alex Voinea 2cdd3ba364 Move strings to progmem 2022-09-21 14:53:54 +02:00
Yuri D'Elia 16d1ef8510
Merge pull request #3560 from leptun/splash_version
Show firmware version on splash screen
2022-09-21 14:47:41 +02:00
Yuri D'Elia a1213d6a6e
Merge pull request #3600 from gudnimg/init-lcd-status
Fix initialization of LCD status line message
2022-09-21 14:46:10 +02:00
Yuri D'Elia ca9a28eff2
Merge pull request #3612 from wavexx/tm_update_r0
Temperature model: update R0 estimate
2022-09-21 14:46:03 +02:00