Bug 246419 - security/nss: fix build on powerpc64 elfv1
Summary: security/nss: fix build on powerpc64 elfv1
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: powerpc Any
: --- Affects Many People
Assignee: freebsd-gecko (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2020-05-12 14:30 UTC by Piotr Kubaj
Modified: 2020-05-15 18:34 UTC (History)
2 users (show)

See Also:
bugzilla: maintainer-feedback? (gecko)
pkubaj: merge-quarterly?


Attachments
patch (1.25 KB, patch)
2020-05-12 14:30 UTC, Piotr Kubaj
no flags Details | Diff
v2 (1.25 KB, patch)
2020-05-12 15:56 UTC, Piotr Kubaj
no flags Details | Diff
v3 (3.80 KB, patch)
2020-05-12 18:23 UTC, Piotr Kubaj
jbeich: maintainer-approval+
Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Piotr Kubaj freebsd_committer 2020-05-12 14:30:23 UTC
Created attachment 214416 [details]
patch

Upstream PR: https://bugzilla.mozilla.org/show_bug.cgi?id=1635625

I can confirm that tests pass:
../../coreconf/arch.mk:150: CPU_ARCH is not x86_64, disabling -mavx2
../../coreconf/Werror.mk:92: Unable to find gcc 4.8 or greater, disabling -Werror
../../coreconf/arch.mk:150: CPU_ARCH is not x86_64, disabling -mavx2
../../coreconf/Werror.mk:92: Unable to find gcc 4.8 or greater, disabling -Werror
../../coreconf/arch.mk:150: CPU_ARCH is not x86_64, disabling -mavx2
../../coreconf/Werror.mk:92: Unable to find gcc 4.8 or greater, disabling -Werror
../../coreconf/arch.mk:150: CPU_ARCH is not x86_64, disabling -mavx2
../../coreconf/Werror.mk:92: Unable to find gcc 4.8 or greater, disabling -Werror
testdir is /usr/ports/security/nss/work/nss-3.52/tests_results/security
********************************************
   Platform: FreeBSD12.1_OPT.OBJ
   Results: talos.5
********************************************

init.sh init: Testing PATH .:/usr/ports/security/nss/work/nss-3.52/dist/FreeBSD12.1_OPT.OBJ/bin:/usr/ports/security/nss/work/nss-3.52/dist/FreeBSD12.1_OPT.OBJ/lib:/bin:/usr/bin:/sbin:/usr/sbin:/usr/local/sbin:/usr/local/bin:/root/bin against LIB /usr/ports/security/nss/work/nss-3.52/dist/FreeBSD12.1_OPT.OBJ/lib:
Running test cycle: STANDARD ----------------------
List of tests that will be executed: gtests
Running tests for gtests
TIMESTAMP gtests BEGIN: Tue May 12 16:19:14 CEST 2020
/usr/ports/security/nss/work/nss-3.52/nss/tests/gtests
gtests: cryptohi_gtest
gtests.sh: cryptohi_gtest ===============================
/usr/ports/security/nss/work/nss-3.52/dist/FreeBSD12.1_OPT.OBJ/bin/certutil -N -d /usr/ports/security/nss/work/nss-3.52/tests_results/security/talos.5/gtests/cryptohi_gtest --empty-password
/usr/ports/security/nss/work/nss-3.52/dist/FreeBSD12.1_OPT.OBJ/bin/certutil -S -z ../tests_noise -d /usr/ports/security/nss/work/nss-3.52/tests_results/security/talos.5/gtests/cryptohi_gtest -n dummy -s CN=dummy -t ,, -x -m 1 -w -2 -v 120 -k ec -q nistp256 -Z SHA256 -1 -2


Generating key.  This may take a few moments...

                0 - Digital Signature
                1 - Non-repudiation
                2 - Key encipherment
                3 - Data encipherment
                4 - Key agreement
                5 - Cert signing key
                6 - CRL signing key
                Other to finish
 >              0 - Digital Signature
                1 - Non-repudiation
                2 - Key encipherment
                3 - Data encipherment
                4 - Key agreement
                5 - Cert signing key
                6 - CRL signing key
                Other to finish
 > Is this a critical extension [y/N]?
Is this a CA certificate [y/N]?
Enter the path length constraint, enter to skip [<0 for unlimited path]: > Is this a critical extension [y/N]?
gtests.sh: #1: create certificate: dummy p256 sign  - PASSED
/usr/ports/security/nss/work/nss-3.52/tests_results/security/talos.5/gtests/cryptohi_gtest /usr/ports/security/nss/work/nss-3.52/tests_results/security/talos.5/gtests
executing cryptohi_gtest
Note: Google Test filter = *Hash*
[==========] Running 48 tests from 2 test cases.
[----------] Global test environment set-up.
[----------] 36 tests from SignParamsTestCases/SignParamsTest
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/0
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/0 (120 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/1
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/1 (149 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/2
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/2 (125 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/3
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/3 (228 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/4
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/4 (276 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/5
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/5 (164 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/6
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/6 (127 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/7
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/7 (112 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/8
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/8 (199 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/9
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/9 (98 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/10
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/10 (253 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/11
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/11 (131 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/12
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/12 (278 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/13
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/13 (139 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/14
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/14 (206 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/15
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/15 (197 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/16
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/16 (159 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/17
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/17 (99 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/18
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/18 (159 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/19
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/19 (87 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/20
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/20 (114 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/21
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/21 (100 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/22
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/22 (200 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/23
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/23 (307 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/24
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/24 (158 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/25
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/25 (159 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/26
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/26 (111 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/27
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/27 (118 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/28
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/28 (153 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/29
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/29 (187 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/30
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/30 (111 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/31
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/31 (122 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/32
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/32 (124 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/33
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/33 (179 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/34
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/34 (201 ms)
[ RUN      ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/35
[       OK ] SignParamsTestCases/SignParamsTest.CreateRsaPssWithInvalidHashAlg/35 (164 ms)
[----------] 36 tests from SignParamsTestCases/SignParamsTest (6176 ms total)

[----------] 12 tests from SignParamsSourceTestCases/SignParamsSourceTest
[ RUN      ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithInvalidHashAlg/0
[       OK ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithInvalidHashAlg/0 (364 ms)
[ RUN      ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithInvalidHashAlg/1
[       OK ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithInvalidHashAlg/1 (136 ms)
[ RUN      ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithInvalidHashAlg/2
[       OK ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithInvalidHashAlg/2 (131 ms)
[ RUN      ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithInvalidHashAlg/3
[       OK ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithInvalidHashAlg/3 (268 ms)
[ RUN      ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithInvalidHashAlg/4
[       OK ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithInvalidHashAlg/4 (182 ms)
[ RUN      ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithInvalidHashAlg/5
[       OK ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithInvalidHashAlg/5 (172 ms)
[ RUN      ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithHashMismatch/0
[       OK ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithHashMismatch/0 (240 ms)
[ RUN      ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithHashMismatch/1
[       OK ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithHashMismatch/1 (93 ms)
[ RUN      ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithHashMismatch/2
[       OK ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithHashMismatch/2 (116 ms)
[ RUN      ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithHashMismatch/3
[       OK ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithHashMismatch/3 (154 ms)
[ RUN      ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithHashMismatch/4
[       OK ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithHashMismatch/4 (100 ms)
[ RUN      ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithHashMismatch/5
[       OK ] SignParamsSourceTestCases/SignParamsSourceTest.CreateRsaPssWithHashMismatch/5 (198 ms)
[----------] 12 tests from SignParamsSourceTestCases/SignParamsSourceTest (2350 ms total)

[----------] Global test environment tear-down
[==========] 48 tests from 2 test cases ran. (8528 ms total)
[  PASSED  ] 48 tests.
gtests.sh: #2: cryptohi_gtest run successfully  - PASSED
test output dir: /usr/ports/security/nss/work/nss-3.52/tests_results/security/talos.5/gtests/cryptohi_gtest/report.xml
executing sed to parse the xml report
processing the parsed report
gtests.sh: #3: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/0 (0, 0)' - PASSED
gtests.sh: #4: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/1 (0, 4)' - PASSED
gtests.sh: #5: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/2 (0, 309)' - PASSED
gtests.sh: #6: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/3 (0, 191)' - PASSED
gtests.sh: #7: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/4 (0, 192)' - PASSED
gtests.sh: #8: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/5 (0, 193)' - PASSED
gtests.sh: #9: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/6 (4, 0)' - PASSED
gtests.sh: #10: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/7 (4, 4)' - PASSED
gtests.sh: #11: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/8 (4, 309)' - PASSED
gtests.sh: #12: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/9 (4, 191)' - PASSED
gtests.sh: #13: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/10 (4, 192)' - PASSED
gtests.sh: #14: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/11 (4, 193)' - PASSED
gtests.sh: #15: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/12 (309, 0)' - PASSED
gtests.sh: #16: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/13 (309, 4)' - PASSED
gtests.sh: #17: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/14 (309, 309)' - PASSED
gtests.sh: #18: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/15 (309, 191)' - PASSED
gtests.sh: #19: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/16 (309, 192)' - PASSED
gtests.sh: #20: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/17 (309, 193)' - PASSED
gtests.sh: #21: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/18 (191, 0)' - PASSED
gtests.sh: #22: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/19 (191, 4)' - PASSED
gtests.sh: #23: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/20 (191, 309)' - PASSED
gtests.sh: #24: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/21 (191, 191)' - PASSED
gtests.sh: #25: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/22 (191, 192)' - PASSED
gtests.sh: #26: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/23 (191, 193)' - PASSED
gtests.sh: #27: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/24 (192, 0)' - PASSED
gtests.sh: #28: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/25 (192, 4)' - PASSED
gtests.sh: #29: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/26 (192, 309)' - PASSED
gtests.sh: #30: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/27 (192, 191)' - PASSED
gtests.sh: #31: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/28 (192, 192)' - PASSED
gtests.sh: #32: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/29 (192, 193)' - PASSED
gtests.sh: #33: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/30 (193, 0)' - PASSED
gtests.sh: #34: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/31 (193, 4)' - PASSED
gtests.sh: #35: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/32 (193, 309)' - PASSED
gtests.sh: #36: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/33 (193, 191)' - PASSED
gtests.sh: #37: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/34 (193, 192)' - PASSED
gtests.sh: #38: 'SignParamsTestCases/SignParamsTest: CreateRsaPssWithInvalidHashAlg/35 (193, 193)' - PASSED
gtests.sh: #39: 'SignParamsSourceTestCases/SignParamsSourceTest: CreateRsaPssWithInvalidHashAlg/0 0' - PASSED
gtests.sh: #40: 'SignParamsSourceTestCases/SignParamsSourceTest: CreateRsaPssWithInvalidHashAlg/1 4' - PASSED
gtests.sh: #41: 'SignParamsSourceTestCases/SignParamsSourceTest: CreateRsaPssWithInvalidHashAlg/2 309' - PASSED
gtests.sh: #42: 'SignParamsSourceTestCases/SignParamsSourceTest: CreateRsaPssWithInvalidHashAlg/3 191' - PASSED
gtests.sh: #43: 'SignParamsSourceTestCases/SignParamsSourceTest: CreateRsaPssWithInvalidHashAlg/4 192' - PASSED
gtests.sh: #44: 'SignParamsSourceTestCases/SignParamsSourceTest: CreateRsaPssWithInvalidHashAlg/5 193' - PASSED
gtests.sh: #45: 'SignParamsSourceTestCases/SignParamsSourceTest: CreateRsaPssWithHashMismatch/0 0' - PASSED
gtests.sh: #46: 'SignParamsSourceTestCases/SignParamsSourceTest: CreateRsaPssWithHashMismatch/1 4' - PASSED
gtests.sh: #47: 'SignParamsSourceTestCases/SignParamsSourceTest: CreateRsaPssWithHashMismatch/2 309' - PASSED
gtests.sh: #48: 'SignParamsSourceTestCases/SignParamsSourceTest: CreateRsaPssWithHashMismatch/3 191' - PASSED
gtests.sh: #49: 'SignParamsSourceTestCases/SignParamsSourceTest: CreateRsaPssWithHashMismatch/4 192' - PASSED
gtests.sh: #50: 'SignParamsSourceTestCases/SignParamsSourceTest: CreateRsaPssWithHashMismatch/5 193' - PASSED
/usr/ports/security/nss/work/nss-3.52/tests_results/security/talos.5/gtests
TIMESTAMP gtests END: Tue May 12 16:19:29 CEST 2020

SUMMARY:
========
NSS variables:
--------------
HOST=talos
DOMSUF=anongoth.pl
BUILD_OPT=1
USE_64=
NSS_CYCLES="standard"
NSS_TESTS="gtests"
NSS_SSL_TESTS="crl iopr policy normal_normal"
NSS_SSL_RUN="cov auth stapling signed_cert_timestamps scheme"
NSS_AIA_PATH=
NSS_AIA_HTTP=
NSS_AIA_OCSP=
IOPR_HOSTADDR_LIST=
PKITS_DATA=
NSS_DISABLE_HW_AES=
NSS_DISABLE_PCLMUL=
NSS_DISABLE_AVX=
NSS_DISABLE_ARM_NEON=
NSS_DISABLE_SSSE3=

Tests summary:
--------------
Passed:             50
Failed:             0
Failed with core:   0
ASan failures:      0
Unknown status:     0









Please MFH that.
Comment 1 Jan Beich freebsd_committer 2020-05-12 15:12:42 UTC
Comment on attachment 214416 [details]
patch

> -.abiversion	2
> +.abiversion	1

Can't you omit .abiversion to let the assembler use whatever is default on the target architecture?
Comment 2 Piotr Kubaj freebsd_committer 2020-05-12 15:56:56 UTC
Created attachment 214418 [details]
v2

This indeed works as well and would actually be upstreamable.

Another issue is that sha512-p8.s is also compiled on 32-bit ppc and breaks there:
sha512-p8.s: Assembler messages:
sha512-p8.s:9: Error: unknown pseudo-op: `.localentry'

But that will require another fix.
Comment 3 Piotr Kubaj freebsd_committer 2020-05-12 18:23:10 UTC
Created attachment 214420 [details]
v3

More correct solution.

The previous patch worked, but sha512-p8 wasn't included in the final binary because USE_PPC_CRYPTO is disabled. sha512-p8 was just built, but not used earlier. This is why all tests passed.

The problem with it is that the assembly is tailored to little-endian and won't work on big-endian. However, there is a proper script to generate sha512-p8 for big-endian, both elfv1 and elfv2. There is also a variant for 32-bit powerpc. Ideally, this script should run always, but upstream seems to have forgotten that and just put the generated sha512-p8 to the source. This patch takes care of running this script.

Also, since USE_PPC_CRYPTO works on big-endian, put an option to enable that. It will use VSX, which is available on POWER8 and newer. I made it available on 32 bits as well, just in case someone on VSX-capable machine wants to run 32-bit chroot or jail.
Comment 4 Jan Beich freebsd_committer 2020-05-15 15:37:38 UTC
Comment on attachment 214420 [details]
v3

Looks OK.

> VSX_DESC=	Use VSX (POWER8 and newer)

Maybe reword from SSE_DESC e.g.,

 VSX_DESC=		Use VSX optimized routines (POWER8 or newer)
Comment 5 commit-hook freebsd_committer 2020-05-15 18:31:04 UTC
A commit references this bug:

Author: pkubaj
Date: Fri May 15 18:30:22 UTC 2020
New revision: 535312
URL: https://svnweb.freebsd.org/changeset/ports/535312

Log:
  security/nss: fix build on powerpc and powerpc64 with gcc

  PR:             246419
  Approved by:    jbeich (maintainer)
  MFH:            2020Q2 (fix build blanket)

Changes:
  head/security/nss/Makefile
  head/security/nss/files/powerpc-lib_freebl_scripts_gen.sh
  head/security/nss/files/powerpc64elfv1-lib_freebl_scripts_gen.sh
  head/security/nss/files/powerpc64elfv2-lib_freebl_scripts_gen.sh
Comment 6 commit-hook freebsd_committer 2020-05-15 18:32:11 UTC
A commit references this bug:

Author: pkubaj
Date: Fri May 15 18:31:17 UTC 2020
New revision: 535313
URL: https://svnweb.freebsd.org/changeset/ports/535313

Log:
  MFH: r535312

  security/nss: fix build on powerpc and powerpc64 with gcc

  PR:             246419
  Approved by:    jbeich (maintainer)

  Approved by:	portmgr (fix build blanket)

Changes:
_U  branches/2020Q2/
  branches/2020Q2/security/nss/Makefile
  branches/2020Q2/security/nss/files/powerpc-lib_freebl_scripts_gen.sh
  branches/2020Q2/security/nss/files/powerpc64elfv1-lib_freebl_scripts_gen.sh
  branches/2020Q2/security/nss/files/powerpc64elfv2-lib_freebl_scripts_gen.sh