Bug 2257735 - atlas: Many C compatibility issues
Summary: atlas: Many C compatibility issues
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: atlas
Version: 40
Hardware: Unspecified
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Jakub Martisko
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
: 2260995 (view as bug list)
Depends On:
Blocks: PortingToModernCHelpNeeded F40FTBFS
TreeView+ depends on / blocked
 
Reported: 2024-01-10 16:22 UTC by Florian Weimer
Modified: 2025-01-08 02:01 UTC (History)
4 users (show)

Fixed In Version: atlas-3.10.3-28.fc42
Clone Of:
Environment:
Last Closed: 2025-01-08 02:01:55 UTC
Type: ---
Embargoed:


Attachments (Terms of Use)
Beginning of patch (2.68 KB, patch)
2024-01-10 16:23 UTC, Florian Weimer
no flags Details | Diff

Description Florian Weimer 2024-01-10 16:22:25 UTC
I tried porting this package to GCC 14, but I'm stuck on this error:


In file included from /builddir/build/BUILD/ATLAS/x86_64_base/..//src/testing/ATL_f77gelqf.c:31:
/builddir/build/BUILD/ATLAS/x86_64_base/..//src/testing/ATL_f77gelqf.c: In function ‘ATL_df77gelqf’:
/builddir/build/BUILD/ATLAS/x86_64_base/..//include/atlas_misc.h:127:16: error: implicit declaration of function ‘dgelqf_’
  127 |    #define PRE d
      |                ^
/builddir/build/BUILD/ATLAS/x86_64_base/..//include/atlas_misc.h:74:27: note: in definition of macro ‘my_join’
   74 | #define my_join(pre, nam) pre ## nam
      |                           ^~~
/builddir/build/BUILD/ATLAS/x86_64_base/..//src/testing/ATL_f77gelqf.c:40:21: note: in expansion of macro ‘Mjoin’
   40 |    #define F77GELQF Mjoin(PRE,gelqf_)
      |                     ^~~~~
/builddir/build/BUILD/ATLAS/x86_64_base/..//src/testing/ATL_f77gelqf.c:40:27: note: in expansion of macro ‘PRE’
   40 |    #define F77GELQF Mjoin(PRE,gelqf_)
      |                           ^~~
/builddir/build/BUILD/ATLAS/x86_64_base/..//src/testing/ATL_f77gelqf.c:58:4: note: in expansion of macro ‘F77GELQF’
   58 |    F77GELQF(&F77M, &F77N, A, &F77lda, tau, work, &F77lwork, &F77info);
      |    ^~~~~~~~

This requires creating a C prototype for a Fortran routine:

      SUBROUTINE DGELQF( M, N, A, LDA, TAU, WORK, LWORK, INFO )
      INTEGER            INFO, LDA, LWORK, M, N
      DOUBLE PRECISION A( LDA, * ), TAU( * ), WORK( * )

(ATLAS/interfaces/lapack/F77/src/dgelqf.f) I don't know enough Fortran to fix this.

I suppose we can add a build flags exemptions for this package.

Reproducible: Always

Comment 1 Florian Weimer 2024-01-10 16:23:02 UTC
Created attachment 2008130 [details]
Beginning of patch

Comment 2 Jakub Martisko 2024-01-12 12:47:40 UTC
Hello, I've actually reported this (and few other implicit declarations) a few years ago https://sourceforge.net/p/math-atlas/support-requests/1082/, however the upstream has been dead for a 5+ years now, so there's no chance this is getting addressed upstream:-/

Comment 3 Florian Weimer 2024-01-29 22:10:19 UTC
*** Bug 2260995 has been marked as a duplicate of this bug. ***

Comment 4 Aoife Moloney 2024-02-15 23:09:30 UTC
This bug appears to have been reported against 'rawhide' during the Fedora Linux 40 development cycle.
Changing version to 40.

Comment 5 Fedora Update System 2025-01-08 01:57:54 UTC
FEDORA-2025-a36637d6e2 (atlas-3.10.3-28.fc42) has been submitted as an update to Fedora 42.
https://bodhi.fedoraproject.org/updates/FEDORA-2025-a36637d6e2

Comment 6 Fedora Update System 2025-01-08 02:01:55 UTC
FEDORA-2025-a36637d6e2 (atlas-3.10.3-28.fc42) has been pushed to the Fedora 42 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.