diff --git a/src/sbbs3/scfg/makehelp.c b/src/sbbs3/scfg/makehelp.c index 81d6908c116f9e20e08d2e46c412acb5eef97bf5..ce8454fe79a5b249d575a2f35fe663f9a358f87e 100644 --- a/src/sbbs3/scfg/makehelp.c +++ b/src/sbbs3/scfg/makehelp.c @@ -8,11 +8,13 @@ #include <string.h> #include <fcntl.h> #include <sys/stat.h> -#if !defined(__unix__) +#if defined(__unix__) + #define O_BINARY 0 +#else #include <io.h> /* open */ #endif -void main(void) +int main(void) { char *files[]={ "scfg.c" @@ -31,51 +33,52 @@ void main(void) long l; FILE *stream,*out; -if((out=fopen("scfghelp.dat","wb"))==NULL) { - printf("error opening scfghelp.dat\r\n"); - return; } + if((out=fopen("scfghelp.dat","wb"))==NULL) { + printf("error opening scfghelp.dat\r\n"); + return(-1); } -if((ixb=open("scfghelp.ixb",O_WRONLY|O_CREAT|O_BINARY,S_IWRITE|S_IREAD))==-1) { - printf("error opening scfghelp.ixb\r\n"); - return; } + if((ixb=open("scfghelp.ixb",O_WRONLY|O_CREAT|O_BINARY,S_IWRITE|S_IREAD))==-1) { + printf("error opening scfghelp.ixb\r\n"); + return(-1); } -for(i=0;files[i];i++) { - if((stream=fopen(files[i],"rb"))==NULL) { - printf("error opening %s\r\n",files[i]); - return; } - printf("\r\n%s ",files[i]); - line=0; - while(!feof(stream)) { - if(!fgets(str,128,stream)) - break; - line++; - if(strstr(str,"SETHELP(WHERE);")) { - l=ftell(out); - write(ixb,files[i],12); - write(ixb,&line,2); - write(ixb,&l,4); - fgets(str,128,stream); /* skip start comment */ + for(i=0;files[i];i++) { + if((stream=fopen(files[i],"rb"))==NULL) { + printf("error opening %s\r\n",files[i]); + return(-3); } + printf("\r\n%s ",files[i]); + line=0; + while(!feof(stream)) { + if(!fgets(str,128,stream)) + break; line++; - while(!feof(stream)) { - if(!fgets(str,128,stream)) - break; - if(strchr(str,9)) { /* Tab expansion */ - strcpy(tmp,str); - k=strlen(tmp); - for(j=l=0;j<k;j++) { - if(tmp[j]==9) { - str[l++]=32; - while(l%4) - str[l++]=32; } - else - str[l++]=tmp[j]; } - str[l]=0; } + if(strstr(str,"SETHELP(WHERE);")) { + l=ftell(out); + write(ixb,files[i],12); + write(ixb,&line,2); + write(ixb,&l,4); + fgets(str,128,stream); /* skip start comment */ line++; - if(strstr(str,"*/")) /* end comment */ - break; - fputs(str,out); } - fputc(0,out); } } - fclose(stream); } -fclose(out); -printf("\n"); + while(!feof(stream)) { + if(!fgets(str,128,stream)) + break; + if(strchr(str,9)) { /* Tab expansion */ + strcpy(tmp,str); + k=strlen(tmp); + for(j=l=0;j<k;j++) { + if(tmp[j]==9) { + str[l++]=32; + while(l%4) + str[l++]=32; } + else + str[l++]=tmp[j]; } + str[l]=0; } + line++; + if(strstr(str,"*/")) /* end comment */ + break; + fputs(str,out); } + fputc(0,out); } } + fclose(stream); } + fclose(out); + printf("\n"); + return(0); }