@@ -40,7 +40,7 @@ if(TARGET_ARCH_NAME STREQUAL "arm")
4040 set (TOOLCHAIN "arm-linux-gnueabihf" )
4141 endif ()
4242 if (TIZEN)
43- set (TIZEN_TOOLCHAIN "armv7hl-tizen-linux-gnueabihf/9.2.0 " )
43+ set (TIZEN_TOOLCHAIN "armv7hl-tizen-linux-gnueabihf" )
4444 endif ()
4545elseif (TARGET_ARCH_NAME STREQUAL "arm64" )
4646 set (CMAKE_SYSTEM_PROCESSOR aarch64)
@@ -49,7 +49,7 @@ elseif(TARGET_ARCH_NAME STREQUAL "arm64")
4949 elseif (LINUX)
5050 set (TOOLCHAIN "aarch64-linux-gnu" )
5151 if (TIZEN)
52- set (TIZEN_TOOLCHAIN "aarch64-tizen-linux-gnu/9.2.0 " )
52+ set (TIZEN_TOOLCHAIN "aarch64-tizen-linux-gnu" )
5353 endif ()
5454 elseif (FREEBSD)
5555 set (triple "aarch64-unknown-freebsd12" )
@@ -58,7 +58,7 @@ elseif(TARGET_ARCH_NAME STREQUAL "armel")
5858 set (CMAKE_SYSTEM_PROCESSOR armv7l)
5959 set (TOOLCHAIN "arm-linux-gnueabi" )
6060 if (TIZEN)
61- set (TIZEN_TOOLCHAIN "armv7l-tizen-linux-gnueabi/14.1.0 " )
61+ set (TIZEN_TOOLCHAIN "armv7l-tizen-linux-gnueabi" )
6262 endif ()
6363elseif (TARGET_ARCH_NAME STREQUAL "armv6" )
6464 set (CMAKE_SYSTEM_PROCESSOR armv6l)
@@ -81,7 +81,7 @@ elseif(TARGET_ARCH_NAME STREQUAL "riscv64")
8181 else ()
8282 set (TOOLCHAIN "riscv64-linux-gnu" )
8383 if (TIZEN)
84- set (TIZEN_TOOLCHAIN "riscv64-tizen-linux-gnu/13.1.0 " )
84+ set (TIZEN_TOOLCHAIN "riscv64-tizen-linux-gnu" )
8585 endif ()
8686 endif ()
8787elseif (TARGET_ARCH_NAME STREQUAL "s390x" )
@@ -98,7 +98,7 @@ elseif(TARGET_ARCH_NAME STREQUAL "x64")
9898 elseif (LINUX)
9999 set (TOOLCHAIN "x86_64-linux-gnu" )
100100 if (TIZEN)
101- set (TIZEN_TOOLCHAIN "x86_64-tizen-linux-gnu/9.2.0 " )
101+ set (TIZEN_TOOLCHAIN "x86_64-tizen-linux-gnu" )
102102 endif ()
103103 elseif (FREEBSD)
104104 set (triple "x86_64-unknown-freebsd12" )
@@ -115,7 +115,7 @@ elseif(TARGET_ARCH_NAME STREQUAL "x86")
115115 set (TOOLCHAIN "i686-linux-gnu" )
116116 endif ()
117117 if (TIZEN)
118- set (TIZEN_TOOLCHAIN "i586-tizen-linux-gnu/9.2.0 " )
118+ set (TIZEN_TOOLCHAIN "i586-tizen-linux-gnu" )
119119 endif ()
120120else ()
121121 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()
127127
128128# Specify include paths
129129if (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 base prefix )
131+ # Dynamically find the version subdirectory
132+ file (GLOB DIRECTORIES "${base} /${prefix} /*" )
133+ list (GET DIRECTORIES 0 FIRST_MATCH)
134+ get_filename_component (TOOLCHAIN_VERSION ${FIRST_MATCH} NAME )
135+
136+ set (TIZEN_TOOLCHAIN_PATH "${base} /${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} " )
153143 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} )
154149endif ()
155150
156151if (ANDROID)
@@ -272,21 +267,21 @@ endif()
272267
273268if (TARGET_ARCH_NAME MATCHES "^(arm|armel)$" )
274269 if (TIZEN)
275- add_toolchain_linker_flag("-B${CROSS_ROOTFS} /usr/lib/gcc/ ${TIZEN_TOOLCHAIN } " )
270+ add_toolchain_linker_flag("-B${TIZEN_TOOLCHAIN_PATH } " )
276271 add_toolchain_linker_flag("-L${CROSS_ROOTFS} /lib" )
277272 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 } " )
279274 endif ()
280275elseif (TARGET_ARCH_NAME MATCHES "^(arm64|x64|riscv64)$" )
281276 if (TIZEN)
282- add_toolchain_linker_flag("-B${CROSS_ROOTFS} /usr/lib64/gcc/ ${TIZEN_TOOLCHAIN } " )
277+ add_toolchain_linker_flag("-B${TIZEN_TOOLCHAIN_PATH } " )
283278 add_toolchain_linker_flag("-L${CROSS_ROOTFS} /lib64" )
284279 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 } " )
286281
287282 add_toolchain_linker_flag("-Wl,--rpath-link=${CROSS_ROOTFS} /lib64" )
288283 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 } " )
290285 endif ()
291286elseif (TARGET_ARCH_NAME STREQUAL "s390x" )
292287 add_toolchain_linker_flag("--target=${TOOLCHAIN} " )
@@ -297,10 +292,10 @@ elseif(TARGET_ARCH_NAME STREQUAL "x86")
297292 endif ()
298293 add_toolchain_linker_flag(-m32)
299294 if (TIZEN)
300- add_toolchain_linker_flag("-B${CROSS_ROOTFS} /usr/lib/gcc/ ${TIZEN_TOOLCHAIN } " )
295+ add_toolchain_linker_flag("-B${TIZEN_TOOLCHAIN_PATH } " )
301296 add_toolchain_linker_flag("-L${CROSS_ROOTFS} /lib" )
302297 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 } " )
304299 endif ()
305300elseif (ILLUMOS)
306301 add_toolchain_linker_flag("-L${CROSS_ROOTFS} /lib/amd64" )
0 commit comments