@@ -14,10 +14,21 @@ endif ()
14
14
15
15
set (KIND no CACHE STRING "Type of Test" )
16
16
17
+ find_program (LPYTHON NAMES lpython)
18
+
19
+ execute_process (COMMAND ${LPYTHON} --get -rtl-header-dir
20
+ OUTPUT_VARIABLE LPYTHON_RTL_HEADER_DIR
21
+ OUTPUT_STRIP_TRAILING_WHITESPACE
22
+ )
23
+ execute_process (COMMAND ${LPYTHON} --get -rtl-dir
24
+ OUTPUT_VARIABLE LPYTHON_RTL_DIR
25
+ OUTPUT_STRIP_TRAILING_WHITESPACE
26
+ )
27
+
17
28
find_path (LPYTHON_RTLIB_DIR lfortran_intrinsics.h
18
- ${CMAKE_SOURCE_DIR} /../src/libasr/runtime )
29
+ HINTS ${LPYTHON_RTL_HEADER_DIR} )
19
30
find_library (LPYTHON_RTLIB_LIBRARY lpython_runtime_static
20
- ${CMAKE_SOURCE_DIR} /../src/runtime/ )
31
+ HINTS ${LPYTHON_RTL_DIR} )
21
32
add_library (lpython_rtlib INTERFACE IMPORTED )
22
33
set_property (TARGET lpython_rtlib PROPERTY INTERFACE_INCLUDE_DIRECTORIES
23
34
${LPYTHON_RTLIB_DIR} )
@@ -39,6 +50,7 @@ else ()
39
50
endif ()
40
51
message ("Installation prefix: ${CMAKE_INSTALL_PREFIX} " )
41
52
message ("KIND: ${KIND} " )
53
+ message ("LPYTHON: ${LPYTHON} " )
42
54
message ("LPYTHON_RTLIB_DIR: ${LPYTHON_RTLIB_DIR} " )
43
55
message ("LPYTHON_RTLIB_LIBRARY: ${LPYTHON_RTLIB_LIBRARY} " )
44
56
@@ -61,13 +73,13 @@ macro(RUN)
61
73
if (import_path)
62
74
add_custom_command (
63
75
OUTPUT ${name} .o
64
- COMMAND lpython -c -I ${CMAKE_CURRENT_SOURCE_DIR} /${import_path} ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py -o ${name} .o
76
+ COMMAND ${LPYTHON} -c -I ${CMAKE_CURRENT_SOURCE_DIR} /${import_path} ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py -o ${name} .o
65
77
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py
66
78
VERBATIM )
67
79
else ()
68
80
add_custom_command (
69
81
OUTPUT ${name} .o
70
- COMMAND lpython -c ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py -o ${name} .o
82
+ COMMAND ${LPYTHON} -c ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py -o ${name} .o
71
83
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py
72
84
VERBATIM )
73
85
endif ()
@@ -85,13 +97,13 @@ macro(RUN)
85
97
if (import_path)
86
98
add_custom_command (
87
99
OUTPUT ${name} .c
88
- COMMAND lpython -I ${CMAKE_CURRENT_SOURCE_DIR} /${import_path} --show-c ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py > ${name} .c
100
+ COMMAND ${LPYTHON} -I ${CMAKE_CURRENT_SOURCE_DIR} /${import_path} --show-c ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py > ${name} .c
89
101
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py
90
102
VERBATIM )
91
103
else ()
92
104
add_custom_command (
93
105
OUTPUT ${name} .c
94
- COMMAND lpython --show-c ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py > ${name} .c
106
+ COMMAND ${LPYTHON} --show-c ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py > ${name} .c
95
107
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py
96
108
VERBATIM )
97
109
endif ()
@@ -130,7 +142,7 @@ macro(RUN)
130
142
# x86 test
131
143
add_custom_command (
132
144
OUTPUT ${name} .x86
133
- COMMAND lpython --backend x86 ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py -o ${name} .x86
145
+ COMMAND ${LPYTHON} --backend x86 ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py -o ${name} .x86
134
146
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py
135
147
VERBATIM
136
148
)
@@ -147,7 +159,7 @@ macro(RUN)
147
159
# wasm_to_x86 test
148
160
add_custom_command (
149
161
OUTPUT ${name} .x86
150
- COMMAND lpython --backend wasm_x86 ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py -o ${name} .x86
162
+ COMMAND ${LPYTHON} --backend wasm_x86 ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py -o ${name} .x86
151
163
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py
152
164
VERBATIM
153
165
)
@@ -164,7 +176,7 @@ macro(RUN)
164
176
# wasm_to_x64 test
165
177
add_custom_command (
166
178
OUTPUT ${name} .x64
167
- COMMAND lpython --backend wasm_x64 ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py -o ${name} .x64
179
+ COMMAND ${LPYTHON} --backend wasm_x64 ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py -o ${name} .x64
168
180
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py
169
181
VERBATIM
170
182
)
@@ -179,7 +191,7 @@ macro(RUN)
179
191
endif ()
180
192
elseif (KIND STREQUAL "wasm" )
181
193
# wasm test
182
- execute_process (COMMAND lpython --backend wasm ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py -o ${name} )
194
+ execute_process (COMMAND ${LPYTHON} --backend wasm ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py -o ${name} )
183
195
184
196
find_program (WASM_EXEC_RUNTIME node)
185
197
execute_process (COMMAND "${WASM_EXEC_RUNTIME} " --version
@@ -224,13 +236,13 @@ macro(COMPILE)
224
236
if (import_path)
225
237
add_custom_command (
226
238
OUTPUT ${name} .o
227
- COMMAND lpython --disable-main -c -I ${CMAKE_CURRENT_SOURCE_DIR} /${import_path} ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py -o ${name} .o
239
+ COMMAND ${LPYTHON} --disable-main -c -I ${CMAKE_CURRENT_SOURCE_DIR} /${import_path} ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py -o ${name} .o
228
240
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py
229
241
VERBATIM )
230
242
else ()
231
243
add_custom_command (
232
244
OUTPUT ${name} .o
233
- COMMAND lpython --disable-main -c ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py -o ${name} .o
245
+ COMMAND ${LPYTHON} --disable-main -c ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py -o ${name} .o
234
246
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py
235
247
VERBATIM )
236
248
endif ()
@@ -240,13 +252,13 @@ macro(COMPILE)
240
252
if (import_path)
241
253
add_custom_command (
242
254
OUTPUT ${name} .c
243
- COMMAND lpython --disable-main -I ${CMAKE_CURRENT_SOURCE_DIR} /${import_path} --show-c ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py > ${name} .c
255
+ COMMAND ${LPYTHON} --disable-main -I ${CMAKE_CURRENT_SOURCE_DIR} /${import_path} --show-c ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py > ${name} .c
244
256
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py
245
257
VERBATIM )
246
258
else ()
247
259
add_custom_command (
248
260
OUTPUT ${name} .c
249
- COMMAND lpython --disable-main --show-c ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py > ${name} .c
261
+ COMMAND ${LPYTHON} --disable-main --show-c ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py > ${name} .c
250
262
DEPENDS ${CMAKE_CURRENT_SOURCE_DIR} /${name} .py
251
263
VERBATIM )
252
264
endif ()
0 commit comments