NetBSD Problem Report #52983

From www@NetBSD.org  Tue Feb  6 22:47:32 2018
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 D17A27A1B9
	for <gnats-bugs@gnats.NetBSD.org>; Tue,  6 Feb 2018 22:47:32 +0000 (UTC)
Message-Id: <20180206224731.7F9457A22E@mollari.NetBSD.org>
Date: Tue,  6 Feb 2018 22:47:31 +0000 (UTC)
From: jdbaker@mylinuxisp.com
Reply-To: jdbaker@mylinuxisp.com
To: gnats-bugs@NetBSD.org
Subject: sysutils/memtestplus w/-O0 build fails on netbsd-7
X-Send-Pr-Version: www-1.0

>Number:         52983
>Category:       pkg
>Synopsis:       sysutils/memtestplus w/-O0 build fails on netbsd-7
>Confidential:   no
>Severity:       non-critical
>Priority:       medium
>Responsible:    pkg-manager
>State:          closed
>Class:          sw-bug
>Submitter-Id:   net
>Arrival-Date:   Tue Feb 06 22:50:00 +0000 2018
>Closed-Date:    Sun Jun 03 22:09:42 +0000 2018
>Last-Modified:  Sun Jun 03 22:09:42 +0000 2018
>Originator:     John D. Baker
>Release:        NetBSD-7.1_STABLE (i386, amd64)
>Organization:
>Environment:
NetBSD yggdrasil.technoskunk.fur 7.1_STABLE NetBSD 7.1_STABLE (YGGDRASIL) #126: Tue Jan 23 13:08:26 CST 2018  sysop@yggdrasil.technoskunk.fur:/r0/build/netbsd-7/obj/amd64/sys/arch/amd64/compile/YGGDRASIL amd64

NetBSD verthandi.technoskunk.fur 7.1_STABLE NetBSD 7.1_STABLE (VERTHANDI) #56: Sun Feb  4 23:18:23 CST 2018  sysop@x3650.technoskunk.fur:/r1/build/netbsd-7/obj/i386/sys/arch/i386/compile/VERTHANDI i386

>Description:
Using pkgsrc-2017Q4 with the relevant part of pullup pkgsrc-5698
applied manually and preserved as a local patch, "sysutils/memtestplus"
fails the build phase with:

[...]
ld --allow-multiple-definition --warn-constructors --warn-common -static -T memtest_shared.lds \
 -o memtest_shared head.o reloc.o main.o test.o init.o lib.o patn.o screen_buffer.o config.o cpuid.o linuxbios.o pci.o memsize.o spd.o error.o dmi.o controller.o smp.o vmem.o random.o && \
ld --allow-multiple-definition -shared -Bsymbolic -T memtest_shared.lds -o memtest_shared head.o reloc.o main.o test.o init.o lib.o patn.o screen_buffer.o config.o cpuid.o linuxbios.o pci.o memsize.o spd.o error.o dmi.o controller.o smp.o vmem.o random.o
init.o: In function `display_init':
init.c:(.text+0x376): undefined reference to `__outb'
init.c:(.text+0x38a): undefined reference to `__outb'
init.c:(.text+0x39e): undefined reference to `__outb'
init.c:(.text+0x3b2): undefined reference to `__outb'
init.o: In function `init':
init.c:(.text+0x527): undefined reference to `__outb'
init.o: In function `cpuspeed':
init.c:(.text+0x298e): undefined reference to `__inbc'
init.c:(.text+0x29a9): undefined reference to `__outbc'
init.c:(.text+0x29bd): undefined reference to `__outbc'
init.c:(.text+0x29d1): undefined reference to `__outbc'
init.c:(.text+0x29e5): undefined reference to `__outbc'
init.c:(.text+0x2a11): undefined reference to `__inbc'
lib.o: In function `reboot':
lib.c:(.text+0x47): undefined reference to `__outbc'
lib.c:(.text+0x5b): undefined reference to `__outb'
lib.c:(.text+0x6f): undefined reference to `__outb'
lib.c:(.text+0x83): undefined reference to `__outb'
lib.o: In function `get_key':
lib.c:(.text+0x16a1): undefined reference to `__inbc'
lib.c:(.text+0x16ed): undefined reference to `__inb'
lib.c:(.text+0x1724): undefined reference to `__inb'
lib.c:(.text+0x174e): undefined reference to `__inbc'
lib.o: In function `serial_echo_init':
lib.c:(.text+0x1de7): undefined reference to `__inb'
lib.c:(.text+0x1e26): undefined reference to `__outb'
lib.c:(.text+0x1e4a): undefined reference to `__inb'
lib.c:(.text+0x1e76): undefined reference to `__inb'
lib.c:(.text+0x1eb2): undefined reference to `__outb'
lib.c:(.text+0x1f00): undefined reference to `__outb'
lib.c:(.text+0x1f4a): undefined reference to `__outb'
lib.c:(.text+0x1f7a): undefined reference to `__outb'
lib.c:(.text+0x1fae): undefined reference to `__outb'
lib.o:lib.c:(.text+0x1fe1): more undefined references to `__outb' follow
lib.o: In function `serial_echo_init':
lib.c:(.text+0x2007): undefined reference to `__inb'
lib.c:(.text+0x2033): undefined reference to `__inb'
lib.c:(.text+0x2068): undefined reference to `__outb'
lib.o: In function `serial_echo_print':
lib.c:(.text+0x20f8): undefined reference to `__inb'
lib.c:(.text+0x2146): undefined reference to `__outb'
lib.c:(.text+0x2176): undefined reference to `__inb'
lib.c:(.text+0x21bd): undefined reference to `__outb'
pci.o: In function `pci_conf_read':
pci.c:(.text+0xb1): undefined reference to `__outl'
pci.c:(.text+0x102): undefined reference to `__outl'
pci.c:(.text+0x133): undefined reference to `__inb'
pci.c:(.text+0x160): undefined reference to `__inw'
pci.c:(.text+0x181): undefined reference to `__inl'
pci.c:(.text+0x1b3): undefined reference to `__outb'
pci.c:(.text+0x1cc): undefined reference to `__outb'
pci.c:(.text+0x204): undefined reference to `__inb'
pci.c:(.text+0x239): undefined reference to `__inw'
pci.c:(.text+0x26f): undefined reference to `__inl'
pci.c:(.text+0x292): undefined reference to `__outb'
pci.o: In function `pci_conf_write':
pci.c:(.text+0x351): undefined reference to `__outl'
pci.c:(.text+0x3a2): undefined reference to `__outl'
pci.c:(.text+0x3e0): undefined reference to `__outb'
pci.c:(.text+0x410): undefined reference to `__outw'
pci.c:(.text+0x42e): undefined reference to `__outl'
pci.c:(.text+0x45a): undefined reference to `__outb'
pci.c:(.text+0x473): undefined reference to `__outb'
pci.c:(.text+0x4b8): undefined reference to `__outb'
pci.c:(.text+0x4f0): undefined reference to `__outw'
pci.c:(.text+0x523): undefined reference to `__outl'
pci.c:(.text+0x540): undefined reference to `__outb'
pci.o: In function `pci_check_direct':
pci.c:(.text+0x60c): undefined reference to `__inb'
pci.c:(.text+0x624): undefined reference to `__outb'
pci.c:(.text+0x630): undefined reference to `__inl'
pci.c:(.text+0x648): undefined reference to `__outl'
pci.c:(.text+0x654): undefined reference to `__inl'
pci.c:(.text+0x678): undefined reference to `__outl'
pci.c:(.text+0x691): undefined reference to `__outb'
pci.c:(.text+0x6af): undefined reference to `__outl'
pci.c:(.text+0x6ca): undefined reference to `__outb'
pci.c:(.text+0x6de): undefined reference to `__outb'
pci.c:(.text+0x6f2): undefined reference to `__outb'
pci.c:(.text+0x6fe): undefined reference to `__inb'
pci.c:(.text+0x70e): undefined reference to `__inb'
pci.c:(.text+0x734): undefined reference to `__outb'
pci.c:(.text+0x754): undefined reference to `__outb'
spd.o: In function `sb800_get_smb':
spd.c:(.text+0x14b): undefined reference to `__outb'
spd.c:(.text+0x157): undefined reference to `__inb'
spd.c:(.text+0x174): undefined reference to `__outb'
spd.c:(.text+0x180): undefined reference to `__inb'
spd.o: In function `ich5_smb_read_byte':
spd.c:(.text+0x237): undefined reference to `__outb'
spd.c:(.text+0x258): undefined reference to `__outb'
spd.c:(.text+0x26f): undefined reference to `__inb'
spd.c:(.text+0x2a1): undefined reference to `__outb'
spd.c:(.text+0x2d1): undefined reference to `__outb'
spd.c:(.text+0x2f2): undefined reference to `__outb'
spd.c:(.text+0x375): undefined reference to `__inb'
spd.c:(.text+0x39e): undefined reference to `__inb'
spd.o: In function `us15w_smb_read_byte':
spd.c:(.text+0x4db): undefined reference to `__outb'
spd.c:(.text+0x501): undefined reference to `__outb'
spd.c:(.text+0x520): undefined reference to `__outb'
spd.c:(.text+0x550): undefined reference to `__outb'
spd.c:(.text+0x56e): undefined reference to `__outb'
spd.c:(.text+0x620): undefined reference to `__inb'
spd.c:(.text+0x647): undefined reference to `__inb'
spd.c:(.text+0x670): undefined reference to `__inb'
Makefile:29: recipe for target 'memtest_shared' failed
gmake: *** [memtest_shared] Error 1
*** Error code 2

Stop.
make[1]: stopped in /x/pkgsrc/sysutils/memtestplus
*** Error code 1

Stop.
make: stopped in /x/pkgsrc/sysutils/memtestplus


>How-To-Repeat:
Using pkgsrc-2017Q4 on netbsd-7 i386/amd64, do:

  $ cd .../pkgsrc/sysutils/memtestplus
  $ make patch

Apply the following patch (relative to ${WRKSRC}):

--- Makefile.orig       2018-02-01 08:26:53.815596421 -0600
+++ Makefile    2018-02-01 08:29:42.651132939 -0600
@@ -12,7 +12,7 @@ FDISK=/dev/fd0a
 AS=as -32
 CC=gcc

-CFLAGS= -Wall -march=i486 -m32 -O1 -fomit-frame-pointer -fno-builtin \
+CFLAGS= -Wall -march=i486 -m32 -O0 -fomit-frame-pointer -fno-builtin \
        -ffreestanding -fPIC $(SMP_FL) -fno-stack-protector 

 OBJS= head.o reloc.o main.o test.o init.o lib.o patn.o screen_buffer.o \


 $ make

The same procedure works fine on netbsd-8 and -current.
>Fix:

>Release-Note:

>Audit-Trail:
From: "Maya Rashish" <maya@netbsd.org>
To: gnats-bugs@gnats.NetBSD.org
Cc: 
Subject: PR/52983 CVS commit: pkgsrc/sysutils/memtestplus
Date: Wed, 7 Feb 2018 00:59:19 +0000

 Module Name:	pkgsrc
 Committed By:	maya
 Date:		Wed Feb  7 00:59:19 UTC 2018

 Modified Files:
 	pkgsrc/sysutils/memtestplus: Makefile
 Added Files:
 	pkgsrc/sysutils/memtestplus/files: io.h

 Log Message:
 memtestplus: replace macro insanity with expanded definitions
 ...from current linux.

 PR pkg/52983: sysutils/memtestplus w/-O0 build fails on netbsd-7

 PKGREVISION++


 To generate a diff of this commit:
 cvs rdiff -u -r1.25 -r1.26 pkgsrc/sysutils/memtestplus/Makefile
 cvs rdiff -u -r0 -r1.1 pkgsrc/sysutils/memtestplus/files/io.h

 Please note that diffs are not public domain; they are subject to the
 copyright notices on the relevant files.

From: "John D. Baker" <jdbaker@mylinuxisp.com>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: PR/52983 CVS commit: pkgsrc/sysutils/memtestplus
Date: Tue, 6 Feb 2018 22:42:51 -0600 (CST)

 On Wed, 7 Feb 2018, Maya Rashish wrote:

 >  Added Files:
 >  	pkgsrc/sysutils/memtestplus/files: io.h
 >  
 >  Log Message:
 >  memtestplus: replace macro insanity with expanded definitions
 >  ...from current linux.

 I massaged this into a local patch to preserve the integrity of my pkgsrc
 tree pending pull-up.  The build on NetBSD/i386-7.1_STABLE now succeeds.
 Run-time testing soon.

 -- 
 |/"\ John D. Baker, KN5UKS               NetBSD     Darwin/MacOS X
 |\ / jdbaker[snail]mylinuxisp[flyspeck]com    OpenBSD            FreeBSD
 | X  No HTML/proprietary data in email.   BSD just sits there and works!
 |/ \ GPGkeyID:  D703 4A7E 479F 63F8 D3F4  BD99 9572 8F23 E4AD 1645

From: "John D. Baker" <jdbaker@mylinuxisp.com>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: PR/52983 CVS commit: pkgsrc/sysutils/memtestplus
Date: Sat, 10 Feb 2018 16:18:00 -0600 (CST)

 On Wed, 7 Feb 2018, Maya Rashish wrote:

 >  Module Name:	pkgsrc
 >  Committed By:	maya
 >  Date:		Wed Feb  7 00:59:19 UTC 2018
 >  
 >  Modified Files:
 >  	pkgsrc/sysutils/memtestplus: Makefile
 >  Added Files:
 >  	pkgsrc/sysutils/memtestplus/files: io.h
 >  
 >  Log Message:
 >  memtestplus: replace macro insanity with expanded definitions
 >  ...from current linux.
 >  
 >  PR pkg/52983: sysutils/memtestplus w/-O0 build fails on netbsd-7
 >  
 >  PKGREVISION++

 Unfortunately this was not included in the recent pull-up to pkgsrc-2017Q4.
 Thus, the build again breaks on netbsd-7/amd64 (and i386).

 -- 
 |/"\ John D. Baker, KN5UKS               NetBSD     Darwin/MacOS X
 |\ / jdbaker[snail]mylinuxisp[flyspeck]com    OpenBSD            FreeBSD
 | X  No HTML/proprietary data in email.   BSD just sits there and works!
 |/ \ GPGkeyID:  D703 4A7E 479F 63F8 D3F4  BD99 9572 8F23 E4AD 1645

From: "John D. Baker" <jdbaker@mylinuxisp.com>
To: gnats-bugs@NetBSD.org
Cc: 
Subject: Re: PR/52983 CVS commit: pkgsrc/sysutils/memtestplus
Date: Fri, 16 Feb 2018 20:29:08 -0600 (CST)

 Second submission of this.

 I know this PR has been closed, but the fix was not included in the
 recent(-ish) pull-up to pkgsrc-2017Q4.  Thus, memtestplus will fail
 to build on netbsd-7.

 On Wed, 7 Feb 2018, Maya Rashish wrote:

 >  Module Name:	pkgsrc
 >  Committed By:	maya
 >  Date:		Wed Feb  7 00:59:19 UTC 2018
 >  
 >  Modified Files:
 >  	pkgsrc/sysutils/memtestplus: Makefile
 >  Added Files:
 >  	pkgsrc/sysutils/memtestplus/files: io.h
 >  
 >  Log Message:
 >  memtestplus: replace macro insanity with expanded definitions
 >  ...from current linux.
 >  
 >  PR pkg/52983: sysutils/memtestplus w/-O0 build fails on netbsd-7
 >  
 >  PKGREVISION++

 -- 
 |/"\ John D. Baker, KN5UKS               NetBSD     Darwin/MacOS X
 |\ / jdbaker[snail]mylinuxisp[flyspeck]com    OpenBSD            FreeBSD
 | X  No HTML/proprietary data in email.   BSD just sits there and works!
 |/ \ GPGkeyID:  D703 4A7E 479F 63F8 D3F4  BD99 9572 8F23 E4AD 1645

State-Changed-From-To: open->closed
State-Changed-By: maya@NetBSD.org
State-Changed-When: Sun, 03 Jun 2018 22:09:42 +0000
State-Changed-Why:
The remaining part of this bug was a missing pullup of the fix for netbsd-7. Whether I remembered to request another pullup or was too busy, pkgsrc-2018Q1 is out now, which has to include the fix.


>Unformatted:

NetBSD Home
NetBSD PR Database Search

(Contact us) $NetBSD: query-full-pr,v 1.43 2018/01/16 07:36:43 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.