Skip to content

Commit a8dbf20

Browse files
committed
Add ESP-IDF component files
1 parent 3a38a9d commit a8dbf20

File tree

2 files changed

+45
-0
lines changed

2 files changed

+45
-0
lines changed

CMakeLists.txt

Lines changed: 28 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,28 @@
1+
idf_component_register(
2+
SRCS
3+
"common/adaint.c"
4+
"common/freertos_bindings.c"
5+
"common/last_chance_handler.c"
6+
"common/vApplicationStackOverflowHook.c"
7+
REQUIRES freertos)
8+
9+
idf_component_get_property(FREERTOS_ORIG_INCLUDE_PATH freertos
10+
ORIG_INCLUDE_PATH)
11+
12+
target_include_directories (${COMPONENT_LIB} PRIVATE
13+
${FREERTOS_ORIG_INCLUDE_PATH})
14+
15+
# Build GNAT RTS in ${BUILD_DIR}/rts
16+
add_custom_command(OUTPUT ${BUILD_DIR}/rts/adalib/libgnat.a
17+
COMMAND gprbuild -p -P ${COMPONENT_DIR}/esp32/build_runtime.gpr
18+
--db ${COMPONENT_DIR}/gprconfig
19+
--autoconf=${BUILD_DIR}/config.cgpr
20+
&& gprinstall -p -P ${COMPONENT_DIR}/esp32/build_runtime.gpr
21+
--prefix=${BUILD_DIR}/rts
22+
--autoconf=${BUILD_DIR}/config.cgpr
23+
DEPENDS ${COMPONENT_DIR}/common/ ${COMPONENT_DIR}/esp32/adainclude/
24+
VERBATIM)
25+
26+
add_custom_target(gnat DEPENDS ${BUILD_DIR}/rts/adalib/libgnat.a)
27+
add_dependencies(${COMPONENT_LIB} gnat)
28+
target_link_libraries(${COMPONENT_LIB} ${BUILD_DIR}/rts/adalib/libgnat.a)

gprconfig/linker-esp32.xml

Lines changed: 17 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,17 @@
1+
<?xml version="1.0" ?>
2+
<gprconfig>
3+
<configuration>
4+
<targets>
5+
<target name=".*-elf$" />
6+
</targets>
7+
<config>
8+
for Archive_Builder use ("${TARGET}-ar", "cr");
9+
for Archive_Builder_Append_Option use ("q");
10+
for Archive_Indexer use ("${TARGET}-ranlib");
11+
for Archive_Suffix use ".a";
12+
for Library_Support use "static_only";
13+
for Library_Builder use "${GPRCONFIG_PREFIX}libexec/gprbuild/gprlib";
14+
</config>
15+
</configuration>
16+
17+
</gprconfig>

0 commit comments

Comments
 (0)