Browse Source

initial support for c++ for this cpu/board

dev/timer
BytesGalore 8 years ago
parent
commit
8c5418e9e5
  1. 2
      boards/stm32f4discovery/Makefile.features
  2. 5
      boards/stm32f4discovery/Makefile.include
  3. 16
      cpu/stm32f4/syscalls.c

2
boards/stm32f4discovery/Makefile.features

@ -1 +1 @@
FEATURES_PROVIDED += periph_gpio periph_spi periph_pwm periph_random periph_adc
FEATURES_PROVIDED += periph_gpio periph_spi periph_pwm periph_random periph_adc cpp

5
boards/stm32f4discovery/Makefile.include

@ -17,6 +17,7 @@ export PORT
# define tools used for building the project
export PREFIX = arm-none-eabi-
export CC = $(PREFIX)gcc
export CXX = $(PREFIX)g++
export AR = $(PREFIX)ar
export AS = $(PREFIX)as
export LINK = $(PREFIX)gcc
@ -40,6 +41,10 @@ export FFLAGS = write bin/$(BOARD)/$(APPLICATION).hex 0x8000000
export DEBUGGER_FLAGS = $(RIOTBOARD)/$(BOARD)/dist/gdb.conf $(BINDIR)/$(APPLICATION).elf
export TERMFLAGS += -p "$(PORT)"
# unwanted (CXXUWFLAGS) and extra (CXXEXFLAGS) flags for c++
export CXXUWFLAGS +=
export CXXEXFLAGS +=
# use newLib nano-specs if available
ifeq ($(shell $(LINK) -specs=nano.specs -E - 2>/dev/null >/dev/null </dev/null ; echo $$?),0)
export LINKFLAGS += -specs=nano.specs -lc -lnosys

16
cpu/stm32f4/syscalls.c

@ -156,6 +156,7 @@ int _getpid(void)
*
* @return TODO
*/
__attribute__ ((weak))
int _kill_r(struct _reent *r, int pid, int sig)
{
r->_errno = ESRCH; /* not implemented yet */
@ -321,3 +322,18 @@ int _unlink_r(struct _reent *r, char* path)
r->_errno = ENODEV; /* not implemented yet */
return -1;
}
/**
* @brief Send a signal to a thread
*
* @param[in] pid the pid to send to
* @param[in] sig the signal to send
*
* @return TODO
*/
__attribute__ ((weak))
int _kill(int pid, int sig)
{
errno = ESRCH; /* not implemented yet */
return -1;
}

Loading…
Cancel
Save