三木社区

 找回密码
 立即注册
搜索
热搜: 活动 交友 discuz
查看: 278|回复: 0

stm32f405-Makefile-源码分析8

[复制链接]

1562

主题

1564

帖子

4904

积分

博士

Rank: 8Rank: 8

积分
4904
发表于 2017-9-3 09:30:35 | 显示全部楼层 |阅读模式

文件路径:
  1. phospherus/stmhal/Makefile
复制代码
源码分析:
  1. # Select hardware floating-point support
  2. #选择硬件浮点支持
  3. ifeq ($(CMSIS_MCU),$(filter $(CMSIS_MCU),STM32F767xx STM32F769xx))
  4. CFLAGS_CORTEX_M += -mfpu=fpv5-d16 -mfloat-abi=hard
  5. else
  6. CFLAGS_CORTEX_M += -mfpu=fpv4-sp-d16 -mfloat-abi=hard
  7. endif

  8. # Options for particular MCU series
  9. #特别的MCU系列选项
  10. CFLAGS_MCU_f4 = $(CFLAGS_CORTEX_M) -mtune=cortex-m4 -mcpu=cortex-m4 -DMCU_SERIES_F4
  11. CFLAGS_MCU_f7 = $(CFLAGS_CORTEX_M) -mtune=cortex-m7 -mcpu=cortex-m7 -DMCU_SERIES_F7
  12. CFLAGS_MCU_l4 = $(CFLAGS_CORTEX_M) -mtune=cortex-m4 -mcpu=cortex-m4 -DMCU_SERIES_L4

  13. CFLAGS = $(INC) -Wall -Wpointer-arith -Werror -std=gnu99 -nostdlib $(CFLAGS_MOD) $(CFLAGS_EXTRA)
  14. CFLAGS += -D$(CMSIS_MCU)
  15. CFLAGS += $(CFLAGS_MCU_$(MCU_SERIES))
  16. CFLAGS += $(COPT)
  17. CFLAGS += -Iboards/$(BOARD)
  18. CFLAGS += -DSTM32_HAL_H='<stm32$(MCU_SERIES)xx_hal.h>'

  19. ifeq ($(MICROPY_FLOAT_IMPL),double)
  20. CFLAGS += -DMICROPY_FLOAT_IMPL=MICROPY_FLOAT_IMPL_DOUBLE
  21. else
  22. CFLAGS += -DMICROPY_FLOAT_IMPL=MICROPY_FLOAT_IMPL_FLOAT
  23. CFLAGS += -fsingle-precision-constant -Wdouble-promotion
  24. endif

  25. LDFLAGS = -nostdlib -L $(LD_DIR) -T $(LD_FILE) -Map=$(@:.elf=.map) --cref
  26. LIBS = $(shell $(CC) $(CFLAGS) -print-libgcc-file-name)

  27. # Remove uncalled code from the final image.
  28. #从最终的镜像文件中删除未调用的代码
  29. CFLAGS += -fdata-sections -ffunction-sections
  30. LDFLAGS += --gc-sections
复制代码


回复

使用道具 举报

Archiver|手机版|小黑屋|三木电子社区 ( 辽ICP备11000133号-4 )

辽公网安备 21021702000620号

GMT+8, 2024-4-19 00:44 , Processed in 0.029833 second(s), 23 queries .

Powered by Discuz! X3.3

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表