From bfab64881670e667e842b52af7d04f94d871b631 Mon Sep 17 00:00:00 2001 From: Alexander Wenzel Date: Tue, 9 Jan 2024 12:48:43 +0100 Subject: [PATCH 1/6] Support Qt6 only. (#397) Remove Qt5 support. Signed-off-by: Alexander Wenzel --- build_config.bat | 2 +- build_parser_windows_qt5_MSVC_qmake.bat | 172 ------------------ ...ke.bat => build_sdk_windows_MSVC_cmake.bat | 0 ...sdk_windows_qt5_MSVC_cmake_interactive.bat | 4 - 4 files changed, 1 insertion(+), 177 deletions(-) delete mode 100644 build_parser_windows_qt5_MSVC_qmake.bat rename build_sdk_windows_qt5_MSVC_cmake.bat => build_sdk_windows_MSVC_cmake.bat (100%) delete mode 100644 build_sdk_windows_qt5_MSVC_cmake_interactive.bat diff --git a/build_config.bat b/build_config.bat index a42fad6f..d57d1c2c 100644 --- a/build_config.bat +++ b/build_config.bat @@ -14,7 +14,7 @@ if "%QTNO%"=="" ( if "%QTVER%"=="" ( if "%QTNO%"=="5" ( - set QTVER=5.15.2 + set QTVER=5.15.2 ) else ( set QTVER=6.7.3 ) diff --git a/build_parser_windows_qt5_MSVC_qmake.bat b/build_parser_windows_qt5_MSVC_qmake.bat deleted file mode 100644 index 561c4017..00000000 --- a/build_parser_windows_qt5_MSVC_qmake.bat +++ /dev/null @@ -1,172 +0,0 @@ -@echo off - -REM Date Version Author Changes -REM 4.7.19 1.0 Alexander Wenzel Update to Qt 5.12.4 and Visual Studio 2015 -REM 25.11.20 1.1 Alexander Wenzel Update to Qt 5.12.10 -REM 11.1.21 1.2 Alexander Wenzel Update to Qt 5.12.12, Visual Studio 2017 Build Tools and simplify - -echo ************************************ -echo *** DLT Parser *** -echo ************************************ - -call build_config.bat - -if '%WORKSPACE%'=='' ( - if '%DLT_PARSER_DIR%'=='' ( - set DLT_PARSER_DIR=c:\DltParser - ) - - set SOURCE_DIR=%CD% - set BUILD_DIR=%CD%\build\release -) else ( - if '%DLT_PARSER_DIR%'=='' ( - set DLT_PARSER_DIR=%WORKSPACE%\build\dist\DltParser - ) - - set SOURCE_DIR=%WORKSPACE% - set BUILD_DIR=%WORKSPACE%\build\release -) - -echo ************************************ -echo * QTDIR = %QTDIR% -echo * MSVC_DIR = %MSVC_DIR% -echo * PATH = %PATH% -echo * DLT_PARSER_DIR = %DLT_PARSER_DIR% -echo * SOURCE_DIR = %SOURCE_DIR% -echo * BUILD_DIR = %BUILD_DIR% -echo ************************************ - -IF exist build ( -echo ************************************ -echo *** Delete old build Directory *** -echo ************************************ - rmdir /S /Q build - IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER -) - -IF exist %DLT_PARSER_DIR% ( -echo ************************************ -echo *** Delete old SDK Directory *** -echo ************************************ - - rmdir /s /q %DLT_PARSER_DIR% - IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER -) - -echo ************************************ -echo *** Configure MSVC environment *** -echo ************************************ - -call vcvarsall.bat x86_amd64 -if %ERRORLEVEL% NEQ 0 goto error -echo configuring was successful - -echo ************************************ -echo *** Build DLT Parser *** -echo ************************************ - -if not exist build mkdir build -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -cd build -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -qmake ../BuildDltParser.pro -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -nmake release -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -echo ************************************ -echo *** Install Parser *** -echo ************************************ - -echo *** Create directories %DLT_PARSER_DIR% *** -if not exist %DLT_PARSER_DIR% mkdir %DLT_PARSER_DIR% -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -if not exist %DLT_PARSER_DIR%\examples mkdir %DLT_PARSER_DIR%\examples -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -echo *** Copy files *** -copy %QTDIR%\bin\Qt?Core.dll %DLT_PARSER_DIR% -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -copy %QTDIR%\bin\Qt?Gui.dll %DLT_PARSER_DIR% -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -copy %QTDIR%\bin\Qt?Network.dll %DLT_PARSER_DIR% -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -copy %QTDIR%\bin\Qt?Sql.dll %DLT_PARSER_DIR% -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -copy %QTDIR%\bin\Qt?Svg.dll %DLT_PARSER_DIR% -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -copy %QTDIR%\bin\Qt?Widgets.dll %DLT_PARSER_DIR% -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -copy %QTDIR%\bin\Qt?PrintSupport.dll %DLT_PARSER_DIR% -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -copy %QTDIR%\bin\Qt?Xml.dll %DLT_PARSER_DIR% -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -copy %QTDIR%\bin\Qt?OpenGL.dll %DLT_PARSER_DIR% -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -copy %BUILD_DIR%\dlt-parser.exe %DLT_PARSER_DIR% -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -copy %SOURCE_DIR%\ReleaseNotes_Parser.txt %DLT_PARSER_DIR% -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -copy %SOURCE_DIR%\README_Parser.txt %DLT_PARSER_DIR% -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -copy %SOURCE_DIR%\LICENSE.txt %DLT_PARSER_DIR% -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -copy %SOURCE_DIR%\MPL.txt %DLT_PARSER_DIR% -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -mkdir %DLT_PARSER_DIR%\platforms -if %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -mkdir %DLT_PARSER_DIR%\styles -if %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -copy %QTDIR%\plugins\platforms\qwindows.dll %DLT_PARSER_DIR%\platforms -if %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -if "%QTNO%"=="5" ( - copy %QTDIR%\plugins\styles\qwindowsvistastyle.dll %DLT_VIEWER_SDK_DIR%\styles - if %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER -) -if "%QTNO%"=="6" ( - copy %QTDIR%\plugins\styles\qmodernwindowsstyle.dll %DLT_VIEWER_SDK_DIR%\styles - if %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER -) - -xcopy %SOURCE_DIR%\parser\examples %DLT_PARSER_DIR%\examples /E -IF %ERRORLEVEL% NEQ 0 GOTO ERROR_HANDLER - -GOTO QUIT - - -:ERROR_HANDLER -echo #################################### -echo ### ERROR occured ### -echo #################################### -set /p name= Continue -exit 1 - - -:QUIT -echo ************************************ -echo *** SUCCESS finish *** -echo ************************************ -echo SDK installed in: %DLT_PARSER_DIR% -set /p name= Continue -exit 0 diff --git a/build_sdk_windows_qt5_MSVC_cmake.bat b/build_sdk_windows_MSVC_cmake.bat similarity index 100% rename from build_sdk_windows_qt5_MSVC_cmake.bat rename to build_sdk_windows_MSVC_cmake.bat diff --git a/build_sdk_windows_qt5_MSVC_cmake_interactive.bat b/build_sdk_windows_qt5_MSVC_cmake_interactive.bat deleted file mode 100644 index 87c38712..00000000 --- a/build_sdk_windows_qt5_MSVC_cmake_interactive.bat +++ /dev/null @@ -1,4 +0,0 @@ -call build_sdk_windows_qt5_MSVC_cmake.bat -SET RETCODE=%ERRORLEVEL% -set /p name= Continue -exit /b %RETCODE% \ No newline at end of file From a15e77500457a3b08abdba3ef7c1eeb9f138e7aa Mon Sep 17 00:00:00 2001 From: Hannes Achleitner Date: Tue, 9 Jan 2024 13:21:49 +0100 Subject: [PATCH 2/6] Use qt6 in CI --- .github/workflows/BuildPR.yml | 6 +++--- .github/workflows/Release.yml | 6 +++--- 2 files changed, 6 insertions(+), 6 deletions(-) diff --git a/.github/workflows/BuildPR.yml b/.github/workflows/BuildPR.yml index cd4fbf15..490b5e2b 100644 --- a/.github/workflows/BuildPR.yml +++ b/.github/workflows/BuildPR.yml @@ -167,14 +167,14 @@ jobs: - name: Install qt uses: jurplel/install-qt-action@v4 with: - version: 5.15.2 + version: 6.7.1 - name: Build with CMake ${{ matrix.task }} run: > $env:WORKSPACE=$env:GITHUB_WORKSPACE; - $env:QTDIR=$env:Qt5_DIR.Replace('/','\'); + $env:QTDIR=$env:Qt6_DIR.Replace('/','\'); $env:CPACK_7Z="true"; $env:CPACK_NSIS="true"; - ./build_sdk_windows_qt5_MSVC_cmake.bat + ./build_sdk_windows_MSVC_cmake.bat - name: Archive artifact uses: actions/upload-artifact@v4 if: ${{ success() }} diff --git a/.github/workflows/Release.yml b/.github/workflows/Release.yml index 965b7b89..bc5d1158 100644 --- a/.github/workflows/Release.yml +++ b/.github/workflows/Release.yml @@ -29,8 +29,8 @@ jobs: run: ls -n /Applications/ | grep Xcode* - name: Set XCode Version run: sudo xcode-select -s /Applications/${{ matrix.xcode }}.app - - name: install qt 5 - run: brew install qt@5 + - name: install qt 6 + run: brew install qt@6 - name: install build environment run: scripts/darwin/install.sh - name: Build project @@ -147,7 +147,7 @@ jobs: uses: jurplel/install-qt-action@v4 with: mirror: http://ftp.fau.de/qtproject/ - version: 5.15.2 + version: 6.7.1 - name: Build with CMake ${{ matrix.task }} run: > $env:WORKSPACE=$env:GITHUB_WORKSPACE; From d5e91639b9b5c00a49e0849e3ec21733393980e2 Mon Sep 17 00:00:00 2001 From: Hannes Achleitner Date: Tue, 9 Jan 2024 16:07:59 +0100 Subject: [PATCH 3/6] Use hard coded path for windows to make CI work --- build_sdk_windows_MSVC_cmake.bat | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build_sdk_windows_MSVC_cmake.bat b/build_sdk_windows_MSVC_cmake.bat index fd35164e..80113cc3 100644 --- a/build_sdk_windows_MSVC_cmake.bat +++ b/build_sdk_windows_MSVC_cmake.bat @@ -59,7 +59,7 @@ echo ************************************ echo *** Configure MSVC environment *** echo ************************************ -call vcvarsall.bat x86_amd64 +call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64 if %ERRORLEVEL% NEQ 0 goto ERROR_HANDLER echo configuring was successful From 8cb24a4ecb0aacde1429af3758e61d6c41704150 Mon Sep 17 00:00:00 2001 From: Hannes Achleitner Date: Tue, 9 Jan 2024 18:15:30 +0100 Subject: [PATCH 4/6] Install ninja --- .github/workflows/BuildPR.yml | 1 + 1 file changed, 1 insertion(+) diff --git a/.github/workflows/BuildPR.yml b/.github/workflows/BuildPR.yml index 490b5e2b..577cab7d 100644 --- a/.github/workflows/BuildPR.yml +++ b/.github/workflows/BuildPR.yml @@ -168,6 +168,7 @@ jobs: uses: jurplel/install-qt-action@v4 with: version: 6.7.1 + - uses: seanmiddleditch/gha-setup-ninja@master - name: Build with CMake ${{ matrix.task }} run: > $env:WORKSPACE=$env:GITHUB_WORKSPACE; From e5ec96a3782b1fc6884c386389fa737b8477d3fc Mon Sep 17 00:00:00 2001 From: Hannes Achleitner Date: Wed, 17 Jan 2024 08:43:22 +0100 Subject: [PATCH 5/6] qt6 --- scripts/darwin/build_cmake.sh | 10 +++++----- scripts/darwin/install.sh | 22 +++++++++++----------- 2 files changed, 16 insertions(+), 16 deletions(-) diff --git a/scripts/darwin/build_cmake.sh b/scripts/darwin/build_cmake.sh index 4da052cb..35a1d088 100755 --- a/scripts/darwin/build_cmake.sh +++ b/scripts/darwin/build_cmake.sh @@ -12,13 +12,13 @@ mkdir -p "${BUILD_DIR}" cd "${BUILD_DIR}" if [[ $(uname -m) == 'arm64' ]]; then - Qt5_DIR="/opt/homebrew/opt/qt@5" - echo "Build with cmake $(uname -m) $Qt5_DIR" + Qt6_DIR="/opt/homebrew/opt/qt@6" + echo "Build with cmake $(uname -m) $Qt6_DIR" qmake ../BuildDltViewer.pro # cmake .. else - Qt5_DIR="/usr/local/opt/qt" - echo "Build with qmake $(uname -m) $Qt5_DIR" + Qt6_DIR="/usr/local/opt/qt" + echo "Build with qmake $(uname -m) $Qt6_DIR" qmake ../BuildDltViewer.pro make fi @@ -36,7 +36,7 @@ echo Build with CMake # https://developer.apple.com/library/archive/documentation/CoreFoundation/Conceptual/CFBundles/BundleTypes/BundleTypes.html cmake -G Ninja \ -DCMAKE_INSTALL_PREFIX=${INSTALL_DIR} \ - -DCMAKE_PREFIX_PATH=${Qt5_DIR}/lib/cmake \ + -DCMAKE_PREFIX_PATH=${Qt6_DIR}/lib/cmake \ -DCMAKE_OSX_DEPLOYMENT_TARGET=10.15 \ -DCMAKE_BUILD_TYPE=Release \ -DDLT_USE_QT_RPATH=ON \ diff --git a/scripts/darwin/install.sh b/scripts/darwin/install.sh index 1d197cc9..915871e6 100755 --- a/scripts/darwin/install.sh +++ b/scripts/darwin/install.sh @@ -5,12 +5,12 @@ env pwd brew update -brew install qt@5 +brew install qt@6 brew unlink qt@5 && brew link --force qt@5 -#brew link --overwrite qt@5 --force --overwrite +#brew link --overwrite qt@6 --force --overwrite # https://github.com/Homebrew/homebrew-core/issues/8392 # https://github.com/Homebrew/legacy-homebrew/issues/29938 -QT_VERSION=$(brew list --versions qt@5 | awk '{print $2}') +QT_VERSION=$(brew list --versions qt@6 | awk '{print $2}') echo "QT_VERSION=$QT_VERSION" if [[ -z "$QT_VERSION" ]]; then echo "QT_VERSION is empty" @@ -18,21 +18,21 @@ if [[ -z "$QT_VERSION" ]]; then fi # follow brew install suggestions -echo 'export PATH="/opt/homebrew/opt/qt@5/bin:$PATH"' >> ~/.bash_profile -export LDFLAGS="-L/opt/homebrew/opt/qt@5/lib" -export CPPFLAGS="-I/opt/homebrew/opt/qt@5/include" -export PKG_CONFIG_PATH="/opt/homebrew/opt/qt@5/lib/pkgconfig" +echo 'export PATH="/opt/homebrew/opt/qt@6/bin:$PATH"' >> ~/.bash_profile +export LDFLAGS="-L/opt/homebrew/opt/qt@6/lib" +export CPPFLAGS="-I/opt/homebrew/opt/qt@6/include" +export PKG_CONFIG_PATH="/opt/homebrew/opt/qt@6/lib/pkgconfig" source ~/.bash_profile uname -a if [[ $(uname -m) == 'arm64' ]]; then echo "Run on MacOS arm64" - sudo ln -s -F "/opt/homebrew/Cellar/qt@5/${QT_VERSION}/mkspecs" /usr/local/mkspecs - sudo ln -s -F "/opt/homebrew/Cellar/qt@5/${QT_VERSION}/plugins" /usr/local/plugins + sudo ln -s -F "/opt/homebrew/Cellar/qt@6/${QT_VERSION}/mkspecs" /usr/local/mkspecs + sudo ln -s -F "/opt/homebrew/Cellar/qt@6/${QT_VERSION}/plugins" /usr/local/plugins else echo "Run on MacOS x86" - sudo ln -s "/usr/local/Cellar/qt@5/${QT_VERSION}/mkspecs" /usr/local/mkspecs - sudo ln -s "/usr/local/Cellar/qt@5/${QT_VERSION}/plugins" /usr/local/plugins + sudo ln -s "/usr/local/Cellar/qt@6/${QT_VERSION}/mkspecs" /usr/local/mkspecs + sudo ln -s "/usr/local/Cellar/qt@6/${QT_VERSION}/plugins" /usr/local/plugins fi brew install ninja tree From 34c5859a4d302287b351b46387201e69ade16287 Mon Sep 17 00:00:00 2001 From: Hannes Achleitner Date: Wed, 17 Jul 2024 11:08:05 +0200 Subject: [PATCH 6/6] Revert "Use hard coded path for windows to make CI work" This reverts commit 64cfa68f8bd81d9ef690e696fc5e1de6fc1c33f2. --- build_sdk_windows_MSVC_cmake.bat | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/build_sdk_windows_MSVC_cmake.bat b/build_sdk_windows_MSVC_cmake.bat index 80113cc3..fd35164e 100644 --- a/build_sdk_windows_MSVC_cmake.bat +++ b/build_sdk_windows_MSVC_cmake.bat @@ -59,7 +59,7 @@ echo ************************************ echo *** Configure MSVC environment *** echo ************************************ -call "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\vcvarsall.bat" x86_amd64 +call vcvarsall.bat x86_amd64 if %ERRORLEVEL% NEQ 0 goto ERROR_HANDLER echo configuring was successful