Debian Bug report logs -
#882252
rpm stops build on warning "Invalid version (double separator '-')", older version works
Reported by: Martin Petersen <mpetersen@samspade.de>
Date: Mon, 20 Nov 2017 18:12:25 UTC
Severity: normal
Tags: wontfix
Done: Martin Petersen <mpetersen@samspade.de>
Bug is archived. No further changes may be made.
Toggle useless messages
Report forwarded
to debian-bugs-dist@lists.debian.org, RPM packaging team <pkg-rpm-devel@lists.alioth.debian.org>:
Bug#882252; Package rpm.
(Mon, 20 Nov 2017 18:12:27 GMT) (full text, mbox, link).
Acknowledgement sent
to Martin Petersen <mpetersen@samspade.de>:
New Bug report received and forwarded. Copy sent to RPM packaging team <pkg-rpm-devel@lists.alioth.debian.org>.
(Mon, 20 Nov 2017 18:12:27 GMT) (full text, mbox, link).
Message #5 received at submit@bugs.debian.org (full text, mbox, reply):
Package: rpm
Version:
Dear Maintainer,
*** Reporter, please consider answering these questions, where
appropriate ***
* What led up to the situation?
Upgrading rpm from 4.12.0.2+dfsg1-2 to 4.14.0+dfsg1-2 in a apt-get
dist-upgrade run
* What exactly did you do (or not do) that was effective (or
ineffective)?
Trying to build zfsonlinux kernel modules for new linux-kernels.
Building this modules for quite some time no. Failing to build startet
about kernel version 4.14-0-0.
* What was the outcome of this action?
Converting rpm packages to deb packages failed with the error message
Invalid version (double separator '-')
* What outcome did you expect instead?
Build deb packages
rpm stops building a package on an error which should be treated as a
warning AFAIK. Downgrading to version 4.12.0.2+dfsg1-2 builds successfully.
make[1]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl“ wird verlassen
make pkg="spl-kmod" \
def='--define "_without_debug 1" --define "_without_debug_kmem 1"
--define "_without_debug_kmem_tracking 1" --define "kernels
4.14.0-0.slh.2-aptosid-amd64"' rpm-common
make[1]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl“ wird betreten
make[2]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl“ wird betreten
make[2]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl“ wird verlassen
Installing spl-kmod-0.7.0-21_ged19bcc.src.rpm
error: line 68: Invalid version (double separator '-'):
4.14.0-0.slh.2-aptosid-amd64: Provides:
kernel-modules-for-kernel = 4.14.0-0.slh.2-aptosid-amd64
Makefile:1074: die Regel für Ziel „rpm-common“ scheiterte
I am fileing this bug because You were so nice to react to a bug report
considering the same behaviour with rpm compiling code from the same
project (https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=740245).
Please brush me of if I am in the wrong.
Kind regards,
Martin
FYI: I clone the zfsonlinux git repos for zfs and spl (git clone
https://github.com/zfsonlinux/zfs && git clone
https://github.com/zfsonlinux/spl) and run "./autogen.sh && ./configure
&& make deb".
I do this for years and I believe this to be a regression.
Complete build messages:
sam@spade-ng /home/sam/zfsonlinux/src/git/spl $ make rpm
make pkg="spl-kmod" \
def='--define "build_src_rpm 1" ' srpm-common
make[1]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl“ wird betreten
make dist-gzip am__post_remove_distdir='@:'
make[2]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl“ wird betreten
if test -d "spl-0.7.0"; then find "spl-0.7.0" -type d ! -perm -200 -exec
chmod u+w {} ';' && rm -rf "spl-0.7.0" || { sleep 5 && rm -rf
"spl-0.7.0"; }; else :; fi
test -d "spl-0.7.0" || mkdir "spl-0.7.0"
(cd include && make top_distdir=../spl-0.7.0
distdir=../spl-0.7.0/include \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[3]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include“ wird
betreten
(cd fs && make top_distdir=../../spl-0.7.0
distdir=../../spl-0.7.0/include/fs \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/fs“ wird
betreten
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/fs“ wird
verlassen
(cd linux && make top_distdir=../../spl-0.7.0
distdir=../../spl-0.7.0/include/linux \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/linux“
wird betreten
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/linux“
wird verlassen
(cd rpc && make top_distdir=../../spl-0.7.0
distdir=../../spl-0.7.0/include/rpc \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/rpc“ wird
betreten
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/rpc“ wird
verlassen
(cd sharefs && make top_distdir=../../spl-0.7.0
distdir=../../spl-0.7.0/include/sharefs \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/sharefs“
wird betreten
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/sharefs“
wird verlassen
(cd sys && make top_distdir=../../spl-0.7.0
distdir=../../spl-0.7.0/include/sys \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/sys“ wird
betreten
(cd fm && make top_distdir=../../../spl-0.7.0
distdir=../../../spl-0.7.0/include/sys/fm \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[5]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/sys/fm“
wird betreten
make[5]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/sys/fm“
wird verlassen
(cd fs && make top_distdir=../../../spl-0.7.0
distdir=../../../spl-0.7.0/include/sys/fs \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[5]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/sys/fs“
wird betreten
make[5]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/sys/fs“
wird verlassen
(cd sysevent && make top_distdir=../../../spl-0.7.0
distdir=../../../spl-0.7.0/include/sys/sysevent \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[5]: Verzeichnis
„/home/sam/zfsonlinux/src/git/spl/include/sys/sysevent“ wird betreten
make[5]: Verzeichnis
„/home/sam/zfsonlinux/src/git/spl/include/sys/sysevent“ wird verlassen
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/sys“ wird
verlassen
(cd util && make top_distdir=../../spl-0.7.0
distdir=../../spl-0.7.0/include/util \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/util“
wird betreten
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/util“
wird verlassen
(cd vm && make top_distdir=../../spl-0.7.0
distdir=../../spl-0.7.0/include/vm \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/vm“ wird
betreten
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include/vm“ wird
verlassen
make[3]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/include“ wird
verlassen
(cd rpm && make top_distdir=../spl-0.7.0 distdir=../spl-0.7.0/rpm \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[3]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/rpm“ wird betreten
(cd generic && make top_distdir=../../spl-0.7.0
distdir=../../spl-0.7.0/rpm/generic \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/rpm/generic“ wird
betreten
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/rpm/generic“ wird
verlassen
(cd redhat && make top_distdir=../../spl-0.7.0
distdir=../../spl-0.7.0/rpm/redhat \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/rpm/redhat“ wird
betreten
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/rpm/redhat“ wird
verlassen
make[3]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/rpm“ wird verlassen
(cd lib && make top_distdir=../spl-0.7.0 distdir=../spl-0.7.0/lib \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[3]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/lib“ wird betreten
make[3]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/lib“ wird verlassen
(cd cmd && make top_distdir=../spl-0.7.0 distdir=../spl-0.7.0/cmd \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[3]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/cmd“ wird betreten
(cd splat && make top_distdir=../../spl-0.7.0
distdir=../../spl-0.7.0/cmd/splat \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/cmd/splat“ wird
betreten
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/cmd/splat“ wird
verlassen
(cd splslab && make top_distdir=../../spl-0.7.0
distdir=../../spl-0.7.0/cmd/splslab \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/cmd/splslab“ wird
betreten
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/cmd/splslab“ wird
verlassen
make[3]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/cmd“ wird verlassen
(cd man && make top_distdir=../spl-0.7.0 distdir=../spl-0.7.0/man \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[3]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/man“ wird betreten
(cd man1 && make top_distdir=../../spl-0.7.0
distdir=../../spl-0.7.0/man/man1 \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/man/man1“ wird
betreten
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/man/man1“ wird
verlassen
(cd man5 && make top_distdir=../../spl-0.7.0
distdir=../../spl-0.7.0/man/man5 \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/man/man5“ wird
betreten
make[4]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/man/man5“ wird
verlassen
make[3]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/man“ wird verlassen
(cd scripts && make top_distdir=../spl-0.7.0
distdir=../spl-0.7.0/scripts \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[3]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/scripts“ wird
betreten
make[3]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/scripts“ wird
verlassen
(cd module && make top_distdir=../spl-0.7.0 distdir=../spl-0.7.0/module \
am__remove_distdir=: am__skip_length_check=: am__skip_mode_fix=:
distdir)
make[3]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/module“ wird betreten
list='spl splat'; for subdir in $list; do \
(find ../module/$subdir -name '*.c' -o -name '*.h' |\
xargs /bin/cp -t $distdir/$subdir); \
done
make[3]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl/module“ wird
verlassen
make \
top_distdir="spl-0.7.0" distdir="spl-0.7.0" \
dist-hook
make[3]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl“ wird betreten
sed -i 's/Release:[[:print:]]*/Release: 21_ged19bcc/' \
spl-0.7.0/META
make[3]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl“ wird verlassen
test -n "" \
|| find "spl-0.7.0" -type d ! -perm -755 \
-exec chmod u+rwx,go+rx {} \; -o \
! -type d ! -perm -444 -links 1 -exec chmod a+r {} \; -o \
! -type d ! -perm -400 -exec chmod a+r {} \; -o \
! -type d ! -perm -444 -exec /bin/bash
/home/sam/zfsonlinux/src/git/spl/config/install-sh -c -m a+r {} {} \; \
|| chmod -R a+r "spl-0.7.0"
tardir=spl-0.7.0 && ${TAR-tar} chof - "$tardir" | eval GZIP= gzip --best
-c >spl-0.7.0.tar.gz
make[2]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl“ wird verlassen
if test -d "spl-0.7.0"; then find "spl-0.7.0" -type d ! -perm -200 -exec
chmod u+w {} ';' && rm -rf "spl-0.7.0" || { sleep 5 && rm -rf
"spl-0.7.0"; }; else :; fi
make[2]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl“ wird betreten
make[2]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl“ wird verlassen
Wrote: /tmp/spl-build-sam-0bX5a5qb/SRPMS/spl-kmod-0.7.0-21_ged19bcc.src.rpm
make[1]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl“ wird verlassen
make pkg="spl-kmod" \
def='--define "_without_debug 1" --define "_without_debug_kmem 1"
--define "_without_debug_kmem_tracking 1" --define "kernels
4.14.0-0.slh.2-aptosid-amd64"' rpm-common
make[1]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl“ wird betreten
make[2]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl“ wird betreten
make[2]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl“ wird verlassen
Installing spl-kmod-0.7.0-21_ged19bcc.src.rpm
error: line 68: Invalid version (double separator '-'):
4.14.0-0.slh.2-aptosid-amd64: Provides:
kernel-modules-for-kernel = 4.14.0-0.slh.2-aptosid-amd64
Makefile:1074: die Regel für Ziel „rpm-common“ scheiterte
make[1]: *** [rpm-common] Fehler 1
make[1]: Verzeichnis „/home/sam/zfsonlinux/src/git/spl“ wird verlassen
Makefile:1025: die Regel für Ziel „rpm-kmod“ scheiterte
make: *** [rpm-kmod] Fehler 2
Added tag(s) wontfix.
Request was from Michal Čihař <nijel@debian.org>
to control@bugs.debian.org.
(Mon, 20 Nov 2017 18:33:05 GMT) (full text, mbox, link).
Information forwarded
to debian-bugs-dist@lists.debian.org, RPM packaging team <pkg-rpm-devel@lists.alioth.debian.org>:
Bug#882252; Package rpm.
(Mon, 20 Nov 2017 18:57:08 GMT) (full text, mbox, link).
Acknowledgement sent
to Michal Čihař <michal@cihar.com>:
Extra info received and forwarded to list. Copy sent to RPM packaging team <pkg-rpm-devel@lists.alioth.debian.org>.
(Mon, 20 Nov 2017 18:57:09 GMT) (full text, mbox, link).
Message #12 received at 882252@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
Hello
On Mon, 2017-11-20 at 18:27 +0100, Martin Petersen wrote:
> Package: rpm
> Version:
>
> Dear Maintainer,
>
> *** Reporter, please consider answering these questions, where
> appropriate ***
>
> * What led up to the situation?
> Upgrading rpm from 4.12.0.2+dfsg1-2 to 4.14.0+dfsg1-2 in a apt-get
> dist-upgrade run
>
> * What exactly did you do (or not do) that was effective (or
> ineffective)?
> Trying to build zfsonlinux kernel modules for new linux-kernels.
> Building this modules for quite some time no. Failing to build
> startet
> about kernel version 4.14-0-0.
This is indeed invalid rpm version - is separator between version and
release and it is not allowed in either of them. It used to be warning
for ages and now is an error.
See upstream commit:
https://github.com/rpm-software-management/rpm/commit/5e94633660d0e2b97
0bf42f1dc24346ed46cae2e
If I'm reading it correctly, it should be possible to workaround this
by defining %_wrong_version_format_terminate_build to 0.
Anwyay, no, we're not going to diverge from upstream in this.
--
Michal Čihař | https://cihar.com/ | https://weblate.org/
[signature.asc (application/pgp-signature, inline)]
Information forwarded
to debian-bugs-dist@lists.debian.org, RPM packaging team <pkg-rpm-devel@lists.alioth.debian.org>:
Bug#882252; Package rpm.
(Mon, 20 Nov 2017 19:15:03 GMT) (full text, mbox, link).
Acknowledgement sent
to Martin Petersen <mpetersen@samspade.de>:
Extra info received and forwarded to list. Copy sent to RPM packaging team <pkg-rpm-devel@lists.alioth.debian.org>.
(Mon, 20 Nov 2017 19:15:03 GMT) (full text, mbox, link).
Message #17 received at 882252@bugs.debian.org (full text, mbox, reply):
[Message part 1 (text/plain, inline)]
Dear Michal,
thank you very much for this lightning fast response.
> This is indeed invalid rpm version - is separator between version and
> release and it is not allowed in either of them. It used to be warning
> for ages and now is an error.
This clears this up for me. I will take this bug to the 3rd party
developers whose code I wanted to compile.
Thank you again and excuse this wrongly filed bug, I should have checked
the recent status of this string handling by rpm considering warning/error.
Kind regards,
Martin
On 20.11.2017 19:29, Michal Čihař wrote:
> Hello
>
> On Mon, 2017-11-20 at 18:27 +0100, Martin Petersen wrote:
>> Package: rpm
>> Version:
>>
>> Dear Maintainer,
>>
>> *** Reporter, please consider answering these questions, where
>> appropriate ***
>>
>> * What led up to the situation?
>> Upgrading rpm from 4.12.0.2+dfsg1-2 to 4.14.0+dfsg1-2 in a apt-get
>> dist-upgrade run
>>
>> * What exactly did you do (or not do) that was effective (or
>> ineffective)?
>> Trying to build zfsonlinux kernel modules for new linux-kernels.
>> Building this modules for quite some time no. Failing to build
>> startet
>> about kernel version 4.14-0-0.
>
> This is indeed invalid rpm version - is separator between version and
> release and it is not allowed in either of them. It used to be warning
> for ages and now is an error.
>
> See upstream commit:
> https://github.com/rpm-software-management/rpm/commit/5e94633660d0e2b97
> 0bf42f1dc24346ed46cae2e
>
> If I'm reading it correctly, it should be possible to workaround this
> by defining %_wrong_version_format_terminate_build to 0.
>
> Anwyay, no, we're not going to diverge from upstream in this.
>
[signature.asc (application/pgp-signature, attachment)]
Reply sent
to Martin Petersen <mpetersen@samspade.de>:
You have taken responsibility.
(Wed, 22 Nov 2017 23:15:04 GMT) (full text, mbox, link).
Notification sent
to Martin Petersen <mpetersen@samspade.de>:
Bug acknowledged by developer.
(Wed, 22 Nov 2017 23:15:04 GMT) (full text, mbox, link).
Message #22 received at 882252-done@bugs.debian.org (full text, mbox, reply):
Wrongly filed.
Behavior of the rpm package is correct. Cause of my error lies elsewhere.
Regards,
Martin
Bug archived.
Request was from Debbugs Internal Request <owner@bugs.debian.org>
to internal_control@bugs.debian.org.
(Thu, 21 Dec 2017 07:27:34 GMT) (full text, mbox, link).
Send a report that this bug log contains spam.
Debian bug tracking system administrator <owner@bugs.debian.org>.
Last modified:
Sun Jul 2 08:23:19 2023;
Machine Name:
bembo
Debian Bug tracking system
Debbugs is free software and licensed under the terms of the GNU
Public License version 2. The current version can be obtained
from https://bugs.debian.org/debbugs-source/.
Copyright © 1999 Darren O. Benham,
1997,2003 nCipher Corporation Ltd,
1994-97 Ian Jackson,
2005-2017 Don Armstrong, and many other contributors.