summaryrefslogtreecommitdiffstats
path: root/config.tests/separate_debug_info
diff options
context:
space:
mode:
Diffstat (limited to 'config.tests/separate_debug_info')
-rw-r--r--config.tests/separate_debug_info/CMakeLists.txt10
-rw-r--r--config.tests/separate_debug_info/main.cpp1
-rw-r--r--config.tests/separate_debug_info/separate_debug_info.pro7
3 files changed, 18 insertions, 0 deletions
diff --git a/config.tests/separate_debug_info/CMakeLists.txt b/config.tests/separate_debug_info/CMakeLists.txt
new file mode 100644
index 0000000000..757374a34a
--- /dev/null
+++ b/config.tests/separate_debug_info/CMakeLists.txt
@@ -0,0 +1,10 @@
+cmake_minimum_required(VERSION 3.14.0)
+project(objcopytest LANGUAGES CXX)
+include(CMakeFindBinUtils)
+add_executable(objcopytest main.cpp)
+add_custom_command(
+ TARGET objcopytest
+ POST_BUILD
+ COMMAND ${CMAKE_OBJCOPY} --only-keep-debug $<TARGET_FILE:objcopytest> objcopytest.debug
+ COMMAND ${CMAKE_OBJCOPY} --strip-debug $<TARGET_FILE:objcopytest>
+ COMMAND ${CMAKE_OBJCOPY} --add-gnu-debuglink=objcopytest.debug $<TARGET_FILE:objcopytest>)
diff --git a/config.tests/separate_debug_info/main.cpp b/config.tests/separate_debug_info/main.cpp
new file mode 100644
index 0000000000..237c8ce181
--- /dev/null
+++ b/config.tests/separate_debug_info/main.cpp
@@ -0,0 +1 @@
+int main() {}
diff --git a/config.tests/separate_debug_info/separate_debug_info.pro b/config.tests/separate_debug_info/separate_debug_info.pro
new file mode 100644
index 0000000000..577aa734d6
--- /dev/null
+++ b/config.tests/separate_debug_info/separate_debug_info.pro
@@ -0,0 +1,7 @@
+TARGET = objcopytest
+SOURCES += main.cpp
+load(resolve_target)
+QMAKE_POST_LINK += \
+ $$QMAKE_OBJCOPY --only-keep-debug $$QMAKE_RESOLVED_TARGET objcopytest.debug && \
+ $$QMAKE_OBJCOPY --strip-debug $$QMAKE_RESOLVED_TARGET && \
+ $$QMAKE_OBJCOPY --add-gnu-debuglink=objcopytest.debug $$QMAKE_RESOLVED_TARGET