diff --git a/Makefile b/Makefile index 5ef9ee1..58de1a5 100644 --- a/Makefile +++ b/Makefile @@ -25,14 +25,16 @@ CFLAGS ?= -O5 # have_inline defined for gsl to use extern inline functions when possible: CXXFLAGS ?= -O5 -DHAVE_INLINE $(OSDEFS) -TARGET = wsflux +TARGETS = weight_int wsflux INCLUDES = *.H # INCLUDES = io.H multipoly.H eam.H .PHONY: all clean archive -all: $(TARGET) +all: $(TARGETS) + +weight_int: weight_int.C $(INCLUDES) wslux: wsflux.C $(INCLUDES) diff --git a/chgcar.H b/chgcar.H index d0da7ca..6b49061 100644 --- a/chgcar.H +++ b/chgcar.H @@ -40,10 +40,10 @@ void read_grid(FILE* infile, double* rho, int Ng) if (infile==NULL) return; int n, line, nl; - char dump[512]; + char dump[512], *p_fgets; if (Ng == 0) { - fgets(dump, sizeof(dump), infile); + p_fgets = fgets(dump, sizeof(dump), infile); return; } @@ -51,14 +51,14 @@ void read_grid(FILE* infile, double* rho, int Ng) n=0; for (line=0, n=0; line= 0) str[0] = '0'; // fix the exponent (only if non-zero) if (x != 0) { - int expon = strtol(str+14, (char**)NULL, 10); + int expon = (int)strtol(str+14, (char**)NULL, 10); expon++; if (expon>=0) str[14] = '+'; else {str[14] = '-'; expon = -expon;} @@ -131,7 +131,7 @@ void write_grid(FILE* outfile, double* rho, int Ng) return; } int n; - char dump[18]; + char dump[28]; for (n=0; n=0; ++nt) Natoms += Natom[nt]; - fgets(dump, sizeof(dump), infile); + char *p_fgets = fgets(dump, sizeof(dump), infile); sscanf(dump, "%d %d %d", Ngrid, Ngrid+1, Ngrid+2); if (TESTING) { @@ -338,7 +338,7 @@ int main ( int argc, char **argv ) continue; } skip_CHGCAR_header(infile); - fgets(dump, sizeof(dump), infile); + p_fgets = fgets(dump, sizeof(dump), infile); int Ntemp[3]; sscanf(dump, "%d %d %d", Ntemp, Ntemp+1, Ntemp+2); if ( (Ngrid[0] != Ntemp[0]) || diff --git a/wsflux.C b/wsflux.C index ff263aa..5b6edc1 100644 --- a/wsflux.C +++ b/wsflux.C @@ -57,7 +57,7 @@ const char COMMENT_CHAR = '#'; const char EOF_CHAR = '&'; inline void nextnoncomment (FILE* infile, char* dump, const int &size) -{ do {fgets(dump, size, infile);} +{ do {char *p_fgets = fgets(dump, size, infile);} while ((!feof(infile)) && (dump[0] == COMMENT_CHAR)); } @@ -110,7 +110,7 @@ int main ( int argc, char **argv ) int MEMORY = 128; // Our default storage (not used) char ch; - while ((ch = getopt(argc, argv, "hvtm:")) != -1) { + while ((ch = (char)getopt(argc, argv, "hvtm:")) != -1) { switch (ch) { case 'm': MEMORY = (int)strtol(optarg, (char**)NULL, 10); @@ -156,12 +156,12 @@ int main ( int argc, char **argv ) if (ERROR) exit(ERROR); // parse that file... - char dump[512]; + char dump[512], *p_fgets; double a0, alatt[9]; int Ngrid[3]; read_CHGCAR_header(infile, dump, a0, alatt); - fgets(dump, sizeof(dump), infile); + p_fgets = fgets(dump, sizeof(dump), infile); sscanf(dump, "%d %d %d", Ngrid, Ngrid+1, Ngrid+2); if (TESTING) {