Your message dated Thu, 13 Sep 2018 12:35:30 +0000
with message-id <[email protected]>
and subject line Bug#908646: fixed in llvm-toolchain-6.0 1:6.0.1-8
has caused the Debian Bug report #908646,
regarding llvm-toolchain-7: Inverted logic for POLLY_ENABLE and OPENMP_ENABLE
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
908646: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=908646
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Source: llvm-toolchain-7
Version: 1:7~+rc3-1
Severity: normal
Hello!
The logic used for toggling polly and openmp in the debian/rules
file is inverted. It's currently using the Makefile "filter-out"
function which I actually never noticed before:
ifeq (,$(filter-out $(DEB_HOST_ARCH), powerpc powerpcspe s390x))
POLLY_ENABLE=no
endif
From the GNU Make documentation [1].
"$(filter-out pattern…,text)"
"Returns all whitespace-separated words in text that do not match any
of the pattern words, removing the words that do match one or more.
This is the exact opposite of the filter function."
This means, that in our case above, "filter-out" will just remove
any strings matching "DEB_HOST_ARCH" in "powerpc powerpcpe s390x"
and then compare the resulting string with an empty string. So,
for example, if "DEB_HOST_ARCH" is "powerpc", the right string
will be reduced to "powerpcspe s390x" and then compared with
an empty string which will fail.
Thus, the ifeq-clause will never be true and POLLY_ENABLE will
never be disabled for the affected architectures. The same
applies to what is used for OPENMP_ENABLE.
If I replace "ifeq" with "ifneq" and "filter-out" with "filter",
the code works as intended and llvm-toolchain-6.0 builds fine for
on powerpc except that the dh_install step fails because of missing
cmake files:
dh_install --fail-missing
dh_install: Please use dh_missing --list-missing/--fail-missing instead
dh_install: This feature will be removed in compat 12.
dh_install: Cannot find (any matches for)
"usr/lib/llvm-6.0/lib/cmake/polly/*.cmake" (tried in ., debian/tmp)
dh_install: libclang-common-6.0-dev missing files:
usr/lib/llvm-6.0/lib/cmake/polly/*.cmake
dh_install: missing files, aborting
make[1]: *** [debian/rules:520: override_dh_install] Error 25
make[1]: Leaving directory '/<<PKGBUILDDIR>>'
make: *** [debian/rules:180: binary-arch] Error 2
dpkg-buildpackage: error: fakeroot debian/rules binary-arch subprocess returned
exit status 2
However, we would just have to adjust the corresponding install.in file
here to fix this issue. The behavior is the same with s390x.
I suggest the following patch for llvm-toolchain-7:
--- debian/rules.orig 2018-09-07 14:37:18.000000000 +0200
+++ debian/rules 2018-09-11 11:30:33.166678712 +0200
@@ -107,13 +107,13 @@
# Enable polly (or not)
POLLY_ENABLE=yes
-ifeq (,$(filter-out $(DEB_HOST_ARCH), powerpc powerpcspe s390x))
+ifneq (,$(filter $(DEB_HOST_ARCH), powerpc powerpcspe s390x))
POLLY_ENABLE=no
endif
# Enable openmp (or not)
OPENMP_ENABLE=yes
-ifeq (,$(filter-out $(DEB_HOST_ARCH), powerpc powerpcspe riscv64 sparc64
s390x))
+ifneq (,$(filter $(DEB_HOST_ARCH), powerpc powerpcspe riscv64 sparc64 s390x))
OPENMP_ENABLE=no
endif
And the same patch for llvm-toolchain-6.0 with the openmp
hunk removed.
Plus, something figured out for install.in. Probably some sed
magic in debian/rules.
Adrian
> [1] https://www.gnu.org/software/make/manual/html_node/Text-Functions.html
--
.''`. John Paul Adrian Glaubitz
: :' : Debian Developer - [email protected]
`. `' Freie Universitaet Berlin - [email protected]
`- GPG: 62FF 8A75 84E0 2956 9546 0006 7426 3B37 F5B5 F913
--- End Message ---
--- Begin Message ---
Source: llvm-toolchain-6.0
Source-Version: 1:6.0.1-8
We believe that the bug you reported is fixed in the latest version of
llvm-toolchain-6.0, which is due to be installed in the Debian FTP archive.
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
John Paul Adrian Glaubitz <[email protected]> (supplier of updated
llvm-toolchain-6.0 package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Format: 1.8
Date: Wed, 12 Sep 2018 10:48:35 +0200
Source: llvm-toolchain-6.0
Binary: clang-6.0 clang-tools-6.0 clang-format-6.0 clang-tidy-6.0 clang-6.0-doc
libclang1-6.0 libclang-6.0-dev libclang-common-6.0-dev libfuzzer-6.0-dev
python-clang-6.0 clang-6.0-examples libllvm6.0 llvm-6.0 llvm-6.0-runtime
llvm-6.0-dev llvm-6.0-tools llvm-6.0-doc llvm-6.0-examples lld-6.0 liblld-6.0
liblld-6.0-dev lldb-6.0 liblldb-6.0 python-lldb-6.0 liblldb-6.0-dev
Architecture: source
Version: 1:6.0.1-8
Distribution: unstable
Urgency: medium
Maintainer: LLVM Packaging Team <[email protected]>
Changed-By: John Paul Adrian Glaubitz <[email protected]>
Description:
clang-6.0 - C, C++ and Objective-C compiler
clang-6.0-doc - C, C++ and Objective-C compiler - Documentation
clang-6.0-examples - Clang examples
clang-format-6.0 - Tool to format C/C++/Obj-C code
clang-tidy-6.0 - clang-based C++ linter tool
clang-tools-6.0 - clang-based tools for C/C++ developments
libclang-6.0-dev - clang library - Development package
libclang-common-6.0-dev - clang library - Common development package
libclang1-6.0 - C interface to the clang library
libfuzzer-6.0-dev - Library for coverage-guided fuzz testing
liblld-6.0 - LLVM-based linker, library
liblld-6.0-dev - LLVM-based linker, header files
liblldb-6.0 - Next generation, high-performance debugger, library
liblldb-6.0-dev - Next generation, high-performance debugger, header files
libllvm6.0 - Modular compiler and toolchain technologies, runtime library
lld-6.0 - LLVM-based linker
lldb-6.0 - Next generation, high-performance debugger
llvm-6.0 - Modular compiler and toolchain technologies
llvm-6.0-dev - Modular compiler and toolchain technologies, libraries and
header
llvm-6.0-doc - Modular compiler and toolchain technologies, documentation
llvm-6.0-examples - Modular compiler and toolchain technologies, examples
llvm-6.0-runtime - Modular compiler and toolchain technologies, IR interpreter
llvm-6.0-tools - Modular compiler and toolchain technologies, tools
python-clang-6.0 - Clang Python Bindings
python-lldb-6.0 - Next generation, high-performance debugger, python lib
Closes: 908646
Changes:
llvm-toolchain-6.0 (1:6.0.1-8) unstable; urgency=medium
.
[ John Paul Adrian Glaubitz ]
* Fix inverted logic in ifeq statement for POLLY_ENABLE (Closes: #908646)
.
[ Gianfranco Costamagna ]
* Fixup the polly installation failure where polly is not built
* Add s390x to polly architectures
* Fix typo in rules file
Checksums-Sha1:
bc07f96919559ec97538755b555fe7d2cc642fca 6628 llvm-toolchain-6.0_6.0.1-8.dsc
f19cbef63e3af79821579cdcc8d479d3722d3b56 101756
llvm-toolchain-6.0_6.0.1-8.debian.tar.xz
fe9ecfbc0cc3dfd9741aaf6bf208d6b86babf10a 20452
llvm-toolchain-6.0_6.0.1-8_amd64.buildinfo
Checksums-Sha256:
dd8386393973271ad3f5c937b57d0635ff37d3a45c7f2a3eaca4a8aa9468733e 6628
llvm-toolchain-6.0_6.0.1-8.dsc
982f88fc3e279d81ed4c5beae3d4d04044a543a1278656c2e5d1814d9bd7b4e0 101756
llvm-toolchain-6.0_6.0.1-8.debian.tar.xz
d9e9016848e12eb9426875dcb212b34b40786183076f3548e7233c472433d152 20452
llvm-toolchain-6.0_6.0.1-8_amd64.buildinfo
Files:
4169bc51a97349ca059f4b1f468a4a37 6628 devel optional
llvm-toolchain-6.0_6.0.1-8.dsc
fe1067c51447b2ec1c3dda72667d66eb 101756 devel optional
llvm-toolchain-6.0_6.0.1-8.debian.tar.xz
21cac530e8a6f4c615cb65ee2b388f91 20452 devel optional
llvm-toolchain-6.0_6.0.1-8_amd64.buildinfo
-----BEGIN PGP SIGNATURE-----
iQIzBAEBCAAdFiEEtg21mU05vsTRqVzPfmUo2nUvG+EFAluaVRkACgkQfmUo2nUv
G+Hqgg/9E5CR/+TW5p4eI5e4jNkNwuP753yZvfWM6I15V8FVPQ7fXyL2+Hh15DqQ
LPlJrWeiPZaxxt9Lvy5zVaoQypT8nSLZLtzWtPWPigb7SsD+n4M+PIeGYvbyvgET
UgXyKuEEQxtRsvi5hfZLHffzRxzRgWuPsoKiUIUkdXeyj4wSnnC7ZF082/e8XTSg
pRdduLRke46EdNDymRtCMByd54pDvn08+GjAHLbx20O+ahuHrDJ1TwiE0mlFptJs
UwJ490OOFT5yHbnl+NuzjuMkFIvoLE75TRw7/zNif3wiS5EekoGfdvcJ4UM0UMDC
nvNySdszzdwDyvQdMnD2/ZrqJTyotru62RKSd6el9ISnfLgE9w1wGkjV4FW00rJd
57AHRHlCwxyD27rlVANQEu20NswH0a3ChBHz0CyOf/ZUJd3aM4qWBgqA/MplubDb
xqaT2bBGwDug4cJDpzRsVObzXg5Vs0LiCceHGnwmMHTnl8Vr249mxsVay+uvcun8
/z7PYxyW2XhpKS0AX5rVm1DxkVkucRGLGtKhI/al8dxueS3sBR+xjL15YKNUjB09
Wwz6vGZ9HyXXi7GOi9VnyhUD/o2DSKuYlUQgjnnh1V4QB5C1/ECjWBc6hhaL/J8w
6bzz2tXZws309XcNnDefGq+Plh+7EtoyjXBdGRXFqN0rEMRCYnU=
=II7m
-----END PGP SIGNATURE-----
--- End Message ---