diff --git a/.github/workflows/ci.yml b/.github/workflows/ci.yml index 3429ce50..55e18b1d 100644 --- a/.github/workflows/ci.yml +++ b/.github/workflows/ci.yml @@ -125,6 +125,24 @@ jobs: -DCMAKE_BUILD_TYPE="${{ matrix.build_type }}" ` -DCMAKE_INSTALL_PREFIX="${{ github.workspace }}/supercell-wx" ninja supercell-wx wxtest + + - name: Separate Debug Symbols (Linux) + if: matrix.os == 'ubuntu-22.04' + shell: bash + run: | + cd build/ + cd bin/ + objcopy --only-keep-debug supercell-wx supercell-wx.debug + objcopy --strip-debug --strip-unneeded supercell-wx + cd .. + cd lib/ + objcopy --only-keep-debug libQMapLibreGL.so libQMapLibreGL.so.debug + objcopy --strip-debug --strip-unneeded libQMapLibreGL.so + + - name: Install Supercell Wx + shell: pwsh + run: | + cd build cmake --install . --component supercell-wx - name: Collect Artifacts @@ -162,6 +180,15 @@ jobs: name: supercell-wx-${{ matrix.artifact_suffix }} path: ${{ github.workspace }}/supercell-wx-${{ matrix.artifact_suffix }}.tar.gz + - name: Upload Debug Artifacts (Linux) + if: matrix.os == 'ubuntu-22.04' + uses: actions/upload-artifact@v3 + with: + name: supercell-wx-debug-${{ matrix.artifact_suffix }} + path: | + ${{ github.workspace }}/build/bin/*.debug + ${{ github.workspace }}/build/lib/*.debug + - name: Test Supercell Wx working-directory: ${{ github.workspace }}/build run: ctest -C ${{ matrix.build_type }} --exclude-regex mbgl-test-runner diff --git a/external/mapbox-gl-native.cmake b/external/mapbox-gl-native.cmake index 819dad6c..bbb169ce 100644 --- a/external/mapbox-gl-native.cmake +++ b/external/mapbox-gl-native.cmake @@ -17,6 +17,9 @@ if (MSVC) target_link_options(qmaplibregl PRIVATE "$<$:/DEBUG>") target_link_options(qmaplibregl PRIVATE "$<$:/OPT:REF>") target_link_options(qmaplibregl PRIVATE "$<$:/OPT:ICF>") +else() + target_compile_options(mbgl-core PRIVATE "$<$:-g>") + target_compile_options(qmaplibregl PRIVATE "$<$:-g>") endif() set(MBGL_INCLUDE_DIR ${CMAKE_CURRENT_SOURCE_DIR}/mapbox-gl-native/include diff --git a/scwx-qt/scwx-qt.cmake b/scwx-qt/scwx-qt.cmake index 013f107e..4b32eeb3 100644 --- a/scwx-qt/scwx-qt.cmake +++ b/scwx-qt/scwx-qt.cmake @@ -401,6 +401,9 @@ if (MSVC) target_link_options(supercell-wx PRIVATE "$<$:/DEBUG>") target_link_options(supercell-wx PRIVATE "$<$:/OPT:REF>") target_link_options(supercell-wx PRIVATE "$<$:/OPT:ICF>") +else() + target_compile_options(scwx-qt PRIVATE "$<$:-g>") + target_compile_options(supercell-wx PRIVATE "$<$:-g>") endif() target_link_libraries(scwx-qt PUBLIC Qt${QT_VERSION_MAJOR}::Widgets diff --git a/wxdata/wxdata.cmake b/wxdata/wxdata.cmake index a61a1c8f..b6c4fb1c 100644 --- a/wxdata/wxdata.cmake +++ b/wxdata/wxdata.cmake @@ -240,6 +240,8 @@ target_compile_options(wxdata PRIVATE if (MSVC) # Produce PDB file for debug target_compile_options(wxdata PRIVATE "$<$:/Zi>") +else() + target_compile_options(wxdata PRIVATE "$<$:-g>") endif() target_link_libraries(wxdata PUBLIC aws-cpp-sdk-core