diff --git a/config/Config-build.in b/config/Config-build.in index 199277167b..499f84690f 100644 --- a/config/Config-build.in +++ b/config/Config-build.in @@ -103,6 +103,15 @@ menu "Global build settings" help If enabled, buildinfo files will be stored in /etc/build.* of firmware. + config REPRODUCIBLE_DEBUG_INFO + bool "Make debug information reproducible" + default BUILDBOT + help + This strips the local build path out of debug information. This has the + advantage of making it reproducible, but the disadvantage of making local + debugging using ./scripts/remote-gdb harder, since the debug data will + no longer point to the full path on the build host. + config COLLECT_KERNEL_DEBUG bool prompt "Collect kernel debug information" diff --git a/rules.mk b/rules.mk index e734b4a582..479172de03 100644 --- a/rules.mk +++ b/rules.mk @@ -144,7 +144,7 @@ ifeq ($(or $(CONFIG_EXTERNAL_TOOLCHAIN),$(CONFIG_TARGET_uml)),) ifeq ($(CONFIG_GCC_USE_IREMAP),y) iremap = -iremap$(1):$(2) else - iremap = -ffile-prefix-map=$(1)=$(2) + iremap = -f$(if $(CONFIG_REPRODUCIBLE_DEBUG_INFO),file,macro)-prefix-map=$(1)=$(2) endif endif