PageRenderTime 27ms CodeModel.GetById 19ms RepoModel.GetById 1ms app.codeStats 0ms

/trunc/src/STM32F4-Discovery-Firmware-/Project/Demonstration/Makefile

https://bitbucket.org/trottagio/stm32f4-discovery-firmware-makefile
Makefile | 86 lines | 65 code | 14 blank | 7 comment | 0 complexity | 4759f76051c68863a04d4c3c45e59969 MD5 | raw file
  1. TARGET=demo.hex
  2. EXECUTABLE=demo.elf
  3. CC=arm-none-eabi-gcc
  4. #LD=arm-none-eabi-ld
  5. LD=arm-none-eabi-gcc
  6. AR=arm-none-eabi-ar
  7. AS=arm-none-eabi-as
  8. CP=arm-none-eabi-objcopy
  9. OD=arm-none-eabi-objdump
  10. BIN=$(CP) -O ihex
  11. DEFS = -DUSE_STDPERIPH_DRIVER -DSTM32F4XX -DMANGUSTA_DISCOVERY -DUSE_USB_OTG_FS -DHSE_VALUE=8000000
  12. MCU = cortex-m4
  13. MCFLAGS = -mcpu=$(MCU) -mfpu=fpv4-sp-d16 -mlittle-endian -mthumb -gdwarf-2 -MD -Wall -mapcs-frame -mthumb-interwork -mfloat-abi=softfp -fno-strict-aliasing -ffunction-sections -Wl,--gc-sections -nostartfiles
  14. #MCFLAGS = -mcpu=$(MCU) -nostartfiles -ffreestanding -nostdlib -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb -mlittle-endian -mthumb-interwork
  15. #MCFLAGS = -mcpu=$(MCU) -nostartfiles -ffreestanding -nostdlib -mfpu=fpv4-sp-d16 -mfloat-abi=softfp -mthumb -mlittle-endian -mthumb-interwork
  16. #MCFLAGS = -mcpu=$(MCU) -mthumb -mlittle-endian -mfpu=fpv4-sp-d16 -mfloat-abi=hard -mthumb-interwork
  17. #-mfpu=fpa -mfloat-abi=hard -mthumb-interwork
  18. STM32_INCLUDES = -I../../Utilities/STM32F4-Discovery \
  19. -I../../Libraries/CMSIS/ST/STM32F4xx/Include/ \
  20. -I../../Libraries/CMSIS/Include/ \
  21. -I../../Libraries/STM32F4xx_StdPeriph_Driver/inc/ \
  22. -I../../Libraries/STM32_USB_Device_Library/Class/hid/inc \
  23. -I../../Libraries/STM32_USB_Device_Library/Core/inc/ \
  24. -I../../Libraries/STM32_USB_OTG_Driver/inc/\
  25. -I.
  26. OPTIMIZE = -Os
  27. CFLAGS = $(MCFLAGS) $(OPTIMIZE) $(DEFS) -I./ -I./ $(STM32_INCLUDES) -Wl,-T,stm32_flash.ld
  28. AFLAGS = $(MCFLAGS)
  29. LDFLAGS = -L../Libraries/CMSIS/Lib/ARM/arm_cortexM4lf_math.lib -L../Libraries/CMSIS/Lib/GCC/libarm_cortexM4lf_math.a
  30. #SRC = arm_fft_bin_data.c \
  31. # arm_fft_bin_example_f32.c \
  32. SRC = main.c \
  33. selftest.c \
  34. stm32f4xx_it.c \
  35. system_stm32f4xx.c \
  36. usb_bsp.c \
  37. usbd_desc.c \
  38. usbd_usr.c \
  39. ../../Utilities/STM32F4-Discovery/stm32f4_discovery.c \
  40. ../../Utilities/STM32F4-Discovery/stm32f4_discovery_lis302dl.c \
  41. ../../Utilities/STM32F4-Discovery/stm32f4_discovery_audio_codec.c \
  42. ../../Libraries/STM32F4xx_StdPeriph_Driver/src/stm32f4xx_syscfg.c \
  43. ../../Libraries/STM32F4xx_StdPeriph_Driver/src/misc.c \
  44. ../../Libraries/STM32F4xx_StdPeriph_Driver/src/stm32f4xx_adc.c \
  45. ../../Libraries/STM32F4xx_StdPeriph_Driver/src/stm32f4xx_dma.c \
  46. ../../Libraries/STM32F4xx_StdPeriph_Driver/src/stm32f4xx_exti.c \
  47. ../../Libraries/STM32F4xx_StdPeriph_Driver/src/stm32f4xx_flash.c \
  48. ../../Libraries/STM32F4xx_StdPeriph_Driver/src/stm32f4xx_gpio.c \
  49. ../../Libraries/STM32F4xx_StdPeriph_Driver/src/stm32f4xx_i2c.c \
  50. ../../Libraries/STM32F4xx_StdPeriph_Driver/src/stm32f4xx_rcc.c \
  51. ../../Libraries/STM32F4xx_StdPeriph_Driver/src/stm32f4xx_spi.c \
  52. ../../Libraries/STM32F4xx_StdPeriph_Driver/src/stm32f4xx_tim.c \
  53. ../../Libraries/STM32F4xx_StdPeriph_Driver/src/stm32f4xx_dac.c \
  54. ../../Libraries/STM32_USB_OTG_Driver/src/usb_dcd_int.c \
  55. ../../Libraries/STM32_USB_OTG_Driver/src/usb_core.c \
  56. ../../Libraries/STM32_USB_OTG_Driver/src/usb_dcd.c \
  57. ../../Libraries/STM32_USB_Device_Library/Class/hid/src/usbd_hid_core.c \
  58. ../../Libraries/STM32_USB_Device_Library/Core/src/usbd_req.c \
  59. ../../Libraries/STM32_USB_Device_Library/Core/src/usbd_core.c \
  60. ../../Libraries/STM32_USB_Device_Library/Core/src/usbd_ioreq.c
  61. STARTUP = startup_stm32f4xx.s
  62. OBJDIR = .
  63. OBJ = $(SRC:%.c=$(OBJDIR)/%.o)
  64. OBJ += Startup.o
  65. all: $(TARGET)
  66. $(TARGET): $(EXECUTABLE)
  67. $(CP) -O ihex $^ $@
  68. $(EXECUTABLE): $(SRC) $(STARTUP)
  69. $(CC) $(CFLAGS) $^ -o $@ -L. -l arm_cortexM4lf_math -lm
  70. clean:
  71. rm -f Startup.lst $(TARGET) $(EXECUTABLE) *.lst $(OBJ) $(AUTOGEN) *.out *.map \
  72. *.dmp