NetBSD Problem Report #53923
From www@NetBSD.org Tue Jan 29 19:35:41 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 DE6937A1B1
for <gnats-bugs@gnats.NetBSD.org>; Tue, 29 Jan 2019 19:35:41 +0000 (UTC)
Message-Id: <20190129193539.C6CCC7A1EC@mollari.NetBSD.org>
Date: Tue, 29 Jan 2019 19:35:39 +0000 (UTC)
From: scole_mail@gmx.com
Reply-To: scole_mail@gmx.com
To: gnats-bugs@NetBSD.org
Subject: build.sh and MKLINT fails for 32 bit host/64 bit target
X-Send-Pr-Version: www-1.0
>Number: 53923
>Category: misc
>Synopsis: build.sh and MKLINT fails for 32 bit host/64 bit target
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: misc-bug-people
>State: closed
>Class: sw-bug
>Submitter-Id: net
>Arrival-Date: Tue Jan 29 19:40:00 +0000 2019
>Closed-Date: Thu Sep 17 20:23:05 +0000 2020
>Last-Modified: Thu Sep 17 20:23:05 +0000 2020
>Originator: scole_mail
>Release: 8.0 host/current target
>Organization:
none
>Environment:
NetBSD dstar 8.0_STABLE NetBSD 8.0_STABLE (GENERIC) #0: Thu Jan 3 13:28:10 PST 2019 scole@dstar:/home/scole/nbsd/cvs/8_0/obj/sys/arch/i386/compile/GENERIC i386
>Description:
Trying to build.sh with MKLINT and a 64 bit target on a 32 bit host fails:
...
dependall ===> lib/../crypto/external/bsd/openssl/lib
dependall ===> lib/../crypto/external/bsd/openssl/lib/libcrypto
# compile libcrypto/bn_asm.ln
CC=/home/scole/nbsd/cvs/src/obj/tooldir.NetBSD-8.0_STABLE-i386/bin/ia64--netbsd-gcc /home/scole/nbsd/cvs/src/obj/tooldir.NetBSD-8.0_STABLE-i386/bin/ia64--netbsd-lint -chapbxzgFS -D__int128='long long' -d /home/scole/nbsd/cvs/src/obj/destdir.ia64/usr/include -Dlibcrypto -I. -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/include -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/asn1 -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/evp -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/modes -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/../include -DOPENSSLDIR=\"/etc/openssl\" -DENGINESDIR=\"/usr/lib/openssl\" -DDSO_DLFCN -DHAVE_DLFCN_H -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn -i
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(197): warning: possible pointer alignment problem [135]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(197): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(197): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(197): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(197): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(197): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(197): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(197): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(197): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(197): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(197): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(197): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(197): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(197): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(207): warning: possible pointer alignment problem [135]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(207): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(207): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(207): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(207): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(207): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(207): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(207): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(207): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(207): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(207): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(207): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(207): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/lhash.h(207): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/err.h(217): warning: possible pointer alignment problem [135]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/err.h(217): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/err.h(217): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/err.h(217): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/err.h(217): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/err.h(217): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/err.h(217): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/err.h(217): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/err.h(217): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/err.h(217): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/err.h(217): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/err.h(217): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/err.h(217): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/openssl/err.h(217): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/internal/cryptlib.h(52): warning: possible pointer alignment problem [135]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/internal/cryptlib.h(52): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/internal/cryptlib.h(52): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/internal/cryptlib.h(52): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/internal/cryptlib.h(52): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/internal/cryptlib.h(52): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/internal/cryptlib.h(52): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/internal/cryptlib.h(52): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/internal/cryptlib.h(52): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/internal/cryptlib.h(52): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/internal/cryptlib.h(52): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/internal/cryptlib.h(52): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/internal/cryptlib.h(52): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include/internal/cryptlib.h(52): warning: pointer casts may be troublesome [247]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c(28): syntax error 'ret' [249]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c(28): warning: shift equal to size of object [267]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c(28): warning: expression has null effect [129]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c(29): syntax error 'ret' [249]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c(29): warning: shift equal to size of object [267]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c(29): warning: expression has null effect [129]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c(30): syntax error 'ret' [249]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c(30): warning: shift equal to size of object [267]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c(30): warning: expression has null effect [129]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c(31): syntax error 'ret' [249]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c(31): warning: shift equal to size of object [267]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c(31): warning: expression has null effect [129]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c(38): syntax error 'ret' [249]
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c(38): cannot recover from previous errors [224]
*** Failed target: bn_asm.ln
*** Failed command: CC=/home/scole/nbsd/cvs/src/obj/tooldir.NetBSD-8.0_STABLE-i386/bin/ia64--netbsd-gcc /home/scole/nbsd/cvs/src/obj/tooldir.NetBSD-8.0_STABLE-i386/bin/ia64--netbsd-lint -chapbxzgFS -D__int128='long long' -d /home/scole/nbsd/cvs/src/obj/destdir.ia64/usr/include -Dlibcrypto -I. -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/include -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/include -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/asn1 -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/evp -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/modes -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/../include -DOPENSSLDIR=\"/etc/openssl\" -DENGINESDIR=\"/usr/lib/openssl\" -DDSO_DLFCN -DHAVE_DLFCN_H -I/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/d
ist/crypto/bn -i /home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c
*** Error code 1
Stop.
nbmake[9]: stopped in /home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/lib/libcrypto
*** Failed target: dependall
*** Failed command: cd "/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/lib/libcrypto"; /home/scole/nbsd/cvs/src/obj/tooldir.NetBSD-8.0_STABLE-i386/bin/nbmake realall
*** Error code 1
This failed for me with an i386/host and both ia64/amd64 targets. The error
/home/scole/nbsd/cvs/src/crypto/external/bsd/openssl/dist/crypto/bn/bn_asm.c(28): syntax error 'ret' [249]
is caused by int128 & uint128 not being available on 32 bit hosts.
Mainly for my own future recollections, here is some info from web searching, not sure if it is completely accurate:
- GCC supports built-in __int128 and __uint128 types on 64-bit platforms
- Before version 4.6.0 they were named __int128_t and __uint128_t
- can view #defines in gcc with "gcc -dM -E -x c /dev/null"
- __SIZEOF_INT128__ would be defined if int128 is supported, so
#if defined(__SIZEOF_INT128__)
...
#endif
I included a patch below which allows the build to complete, but it is not correct. It looks like someone was already aware of the issue, but I didn't see an existing PR so I submitted this one.
Also, might want to revisit the xlint build workaround in http://gnats.netbsd.org/53710 if a real solution can be implemented.
>How-To-Repeat:
run build.sh with MKLINT=yes in mk.conf on 32 bit host cross-compiling 64 bit target
i386-host> env MAKECONF=mk.conf ./build.sh -j 6 -U -u -m amd64 -x -X ../xsrc release
>Fix:
This patch allows to the build to complete, but is not a real fix.
Summary of changes: (A/? = New, R/D = Removed, M = Modified)
=============================================================
M Makefile
Apply patch with "cd .../src/crypto/external/bsd/openssl/lib/libcrypto ; patch -s -p0 < .../patchfile"
Index: Makefile
===================================================================
RCS file: /cvsroot/src/crypto/external/bsd/openssl/lib/libcrypto/Makefile,v
retrieving revision 1.19
diff -b -u -r1.19 Makefile
--- Makefile 6 Oct 2018 15:31:09 -0000 1.19
+++ Makefile 29 Jan 2019 19:10:02 -0000
@@ -33,6 +33,9 @@
# XXX Not yet.
LINTFLAGS+=-D__int128='long long'
+LINTFLAGS+=-D__uint128='unsigned long long'
+LINTFLAGS+=-D__int128_t='long long'
+LINTFLAGS+=-D__uint128_t='unsigned long long'
CPPFLAGS+= -Dlib${LIB} -I. -I${OPENSSLSRC}/crypto -I${OPENSSLSRC}
CPPFLAGS+= -I${OPENSSLSRC}/include -I${OPENSSLSRC}/crypto/include
>Release-Note:
>Audit-Trail:
State-Changed-From-To: open->closed
State-Changed-By: scole@NetBSD.org
State-Changed-When: Thu, 17 Sep 2020 13:23:05 -0700
State-Changed-Why:
stale bug, I don't run i386 anymore. If this is still an issue, open a new PR.
>Unformatted:
(Contact us)
$NetBSD: query-full-pr,v 1.46 2020/01/03 16:35:01 leot Exp $
$NetBSD: gnats_config.sh,v 1.9 2014/08/02 14:16:04 spz Exp $
Copyright © 1994-2020
The NetBSD Foundation, Inc. ALL RIGHTS RESERVED.