Le Sat, Apr 16, 2022 at 10:11:11PM +0200, Volker Schlecht a écrit :
> Hi,
> 
> so here's my shot at the octave update. There are some remaining failing
> tests (they have been failing in 5.2.0 as well), that are due to Octave
> banking on some specific behaviors of GNU libstdc++ ... (un)fortunately
> these are all documented:
> 
> https://lists.gnu.org/archive/html/octave-maintainers/2018-04/msg00152.html
> 
> The most disturbing one is the difference in parsing imaginary parts of
> complex numbers, so using dlmread or str2double is badly broken on systems
> building with libc++:
> 
> https://bugs.llvm.org/show_bug.cgi?id=17782
> 
> That's not a regression vs. the 5.2.0 port - it's been in there as well.
> 
> I added a dependency on gtar, because Octave assumes either bsdtar or GNU
> tar, and enforcing GNU tar seemed to be the most straightforward way of
> addressing that.

thanks for all the details on the failing tests & the gtar thing, its
much clearer now.

i've tried your diff and it fails to package here, some tests are
apparently installed in the wrong dir ?

Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/@cell/tbcover.m
 does not exist
Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/@char/tbcover.m
 does not exist
Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/@double/tbcover.m
 does not exist
Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/@function_handle/tbcover.m
 does not exist
Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/@int16/tbcover.m
 does not exist
Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/@int32/tbcover.m
 does not exist
Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/@int64/tbcover.m
 does not exist
Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/@int8/tbcover.m
 does not exist
Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/@logical/tbcover.m
 does not exist
Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/@single/tbcover.m
 does not exist
Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/@struct/tbcover.m
 does not exist
Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/@uint16/tbcover.m
 does not exist
Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/@uint32/tbcover.m
 does not exist
Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/@uint64/tbcover.m
 does not exist
Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/@uint8/tbcover.m
 does not exist
Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/bc-overloads.tst
 does not exist
Error: 
/usr/obj/ports/octave-7.1.0/fake-amd64/usr/local/share/octave/7.1.0/etc/tests/fixed/build/pobj/octave-7.1.0/build-amd64/test/tbcover.m
 does not exist

> +# Some tests fail when a tilde doesn't expand to a home directory
> +TEST_ENV = HOME="${WRKSRC}"

tb@ commented on this and said this should be PORTHOME=${WRKSRC}, so i've done
that locally and it failed to package => the below chunk of PLIST is wrong :)

> +share/octave/${VERSION}/etc/tests/fixed/build/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@cell/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@cell/tbcover.m
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@char/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@char/tbcover.m
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@double/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@double/tbcover.m
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@function_handle/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@function_handle/tbcover.m
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@int16/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@int16/tbcover.m
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@int32/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@int32/tbcover.m
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@int64/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@int64/tbcover.m
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@int8/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@int8/tbcover.m
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@logical/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@logical/tbcover.m
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@single/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@single/tbcover.m
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@struct/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@struct/tbcover.m
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@uint16/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@uint16/tbcover.m
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@uint32/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@uint32/tbcover.m
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@uint64/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@uint64/tbcover.m
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@uint8/
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/@uint8/tbcover.m
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/bc-overloads.tst
> +share/octave/${VERSION}/etc/tests/fixed/build/pobj/octave-${VERSION}/build-amd64/test/tbcover.m

with PORTHOME=${WRKSRC}, make update-plist changes all those to
share/octave/${VERSION}/etc/tests/fixed/usr/obj/ports/octave-${VERSION}/build-amd64/test/

which is also deeply wrong :) those specific tests installation needs proper
fixing...

Landry

Reply via email to