refactor(core): make include paths relative
What changed, and why it matters
This commit is a straightforward code cleanup: it changes the way source files locate shared header files from absolute-style paths to relative paths. There is no change to program logic, no bug fix, and no security-relevant behavior.
No security action required. Treat as a normal build-system hygiene refactor.
Security signals we found
No strong security signals were identified.
Evidence from the diff
The commit refactors C/C++ include directives across 18 MicroPython module files under core/embed/upymod. It replaces repository-root-anchored includes such as “embed/upymod/trezorobj.h” and “embed/rust/librust.h” with relative equivalents like “../trezorobj.h” and “../../rust/librust.h”. One file also swaps the order of two includes. No functional code, macros, or build flags are modified.
Changed components
core/embed/upymod/modtrezorapp/modtrezorapp.ccore/embed/upymod/modtrezorconfig/modtrezorconfig.ccore/embed/upymod/modtrezorcrypto/modtrezorcrypto-bech32.hcore/embed/upymod/modtrezorcrypto/modtrezorcrypto-bip32.hcore/embed/upymod/modtrezorcrypto/modtrezorcrypto-blake2b.hcore/embed/upymod/modtrezorcrypto/modtrezorcrypto-blake2s.hcore/embed/upymod/modtrezorcrypto/modtrezorcrypto-cardano.hcore/embed/upymod/modtrezorcrypto/modtrezorcrypto-crc.hcore/embed/upymod/modtrezorcrypto/modtrezorcrypto-elligator2.hcore/embed/upymod/modtrezorcrypto/modtrezorcrypto-monero.hcore/embed/upymod/modtrezorcrypto/modtrezorcrypto-nem.hcore/embed/upymod/modtrezorcrypto/modtrezorcrypto-random.hcore/embed/upymod/modtrezorcrypto/modtrezorcrypto-secp256k1.hcore/embed/upymod/modtrezorcrypto/modtrezorcrypto-shamir.hcore/embed/upymod/modtrezorio/modtrezorio.ccore/embed/upymod/modtrezorui/modtrezorui.ccore/embed/upymod/modtrezorutils/modtrezorutils-meminfo.hcore/embed/upymod/modtrezorutils/modtrezorutils.cInspect captured patch +21 / −21
diff --git a/core/embed/upymod/modtrezorapp/modtrezorapp.c b/core/embed/upymod/modtrezorapp/modtrezorapp.c
index 52463f93..15b04461 100644
--- a/core/embed/upymod/modtrezorapp/modtrezorapp.c
+++ b/core/embed/upymod/modtrezorapp/modtrezorapp.c
@@ -30,7 +30,7 @@
#include <io/app_cache.h>
#include <io/app_loader.h>
-#include "embed/upymod/trezorobj.h"
+#include "../trezorobj.h"
#include "modtrezorapp-image.h"
#include "modtrezorapp-task.h"
diff --git a/core/embed/upymod/modtrezorconfig/modtrezorconfig.c b/core/embed/upymod/modtrezorconfig/modtrezorconfig.c
index dad0b2d3..7f8cdf2b 100644
--- a/core/embed/upymod/modtrezorconfig/modtrezorconfig.c
+++ b/core/embed/upymod/modtrezorconfig/modtrezorconfig.c
@@ -27,7 +27,7 @@
#include <sec/storage.h>
-#include "embed/upymod/trezorobj.h"
+#include "../trezorobj.h"
#include "memzero.h"
diff --git a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-bech32.h b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-bech32.h
index 051c7864..a57e2a78 100644
--- a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-bech32.h
+++ b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-bech32.h
@@ -17,7 +17,7 @@
* along with this program. If not, see <http://www.gnu.org/licenses/>.
*/
-#include "embed/upymod/trezorobj.h"
+#include "../trezorobj.h"
#include "py/objstr.h"
#include "segwit_addr.h"
diff --git a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-bip32.h b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-bip32.h
index d8008192..80fd0b9c 100644
--- a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-bip32.h
+++ b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-bip32.h
@@ -19,7 +19,7 @@
#include "py/objstr.h"
-#include "embed/upymod/trezorobj.h"
+#include "../trezorobj.h"
#include "hdnode.h"
#include "bip32.h"
diff --git a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-blake2b.h b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-blake2b.h
index a5e89002..903f2546 100644
--- a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-blake2b.h
+++ b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-blake2b.h
@@ -19,7 +19,7 @@
#include "py/objstr.h"
-#include "embed/upymod/trezorobj.h"
+#include "../trezorobj.h"
#include "blake2b.h"
#include "memzero.h"
diff --git a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-blake2s.h b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-blake2s.h
index 5f0dedb9..a09334f6 100644
--- a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-blake2s.h
+++ b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-blake2s.h
@@ -19,7 +19,7 @@
#include "py/objstr.h"
-#include "embed/upymod/trezorobj.h"
+#include "../trezorobj.h"
#include "blake2s.h"
#include "memzero.h"
diff --git a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-cardano.h b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-cardano.h
index e8211fc0..8b78da02 100644
--- a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-cardano.h
+++ b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-cardano.h
@@ -21,7 +21,7 @@
#include "py/objstr.h"
-#include "embed/upymod/trezorobj.h"
+#include "../trezorobj.h"
#include "hdnode.h"
#include "bip39.h"
diff --git a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-crc.h b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-crc.h
index 5e4837e5..61f283c4 100644
--- a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-crc.h
+++ b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-crc.h
@@ -19,7 +19,7 @@
#include "py/objstr.h"
-#include "embed/upymod/trezorobj.h"
+#include "../trezorobj.h"
#include "crc.h"
diff --git a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-elligator2.h b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-elligator2.h
index 60abe666..4200f7d4 100644
--- a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-elligator2.h
+++ b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-elligator2.h
@@ -19,7 +19,7 @@
#include "py/objstr.h"
-#include "embed/upymod/trezorobj.h"
+#include "../trezorobj.h"
#include "elligator2.h"
diff --git a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-monero.h b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-monero.h
index f9513c1f..85fe7c0a 100644
--- a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-monero.h
+++ b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-monero.h
@@ -21,7 +21,7 @@
#include "py/objint.h"
#include "py/objstr.h"
-#include "embed/upymod/trezorobj.h"
+#include "../trezorobj.h"
#include "bignum.h"
#include "memzero.h"
diff --git a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-nem.h b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-nem.h
index 5478b86f..128c89fa 100644
--- a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-nem.h
+++ b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-nem.h
@@ -19,7 +19,7 @@
#include "py/objstr.h"
-#include "embed/upymod/trezorobj.h"
+#include "../trezorobj.h"
#include "nem.h"
diff --git a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-random.h b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-random.h
index 128abc46..39061ea2 100644
--- a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-random.h
+++ b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-random.h
@@ -19,7 +19,7 @@
#include "py/objstr.h"
-#include "embed/upymod/trezorobj.h"
+#include "../trezorobj.h"
#include <sec/rng_strong.h>
#include "rand.h"
diff --git a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-secp256k1.h b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-secp256k1.h
index 4deaa9d5..9de7d3bc 100644
--- a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-secp256k1.h
+++ b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-secp256k1.h
@@ -21,8 +21,8 @@
#include "py/objstr.h"
-#include "vendor/trezor-crypto/ecdsa.h"
-#include "vendor/trezor-crypto/secp256k1.h"
+#include "trezor-crypto/ecdsa.h"
+#include "trezor-crypto/secp256k1.h"
/// package: trezorcrypto.secp256k1
diff --git a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-shamir.h b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-shamir.h
index 023cbb62..5a4e35b1 100644
--- a/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-shamir.h
+++ b/core/embed/upymod/modtrezorcrypto/modtrezorcrypto-shamir.h
@@ -19,7 +19,7 @@
#include "py/obj.h"
-#include "embed/upymod/trezorobj.h"
+#include "../trezorobj.h"
#include "shamir.h"
diff --git a/core/embed/upymod/modtrezorio/modtrezorio.c b/core/embed/upymod/modtrezorio/modtrezorio.c
index 1bea4688..f34fe64d 100644
--- a/core/embed/upymod/modtrezorio/modtrezorio.c
+++ b/core/embed/upymod/modtrezorio/modtrezorio.c
@@ -45,7 +45,7 @@ uint32_t last_touch_sample_time = 0;
mp_raise_ValueError((mp_rom_error_text_t)msg); \
}
-#include "embed/upymod/trezorobj.h"
+#include "../trezorobj.h"
// clang-format off
#include "modtrezorio-usb.h"
diff --git a/core/embed/upymod/modtrezorui/modtrezorui.c b/core/embed/upymod/modtrezorui/modtrezorui.c
index 5037281d..a47314dd 100644
--- a/core/embed/upymod/modtrezorui/modtrezorui.c
+++ b/core/embed/upymod/modtrezorui/modtrezorui.c
@@ -23,7 +23,7 @@
#if MICROPY_PY_TREZORUI
-#include "embed/upymod/trezorobj.h"
+#include "../trezorobj.h"
#include "modtrezorui-display.h"
STATIC const mp_rom_map_elem_t mp_module_trezorui_globals_table[] = {
diff --git a/core/embed/upymod/modtrezorutils/modtrezorutils-meminfo.h b/core/embed/upymod/modtrezorutils/modtrezorutils-meminfo.h
index a5556908..b3b3e71f 100644
--- a/core/embed/upymod/modtrezorutils/modtrezorutils-meminfo.h
+++ b/core/embed/upymod/modtrezorutils/modtrezorutils-meminfo.h
@@ -35,8 +35,8 @@
#include "py/objtype.h"
#include <io/usb.h>
-#include "embed/rust/librust.h"
-#include "embed/upymod/trezorobj.h"
+#include "../../rust/librust.h"
+#include "../trezorobj.h"
#if !TREZOR_EMULATOR
#define fopen(path, mode) &mp_plat_print
diff --git a/core/embed/upymod/modtrezorutils/modtrezorutils.c b/core/embed/upymod/modtrezorutils/modtrezorutils.c
index 119fac04..d5ce3d64 100644
--- a/core/embed/upymod/modtrezorutils/modtrezorutils.c
+++ b/core/embed/upymod/modtrezorutils/modtrezorutils.c
@@ -31,8 +31,8 @@
#if MICROPY_PY_TREZORUTILS
-#include "embed/upymod/modtrezorutils/modtrezorutils-meminfo.h"
-#include "embed/upymod/trezorobj.h"
+#include "../trezorobj.h"
+#include "modtrezorutils-meminfo.h"
#include <io/usb.h>
#include <sys/logging.h>
Why this scored 15/100
Community notes
Notes can correct, qualify, or add evidence to the AI analysis. Every note shown here has been validated by a human moderator.
The AI analysis stands alone for now. Submit a note if you can add evidence or important context.