mirror of
https://github.com/swift-project/pilotclient.git
synced 2026-04-30 22:29:13 +08:00
[g2clib] Fix up type detection and printf arguments on 64-bit machines
Patch from Fedora 23 http://pkgs.fedoraproject.org/cgit/rpms/g2clib.git/tree/g2clib-64bit.patch
This commit is contained in:
@@ -1,3 +1,4 @@
|
|||||||
|
#include <inttypes.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include "grib2.h"
|
#include "grib2.h"
|
||||||
@@ -190,8 +191,8 @@ g2int g2_addfield(unsigned char *cgrib,g2int ipdsnum,g2int *ipdstmpl,
|
|||||||
// total length, then there is a problem.
|
// total length, then there is a problem.
|
||||||
if ( len > lencurr ) {
|
if ( len > lencurr ) {
|
||||||
printf("g2_addfield: Section byte counts don''t add to total.\n");
|
printf("g2_addfield: Section byte counts don''t add to total.\n");
|
||||||
printf("g2_addfield: Sum of section byte counts = %ld\n",len);
|
printf("g2_addfield: Sum of section byte counts = %"PRId32"\n",len);
|
||||||
printf("g2_addfield: Total byte count in Section 0 = %ld\n",lencurr);
|
printf("g2_addfield: Total byte count in Section 0 = %"PRId32"\n",lencurr);
|
||||||
ierr=-3;
|
ierr=-3;
|
||||||
return(ierr);
|
return(ierr);
|
||||||
}
|
}
|
||||||
@@ -392,7 +393,7 @@ g2int g2_addfield(unsigned char *cgrib,g2int ipdsnum,g2int *ipdstmpl,
|
|||||||
}
|
}
|
||||||
#endif /* USE_PNG */
|
#endif /* USE_PNG */
|
||||||
else {
|
else {
|
||||||
printf("g2_addfield: Data Representation Template 5.%ld not yet implemented.\n",idrsnum);
|
printf("g2_addfield: Data Representation Template 5.%"PRId32" not yet implemented.\n",idrsnum);
|
||||||
ierr=-7;
|
ierr=-7;
|
||||||
return(ierr);
|
return(ierr);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
#include <inttypes.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include "grib2.h"
|
#include "grib2.h"
|
||||||
@@ -125,8 +126,8 @@ g2int g2_addgrid(unsigned char *cgrib,g2int *igds,g2int *igdstmpl,g2int *ideflis
|
|||||||
// total length, then there is a problem.
|
// total length, then there is a problem.
|
||||||
if ( len > lencurr ) {
|
if ( len > lencurr ) {
|
||||||
printf("g2_addgrid: Section byte counts don''t add to total.\n");
|
printf("g2_addgrid: Section byte counts don''t add to total.\n");
|
||||||
printf("g2_addgrid: Sum of section byte counts = %ld\n",len);
|
printf("g2_addgrid: Sum of section byte counts = %"PRId32"\n",len);
|
||||||
printf("g2_addgrid: Total byte count in Section 0 = %ld\n",lencurr);
|
printf("g2_addgrid: Total byte count in Section 0 = %"PRId32"\n",lencurr);
|
||||||
ierr=-3;
|
ierr=-3;
|
||||||
return(ierr);
|
return(ierr);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
#include <inttypes.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include "grib2.h"
|
#include "grib2.h"
|
||||||
|
|
||||||
@@ -102,8 +103,8 @@ g2int g2_addlocal(unsigned char *cgrib,unsigned char *csec2,g2int lcsec2)
|
|||||||
// total length, then there is a problem.
|
// total length, then there is a problem.
|
||||||
if ( len > lencurr ) {
|
if ( len > lencurr ) {
|
||||||
printf("g2_addlocal: Section byte counts don't add to total.\n");
|
printf("g2_addlocal: Section byte counts don't add to total.\n");
|
||||||
printf("g2_addlocal: Sum of section byte counts = %ld\n",len);
|
printf("g2_addlocal: Sum of section byte counts = %"PRId32"\n",len);
|
||||||
printf("g2_addlocal: Total byte count in Section 0 = %ld\n",lencurr);
|
printf("g2_addlocal: Total byte count in Section 0 = %"PRId32"\n",lencurr);
|
||||||
ierr=-3;
|
ierr=-3;
|
||||||
return(ierr);
|
return(ierr);
|
||||||
}
|
}
|
||||||
@@ -113,7 +114,7 @@ g2int g2_addlocal(unsigned char *cgrib,unsigned char *csec2,g2int lcsec2)
|
|||||||
//
|
//
|
||||||
if ( (isecnum!=1) && (isecnum!=7) ) {
|
if ( (isecnum!=1) && (isecnum!=7) ) {
|
||||||
printf("g2_addlocal: Section 2 can only be added after Section 1 or Section 7.\n");
|
printf("g2_addlocal: Section 2 can only be added after Section 1 or Section 7.\n");
|
||||||
printf("g2_addlocal: Section %ld was the last found in given GRIB message.\n",isecnum);
|
printf("g2_addlocal: Section %"PRId32" was the last found in given GRIB message.\n",isecnum);
|
||||||
ierr=-4;
|
ierr=-4;
|
||||||
return(ierr);
|
return(ierr);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
#include <inttypes.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include "grib2.h"
|
#include "grib2.h"
|
||||||
@@ -345,12 +346,12 @@ g2int g2_getfld(unsigned char *cgrib,g2int ifldnum,g2int unpack,g2int expand,
|
|||||||
iofst=iofst+32;
|
iofst=iofst+32;
|
||||||
gbit(cgrib,&isecnum,iofst,8); // Get Section number
|
gbit(cgrib,&isecnum,iofst,8); // Get Section number
|
||||||
iofst=iofst+8;
|
iofst=iofst+8;
|
||||||
//printf(" lensec= %ld secnum= %ld \n",lensec,isecnum);
|
//printf(" lensec= %"PRId32" secnum= %"PRId32" \n",lensec,isecnum);
|
||||||
//
|
//
|
||||||
// Check to see if section number is valid
|
// Check to see if section number is valid
|
||||||
//
|
//
|
||||||
if ( isecnum<1 || isecnum>7 ) {
|
if ( isecnum<1 || isecnum>7 ) {
|
||||||
printf("g2_getfld: Unrecognized Section Encountered=%ld\n",isecnum);
|
printf("g2_getfld: Unrecognized Section Encountered=%"PRId32"\n",isecnum);
|
||||||
ierr=8;
|
ierr=8;
|
||||||
return(ierr);
|
return(ierr);
|
||||||
}
|
}
|
||||||
@@ -543,8 +544,8 @@ g2int g2_getfld(unsigned char *cgrib,g2int ifldnum,g2int unpack,g2int expand,
|
|||||||
// If exited from above loop, the end of the GRIB message was reached
|
// If exited from above loop, the end of the GRIB message was reached
|
||||||
// before the requested field was found.
|
// before the requested field was found.
|
||||||
//
|
//
|
||||||
printf("g2_getfld: GRIB message contained %ld different fields.\n",numfld);
|
printf("g2_getfld: GRIB message contained %"PRId32" different fields.\n",numfld);
|
||||||
printf("g2_getfld: The request was for field %ld.\n",ifldnum);
|
printf("g2_getfld: The request was for field %"PRId32".\n",ifldnum);
|
||||||
ierr=6;
|
ierr=6;
|
||||||
|
|
||||||
return(ierr);
|
return(ierr);
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
#include <inttypes.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include "grib2.h"
|
#include "grib2.h"
|
||||||
|
|
||||||
@@ -97,7 +98,7 @@ g2int g2_gribend(unsigned char *cgrib)
|
|||||||
//
|
//
|
||||||
if ( isecnum != 7 ) {
|
if ( isecnum != 7 ) {
|
||||||
printf("g2_gribend: Section 8 can only be added after Section 7.\n");
|
printf("g2_gribend: Section 8 can only be added after Section 7.\n");
|
||||||
printf("g2_gribend: Section %ld was the last found in given GRIB message.\n",isecnum);
|
printf("g2_gribend: Section %"PRId32" was the last found in given GRIB message.\n",isecnum);
|
||||||
ierr=-4;
|
ierr=-4;
|
||||||
return (ierr);
|
return (ierr);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -1,3 +1,4 @@
|
|||||||
|
#include <inttypes.h>
|
||||||
#include <stdio.h>
|
#include <stdio.h>
|
||||||
#include <stdlib.h>
|
#include <stdlib.h>
|
||||||
#include "grib2.h"
|
#include "grib2.h"
|
||||||
@@ -178,7 +179,7 @@ g2int g2_info(unsigned char *cgrib,g2int *listsec0,g2int *listsec1,
|
|||||||
(*numfields)++;
|
(*numfields)++;
|
||||||
}
|
}
|
||||||
else {
|
else {
|
||||||
printf("g2_info: Invalid section number found in GRIB message: %ld\n" ,isecnum);
|
printf("g2_info: Invalid section number found in GRIB message: %"PRId32"\n" ,isecnum);
|
||||||
ierr=6;
|
ierr=6;
|
||||||
return(ierr);
|
return(ierr);
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -5,6 +5,7 @@
|
|||||||
extern "C" {
|
extern "C" {
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
#include<inttypes.h>
|
||||||
#include<stdio.h>
|
#include<stdio.h>
|
||||||
|
|
||||||
#define G2_VERSION "g2clib-1.5.0"
|
#define G2_VERSION "g2clib-1.5.0"
|
||||||
@@ -156,13 +157,8 @@ extern "C" {
|
|||||||
// that holds the data.
|
// that holds the data.
|
||||||
*/
|
*/
|
||||||
|
|
||||||
#ifdef __64BIT__
|
typedef int32_t g2int;
|
||||||
typedef int g2int;
|
typedef uint32_t g2intu;
|
||||||
typedef unsigned int g2intu;
|
|
||||||
#else
|
|
||||||
typedef long g2int;
|
|
||||||
typedef unsigned long g2intu;
|
|
||||||
#endif
|
|
||||||
typedef float g2float;
|
typedef float g2float;
|
||||||
|
|
||||||
struct gtemplate {
|
struct gtemplate {
|
||||||
|
|||||||
Reference in New Issue
Block a user