Mercurial > mxe-octave
changeset 6887:f5093577b002
Qt6 QtBase: Dynamic OpenGL works only on Windows.
* src/qt6-qtbase.mk: Enable FEATURE_opengl_dynamic only when building for
Windows. Create symlink to keep build rules of reverse dependencies simple.
* src/qt6-qttools.mk: Create dummy executable only when building for Windows.
author | Markus Mützel <markus.muetzel@gmx.de> |
---|---|
date | Fri, 29 Sep 2023 20:43:29 +0200 |
parents | 3b1036b3713b |
children | abeca39478cc |
files | src/qt6-qtbase.mk src/qt6-qttools.mk |
diffstat | 2 files changed, 26 insertions(+), 20 deletions(-) [+] |
line wrap: on
line diff
--- a/src/qt6-qtbase.mk Fri Sep 29 15:18:41 2023 -0400 +++ b/src/qt6-qtbase.mk Fri Sep 29 20:43:29 2023 +0200 @@ -27,6 +27,7 @@ $(PKG)_CMAKE_OPTS += \ -DFEATURE_sql_mysql=OFF \ -DFEATURE_sql_odbc=ON \ + -DFEATURE_opengl_dynamic=ON \ -DFEATURE_sql_psql=ON \ -DFEATURE_sql_sqlite=ON \ -DFEATURE_system_sqlite=ON @@ -98,7 +99,6 @@ -DFEATURE_system_freetype=ON \ -DFEATURE_glib=OFF \ -DFEATURE_system_harfbuzz=OFF \ - -DFEATURE_opengl_dynamic=ON \ -DFEATURE_openssl=OFF \ -DFEATURE_system_pcre2=ON \ -DFEATURE_pkg_config=ON \ @@ -109,7 +109,7 @@ 'cmake' --build '$(1).build' -j '$(JOBS)' 'cmake' --install '$(1).build' - if [ $(MXE_WINDOWS_BUILD) = yes ]; then \ + if [ "$(MXE_WINDOWS_BUILD)" = yes ]; then \ $(INSTALL) -d '$(HOST_BINDIR)'; \ cp '$(HOST_PREFIX)'/qt6/bin/Qt6Concurrent.dll '$(HOST_BINDIR)'/Qt6Concurrent.dll; \ cp '$(HOST_PREFIX)'/qt6/bin/Qt6Core.dll '$(HOST_BINDIR)'/Qt6Core.dll; \ @@ -125,9 +125,11 @@ fi if [ "$(MXE_NATIVE_BUILD)" = "no" ]; then \ - ln -sf '$(BUILD_TOOLS_PREFIX)/qt6/bin/qmake6' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'qmake-qt6; \ - ln -sf '$(BUILD_TOOLS_PREFIX)/qt6/libexec/moc' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'moc; \ - ln -sf '$(BUILD_TOOLS_PREFIX)/qt6/libexec/uic' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'uic; \ - ln -sf '$(BUILD_TOOLS_PREFIX)/qt6/libexec/rcc' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'rcc; \ + ln -sf '$(BUILD_TOOLS_PREFIX)/qt6/bin/qmake6' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'qmake-qt6; \ + ln -sf '$(BUILD_TOOLS_PREFIX)/qt6/libexec/moc' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'moc; \ + ln -sf '$(BUILD_TOOLS_PREFIX)/qt6/libexec/uic' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'uic; \ + ln -sf '$(BUILD_TOOLS_PREFIX)/qt6/libexec/rcc' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'rcc; \ + else \ + ln -sf '$(BUILD_TOOLS_PREFIX)/qt6/bin/qt-cmake' '$(HOST_PREFIX)/qt6/bin/qt-cmake-private'; \ fi endef
--- a/src/qt6-qttools.mk Fri Sep 29 15:18:41 2023 -0400 +++ b/src/qt6-qttools.mk Fri Sep 29 20:43:29 2023 +0200 @@ -16,37 +16,41 @@ define $(PKG)_BUILD # native tools - mkdir '$(1).native' && cd '$(1).native' && \ - '$(BUILD_TOOLS_PREFIX)/qt6/bin/qt-cmake' -S '$(1)' -DCMAKE_INSTALL_PREFIX='$(BUILD_TOOLS_PREFIX)/qt6' \ + mkdir '$(1).tools' && cd '$(1).tools' && \ + '$(BUILD_TOOLS_PREFIX)/qt6/bin/qt-cmake' -S '$(1)' \ + -DCMAKE_INSTALL_PREFIX='$(BUILD_TOOLS_PREFIX)/qt6' \ -DFEATURE_clang=OFF \ -DFEATURE_clangcpp=OFF \ -DFEATURE_linguist=ON \ -DFEATURE_designer=OFF - cmake --build $(1).native -j '$(JOBS)' - cmake --install '$(1).native' + cmake --build $(1).tools -j '$(JOBS)' + cmake --install '$(1).tools' if [ "$(MXE_NATIVE_BUILD)" = "no" ]; then \ - ln -sf '$(BUILD_TOOLS_PREFIX)/qt6/bin/lconvert' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'lconvert; \ - ln -sf '$(BUILD_TOOLS_PREFIX)/qt6/bin/lrelease' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'lrelease; \ - echo -e "#!/bin/sh\necho $$0 $$*" > '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'qhelpgenerator && chmod a+rx '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'qhelpgenerator; \ - echo -e "#!/bin/sh\necho $$0 $$*" > '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'qcollectiongenerator && chmod a+rx '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'qcollectiongenerator; \ + ln -sf '$(BUILD_TOOLS_PREFIX)/qt6/bin/lconvert' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'lconvert; \ + ln -sf '$(BUILD_TOOLS_PREFIX)/qt6/bin/lrelease' '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'lrelease; \ + echo -e "#!/bin/sh\necho $$0 $$*" > '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'qhelpgenerator && chmod a+rx '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'qhelpgenerator; \ + echo -e "#!/bin/sh\necho $$0 $$*" > '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'qcollectiongenerator && chmod a+rx '$(BUILD_TOOLS_PREFIX)/bin/$(MXE_TOOL_PREFIX)'qcollectiongenerator; \ fi mkdir '$(1).build' && cd '$(1).build' && \ - '$(HOST_PREFIX)/qt6/bin/qt-cmake-private' -S '$(1)' -DCMAKE_INSTALL_PREFIX='$(HOST_PREFIX)/qt6' \ - -DFEATURE_clang=OFF \ - -DFEATURE_clangcpp=OFF \ - -DQT_FORCE_BUILD_TOOLS=ON + '$(HOST_PREFIX)/qt6/bin/qt-cmake-private' -S '$(1)' \ + -DCMAKE_INSTALL_PREFIX='$(HOST_PREFIX)/qt6' \ + -DFEATURE_clang=OFF \ + -DFEATURE_clangcpp=OFF \ + -DQT_FORCE_BUILD_TOOLS=ON # not built for some reason. make dummy so install won't fail - touch '$(1).build/bin/qhelpgenerator.exe' + if [ "$(MXE_WINDOWS_BUILD)" = yes ]; then \ + touch '$(1).build/bin/qhelpgenerator.exe'; \ + fi cmake --build $(1).build -j '$(JOBS)' cmake --install '$(1).build' - if [ $(MXE_WINDOWS_BUILD) = yes ]; then \ + if [ "$(MXE_WINDOWS_BUILD)" = yes ]; then \ $(INSTALL) -d '$(HOST_BINDIR)'; \ cp '$(HOST_PREFIX)'/qt6/bin/Qt6UiTools.dll '$(HOST_BINDIR)'/Qt6UiTools.dll; \ cp '$(HOST_PREFIX)'/qt6/bin/Qt6Help.dll '$(HOST_BINDIR)'/Qt6Help.dll; \