Package: spherepack Version: 3.2-10 Severity: normal Hi, Some headers are required for the C interface to be functional. Something like the one attached that may be shipped in usr/include/spherepack directory.
Could you provide such files? Thanks --- System information. --- Architecture: Kernel: Linux 4.15.0-2-amd64 Debian Release: buster/sid 500 testing [ https://mail.lncmi.cnrs.fr/ftp.fr.debian.org | ftp.fr.debian.org ] 500 testing euler 500 stretch download.docker.com 500 data neurodebian.g-node.org 500 buster neurodebian.g-node.org Christophe TROPHIME Research Engineer CNRS - LNCMI 25, rue des Martyrs BP 166 38042 GRENOBLE Cedex 9 FRANCE Tel : +33 (0)4 76 88 90 02 Fax : +33 (0) 4 76 88 10 01 M@il : christophe.troph...@lncmi.cnrs.fr
#ifndef __SPHPK_H__ #define __SPHPK_H__ #include <spherepack/fortran.h> #ifdef __cplusplus extern "C" { #endif // shpg.f void FORTRAN_NAME(gaqd)(const int * nlat,double * dtheta,double * dwts,double * DWORK,int * ldwork,int * ier); void FORTRAN_NAME(shagci)(const int * nlat,const int * nlon,float * wshagc,int * lwsha,double * work,int * lwrk,int * ierror); void FORTRAN_NAME(shagc)(const int * nlat,const int * nlon,const int * mode,const int * nt, const float * g,int *idimg,int *jdimg,float * ga,float * gb,int * mdab,int * ndab, float * wshagc,int * lwsha,float * wrk2,int * lwork,int * ierror); void FORTRAN_NAME(shsgci)(const int * nlat,const int * nlon,float * wshsgc,int * lwshs,double * work, int * lwrk,int * ierror); void FORTRAN_NAME(shsgc)(const int * nlat,const int * nlon,const int * mode,const int * nt, float * gh, int * idimg,int * jdimg,const float * ga,const float * gb,int * mdab,int * ndab, float * wshsgc,int * lwshs,float * wrk2,int * lwork,int * ierror); void FORTRAN_NAME(shpgi)(const int * nlat,const int * nlon,const int * isym,int * mtrunc,float * wshp,int * lwshp,int * iwshp,int * liwshp,float * work,int * lwrkint, int *ierror); void FORTRAN_NAME(shpg)(const int * nlat,const int * nlon,const int * isym,int * mtrunc,float * sx,float * sy,int * idp, float * wshp,int * lwshp,int * iwshp,int * liwshp,float * wrk1,int * lwrk1,int * ierror); #ifdef __cplusplus } #endif /* __cplusplus */ #endif /* __SPHPK_H__ */
/* Fortran <--> C/C++ interfacing stuff */ /* $Id: fortran.h,v 1.8 2001/06/09 10:04:54 jthorn Exp $ */ /* this header file is idempotent */ #ifndef FORTRAN_H_SEEN #define FORTRAN_H_SEEN /*****************************************************************************/ /* * C/C++ compatability: */ /* * Use this in prototypes like this: extern FORTRAN_FUNCTION void foo(...) * * At present, this is set up to tell a C++ compiler that foo() uses * a C-compatible calling convention. */ #ifdef __cplusplus #define FORTRAN_FUNCTION "C" #else #define FORTRAN_FUNCTION /* empty */ #endif /*****************************************************************************/ /* array subscripting offset, i.e. C "arr[k]" is Fortran "arr(k+?)" */ #define FORTRAN_INDEX_ORIGIN 1 /*****************************************************************************/ /* C type of Fortran integer/logical variables */ /* also actual integers used for Fortran logical .true. and .false. */ /* * FIXME: these are what I (JT) used on a 32-bit SGI system with the * SGI C and Fortran compilers in 1992-1993; they should be * checked to see if they're still valid for current compilers * and/or for 64-bit systems. */ #if defined(sgi) || defined(SGI) || defined(__sgi__) || defined(__SGI__) #define FORTRAN_INTEGER_IS_INT TRUE typedef int integer; typedef unsigned int logical; #define FORTRAN_LOGICAL_TRUE 1 #define FORTRAN_LOGICAL_FALSE 0 /* see FIXME above for validity of these */ #elif defined(alpha) || defined(ALPHA) || defined(__alpha__) || defined(__ALPHA__) #define FORTRAN_INTEGER_IS_INT TRUE typedef int integer; typedef unsigned int logical; #define FORTRAN_LOGICAL_TRUE 1 #define FORTRAN_LOGICAL_FALSE 0 #elif defined(sun) || defined(SUN) || defined(__sun__) || defined(__SUN__) #define FORTRAN_INTEGER_IS_INT TRUE typedef int integer; typedef unsigned int logical; #define FORTRAN_LOGICAL_TRUE 1 #define FORTRAN_LOGICAL_FALSE 0 #elif defined(cygwin) || defined(CYGWIN) || defined(__cygwin__) || defined(__CYGWIN__) #define FORTRAN_INTEGER_IS_INT TRUE typedef int integer; typedef unsigned int logical; #define FORTRAN_LOGICAL_TRUE 1 #define FORTRAN_LOGICAL_FALSE 0 #elif defined(mingw) || defined(MINGW) || defined(__mingw__) || defined(__MINGW__) #define FORTRAN_INTEGER_IS_INT TRUE typedef int integer; typedef unsigned int logical; #define FORTRAN_LOGICAL_TRUE 1 #define FORTRAN_LOGICAL_FALSE 0 #elif defined(__linux__) && (defined(__i386__) || defined(__x86_64__) ) && defined(__GNUC__) #define FORTRAN_INTEGER_IS_INT TRUE typedef int integer; typedef unsigned int logical; #define FORTRAN_LOGICAL_TRUE 1 #define FORTRAN_LOGICAL_FALSE 0 #else #error "don't know Fortran integer/logical datatypes for this system!" #endif /* old (backwards compatible) names for Fortran integers/logicals */ typedef integer fortran_integer_t; typedef logical fortran_logical_t; /*****************************************************************************/ /* * Names of Fortran routines are often altered by the compiler/loader. The * following macro should be used to call a Fortran routine from C code, i.e. * call sgefa(...) -- Fortran code * FORTRAN_NAME(sgefa)(...); -- C code to do the same thing * * Unfortunately, the "alterations" are generally at the token level, and this * can't be done portably in pre-ANSI C. In ANSI C, the preprocessor "token * splicing" facility is designed to handle just this sort of thing, but in * pre-ANSI C we have to use rather ugly system-dependent hacks of the sort * exemplified below. */ /* see FIXME above for validity of these */ #if defined(sgi) || defined(SGI) || defined(__sgi__) || defined(__SGI__) /* C code should reference Fortran names in lower case */ #ifdef __STDC__ #define FORTRAN_NAME(n_) n_ ## _ #else #define FORTRAN_NAME(n_) n_/**/_ #endif /* see FIXME above for validity of these */ #elif defined(alpha) || defined(ALPHA) || defined(__alpha__) || defined(__ALPHA__) /* C code should reference Fortran names in lower case */ #ifdef __STDC__ #define FORTRAN_NAME(n_) n_ ## _ #else #define FORTRAN_NAME(n_) n_/**/_ #endif #elif defined(sun) || defined(SUN) || defined(__sun__) || defined(__SUN__) /* C code should reference Fortran names in lower case */ #ifdef __STDC__ #define FORTRAN_NAME(n_) n_ ## _ #else #define FORTRAN_NAME(n_) n_/**/_ #endif #elif defined(cygwin) || defined(CYGWIN) || defined(__cygwin__) || defined(__CYGWIN__) /* C code should reference Fortran names in lower case */ #ifdef __STDC__ #define FORTRAN_NAME(n_) n_ ## _ #else #define FORTRAN_NAME(n_) n_/**/_ #endif #elif defined(mingw) || defined(MINGW) || defined(__mingw__) || defined(__MINGW__) /* C code should reference Fortran names in lower case */ #ifdef __STDC__ #define FORTRAN_NAME(n_) n_ ## _ #else #define FORTRAN_NAME(n_) n_/**/_ #endif #elif defined(__linux__) && (defined(__i386__) || defined(__x86_64__) ) && defined(__GNUC__) /* C code should reference Fortran names in lower case */ #ifdef __STDC__ #define FORTRAN_NAME(n_) n_ ## _ #else #define FORTRAN_NAME(n_) n_/**/_ #endif #else #error "don't know Fortran integer/logical datatypes for this system!" #endif /*****************************************************************************/ #endif /* FORTRAN_H_SEEN */