Move LTO logic from common.mk (#14973)
This commit is contained in:
parent
780e763c13
commit
0c87e2e702
@ -108,7 +108,5 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||||||
#define LOCKING_RESYNC_ENABLE
|
#define LOCKING_RESYNC_ENABLE
|
||||||
|
|
||||||
/* disable these deprecated features by default */
|
/* disable these deprecated features by default */
|
||||||
#ifndef LINK_TIME_OPTIMIZATION_ENABLE
|
#define NO_ACTION_MACRO
|
||||||
#define NO_ACTION_MACRO
|
#define NO_ACTION_FUNCTION
|
||||||
#define NO_ACTION_FUNCTION
|
|
||||||
#endif
|
|
||||||
|
@ -49,10 +49,8 @@
|
|||||||
#define DEBOUNCE 3
|
#define DEBOUNCE 3
|
||||||
|
|
||||||
/* disable these deprecated features by default */
|
/* disable these deprecated features by default */
|
||||||
//#ifndef LINK_TIME_OPTIMIZATION_ENABLE
|
//#define NO_ACTION_MACRO
|
||||||
//# define NO_ACTION_MACRO
|
//#define NO_ACTION_FUNCTION
|
||||||
//# define NO_ACTION_FUNCTION
|
|
||||||
//#endif
|
|
||||||
|
|
||||||
#ifdef RGB_MATRIX_ENABLE
|
#ifdef RGB_MATRIX_ENABLE
|
||||||
# define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
|
# define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
|
||||||
|
@ -50,10 +50,8 @@
|
|||||||
#define DEBOUNCE 3
|
#define DEBOUNCE 3
|
||||||
|
|
||||||
/* disable these deprecated features by default */
|
/* disable these deprecated features by default */
|
||||||
//#ifndef LINK_TIME_OPTIMIZATION_ENABLE
|
//#define NO_ACTION_MACRO
|
||||||
//# define NO_ACTION_MACRO
|
//#define NO_ACTION_FUNCTION
|
||||||
//# define NO_ACTION_FUNCTION
|
|
||||||
//#endif
|
|
||||||
|
|
||||||
#ifdef RGB_MATRIX_ENABLE
|
#ifdef RGB_MATRIX_ENABLE
|
||||||
# define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
|
# define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
|
||||||
|
@ -50,10 +50,8 @@
|
|||||||
#define DEBOUNCE 3
|
#define DEBOUNCE 3
|
||||||
|
|
||||||
/* disable these deprecated features by default */
|
/* disable these deprecated features by default */
|
||||||
//#ifndef LINK_TIME_OPTIMIZATION_ENABLE
|
//#define NO_ACTION_MACRO
|
||||||
//# define NO_ACTION_MACRO
|
//#define NO_ACTION_FUNCTION
|
||||||
//# define NO_ACTION_FUNCTION
|
|
||||||
//#endif
|
|
||||||
|
|
||||||
#ifdef RGB_MATRIX_ENABLE
|
#ifdef RGB_MATRIX_ENABLE
|
||||||
# define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
|
# define RGB_DISABLE_AFTER_TIMEOUT 0 // number of ticks to wait until disabling effects
|
||||||
|
@ -24,7 +24,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||||||
// place overrides here
|
// place overrides here
|
||||||
|
|
||||||
// Some defines meant to decrease the firmware size. The firmware is otherwise over the maximum (atmega32u4)
|
// Some defines meant to decrease the firmware size. The firmware is otherwise over the maximum (atmega32u4)
|
||||||
//# ifndef LINK_TIME_OPTIMIZATION_ENABLE
|
//# ifndef LTO_ENABLE
|
||||||
//Disable old style macro handling: MACRO() & action_get_macro
|
//Disable old style macro handling: MACRO() & action_get_macro
|
||||||
//# define NO_ACTION_MACRO // This saves 320 bytes
|
//# define NO_ACTION_MACRO // This saves 320 bytes
|
||||||
//disable calling of action_function() from the fn_actions array (deprecated)
|
//disable calling of action_function() from the fn_actions array (deprecated)
|
||||||
@ -40,7 +40,7 @@ along with this program. If not, see <http://www.gnu.org/licenses/>.
|
|||||||
|
|
||||||
|
|
||||||
// Attempts to reduce firmware size:
|
// Attempts to reduce firmware size:
|
||||||
//#define LINK_TIME_OPTIMIZATION_ENABLE // Did not decrease firmware size when tested on 26 Jan 2020
|
//#define LTO_ENABLE // Did not decrease firmware size when tested on 26 Jan 2020
|
||||||
//#define NO_DEBUG //disable debugging (already defined)
|
//#define NO_DEBUG //disable debugging (already defined)
|
||||||
//#define NO_PRINT JJdisable printing/debugging using hid_listen (already defined)
|
//#define NO_PRINT JJdisable printing/debugging using hid_listen (already defined)
|
||||||
//#define NO_ACTION_LAYER //disable layers (obviously need layers)
|
//#define NO_ACTION_LAYER //disable layers (obviously need layers)
|
||||||
|
@ -100,18 +100,6 @@ ifeq ($(strip $(SHARED_EP_ENABLE)), yes)
|
|||||||
TMK_COMMON_DEFS += -DSHARED_EP_ENABLE
|
TMK_COMMON_DEFS += -DSHARED_EP_ENABLE
|
||||||
endif
|
endif
|
||||||
|
|
||||||
ifeq ($(strip $(LTO_ENABLE)), yes)
|
|
||||||
ifeq ($(PLATFORM),CHIBIOS)
|
|
||||||
$(info Enabling LTO on ChibiOS-targeting boards is known to have a high likelihood of failure.)
|
|
||||||
$(info If unsure, set LTO_ENABLE = no.)
|
|
||||||
endif
|
|
||||||
EXTRAFLAGS += -flto
|
|
||||||
TMK_COMMON_DEFS += -DLTO_ENABLE
|
|
||||||
TMK_COMMON_DEFS += -DLINK_TIME_OPTIMIZATON_ENABLE
|
|
||||||
else ifdef LINK_TIME_OPTIMIZATION_ENABLE
|
|
||||||
$(error The LINK_TIME_OPTIMIZATION_ENABLE flag has been renamed to LTO_ENABLE.)
|
|
||||||
endif
|
|
||||||
|
|
||||||
# Search Path
|
# Search Path
|
||||||
VPATH += $(TMK_PATH)/$(COMMON_DIR)
|
VPATH += $(TMK_PATH)/$(COMMON_DIR)
|
||||||
VPATH += $(TMK_PATH)/$(PLATFORM_COMMON_DIR)
|
VPATH += $(TMK_PATH)/$(PLATFORM_COMMON_DIR)
|
||||||
|
@ -82,6 +82,15 @@ endif
|
|||||||
# -Wall...: warning level
|
# -Wall...: warning level
|
||||||
# -Wa,...: tell GCC to pass this to the assembler.
|
# -Wa,...: tell GCC to pass this to the assembler.
|
||||||
# -adhlns...: create assembler listing
|
# -adhlns...: create assembler listing
|
||||||
|
ifeq ($(strip $(LTO_ENABLE)), yes)
|
||||||
|
ifeq ($(PLATFORM),CHIBIOS)
|
||||||
|
$(info Enabling LTO on ChibiOS-targeting boards is known to have a high likelihood of failure.)
|
||||||
|
$(info If unsure, set LTO_ENABLE = no.)
|
||||||
|
endif
|
||||||
|
CDEFS += -flto
|
||||||
|
CDEFS += -DLTO_ENABLE
|
||||||
|
endif
|
||||||
|
|
||||||
DEBUG_ENABLE ?= yes
|
DEBUG_ENABLE ?= yes
|
||||||
ifeq ($(strip $(SKIP_DEBUG_INFO)),yes)
|
ifeq ($(strip $(SKIP_DEBUG_INFO)),yes)
|
||||||
DEBUG_ENABLE=no
|
DEBUG_ENABLE=no
|
||||||
|
Loading…
Reference in New Issue
Block a user