@@ -40,7 +40,7 @@ if(TARGET_ARCH_NAME STREQUAL "arm")
40
40
set (TOOLCHAIN "arm-linux-gnueabihf" )
41
41
endif ()
42
42
if (TIZEN )
43
- set (TIZEN_TOOLCHAIN "armv7hl-tizen-linux-gnueabihf/9.2.0 " )
43
+ set (TIZEN_TOOLCHAIN "armv7hl-tizen-linux-gnueabihf" )
44
44
endif ()
45
45
elseif (TARGET_ARCH_NAME STREQUAL "arm64" )
46
46
set (CMAKE_SYSTEM_PROCESSOR aarch64 )
@@ -49,7 +49,7 @@ elseif(TARGET_ARCH_NAME STREQUAL "arm64")
49
49
elseif (LINUX )
50
50
set (TOOLCHAIN "aarch64-linux-gnu" )
51
51
if (TIZEN )
52
- set (TIZEN_TOOLCHAIN "aarch64-tizen-linux-gnu/9.2.0 " )
52
+ set (TIZEN_TOOLCHAIN "aarch64-tizen-linux-gnu" )
53
53
endif ()
54
54
elseif (FREEBSD )
55
55
set (triple "aarch64-unknown-freebsd12" )
@@ -58,7 +58,7 @@ elseif(TARGET_ARCH_NAME STREQUAL "armel")
58
58
set (CMAKE_SYSTEM_PROCESSOR armv7l )
59
59
set (TOOLCHAIN "arm-linux-gnueabi" )
60
60
if (TIZEN )
61
- set (TIZEN_TOOLCHAIN "armv7l-tizen-linux-gnueabi/9.2.0 " )
61
+ set (TIZEN_TOOLCHAIN "armv7l-tizen-linux-gnueabi" )
62
62
endif ()
63
63
elseif (TARGET_ARCH_NAME STREQUAL "armv6" )
64
64
set (CMAKE_SYSTEM_PROCESSOR armv6l )
@@ -81,7 +81,7 @@ elseif(TARGET_ARCH_NAME STREQUAL "riscv64")
81
81
else ()
82
82
set (TOOLCHAIN "riscv64-linux-gnu" )
83
83
if (TIZEN )
84
- set (TIZEN_TOOLCHAIN "riscv64-tizen-linux-gnu/13.1.0 " )
84
+ set (TIZEN_TOOLCHAIN "riscv64-tizen-linux-gnu" )
85
85
endif ()
86
86
endif ()
87
87
elseif (TARGET_ARCH_NAME STREQUAL "s390x" )
@@ -98,7 +98,7 @@ elseif(TARGET_ARCH_NAME STREQUAL "x64")
98
98
elseif (LINUX )
99
99
set (TOOLCHAIN "x86_64-linux-gnu" )
100
100
if (TIZEN )
101
- set (TIZEN_TOOLCHAIN "x86_64-tizen-linux-gnu/9.2.0 " )
101
+ set (TIZEN_TOOLCHAIN "x86_64-tizen-linux-gnu" )
102
102
endif ()
103
103
elseif (FREEBSD )
104
104
set (triple "x86_64-unknown-freebsd12" )
@@ -115,7 +115,7 @@ elseif(TARGET_ARCH_NAME STREQUAL "x86")
115
115
set (TOOLCHAIN "i686-linux-gnu" )
116
116
endif ()
117
117
if (TIZEN )
118
- set (TIZEN_TOOLCHAIN "i586-tizen-linux-gnu/9.2.0 " )
118
+ set (TIZEN_TOOLCHAIN "i586-tizen-linux-gnu" )
119
119
endif ()
120
120
else ()
121
121
message (FATAL_ERROR "Arch is ${TARGET_ARCH_NAME} . Only arm, arm64, armel, armv6, ppc64le, riscv64, s390x, x64 and x86 are supported!" )
@@ -127,30 +127,25 @@ endif()
127
127
128
128
# Specify include paths
129
129
if (TIZEN )
130
- if (TARGET_ARCH_NAME STREQUAL "arm" )
131
- include_directories (SYSTEM ${CROSS_ROOTFS} /usr/lib/gcc/${TIZEN_TOOLCHAIN}/include/c++/ )
132
- include_directories (SYSTEM ${CROSS_ROOTFS} /usr/lib/gcc/${TIZEN_TOOLCHAIN}/include/c++/armv7hl-tizen-linux-gnueabihf )
133
- endif ()
134
- if (TARGET_ARCH_NAME STREQUAL "armel" )
135
- include_directories (SYSTEM ${CROSS_ROOTFS} /usr/lib/gcc/${TIZEN_TOOLCHAIN}/include/c++/ )
136
- include_directories (SYSTEM ${CROSS_ROOTFS} /usr/lib/gcc/${TIZEN_TOOLCHAIN}/include/c++/armv7l-tizen-linux-gnueabi )
137
- endif ()
138
- if (TARGET_ARCH_NAME STREQUAL "arm64" )
139
- include_directories (SYSTEM ${CROSS_ROOTFS} /usr/lib64/gcc/${TIZEN_TOOLCHAIN}/include/c++/ )
140
- include_directories (SYSTEM ${CROSS_ROOTFS} /usr/lib64/gcc/${TIZEN_TOOLCHAIN}/include/c++/aarch64-tizen-linux-gnu )
141
- endif ()
142
- if (TARGET_ARCH_NAME STREQUAL "x86" )
143
- include_directories (SYSTEM ${CROSS_ROOTFS} /usr/lib/gcc/${TIZEN_TOOLCHAIN}/include/c++/ )
144
- include_directories (SYSTEM ${CROSS_ROOTFS} /usr/lib/gcc/${TIZEN_TOOLCHAIN}/include/c++/i586-tizen-linux-gnu )
145
- endif ()
146
- if (TARGET_ARCH_NAME STREQUAL "x64" )
147
- include_directories (SYSTEM ${CROSS_ROOTFS} /usr/lib64/gcc/${TIZEN_TOOLCHAIN}/include/c++/ )
148
- include_directories (SYSTEM ${CROSS_ROOTFS} /usr/lib64/gcc/${TIZEN_TOOLCHAIN}/include/c++/x86_64-tizen-linux-gnu )
149
- endif ()
150
- if (TARGET_ARCH_NAME STREQUAL "riscv64" )
151
- include_directories (SYSTEM ${CROSS_ROOTFS} /usr/lib64/gcc/${TIZEN_TOOLCHAIN}/include/c++/ )
152
- include_directories (SYSTEM ${CROSS_ROOTFS} /usr/lib64/gcc/${TIZEN_TOOLCHAIN}/include/c++/riscv64-tizen-linux-gnu )
130
+ function (find_toolchain_dir prefix )
131
+ # Dynamically find the version subdirectory
132
+ file (GLOB DIRECTORIES "${prefix} /*" )
133
+ list (GET DIRECTORIES 0 FIRST_MATCH )
134
+ get_filename_component (TOOLCHAIN_VERSION ${FIRST_MATCH} NAME )
135
+
136
+ set (TIZEN_TOOLCHAIN_PATH "${prefix} /${TOOLCHAIN_VERSION} " PARENT_SCOPE )
137
+ endfunction ()
138
+
139
+ if (TARGET_ARCH_NAME MATCHES "^(arm|armel|x86)$" )
140
+ find_toolchain_dir ("${CROSS_ROOTFS} /usr/lib/gcc/${TIZEN_TOOLCHAIN} " )
141
+ else ()
142
+ find_toolchain_dir ("${CROSS_ROOTFS} /usr/lib64/gcc/${TIZEN_TOOLCHAIN} " )
153
143
endif ()
144
+
145
+ message (STATUS "TIZEN_TOOLCHAIN_PATH set to: ${TIZEN_TOOLCHAIN_PATH} " )
146
+
147
+ include_directories (SYSTEM ${TIZEN_TOOLCHAIN_PATH} /include/c++ )
148
+ include_directories (SYSTEM ${TIZEN_TOOLCHAIN_PATH} /include/c++/${TIZEN_TOOLCHAIN} )
154
149
endif ()
155
150
156
151
if (ANDROID )
@@ -272,21 +267,21 @@ endif()
272
267
273
268
if (TARGET_ARCH_NAME MATCHES "^(arm|armel)$" )
274
269
if (TIZEN )
275
- add_toolchain_linker_flag ("-B${CROSS_ROOTFS} /usr/lib/gcc/ ${TIZEN_TOOLCHAIN } " )
270
+ add_toolchain_linker_flag ("-B${TIZEN_TOOLCHAIN_PATH } " )
276
271
add_toolchain_linker_flag ("-L${CROSS_ROOTFS} /lib" )
277
272
add_toolchain_linker_flag ("-L${CROSS_ROOTFS} /usr/lib" )
278
- add_toolchain_linker_flag ("-L${CROSS_ROOTFS} /usr/lib/gcc/ ${TIZEN_TOOLCHAIN } " )
273
+ add_toolchain_linker_flag ("-L${TIZEN_TOOLCHAIN_PATH } " )
279
274
endif ()
280
275
elseif (TARGET_ARCH_NAME MATCHES "^(arm64|x64|riscv64)$" )
281
276
if (TIZEN )
282
- add_toolchain_linker_flag ("-B${CROSS_ROOTFS} /usr/lib64/gcc/ ${TIZEN_TOOLCHAIN } " )
277
+ add_toolchain_linker_flag ("-B${TIZEN_TOOLCHAIN_PATH } " )
283
278
add_toolchain_linker_flag ("-L${CROSS_ROOTFS} /lib64" )
284
279
add_toolchain_linker_flag ("-L${CROSS_ROOTFS} /usr/lib64" )
285
- add_toolchain_linker_flag ("-L${CROSS_ROOTFS} /usr/lib64/gcc/ ${TIZEN_TOOLCHAIN } " )
280
+ add_toolchain_linker_flag ("-L${TIZEN_TOOLCHAIN_PATH } " )
286
281
287
282
add_toolchain_linker_flag ("-Wl,--rpath-link=${CROSS_ROOTFS} /lib64" )
288
283
add_toolchain_linker_flag ("-Wl,--rpath-link=${CROSS_ROOTFS} /usr/lib64" )
289
- add_toolchain_linker_flag ("-Wl,--rpath-link=${CROSS_ROOTFS} /usr/lib64/gcc/ ${TIZEN_TOOLCHAIN } " )
284
+ add_toolchain_linker_flag ("-Wl,--rpath-link=${TIZEN_TOOLCHAIN_PATH } " )
290
285
endif ()
291
286
elseif (TARGET_ARCH_NAME STREQUAL "s390x" )
292
287
add_toolchain_linker_flag ("--target=${TOOLCHAIN} " )
@@ -297,10 +292,10 @@ elseif(TARGET_ARCH_NAME STREQUAL "x86")
297
292
endif ()
298
293
add_toolchain_linker_flag (-m32 )
299
294
if (TIZEN )
300
- add_toolchain_linker_flag ("-B${CROSS_ROOTFS} /usr/lib/gcc/ ${TIZEN_TOOLCHAIN } " )
295
+ add_toolchain_linker_flag ("-B${TIZEN_TOOLCHAIN_PATH } " )
301
296
add_toolchain_linker_flag ("-L${CROSS_ROOTFS} /lib" )
302
297
add_toolchain_linker_flag ("-L${CROSS_ROOTFS} /usr/lib" )
303
- add_toolchain_linker_flag ("-L${CROSS_ROOTFS} /usr/lib/gcc/ ${TIZEN_TOOLCHAIN } " )
298
+ add_toolchain_linker_flag ("-L${TIZEN_TOOLCHAIN_PATH } " )
304
299
endif ()
305
300
elseif (ILLUMOS )
306
301
add_toolchain_linker_flag ("-L${CROSS_ROOTFS} /lib/amd64" )
0 commit comments