Skip to content

Commit 0f19b84

Browse files
committed
ci: improve converter disabling
1 parent 68d3659 commit 0f19b84

File tree

1 file changed

+26
-10
lines changed

1 file changed

+26
-10
lines changed

plugins/SkyCultureMaker/CMakeLists.txt

Lines changed: 26 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -5,15 +5,25 @@ SET(SCM_VERSION "1.0.0")
55
OPTION(SCM_SHOULD_ENABLE_CONVERTER "Attempt to enable Sky Culture Converter" TRUE)
66
SET(SCM_CONVERTER_ENABLED FALSE) # Default to disabled
77

8-
IF(SCM_SHOULD_ENABLE_CONVERTER AND NOT (QT_VERSION_MAJOR EQUAL "5"))
9-
# Disable converter for Windows ARM64 builds due to missing ARM64 libraries
10-
IF(WIN32 AND CMAKE_SYSTEM_PROCESSOR MATCHES "ARM64|arm64")
11-
SET(SCM_CONVERTER_ENABLED FALSE)
12-
MESSAGE(STATUS "Sky Culture Converter is DISABLED for Windows ARM64 builds (missing ARM64 tidy/gettext libraries).")
13-
ELSE()
14-
SET(SCM_CONVERTER_ENABLED TRUE)
15-
MESSAGE(STATUS "Sky Culture Converter will be enabled.")
16-
ENDIF()
8+
# Detect Qt5
9+
IF(QT_VERSION_MAJOR EQUAL "5")
10+
SET(IS_QT_5 TRUE)
11+
ELSE()
12+
SET(IS_QT_5 FALSE)
13+
ENDIF()
14+
15+
# Detect Windows ARM64
16+
IF(WIN32 AND (CMAKE_SYSTEM_PROCESSOR MATCHES "ARM64|arm64|aarch64" OR CMAKE_VS_PLATFORM_NAME MATCHES "ARM64|arm64"))
17+
SET(IS_WIN_ARM64 TRUE)
18+
ELSE()
19+
SET(IS_WIN_ARM64 FALSE)
20+
ENDIF()
21+
22+
# Disable converter for Qt5
23+
# Disable converter for Windows ARM64 builds due to missing ARM64 libraries
24+
IF(SCM_SHOULD_ENABLE_CONVERTER AND NOT IS_QT_5 AND NOT IS_WIN_ARM64)
25+
SET(SCM_CONVERTER_ENABLED TRUE)
26+
MESSAGE(STATUS "Sky Culture Converter will be enabled.")
1727

1828
# download https://github.com/Stellarium/stellarium-skyculture-converter
1929
CPMAddPackage(
@@ -49,7 +59,13 @@ IF(SCM_SHOULD_ENABLE_CONVERTER AND NOT (QT_VERSION_MAJOR EQUAL "5"))
4959
ENDIF(WIN32)
5060
ADD_DEFINITIONS(-DSCM_CONVERTER_ENABLED_CPP) # Define for C++
5161
ELSE()
52-
MESSAGE(STATUS "Sky Culture Converter is DISABLED (Qt version 5 or SCM_SHOULD_ENABLE_CONVERTER is OFF). Please ensure you are using Qt 6 or later to enable it.")
62+
IF(IS_QT_5)
63+
MESSAGE(STATUS "Sky Culture Converter is DISABLED because it requires Qt 6 or later.")
64+
ELSEIF(IS_WIN_ARM64)
65+
MESSAGE(STATUS "Sky Culture Converter is DISABLED for Windows ARM64 builds (missing ARM64 tidy/gettext libraries).")
66+
ELSE()
67+
MESSAGE(STATUS "Sky Culture Converter is DISABLED.")
68+
ENDIF()
5369
ENDIF()
5470

5571
ADD_DEFINITIONS(-DSKYCULTUREMAKER_PLUGIN_VERSION="${SCM_VERSION}")

0 commit comments

Comments
 (0)