platform.txt 6.3 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130
  1. # ESP8266 platform
  2. # ------------------------------
  3. # For more info:
  4. # https://github.com/arduino/Arduino/wiki/Arduino-IDE-1.5---3rd-party-Hardware-specification
  5. name=ESP8266 Modules
  6. version=2.2.0
  7. compiler.warning_flags=-w
  8. compiler.warning_flags.none=-w
  9. compiler.warning_flags.default=
  10. compiler.warning_flags.more=-Wall
  11. compiler.warning_flags.all=-Wall -Wextra
  12. build.lwip_lib=-llwip_gcc
  13. build.lwip_flags=-DLWIP_OPEN_SRC
  14. compiler.path={runtime.tools.xtensa-lx106-elf-gcc.path}/bin/
  15. compiler.sdk.path={runtime.platform.path}/tools/sdk
  16. compiler.cpreprocessor.flags=-D__ets__ -DICACHE_FLASH -U__STRICT_ANSI__ "-I{compiler.sdk.path}/include" "-I{compiler.sdk.path}/lwip/include" "-I{build.path}/core"
  17. compiler.c.cmd=xtensa-lx106-elf-gcc
  18. compiler.c.flags=-c {compiler.warning_flags} -Os -g -Wpointer-arith -Wno-implicit-function-declaration -Wl,-EL -fno-inline-functions -nostdlib -mlongcalls -mtext-section-literals -falign-functions=4 -MMD -std=gnu99 -ffunction-sections -fdata-sections
  19. compiler.S.cmd=xtensa-lx106-elf-gcc
  20. compiler.S.flags=-c -g -x assembler-with-cpp -MMD -mlongcalls
  21. compiler.c.elf.flags=-g {compiler.warning_flags} -Os -nostdlib -Wl,--no-check-sections -u call_user_start -Wl,-static "-L{compiler.sdk.path}/lib" "-L{compiler.sdk.path}/ld" "-T{build.flash_ld}" -Wl,--gc-sections -Wl,-wrap,system_restart_local -Wl,-wrap,register_chipv6_phy
  22. compiler.c.elf.cmd=xtensa-lx106-elf-gcc
  23. compiler.c.elf.libs=-lm -lgcc -lhal -lphy -lpp -lnet80211 -lwpa -lcrypto -lmain -lwps -laxtls -lsmartconfig -lmesh -lwpa2 {build.lwip_lib} -lstdc++
  24. compiler.cpp.cmd=xtensa-lx106-elf-g++
  25. compiler.cpp.flags=-c {compiler.warning_flags} -Os -g -mlongcalls -mtext-section-literals -fno-exceptions -fno-rtti -falign-functions=4 -std=c++11 -MMD -ffunction-sections -fdata-sections
  26. compiler.as.cmd=xtensa-lx106-elf-as
  27. compiler.ar.cmd=xtensa-lx106-elf-ar
  28. compiler.ar.flags=cru
  29. compiler.elf2hex.cmd=esptool
  30. compiler.elf2hex.flags=
  31. compiler.size.cmd=xtensa-lx106-elf-size
  32. compiler.esptool.cmd=esptool
  33. compiler.esptool.cmd.windows=esptool.exe
  34. # This can be overriden in boards.txt
  35. build.extra_flags=-DESP8266
  36. # These can be overridden in platform.local.txt
  37. compiler.c.extra_flags=
  38. compiler.c.elf.extra_flags=
  39. compiler.S.extra_flags=
  40. compiler.cpp.extra_flags=
  41. compiler.ar.extra_flags=
  42. compiler.objcopy.eep.extra_flags=
  43. compiler.elf2hex.extra_flags=
  44. ## generate file with git version number
  45. ## needs bash, git, and echo
  46. ## windows-compatible version may be added later
  47. ## Compile c files
  48. recipe.c.o.pattern="{compiler.path}{compiler.c.cmd}" {compiler.cpreprocessor.flags} {compiler.c.flags} -DF_CPU={build.f_cpu} {build.lwip_flags} {build.debug_port} {build.debug_level} -DARDUINO={runtime.ide.version} -DARDUINO_{build.board} -DARDUINO_ARCH_{build.arch} -DARDUINO_BOARD="{build.board}" {compiler.c.extra_flags} {build.extra_flags} {includes} "{source_file}" -o "{object_file}"
  49. ## Compile c++ files
  50. recipe.cpp.o.pattern="{compiler.path}{compiler.cpp.cmd}" {compiler.cpreprocessor.flags} {compiler.cpp.flags} -DF_CPU={build.f_cpu} {build.lwip_flags} {build.debug_port} {build.debug_level} -DARDUINO={runtime.ide.version} -DARDUINO_{build.board} -DARDUINO_ARCH_{build.arch} -DARDUINO_BOARD="{build.board}" {compiler.cpp.extra_flags} {build.extra_flags} {includes} "{source_file}" -o "{object_file}"
  51. ## Compile S files
  52. recipe.S.o.pattern="{compiler.path}{compiler.c.cmd}" {compiler.cpreprocessor.flags} {compiler.S.flags} -DF_CPU={build.f_cpu} {build.lwip_flags} {build.debug_port} {build.debug_level} -DARDUINO={runtime.ide.version} -DARDUINO_{build.board} -DARDUINO_ARCH_{build.arch} -DARDUINO_BOARD="{build.board}" {compiler.c.extra_flags} {build.extra_flags} {includes} "{source_file}" -o "{object_file}"
  53. ## Create archives
  54. recipe.ar.pattern="{compiler.path}{compiler.ar.cmd}" {compiler.ar.flags} {compiler.ar.extra_flags} "{build.path}/arduino.ar" "{object_file}"
  55. ## Combine gc-sections, archives, and objects
  56. recipe.c.combine.pattern="{compiler.path}{compiler.c.elf.cmd}" {compiler.c.elf.flags} {compiler.c.elf.extra_flags} -o "{build.path}/{build.project_name}.elf" -Wl,--start-group {object_files} "{build.path}/arduino.ar" {compiler.c.elf.libs} -Wl,--end-group "-L{build.path}"
  57. ## Create eeprom
  58. recipe.objcopy.eep.pattern=
  59. ## Create hex
  60. #recipe.objcopy.hex.pattern="{compiler.path}{compiler.elf2hex.cmd}" {compiler.elf2hex.flags} {compiler.elf2hex.extra_flags} "{build.path}/{build.project_name}.elf" "{build.path}/{build.project_name}.hex"
  61. recipe.objcopy.hex.pattern="{runtime.tools.esptool.path}/{compiler.esptool.cmd}" -eo "{runtime.platform.path}/bootloaders/eboot/eboot.elf" -bo "{build.path}/{build.project_name}.bin" -bm {build.flash_mode} -bf {build.flash_freq} -bz {build.flash_size} -bs .text -bp 4096 -ec -eo "{build.path}/{build.project_name}.elf" -bs .irom0.text -bs .text -bs .data -bs .rodata -bc -ec
  62. ## Save hex
  63. recipe.output.tmp_file={build.project_name}.bin
  64. recipe.output.save_file={build.project_name}.{build.variant}.bin
  65. ## Compute size
  66. recipe.size.pattern="{compiler.path}{compiler.size.cmd}" -A "{build.path}/{build.project_name}.elf"
  67. recipe.size.regex=^(?:\.irom0\.text|\.text|\.data|\.rodata|)\s+([0-9]+).*
  68. recipe.size.regex.data=^(?:\.data|\.rodata|\.bss)\s+([0-9]+).*
  69. #recipe.size.regex.eeprom=^(?:\.eeprom)\s+([0-9]+).*
  70. # ------------------------------
  71. tools.esptool.cmd=esptool
  72. tools.esptool.cmd.windows=esptool.exe
  73. tools.esptool.path={runtime.tools.esptool.path}
  74. tools.esptool.network_cmd=python
  75. tools.esptool.network_cmd.windows=python.exe
  76. tools.esptool.upload.protocol=esp
  77. tools.esptool.upload.params.verbose=-vv
  78. tools.esptool.upload.params.quiet=
  79. tools.esptool.upload.pattern="{path}/{cmd}" {upload.verbose} -cd {upload.resetmethod} -cb {upload.speed} -cp "{serial.port}" -ca 0x00000 -cf "{build.path}/{build.project_name}.bin"
  80. tools.esptool.upload.network_pattern="{network_cmd}" "{runtime.platform.path}/tools/espota.py" -i "{serial.port}" -p "{network.port}" "--auth={network.password}" -f "{build.path}/{build.project_name}.bin"
  81. tools.mkspiffs.cmd=mkspiffs
  82. tools.mkspiffs.cmd.windows=mkspiffs.exe
  83. tools.mkspiffs.path={runtime.tools.mkspiffs.path}
  84. tools.espupload.cmd=python
  85. tools.espupload.cmd.windows=python.exe
  86. tools.espupload.path={runtime.platform.path}/tools
  87. tools.espupload.upload.protocol=espupload
  88. tools.espupload.upload.params.verbose=
  89. tools.espupload.upload.params.quiet=
  90. tools.espupload.upload.pattern="{cmd}" "{path}/espupload.py" -f "{build.path}/{build.project_name}.bin"