NetBSD Problem Report #53836

From www@NetBSD.org  Sat Jan  5 11:36:45 2019
Return-Path: <www@NetBSD.org>
Received: from mail.netbsd.org (mail.netbsd.org [199.233.217.200])
	(using TLSv1.2 with cipher ECDHE-RSA-AES256-GCM-SHA384 (256/256 bits))
	(Client CN "mail.NetBSD.org", Issuer "mail.NetBSD.org CA" (not verified))
	by mollari.NetBSD.org (Postfix) with ESMTPS id 2F7047A18B
	for <gnats-bugs@gnats.NetBSD.org>; Sat,  5 Jan 2019 11:36:45 +0000 (UTC)
Message-Id: <20190105113644.53B3C7A221@mollari.NetBSD.org>
Date: Sat,  5 Jan 2019 11:36:44 +0000 (UTC)
From: stenstorpmc@gmail.com
Reply-To: stenstorpmc@gmail.com
To: gnats-bugs@NetBSD.org
Subject: termcap not working on ppc64 linux
X-Send-Pr-Version: www-1.0

>Number:         53836
>Category:       pkg
>Synopsis:       termcap not working on ppc64 linux
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    linux-pkg-people
>State:          open
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Sat Jan 05 11:40:00 +0000 2019
>Closed-Date:    
>Last-Modified:  Fri Nov 29 00:40:01 +0000 2019
>Originator:     Thomas Batten
>Release:        2018Q4
>Organization:
None
>Environment:
Linux PowerMacG5 4.19.0-1-powerpc64 #1 SMP Debian 4.19.13-1 (2018-12-30) ppc64 GNU/Linux
>Description:
In package makefiles that include '.include "../../mk/termcap.buildlink3.mk"' configure scripts say that the "C compiler cannot create executables".
In the config log at the compiler checking stage it states: "cc: Invalid transform rule: l:termcap:" causing the build to fail.

I have seen that this occurs on, at least, the readline and gettext-tools packages.

This also occurs on Debian Jessie on real hardware and in qemu
>How-To-Repeat:
(On ppc64(big endian) Linux)

cd /usr/pkgsrc/devel/readline
bmake

[build should fail with compiler cannot create executables]
>Fix:
In affected packages add an if statement specifying that:

if the operating system is linux and architecture is ppc64, .include "../../mk/curses.buildlink3.mk" else,  .include "../../mk/termcap.buildlink3.mk"

where applicable.

>Release-Note:

>Audit-Trail:

Responsible-Changed-From-To: pkg-manager->linux-pkg-people
Responsible-Changed-By: leot@NetBSD.org
Responsible-Changed-When: Sat, 05 Jan 2019 12:45:18 +0000
Responsible-Changed-Why:
(Debian) GNU/Linux problem


State-Changed-From-To: open->feedback
State-Changed-By: leot@NetBSD.org
State-Changed-When: Sat, 05 Jan 2019 12:45:18 +0000
State-Changed-Why:
Feedback/more information requested.


From: Leonardo Taccari <leot@NetBSD.org>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: pkg/53836: termcap not working on ppc64 linux
Date: Sat, 05 Jan 2019 13:43:38 +0100

 Hello Thomas,

 stenstorpmc@gmail.com writes:
 > [...]
 > >Description:
 > In package makefiles that include '.include
 > "../../mk/termcap.buildlink3.mk"' configure scripts say that the
 > "C compiler cannot create executables".
 > In the config log at the compiler checking stage it states: "cc:
 > Invalid transform rule: l:termcap:" causing the build to fail.
 > I have seen that this occurs on, at least, the readline and
 > gettext-tools packages.
 >
 > This also occurs on Debian Jessie on real hardware and in qemu
 > >How-To-Repeat:
 > (On ppc64(big endian) Linux)
 >
 > cd /usr/pkgsrc/devel/readline
 > bmake
 >
 > [build should fail with compiler cannot create executables]
 > [...]

 Not sure if it can be related but probably worth to double-check,
 have you installed the (Debian) packages suggested in
 pkgsrc/bootstrap/README.Linux?


 Thanks!

From: Thomas Batten <stenstorpmc@gmail.com>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: pkg/53836: termcap not working on ppc64 linux
Date: Sun, 06 Jan 2019 07:22:38 +1030

 Thanks for getting back,

 >  Not sure if it can be related but probably worth to double-check,
 >  have you installed the (Debian) packages suggested in
 >  pkgsrc/bootstrap/README.Linux?

 I double checked, turned out I didn't have zlib1g-dev and libudev-dev
 packages installed. However this did not seem to resolve the issue. The
 same error is still reporting even with different pkgsrc packages.

 It also seems like this problem has been encountered here: 
 https://mail-index.netbsd.org/pkgsrc-users/2018/01/05/msg026078.html
 with no resolution.

State-Changed-From-To: feedback->open
State-Changed-By: leot@NetBSD.org
State-Changed-When: Sat, 05 Jan 2019 20:59:09 +0000
State-Changed-Why:
Feedback provided (at least all packages documented
in README.Linux were installed).


From: Thomas Batten <stenstorpmc@gmail.com>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: pkg/53836 (termcap not working on ppc64 linux)
Date: Sun, 06 Jan 2019 22:53:35 +1030

 On Sat, 2019-01-05 at 20:59 +0000, leot@NetBSD.org wrote:

 Seems as if this also happens on mips32 
 https://astr0baby.wordpress.com/2017/12/03/pkgsrc-on-ci20-creator-v2-board/

 I have found that setting TERMCAP_TYPE="curses" in the bmake command or
 in /usr/pkgsrc/mk/defaults/mk.conf is a functional workaround for this
 allowing affected packages to be built.

From: Dustin Scott <soaprailslider@yahoo.com>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: pkg/53836: termcap not working on ppc64 linux
Date: Thu, 28 Nov 2019 14:29:44 -0900

 Hi,

 Sorry if creating a zombie thread here, but after some tinkering I 
 believe I've found a work around.

 I'm using a customer Linux From Scratch build myself, but encountered 
 and resolved the issue.


 The issue comes from packages that attempt to use pkgsrc's internal 
 termcap definitions, to prevent circular references on ncurses. This 
 works fine for BSD distros, but on linux we probably already have 
 ncurses installed via outside methods in /usr/lib or /usr/local/lib, 
 unaffected by pkgsrc's versions.

 Additionally providing the override TERMCAP_TYPE="curses" Doesn't help 
 in the case that the installer is flagging for the internal TERMCAP_TYPE 
 as pkgsrc will override whatever you provide when the Makefile is ran.

 To resolve it for pkgsrc as a whole you can modify pkgsrc's defaults in:

 /usr/pkgsrc/mk/termcap.builtin.mk

 ~line 83 after the BUILTIN_LIB_FOUND.termlib if statements

 #OVERRIDING FOR LFS

 BUILTIN_LIBNAME.termcap=    curses


 and if your find is in /bin like mine probably run a "ln /bin/find 
 /usr/bin/find" (One of the Perl installers seems to hard code to the 
 /usr/bin/find location and will bomb)

 As for making PKGSRC work more by default, I'd have to think about how 
 to get the logic to detect a system ncurses version that won't be 
 affected by pkgsrc's version. I don't think it'd be too hard, but still 
 testing my quick modification of the file myself.

 I still need to test it from a clean pkgsrc tree myself. Hope this helps!

>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.45 2018/12/21 14:23:33 maya Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2017 The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.