diff options
Diffstat (limited to 'Build/source/utils/pmx/pmx-2.7.0/libf2c/util.c')
-rw-r--r-- | Build/source/utils/pmx/pmx-2.7.0/libf2c/util.c | 54 |
1 files changed, 54 insertions, 0 deletions
diff --git a/Build/source/utils/pmx/pmx-2.7.0/libf2c/util.c b/Build/source/utils/pmx/pmx-2.7.0/libf2c/util.c new file mode 100644 index 00000000000..f4b3aef2ce7 --- /dev/null +++ b/Build/source/utils/pmx/pmx-2.7.0/libf2c/util.c @@ -0,0 +1,54 @@ +#include "sysdep1.h" /* here to get stat64 on some badly designed Linux systems */ +#include "f2c.h" +#include "fio.h" +#ifdef __cplusplus +extern "C" { +#endif + + VOID +#ifdef KR_headers +g_char(a,alen,b) char *a,*b; ftnlen alen; +#else +g_char(char *a, ftnlen alen, char *b) +#endif +{ + char *x = a + alen, *y = b + alen; + + for(;; y--) { + if (x <= a) { + *b = 0; + return; + } + if (*--x != ' ') + break; + } + *y-- = 0; + do *y-- = *x; + while(x-- > a); + } + + VOID +#ifdef KR_headers +b_char(a,b,blen) char *a,*b; ftnlen blen; +#else +b_char(char *a, char *b, ftnlen blen) +#endif +{ int i; + for(i=0;i<blen && *a!=0;i++) *b++= *a++; + for(;i<blen;i++) *b++=' '; +} +#ifndef NON_UNIX_STDIO +#ifdef KR_headers +long f__inode(a, dev) char *a; int *dev; +#else +long f__inode(char *a, int *dev) +#endif +{ struct STAT_ST x; + if(STAT(a,&x)<0) return(-1); + *dev = x.st_dev; + return(x.st_ino); +} +#endif +#ifdef __cplusplus +} +#endif |