Am 21.05.19 um 15:34 schrieb Martin Reindl:
> On Fri, May 17, 2019 at 06:45:29AM -0600, phess...@openbsd.org wrote:
>> http://build-failures.rhaalovely.net/aarch64/2019-05-13/math/py-scipy.log
> 
> Pick up gfortran for py-scipy on arm64.
> macppc and amd64 are still happy.
> 
> -m
> 
> 
> Index: Makefile
> ===================================================================
> RCS file: /cvs/ports/math/py-scipy/Makefile,v
> retrieving revision 1.40
> diff -u -p -u -p -r1.40 Makefile
> --- Makefile  1 May 2019 12:12:24 -0000       1.40
> +++ Makefile  21 May 2019 13:20:10 -0000
> @@ -5,7 +5,7 @@ COMMENT=              maths, science and engineering
>  MODPY_EGG_VERSION=   1.2.1
>  DISTNAME=            scipy-${MODPY_EGG_VERSION}
>  PKGNAME=             py-${DISTNAME}
> -REVISION=            2
> +REVISION=            3
>  
>  # XXX gcc 8 issue:
>  # ld: error: dfft_subr_6.f:(.debug_loc+0x2A7D): has non-ABS relocation 
> R_386_GOTOFF against symbol 'ntryh.3712'
> @@ -23,8 +23,6 @@ PERMIT_PACKAGE_CDROM=       Yes
>  
>  WANTLIB += ${MODFORTRAN_WANTLIB} ${MODPY_WANTLIB}
>  WANTLIB += blas lapack m pthread ${COMPILER_LIBCXX} util
> -
> -COMPILER =           base-clang ports-gcc base-gcc
>  
>  HOMEPAGE=            https://scipy.org/
>  
> 

Digging deeper here. This is my interpretation, please correct me if I
am wrong:

On aarch64, the current COMPILER line expands to:
- base-clang: no fortran suport, no compiler link is set up
- ports-gcc: aarch64 is not in GCC49_ARCHS, no compiler link is set up
(gcc4.9 had no fortran for aarch64 anyway)
- base-gcc: does not match on clang arch

math/R works around this by using flang, but ports-gcc has moved from
4.9 to 8 now and gained fortran support for aarch64. So really,
ports/infrastructure/mk should also transition from GCC49 to GCC8.

Here is a quick hack to see if I am moving in the right direction (at
least this makes py-scipy on aarch64 work without the above diff).

Opinions?

Index: arch-defines.mk
===================================================================
RCS file: /cvs/ports/infrastructure/mk/arch-defines.mk,v
retrieving revision 1.64
diff -u -p -r1.64 arch-defines.mk
--- arch-defines.mk     11 May 2019 12:05:46 -0000      1.64
+++ arch-defines.mk     27 May 2019 18:52:04 -0000
@@ -36,7 +36,7 @@ LLD_ARCHS = aarch64 amd64 arm i386
 # as well as available for PROPERTIES checks.
 LLVM_ARCHS = aarch64 amd64 arm i386 mips64 mips64el powerpc sparc64
 # arches where gcc4.9 exists.  To be used again for modules
-GCC49_ARCHS =alpha amd64 arm hppa i386 mips64 mips64el powerpc sparc64
+GCC49_ARCHS = aarch64 alpha amd64 arm hppa i386 mips64 mips64el powerpc
sparc64

 # arches where there is a C++11 compiler, either clang in base or gcc4
 CXX11_ARCHS = ${CLANG_ARCHS} ${GCC49_ARCHS}

Reply via email to