summaryrefslogtreecommitdiff
path: root/packages/Python/lldbsuite/test/linux/sepdebugsymlink
diff options
context:
space:
mode:
authorDimitry Andric <dim@FreeBSD.org>2018-07-28 11:09:23 +0000
committerDimitry Andric <dim@FreeBSD.org>2018-07-28 11:09:23 +0000
commitf73363f1dd94996356cefbf24388f561891acf0b (patch)
treee3c31248bdb36eaec5fd833490d4278162dba2a0 /packages/Python/lldbsuite/test/linux/sepdebugsymlink
parent160ee69dd7ae18978f4068116777639ea98dc951 (diff)
Notes
Diffstat (limited to 'packages/Python/lldbsuite/test/linux/sepdebugsymlink')
-rw-r--r--packages/Python/lldbsuite/test/linux/sepdebugsymlink/Makefile20
-rw-r--r--packages/Python/lldbsuite/test/linux/sepdebugsymlink/TestTargetSymbolsSepDebugSymlink.py23
-rw-r--r--packages/Python/lldbsuite/test/linux/sepdebugsymlink/main.c3
3 files changed, 46 insertions, 0 deletions
diff --git a/packages/Python/lldbsuite/test/linux/sepdebugsymlink/Makefile b/packages/Python/lldbsuite/test/linux/sepdebugsymlink/Makefile
new file mode 100644
index 000000000000..3fd14a74bf36
--- /dev/null
+++ b/packages/Python/lldbsuite/test/linux/sepdebugsymlink/Makefile
@@ -0,0 +1,20 @@
+LEVEL = ../../make
+C_SOURCES := main.c
+
+all: dirsymlink
+
+dirreal: a.out
+ $(RM) -r $@
+ mkdir $@
+ $(OBJCOPY) --only-keep-debug $< $@/stripped.debug
+ $(OBJCOPY) --strip-all --add-gnu-debuglink=$@/stripped.debug $< $@/stripped.out
+
+dirsymlink: dirreal
+ $(RM) -r $@
+ mkdir $@
+ ln -s ../$</stripped.out $@/stripped.symlink
+
+clean::
+ $(RM) -r dirreal dirsymlink
+
+include $(LEVEL)/Makefile.rules
diff --git a/packages/Python/lldbsuite/test/linux/sepdebugsymlink/TestTargetSymbolsSepDebugSymlink.py b/packages/Python/lldbsuite/test/linux/sepdebugsymlink/TestTargetSymbolsSepDebugSymlink.py
new file mode 100644
index 000000000000..12506811c5e2
--- /dev/null
+++ b/packages/Python/lldbsuite/test/linux/sepdebugsymlink/TestTargetSymbolsSepDebugSymlink.py
@@ -0,0 +1,23 @@
+""" Testing separate debug info loading for base binary with a symlink. """
+import os
+import time
+import lldb
+import sys
+from lldbsuite.test.decorators import *
+from lldbsuite.test.lldbtest import *
+from lldbsuite.test import lldbutil
+
+
+class TestTargetSymbolsSepDebugSymlink(TestBase):
+
+ mydir = TestBase.compute_mydir(__file__)
+
+ @no_debug_info_test # Prevent the genaration of the dwarf version of this test
+ @skipUnlessPlatform(['linux'])
+ @skipIf(hostoslist=["windows"])
+ @skipIfRemote # llvm.org/pr36237
+ def test_target_symbols_sepdebug_symlink_case(self):
+ self.build()
+ exe = self.getBuildArtifact("dirsymlink/stripped.symlink")
+
+ lldbutil.run_to_name_breakpoint(self, "main", exe_name = exe)
diff --git a/packages/Python/lldbsuite/test/linux/sepdebugsymlink/main.c b/packages/Python/lldbsuite/test/linux/sepdebugsymlink/main.c
new file mode 100644
index 000000000000..4cce7f667ff7
--- /dev/null
+++ b/packages/Python/lldbsuite/test/linux/sepdebugsymlink/main.c
@@ -0,0 +1,3 @@
+int main() {
+ return 0;
+}