diff --git a/.gitlab/ci/jobs/windows-x86.yml b/.gitlab/ci/jobs/windows-x86.yml index 603549ce39bdebf6b3988cb5f9c1cf826d12f63c..f0cf653e3482d35f78404bfde53851479866fe51 100644 --- a/.gitlab/ci/jobs/windows-x86.yml +++ b/.gitlab/ci/jobs/windows-x86.yml @@ -92,7 +92,8 @@ Windows x86: -DCMAKE_CXX_COMPILER_LAUNCHER=$CCACHE \ -DCMAKE_C_COMPILER=/usr/bin/i686-w64-mingw32-gcc-posix \ -DCMAKE_CXX_COMPILER=/usr/bin/i686-w64-mingw32-g++-posix \ - -DVCPKG_CHAINLOAD_TOOLCHAIN_FILE=$VCPKG_ROOT/scripts/toolchains/mingw.cmake + -DVCPKG_CHAINLOAD_TOOLCHAIN_FILE=$VCPKG_ROOT/scripts/toolchains/mingw.cmake \ + -DSRB2_CONFIG_ALWAYS_MAKE_DEBUGLINK=ON - | # cmake diff --git a/CMakeLists.txt b/CMakeLists.txt index 885b5caac53f39e2f4d0591dcb33a0fbf762627e..1f852c981d073fe4d3e5343de426cbb5140ba922 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -66,6 +66,7 @@ option(SRB2_CONFIG_STATIC_OPENGL "Enable static linking GL (do not do this)" OFF option(SRB2_CONFIG_ERRORMODE "Compile C code with warnings treated as errors." OFF) option(SRB2_CONFIG_DEBUGMODE "Compile with PARANOIA, ZDEBUG, RANGECHECK and PACKETDROP defined." OFF) option(SRB2_CONFIG_DEV_BUILD "Compile a development build." OFF) +option(SRB2_CONFIG_ALWAYS_MAKE_DEBUGLINK "Always make a debuglink .debug." OFF) option(SRB2_CONFIG_TESTERS "Compile a build for testers." OFF) option(SRB2_CONFIG_MOBJCONSISTANCY "Compile with MOBJCONSISTANCY defined." OFF) option(SRB2_CONFIG_PACKETDROP "Compile with PACKETDROP defined." OFF) diff --git a/src/CMakeLists.txt b/src/CMakeLists.txt index 52f1b163019f986a93e7ee32007da04d76fc5e02..af64bb0bcca7724d125df5224bece1333fd5a246 100644 --- a/src/CMakeLists.txt +++ b/src/CMakeLists.txt @@ -611,7 +611,7 @@ add_subdirectory(modp_b64) # strip debug symbols into separate file when using gcc. # to be consistent with Makefile, don't generate for OS X. if((CMAKE_COMPILER_IS_GNUCC) AND NOT ("${CMAKE_SYSTEM_NAME}" MATCHES Darwin)) - if(${CMAKE_BUILD_TYPE} MATCHES RelWithDebInfo) + if(${CMAKE_BUILD_TYPE} MATCHES RelWithDebInfo OR SRB2_CONFIG_ALWAYS_MAKE_DEBUGLINK) message(STATUS "Will make separate debug symbols in *.debug") add_custom_command(TARGET SRB2SDL2 POST_BUILD COMMAND ${OBJCOPY} ${OBJCOPY_ONLY_KEEP_DEBUG} $<TARGET_FILE:SRB2SDL2> $<TARGET_FILE:SRB2SDL2>.debug