File tree Expand file tree Collapse file tree 1 file changed +27
-0
lines changed
Sources/EmbeddedSwift/Documentation.docc/UsingEmbeddedSwift Expand file tree Collapse file tree 1 file changed +27
-0
lines changed Original file line number Diff line number Diff line change @@ -35,6 +35,33 @@ $ swiftc <inputs> -target armv6m-none-none-eabi -enable-experimental-feature Emb
35
35
$ ld ... -o binary output.o $( dirname ` which swiftc` ) /../lib/swift/embedded/armv6m-none-none-eabi/libswiftUnicodeDataTables.a
36
36
```
37
37
38
+ Alternatively in a CMake build try something like the below which will check a Swiftly based install.
39
+
40
+ Update the ` COMPILER_TARGET ` variable to the architecture desired.
41
+
42
+ ``` CMake
43
+ set(COMPILER_TARGET "riscv32-none-none-eabi")
44
+
45
+ find_program(SWIFTLY "swiftly")
46
+ IF(SWIFTLY)
47
+ execute_process(COMMAND swiftly use --print-location OUTPUT_VARIABLE toolchain_path OUTPUT_STRIP_TRAILING_WHITESPACE)
48
+ cmake_path(SET additional_lib_path NORMALIZE "${toolchain_path}/usr/lib/swift/embedded/${COMPILER_TARGET}")
49
+ ELSE()
50
+ get_filename_component(compiler_bin_dir ${CMAKE_Swift_COMPILER} DIRECTORY)
51
+ cmake_path(SET additional_lib_path NORMALIZE "${compiler_bin_dir}/../lib/swift/embedded/${COMPILER_TARGET}")
52
+ ENDIF()
53
+
54
+ target_link_directories(${COMPONENT_LIB} PUBLIC "${additional_lib_path}")
55
+ target_link_libraries(${COMPONENT_LIB}
56
+ -Wl,--whole-archive
57
+ swiftUnicodeDataTables
58
+ -Wl,--no-whole-archive
59
+ )
60
+
61
+ ## decomment the below line to troubleshoot path issues if needed.
62
+ # message(" ----------::: ${additional_lib_path} :::---------- ")
63
+ ```
64
+
38
65
** Unicode data tables are required for (list not exhaustive):**
39
66
40
67
- Comparing String objects for equality
You can’t perform that action at this time.
0 commit comments