From b8546552ccc76a481bac7c0380804eeab18ce555 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Fri, 4 Jan 2019 16:00:51 +0100 Subject: [PATCH 1/6] llvm-7-examples: Force the same version of llvm-7-dev to mitigate a debci issue https://ci.debian.net/data/autopkgtest/unstable/amd64/l/llvm-toolchain-7/1635547/log.gz --- debian/changelog | 8 ++++++++ debian/control | 2 +- 2 files changed, 9 insertions(+), 1 deletion(-) diff --git a/debian/changelog b/debian/changelog index 1c4ff733..2f82333a 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,3 +1,11 @@ +llvm-toolchain-7 (1:7.0.1-5) unstable; urgency=medium + + * llvm-7-examples: Force the same version of llvm-7-dev to mitigate + a debci issue + https://ci.debian.net/data/autopkgtest/unstable/amd64/l/llvm-toolchain-7/1635547/log.gz + + -- Sylvestre Ledru Fri, 04 Jan 2019 16:00:41 +0100 + llvm-toolchain-7 (1:7.0.1-4) unstable; urgency=medium * Remove dbgsym packages from debci because of bug #917528 diff --git a/debian/control b/debian/control index a1baf8cd..5a66abd2 100644 --- a/debian/control +++ b/debian/control @@ -356,7 +356,7 @@ Description: Modular compiler and toolchain technologies, documentation Package: llvm-7-examples Section: doc Architecture: all -Depends: ${misc:Depends}, llvm-7-dev (>= ${source:Version}), llvm-7-dev (<< ${source:Version}+c~) +Depends: ${misc:Depends}, llvm-7-dev (= ${source:Version}), llvm-7-dev (<< ${source:Version}+c~) Description: Modular compiler and toolchain technologies, examples LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other From ee2b23114169d878d9a9f68284936514a644ef86 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Fri, 4 Jan 2019 16:11:18 +0100 Subject: [PATCH 2/6] Add 'Rules-Requires-Root: no' in debian/control --- debian/changelog | 1 + debian/control | 1 + 2 files changed, 2 insertions(+) diff --git a/debian/changelog b/debian/changelog index 2f82333a..bd6437dc 100644 --- a/debian/changelog +++ b/debian/changelog @@ -3,6 +3,7 @@ llvm-toolchain-7 (1:7.0.1-5) unstable; urgency=medium * llvm-7-examples: Force the same version of llvm-7-dev to mitigate a debci issue https://ci.debian.net/data/autopkgtest/unstable/amd64/l/llvm-toolchain-7/1635547/log.gz + * Add 'Rules-Requires-Root: no' in debian/control -- Sylvestre Ledru Fri, 04 Jan 2019 16:00:41 +0100 diff --git a/debian/control b/debian/control index 5a66abd2..9302d745 100644 --- a/debian/control +++ b/debian/control @@ -1,6 +1,7 @@ Source: llvm-toolchain-7 Section: devel Priority: optional +Rules-Requires-Root: no Maintainer: LLVM Packaging Team Uploaders: Sylvestre Ledru Build-Depends: debhelper (>= 9.0), cmake, chrpath, texinfo, sharutils, From 61d26018dd92d3584cbeab39a1f90ac763dd6d3b Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Fri, 4 Jan 2019 19:08:30 +0100 Subject: [PATCH 3/6] rebase of the patches --- .../D54584-powerpcspe-double-parameter.diff | 42 +++++++++---------- debian/patches/lldb-soname.diff | 18 ++++---- 2 files changed, 30 insertions(+), 30 deletions(-) diff --git a/debian/patches/D54584-powerpcspe-double-parameter.diff b/debian/patches/D54584-powerpcspe-double-parameter.diff index 8444d96e..d7d670a2 100644 --- a/debian/patches/D54584-powerpcspe-double-parameter.diff +++ b/debian/patches/D54584-powerpcspe-double-parameter.diff @@ -3,11 +3,11 @@ Author: Justin Hibbits Origin: https://reviews.llvm.org/D54583 Last-Update: 2018-12-04 -Index: llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCISelLowering.cpp +Index: llvm-toolchain-snapshot_8~svn350421/lib/Target/PowerPC/PPCISelLowering.cpp =================================================================== ---- llvm-toolchain-snapshot_8~svn349138.orig/lib/Target/PowerPC/PPCISelLowering.cpp -+++ llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCISelLowering.cpp -@@ -391,8 +391,16 @@ PPCTargetLowering::PPCTargetLowering(con +--- llvm-toolchain-snapshot_8~svn350421.orig/lib/Target/PowerPC/PPCISelLowering.cpp ++++ llvm-toolchain-snapshot_8~svn350421/lib/Target/PowerPC/PPCISelLowering.cpp +@@ -385,8 +385,16 @@ PPCTargetLowering::PPCTargetLowering(con } else { setOperationAction(ISD::BITCAST, MVT::f32, Expand); setOperationAction(ISD::BITCAST, MVT::i32, Expand); @@ -25,7 +25,7 @@ Index: llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCISelLowering.cp } // We cannot sextinreg(i1). Expand to shifts. -@@ -1351,6 +1359,9 @@ const char *PPCTargetLowering::getTarget +@@ -1366,6 +1374,9 @@ const char *PPCTargetLowering::getTarget case PPCISD::QVLFSb: return "PPCISD::QVLFSb"; case PPCISD::BUILD_FP128: return "PPCISD::BUILD_FP128"; case PPCISD::EXTSWSLI: return "PPCISD::EXTSWSLI"; @@ -35,7 +35,7 @@ Index: llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCISelLowering.cp } return nullptr; } -@@ -7859,6 +7870,15 @@ SDValue PPCTargetLowering::LowerBITCAST( +@@ -7886,6 +7897,15 @@ SDValue PPCTargetLowering::LowerBITCAST( SDLoc dl(Op); SDValue Op0 = Op->getOperand(0); @@ -51,7 +51,7 @@ Index: llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCISelLowering.cp if (!EnableQuadPrecision || (Op.getValueType() != MVT::f128 ) || (Op0.getOpcode() != ISD::BUILD_PAIR) || -@@ -7870,6 +7890,26 @@ SDValue PPCTargetLowering::LowerBITCAST( +@@ -7897,6 +7917,26 @@ SDValue PPCTargetLowering::LowerBITCAST( Op0.getOperand(1)); } @@ -78,7 +78,7 @@ Index: llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCISelLowering.cp // If this is a case we can't handle, return null and let the default // expansion code take care of it. If we CAN select this case, and if it // selects to a single instruction, return Op. Otherwise, if we can codegen -@@ -9643,6 +9683,8 @@ SDValue PPCTargetLowering::LowerOperatio +@@ -9680,6 +9720,8 @@ SDValue PPCTargetLowering::LowerOperatio return LowerBSWAP(Op, DAG); case ISD::ATOMIC_CMP_SWAP: return LowerATOMIC_CMP_SWAP(Op, DAG); @@ -87,10 +87,10 @@ Index: llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCISelLowering.cp } } -Index: llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCISelLowering.h +Index: llvm-toolchain-snapshot_8~svn350421/lib/Target/PowerPC/PPCISelLowering.h =================================================================== ---- llvm-toolchain-snapshot_8~svn349138.orig/lib/Target/PowerPC/PPCISelLowering.h -+++ llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCISelLowering.h +--- llvm-toolchain-snapshot_8~svn350421.orig/lib/Target/PowerPC/PPCISelLowering.h ++++ llvm-toolchain-snapshot_8~svn350421/lib/Target/PowerPC/PPCISelLowering.h @@ -196,6 +196,15 @@ namespace llvm { /// Direct move of 2 consective GPR to a VSX register. BUILD_FP128, @@ -107,7 +107,7 @@ Index: llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCISelLowering.h /// Extract a subvector from signed integer vector and convert to FP. /// It is primarily used to convert a (widened) illegal integer vector /// type to a legal floating point vector type. -@@ -1089,6 +1098,7 @@ namespace llvm { +@@ -1110,6 +1119,7 @@ namespace llvm { SDValue lowerEH_SJLJ_SETJMP(SDValue Op, SelectionDAG &DAG) const; SDValue lowerEH_SJLJ_LONGJMP(SDValue Op, SelectionDAG &DAG) const; SDValue LowerBITCAST(SDValue Op, SelectionDAG &DAG) const; @@ -115,10 +115,10 @@ Index: llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCISelLowering.h SDValue DAGCombineExtBoolTrunc(SDNode *N, DAGCombinerInfo &DCI) const; SDValue DAGCombineBuildVector(SDNode *N, DAGCombinerInfo &DCI) const; -Index: llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCInstrInfo.td +Index: llvm-toolchain-snapshot_8~svn350421/lib/Target/PowerPC/PPCInstrInfo.td =================================================================== ---- llvm-toolchain-snapshot_8~svn349138.orig/lib/Target/PowerPC/PPCInstrInfo.td -+++ llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCInstrInfo.td +--- llvm-toolchain-snapshot_8~svn350421.orig/lib/Target/PowerPC/PPCInstrInfo.td ++++ llvm-toolchain-snapshot_8~svn350421/lib/Target/PowerPC/PPCInstrInfo.td @@ -231,6 +231,22 @@ def PPCbuild_fp128: SDNode<"PPCISD::BUIL SDTCisSameAs<1,2>]>, []>; @@ -142,10 +142,10 @@ Index: llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCInstrInfo.td // These are target-independent nodes, but have target-specific formats. def callseq_start : SDNode<"ISD::CALLSEQ_START", SDT_PPCCallSeqStart, [SDNPHasChain, SDNPOutGlue]>; -Index: llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCInstrSPE.td +Index: llvm-toolchain-snapshot_8~svn350421/lib/Target/PowerPC/PPCInstrSPE.td =================================================================== ---- llvm-toolchain-snapshot_8~svn349138.orig/lib/Target/PowerPC/PPCInstrSPE.td -+++ llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCInstrSPE.td +--- llvm-toolchain-snapshot_8~svn350421.orig/lib/Target/PowerPC/PPCInstrSPE.td ++++ llvm-toolchain-snapshot_8~svn350421/lib/Target/PowerPC/PPCInstrSPE.td @@ -512,7 +512,7 @@ def EVLWWSPLATX : EVXForm_1<792, (out def EVMERGEHI : EVXForm_1<556, (outs sperc:$RT), (ins sperc:$RA, sperc:$RB), @@ -171,10 +171,10 @@ Index: llvm-toolchain-snapshot_8~svn349138/lib/Target/PowerPC/PPCInstrSPE.td + (i32 (EXTRACT_SUBREG $rA, sub_32))>; + } -Index: llvm-toolchain-snapshot_8~svn349138/test/CodeGen/PowerPC/spe.ll +Index: llvm-toolchain-snapshot_8~svn350421/test/CodeGen/PowerPC/spe.ll =================================================================== ---- llvm-toolchain-snapshot_8~svn349138.orig/test/CodeGen/PowerPC/spe.ll -+++ llvm-toolchain-snapshot_8~svn349138/test/CodeGen/PowerPC/spe.ll +--- llvm-toolchain-snapshot_8~svn350421.orig/test/CodeGen/PowerPC/spe.ll ++++ llvm-toolchain-snapshot_8~svn350421/test/CodeGen/PowerPC/spe.ll @@ -472,10 +472,8 @@ entry: ; CHECK-LABEL: test_dselect ; CHECK: andi. diff --git a/debian/patches/lldb-soname.diff b/debian/patches/lldb-soname.diff index 042d9316..059f733e 100644 --- a/debian/patches/lldb-soname.diff +++ b/debian/patches/lldb-soname.diff @@ -2,13 +2,13 @@ lldb/source/API/CMakeLists.txt | 14 +++++++------- 1 file changed, 7 insertions(+), 7 deletions(-) -Index: llvm-toolchain-snapshot_8~svn349138/lldb/source/API/CMakeLists.txt +Index: llvm-toolchain-snapshot_8~svn350421/lldb/source/API/CMakeLists.txt =================================================================== ---- llvm-toolchain-snapshot_8~svn349138.orig/lldb/source/API/CMakeLists.txt -+++ llvm-toolchain-snapshot_8~svn349138/lldb/source/API/CMakeLists.txt -@@ -4,7 +4,12 @@ endif() - - get_property(LLDB_ALL_PLUGINS GLOBAL PROPERTY LLDB_PLUGINS) +--- llvm-toolchain-snapshot_8~svn350421.orig/lldb/source/API/CMakeLists.txt ++++ llvm-toolchain-snapshot_8~svn350421/lldb/source/API/CMakeLists.txt +@@ -9,7 +9,12 @@ if(NOT LLDB_DISABLE_PYTHON) + set(lldb_python_wrapper ${lldb_scripts_dir}/LLDBWrapPython.cpp) + endif() -add_lldb_library(liblldb SHARED +set(output_name lldb) @@ -20,7 +20,7 @@ Index: llvm-toolchain-snapshot_8~svn349138/lldb/source/API/CMakeLists.txt SBAddress.cpp SBAttachInfo.cpp SBBlock.cpp -@@ -113,7 +118,7 @@ endif () +@@ -120,7 +125,7 @@ endif() set_target_properties(liblldb PROPERTIES @@ -29,7 +29,7 @@ Index: llvm-toolchain-snapshot_8~svn349138/lldb/source/API/CMakeLists.txt ) if (NOT CMAKE_SYSTEM_NAME MATCHES "Windows") -@@ -137,11 +142,6 @@ if ( CMAKE_SYSTEM_NAME MATCHES "Windows" +@@ -144,11 +149,6 @@ if ( CMAKE_SYSTEM_NAME MATCHES "Windows" if (MSVC AND NOT LLDB_DISABLE_PYTHON) target_link_libraries(liblldb PRIVATE ${PYTHON_LIBRARY}) endif() @@ -40,4 +40,4 @@ Index: llvm-toolchain-snapshot_8~svn349138/lldb/source/API/CMakeLists.txt - ) endif() - if (LLDB_BUILD_FRAMEWORK) + if(LLDB_BUILD_FRAMEWORK) From a5911ca541609759c536652996e75535a78eef9a Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Sat, 5 Jan 2019 11:59:15 +0100 Subject: [PATCH 4/6] ls to see the perms of the files --- debian/rules | 4 +++- 1 file changed, 3 insertions(+), 1 deletion(-) diff --git a/debian/rules b/debian/rules index 192d135b..5e684b6d 100755 --- a/debian/rules +++ b/debian/rules @@ -704,7 +704,9 @@ ifeq ($(shell dpkg --compare-versions $(shell dpkg-query -W -f '$${Version}' bin if test ! -f $(CURDIR)/strip; then \ ln -s $(CURDIR)/debian/llvm-$(LLVM_VERSION)/usr/lib/llvm-$(LLVM_VERSION)/bin/llvm-strip $(CURDIR)/strip; \ fi - : # strip segfaults on libFuzzer.a and other libs + : # Debug to list the files + ls -al $(CURDIR)/debian/.debhelper/*/dbgsym-root/usr/lib/debug/.build-id/*/* || true + : # strip segfaults on libFuzzer.a and other libs. Use llvm-strip instead PATH=$(CURDIR)/:$$PATH LD_LIBRARY_PATH=$(DEB_INST)/usr/lib/llvm-$(LLVM_VERSION)/lib/:/usr/lib/*/libfakeroot dh_strip -a -v : # Remove the workaround rm $(CURDIR)/strip From e498c3cd6a02a091d372de27296b26cceb67ca03 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Sat, 5 Jan 2019 12:23:59 +0100 Subject: [PATCH 5/6] Revert "llvm-7-examples: Force the same version of llvm-7-dev to mitigate a debci issue https://ci.debian.net/data/autopkgtest/unstable/amd64/l/llvm-toolchain-7/1635547/log.gz" This reverts commit b8546552ccc76a481bac7c0380804eeab18ce555. --- debian/changelog | 3 --- debian/control | 2 +- 2 files changed, 1 insertion(+), 4 deletions(-) diff --git a/debian/changelog b/debian/changelog index bd6437dc..62f34034 100644 --- a/debian/changelog +++ b/debian/changelog @@ -1,8 +1,5 @@ llvm-toolchain-7 (1:7.0.1-5) unstable; urgency=medium - * llvm-7-examples: Force the same version of llvm-7-dev to mitigate - a debci issue - https://ci.debian.net/data/autopkgtest/unstable/amd64/l/llvm-toolchain-7/1635547/log.gz * Add 'Rules-Requires-Root: no' in debian/control -- Sylvestre Ledru Fri, 04 Jan 2019 16:00:41 +0100 diff --git a/debian/control b/debian/control index 9302d745..93e500b5 100644 --- a/debian/control +++ b/debian/control @@ -357,7 +357,7 @@ Description: Modular compiler and toolchain technologies, documentation Package: llvm-7-examples Section: doc Architecture: all -Depends: ${misc:Depends}, llvm-7-dev (= ${source:Version}), llvm-7-dev (<< ${source:Version}+c~) +Depends: ${misc:Depends}, llvm-7-dev (>= ${source:Version}), llvm-7-dev (<< ${source:Version}+c~) Description: Modular compiler and toolchain technologies, examples LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other From c5d36617993ef4f71ceb509908dac10f0f691442 Mon Sep 17 00:00:00 2001 From: Sylvestre Ledru Date: Mon, 7 Jan 2019 10:14:06 +0100 Subject: [PATCH 6/6] fix the dep for real --- debian/control | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/debian/control b/debian/control index cb887cc1..6eafb77e 100644 --- a/debian/control +++ b/debian/control @@ -357,7 +357,7 @@ Description: Modular compiler and toolchain technologies, documentation Package: llvm-8-examples Section: doc Architecture: all -Depends: ${misc:Depends}, llvm-8-dev (= ${source:Version}), llvm-8-dev (<< ${source:Version}+c~) +Depends: ${misc:Depends}, llvm-8-dev (>= ${source:Version}), llvm-8-dev (<< ${source:Version}+c~) Description: Modular compiler and toolchain technologies, examples LLVM is a collection of libraries and tools that make it easy to build compilers, optimizers, just-in-time code generators, and many other