Refactor quantum/split_common/i2c.c, quantum/split_common/serial.c (#4522)

* add temporary compile test shell script

* Extended support of SKIP_VERSION to make invariant compile results during testing.

* build_keyboard.mk, tmk_core/rules.mk: add LIB_SRC, QUANTUM_LIB_SRC support

Support compiled object enclosed in library.

e.g.
```
LIB_SRC += xxxx.c
xxxx.c --> xxxx.o ---> xxxx.a
```

* remove 'ifdef/ifndef USE_I2C' from quantum/split_common/{i2c|serial}.c

* add SKIP_DEBUG_INFO into tmk_core/rules.mk

When SKIP_DEBUG_INFO=yes is specified, do not use the -g option at compile time.

* tmk_core/rules.mk: Library object need -fno-lto

* add SKIP_DEBUG_INFO=yes

* remove temporary compile test shell script

* add '#define SOFT_SERIAL_PIN D0' to keyboards/lets_split/rev?/config.h

* quantum/split_common/serial.c: Changed not to use USE_I2C.
This commit is contained in:
Takeshi ISHII 2018-12-15 14:31:56 +09:00 committed by Drashna Jaelre
parent a49d98e665
commit 8f790948e5
9 changed files with 56 additions and 24 deletions

View file

@ -12,18 +12,14 @@
#include <stdbool.h>
#include "serial.h"
#ifndef USE_I2C
#ifndef SOFT_SERIAL_PIN
#error quantum/split_common/serial.c need SOFT_SERIAL_PIN define
#endif
#ifdef SOFT_SERIAL_PIN
#ifdef __AVR_ATmega32U4__
// if using ATmega32U4 I2C, can not use PD0 and PD1 in soft serial.
#ifdef USE_I2C
#if SOFT_SERIAL_PIN == D0 || SOFT_SERIAL_PIN == D1
#error Using ATmega32U4 I2C, so can not use PD0, PD1
#endif
#ifdef USE_AVR_I2C
#if SOFT_SERIAL_PIN == D0 || SOFT_SERIAL_PIN == D1
#error Using ATmega32U4 I2C, so can not use PD0, PD1
#endif
#endif
#if SOFT_SERIAL_PIN >= D0 && SOFT_SERIAL_PIN <= D3
@ -278,4 +274,4 @@ int serial_update_buffers(void) {
return 0;
}
#endif
#endif /* SOFT_SERIAL_PIN */