SDCC: Remove default flags for a specific target

Remove defaults for a specific target (8051) because they are incorrect
for other targets.

Fixes: #20308
This commit is contained in:
fruit
2020-02-04 07:06:53 -05:00
committed by Brad King
parent f9410accaa
commit 18d2e6fc8f
2 changed files with 5 additions and 11 deletions

View File

@@ -0,0 +1,5 @@
sdcc-no-default-target
----------------------
* The default flags used for SDCC no longer include any target-specific flags.
Previously the default flags were hard-coded for 8051.

View File

@@ -1,4 +1,3 @@
# This file implements basic support for sdcc (http://sdcc.sourceforge.net/)
# a free C compiler for 8 and 16 bit microcontrollers.
# To use it either a toolchain file is required or cmake has to be run like this:
@@ -35,22 +34,12 @@ else()
set(CMAKE_AR "${SDCCAR_EXECUTABLE}" CACHE FILEPATH "The sdcc librarian" FORCE)
endif()
if("${SDCCAR_EXECUTABLE}" MATCHES "sdcclib")
set(CMAKE_AR_OPTIONS "-a")
else()
set(CMAKE_AR_OPTIONS "-rc")
endif()
# CMAKE_C_FLAGS_INIT and CMAKE_EXE_LINKER_FLAGS_INIT should be set in a CMAKE_SYSTEM_PROCESSOR file
if(NOT DEFINED CMAKE_C_FLAGS_INIT)
string(APPEND CMAKE_C_FLAGS_INIT " -mmcs51 --model-small")
endif()
if(NOT DEFINED CMAKE_EXE_LINKER_FLAGS_INIT)
set (CMAKE_EXE_LINKER_FLAGS_INIT --model-small)
endif()
set(CMAKE_C_LINKER_WRAPPER_FLAG "-Wl" ",")
# compile a C file into an object file