Assign only to BUILD_XXXFLAGS in jw-build/make/*.mk, and leave PROJECT_XXXFLAGS
and LOCAL_XXXFLAGS alone.
Signed-off-by: Jan Lindemann <jan@janware.com>
MCU_OPENOCD_CFG_NAME was defined in cfg-cpp.mk and mcu-defs.mk. Not sure which
is the best place, but have them compete is clearly the worst idea. This patch
puts them into defs-cpp.mk. A future patch should place the whole bunch
somewhere else, I guess.
Signed-off-by: Jan Lindemann <jan@janware.com>
- Add support MCU_FLASH_BANK_NAME to support multiple banks
- Prefix binaries with TARGET_PRODUCT, if defined
- Fix flash data for stm32f769i-disco
Signed-off-by: Jan Lindemann <jan@janware.com>
- Group more consistently into overall default choices, template cascade and
compiler flags
- Add definitions for st-nucleo-f103rb (for now)
Signed-off-by: Jan Lindemann <jan@janware.com>
Rename CFLAGS and friends to follow the conventions of the implicit rules
defined by GNU Make:
- $(CPPFLAGS) is passed to both C++ and C compiler
- $(CXXFLAGS) is passed to C++ compiler only
- $(CFLAGS) is passed to C compiler only
- C++ compiler is in $(CXX)
Signed-off-by: Jan Lindemann <jan@janware.com>
This commit adds compiler flags needed for compilation with modm. Cleanup is
needed, most notably should mcu-tags.mk be dissolved into defs-cpp.mk. The good
part is that it works.
Signed-off-by: Jan Lindemann <jan@janware.com>
These variables denote the flags used in compiler and linker rules.
They are defined as REAL_(CPP|C|LD)FLAGS ?= BUILD_(CPP|C|LD)FLAGS
and provide a means to override the flags assembled cumulatively.
Signed-off-by: Jan Lindemann <jan@janware.com>
USE_DISABLE_COMPILER_OPTIMISATION_OPTS = true disables options targeted
at disabling optimization features, which were introduced to facilitate
debugging in the first place, but make the commandline harder to compare
to others while troubleshooting the compile process
Signed-off-by: Jan Lindemann <jan@janware.com>
Code generated for Cortex M3 stopped working after adding -L$(TC_SYS_ROOT)/lib.
The problem is that libc et al have to be taken from $(TC_SYS_ROOT)/lib/thumb,
which is correctly taken if explicit -L is left out.
Probably breaks mingw, to be tested and fixed in the next iteration.
Signed-off-by: Jan Lindemann <jan@janware.com>
This commit takes the MinGW cross compilation further into the direction of
being a more general framework for cross compilation. Changed some variable
names that are too specialized, notably MinGW tool chain directories,
compilers, utilities.
Signed-off-by: Jan Lindemann <jan@janware.com>
This commit makes it possible to successfully run "make all" against ytools'
again, with TARGET_TUPLE set to i686-ms-w64-mingw. Lots of minor and major
tweaks here and there.
The biggest diff is a move of the architecture-related definitions into
platform.mk. The are needed pretty early on, so that seems reasonable.
Making this work again is part of the larger effort to support cross
buildchains in a more concise way, i.e. without so many if ($(TARGET),mingw))
all over the place. TARGET's relevance should dwindle, until it's finally taken
over by the TARGET_XXX variables extracted from TARGET_TUPLE or TARGET_TRIPLET.
Signed-off-by: Jan Lindemann <jan@janware.com>
Reordered some variables in defs.mk and defs-cpp.mk for clarity. Most notably
FULL_NAME was moved back into defs.mk, which amounts to a bugfix.
Signed-off-by: Jan Lindemann <jan@janware.com>
C++ definitions are numerous, and they shouldn't pollute variable space and
performance outside of directories containing C++ files. This commit pushes
them into a defs-cpp.mk file.
Signed-off-by: Jan Lindemann <jan@janware.com>