Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!
Bug 719512 - mail-client/mailx-8.1.2.20180807 with musl : /.../tty.c:351: undefined reference to CCEQ
Summary: mail-client/mailx-8.1.2.20180807 with musl : /.../tty.c:351: undefined refer...
Status: RESOLVED FIXED
Alias: None
Product: Gentoo Linux
Classification: Unclassified
Component: Current packages (show other bugs)
Hardware: All Linux
: Normal normal (vote)
Assignee: No maintainer - Look at https://wiki.gentoo.org/wiki/Project:Proxy_Maintainers if you want to take care of it
URL:
Whiteboard:
Keywords: PATCH
Depends on:
Blocks: musl-porting
  Show dependency tree
 
Reported: 2020-04-26 08:45 UTC by Toralf Förster
Modified: 2022-06-24 03:43 UTC (History)
2 users (show)

See Also:
Package list:
Runtime testing required: ---


Attachments
emerge-info.txt (emerge-info.txt,14.59 KB, text/plain)
2020-04-26 08:45 UTC, Toralf Förster
Details
emerge-history.txt (emerge-history.txt,2.46 KB, text/plain)
2020-04-26 08:45 UTC, Toralf Förster
Details
environment (environment,50.86 KB, text/plain)
2020-04-26 08:45 UTC, Toralf Förster
Details
etc.portage.tbz2 (etc.portage.tbz2,10.10 KB, application/x-bzip)
2020-04-26 08:45 UTC, Toralf Förster
Details
mail-client:mailx-8.1.2.20180807:20200425-225502.log (mail-client:mailx-8.1.2.20180807:20200425-225502.log,8.74 KB, text/plain)
2020-04-26 08:45 UTC, Toralf Förster
Details
temp.tbz2 (temp.tbz2,14.73 KB, application/x-bzip)
2020-04-26 08:45 UTC, Toralf Förster
Details
adds the CCEQ macro definition to tty.c (mailx-8.1.2.20180807-CCEQ.patch,350 bytes, patch)
2022-06-23 15:22 UTC, CFuga
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Toralf Förster gentoo-dev 2020-04-26 08:45:18 UTC
/usr/lib/gcc/x86_64-gentoo-linux-musl/9.3.0/../../../../x86_64-gentoo-linux-musl/bin/ld: /usr/lib/gcc/x86_64-gentoo-linux-musl/9.3.0/../../../libc.so: warning: This function cannot be safely ported, use getline(3) instead, as it is supported by GNU and POSIX.1-2008.
/usr/lib/gcc/x86_64-gentoo-linux-musl/9.3.0/../../../../x86_64-gentoo-linux-musl/bin/ld: tty.o: in function tty_insert:
/var/tmp/portage/mail-client/mailx-8.1.2.20180807/work/bsd-mailx-8.1.2-0.20180807cvs.orig/tty.c:351: undefined reference to CCEQ
/usr/lib/gcc/x86_64-gentoo-linux-musl/9.3.0/../../../../x86_64-gentoo-linux-musl/bin/ld: /var/tmp/portage/mail-client/mailx-8.1.2.20180807/work/bsd-mailx-8.1.2-0.20180807cvs.orig/tty.c:356: undefined reference to CCEQ
/usr/lib/gcc/x86_64-gentoo-linux-musl/9.3.0/../../../../x86_64-gentoo-linux-musl/bin/ld: /var/tmp/portage/mail-client/mailx-8.1.2.20180807/work/bsd-mailx-8.1.2-0.20180807cvs.orig/tty.c:369: undefined reference to CCEQ
collect2: error: ld returned 1 exit status

  -------------------------------------------------------------------

  This is an unstable amd64 chroot image at a tinderbox (==build bot)
  name: 17.0_musl_hardened-20200425-233309

  -------------------------------------------------------------------

gcc-config -l:
 [1] x86_64-gentoo-linux-musl-9.3.0 *
Available Python interpreters, in order of preference:
  [1]   python3.7
  [2]   python3.6
  [3]   python2.7 (fallback)

  timestamp(s) of HEAD at this tinderbox image:
/var/db/repos/gentoo	Sat Apr 25 21:48:00 UTC 2020
/var/db/repos/musl	Sat Apr 25 04:44:36 UTC 2020

emerge -qpvO mail-client/mailx
[ebuild     U ] mail-client/mailx-8.1.2.20180807 [8.1.2.20160123]
Comment 1 Toralf Förster gentoo-dev 2020-04-26 08:45:21 UTC
Created attachment 634596 [details]
emerge-info.txt
Comment 2 Toralf Förster gentoo-dev 2020-04-26 08:45:25 UTC
Created attachment 634598 [details]
emerge-history.txt
Comment 3 Toralf Förster gentoo-dev 2020-04-26 08:45:27 UTC
Created attachment 634600 [details]
environment
Comment 4 Toralf Förster gentoo-dev 2020-04-26 08:45:31 UTC
Created attachment 634602 [details]
etc.portage.tbz2
Comment 5 Toralf Förster gentoo-dev 2020-04-26 08:45:34 UTC
Created attachment 634604 [details]
mail-client:mailx-8.1.2.20180807:20200425-225502.log
Comment 6 Toralf Förster gentoo-dev 2020-04-26 08:45:37 UTC
Created attachment 634606 [details]
temp.tbz2
Comment 7 Toralf Förster gentoo-dev 2020-04-26 14:26:54 UTC
FWIW the rbeakage was introduced by the last rev bump, meanign the -fno-common patch.
A (untested) fix might be:

- CCEQ(tio.c_cc[keys[i].tio], *buf))
+ tio.c_cc[keys[i].tio] == *buf &&
+ tio.c_cc[keys[i].tio] != _POSIX_VDISABLE)
Comment 8 Jeroen Roovers (RETIRED) gentoo-dev 2020-05-21 07:23:55 UTC
(In reply to Toralf Förster from comment #7)
> FWIW the rbeakage was introduced by the last rev bump, meanign the
> -fno-common patch.

Could you elaborate on that? I don't see how the missing macro definition could be introduced in a file that isn't touched at all by the -fno-common patch. As far as I can tell, the problem was either introduced by one of the Debian patches or it must have existed in the previous version as well.

> A (untested) fix might be:
> 
> - CCEQ(tio.c_cc[keys[i].tio], *buf))
> + tio.c_cc[keys[i].tio] == *buf &&
> + tio.c_cc[keys[i].tio] != _POSIX_VDISABLE)
Comment 9 Toralf Förster gentoo-dev 2020-05-21 07:26:43 UTC
Seems to be musl specific:

[11:34:03 pm] <+toralf> is bug 719512 musl specific or gcc-10 specific ?
[11:34:06 pm] <willikins> https://bugs.gentoo.org/719512 "mail-client/mailx-8.1.2.20180807 : /.../tty.c:351: undefined reference to CCEQ"; Gentoo Linux, Current packages; CONF; toralf:musl
[11:35:54 pm] <sam_c> musl if I recall right from when we last discussed
[11:36:16 pm] <sam_c> will checki n a bit if nobody else does
[11:41:05 pm] <+Anarchy> it is musl specific
[12:00:00 am] - {Day changed to Thursday, May 21, 2020}
[1:16:33 am] <veremitz> ah I Was gonna look into where CCEQ gets defined, but seems you guys got it :D
[1:21:31 am] <[Arfrever]> /usr/include/termios.h:# define CCEQ(val, c)    ((c) == (val) && (val) != _POSIX_VDISABLE)
[2:19:38 am] <veremitz> aha its one of those ..
Comment 10 Jeroen Roovers (RETIRED) gentoo-dev 2020-05-21 07:36:11 UTC
BSD libc and glibc define CCEQ in termios.h but musl does not.
Comment 11 Jeroen Roovers (RETIRED) gentoo-dev 2020-05-21 07:37:29 UTC
Adding that definition in tty.c would be trivial.
Comment 12 CFuga 2022-06-23 15:22:15 UTC
Created attachment 787109 [details, diff]
adds the CCEQ macro definition to tty.c

Macro definition copied from glibc /usr/include/termios.h
Comment 13 Larry the Git Cow gentoo-dev 2022-06-24 03:43:06 UTC
The bug has been closed via the following commit(s):

https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=5dd27f1032275822f8303e9c5f48919a7e80bd6f

commit 5dd27f1032275822f8303e9c5f48919a7e80bd6f
Author:     Sam James <sam@gentoo.org>
AuthorDate: 2022-06-24 01:58:55 +0000
Commit:     Sam James <sam@gentoo.org>
CommitDate: 2022-06-24 03:13:49 +0000

    mail-client/mailx: fix build on musl
    
    Thanks-to: CFuga <cfuga@cfuga.mx>
    Closes: https://bugs.gentoo.org/719512
    Signed-off-by: Sam James <sam@gentoo.org>

 .../mailx/files/mailx-8.1.2-20180807-musl-CCEQ.patch    | 17 +++++++++++++++++
 mail-client/mailx/mailx-8.1.2.20180807.ebuild           |  1 +
 2 files changed, 18 insertions(+)