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 : [email protected]
#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 */