diff -b -c -r ./old/Makefile ./new/Makefile *** ./old/Makefile Fri Jan 31 22:06:29 2003 --- ./new/Makefile Fri Jan 31 22:00:59 2003 *************** *** 18,25 **** CC = gcc #CFLAGS = -O #CFLAGS = -g3 -O2 CFLAGS = -g -O2 ! # # Program to use to pack shars # --- 18,30 ---- CC = gcc #CFLAGS = -O #CFLAGS = -g3 -O2 + CFLAGS_SH = -fPIC -g -O2 CFLAGS = -g -O2 ! # ! # Command to export LD_LIBRARY_PATH ! # ! EXP_SH = export LD_LIBRARY_PATH;LD_LIBRARY_PATH=./lib_sh; ! # EXP_SH = export LD_LIBRARY_PATH=./lib_sh; # # Program to use to pack shars # *************** *** 32,38 **** --- 37,45 ---- # ROOT = . LIB = $(ROOT)/lib + LIB_SH = $(ROOT)/lib_sh BIN = $(ROOT)/bin + BIN_SH = $(ROOT)/bin_sh SRC = $(ROOT)/src INCLUDE = $(ROOT)/include EXAMPLES = $(ROOT)/examples *************** *** 179,190 **** # # Compile the library and examples # ! all: $(LIB) $(BIN) \ $(LIB)/libcbf.a \ $(BIN)/convert_image \ $(BIN)/makecbf \ $(BIN)/img2cif \ $(BIN)/cif2cbf \ clean # --- 186,202 ---- # # Compile the library and examples # ! all: $(LIB) $(BIN) $(LIB_SH) $(BIN_SH) \ $(LIB)/libcbf.a \ $(BIN)/convert_image \ $(BIN)/makecbf \ $(BIN)/img2cif \ $(BIN)/cif2cbf \ + $(LIB_SH)/libcbf.so \ + $(BIN_SH)/convert_image \ + $(BIN_SH)/makecbf \ + $(BIN_SH)/img2cif \ + $(BIN_SH)/cif2cbf \ clean # *************** *** 193,200 **** --- 205,217 ---- $(LIB): mkdir $(LIB) + $(LIB_SH): + mkdir $(LIB_SH) + $(BIN): mkdir $(BIN) + $(BIN_SH): + mkdir $(BIN_SH) # # Parser *************** *** 212,253 **** $(CC) $(CFLAGS) $(INCLUDES) $(WARNINGS) -c $(SOURCE) $(AR) cr $@ *.o ! # ! # convert_image example program ! # $(BIN)/convert_image: $(LIB)/libcbf.a $(EXAMPLES)/convert_image.c $(EXAMPLES)/img.c $(CC) $(CFLAGS) $(INCLUDES) $(WARNINGS) \ $(EXAMPLES)/convert_image.c $(EXAMPLES)/img.c -L$(LIB) \ -lcbf -lm -o $@ - # - # makecbf example program - # $(BIN)/makecbf: $(LIB)/libcbf.a $(EXAMPLES)/makecbf.c $(EXAMPLES)/img.c $(CC) $(CFLAGS) $(INCLUDES) $(WARNINGS) \ $(EXAMPLES)/makecbf.c $(EXAMPLES)/img.c -L$(LIB) \ -lcbf -lm -o $@ - # - # img2cif example program - # $(BIN)/img2cif: $(LIB)/libcbf.a $(EXAMPLES)/img2cif.c $(EXAMPLES)/img.c $(CC) $(CFLAGS) $(INCLUDES) $(WARNINGS) \ $(EXAMPLES)/img2cif.c $(EXAMPLES)/img.c -L$(LIB) \ -lcbf -lm -o $@ - # - # cif2cbf example program - # $(BIN)/cif2cbf: $(LIB)/libcbf.a $(EXAMPLES)/cif2cbf.c $(EXAMPLES)/img.c $(CC) $(CFLAGS) $(INCLUDES) $(WARNINGS) \ $(EXAMPLES)/cif2cbf.c $(EXAMPLES)/img.c -L$(LIB) \ -lcbf -lm -o $@ # - # Tests # ! tests: $(BIN)/makecbf $(BIN)/img2cif $(BIN)/cif2cbf example.mar2300 $(BIN)/makecbf example.mar2300 makecbf.cbf $(BIN)/img2cif -c packed -m headers -d digest \ -e base64 < example.mar2300 > img2cif_packed.cif --- 229,297 ---- $(CC) $(CFLAGS) $(INCLUDES) $(WARNINGS) -c $(SOURCE) $(AR) cr $@ *.o ! $(LIB_SH)/libcbf.so: $(SOURCE) $(HEADERS) $(COMMONDEP) ! -rm -f *.o ! $(CC) $(CFLAGS_SH) $(INCLUDES) $(WARNINGS) -c $(SOURCE) ! $(CC) -o $(LIB_SH)/libcbf.so -shared *.o ! ! ! # ******************************************************* ! # BINARIES START FROM HERE ! # =========================== ! # first are the binaries with the static library $(BIN)/convert_image: $(LIB)/libcbf.a $(EXAMPLES)/convert_image.c $(EXAMPLES)/img.c $(CC) $(CFLAGS) $(INCLUDES) $(WARNINGS) \ $(EXAMPLES)/convert_image.c $(EXAMPLES)/img.c -L$(LIB) \ -lcbf -lm -o $@ $(BIN)/makecbf: $(LIB)/libcbf.a $(EXAMPLES)/makecbf.c $(EXAMPLES)/img.c $(CC) $(CFLAGS) $(INCLUDES) $(WARNINGS) \ $(EXAMPLES)/makecbf.c $(EXAMPLES)/img.c -L$(LIB) \ -lcbf -lm -o $@ $(BIN)/img2cif: $(LIB)/libcbf.a $(EXAMPLES)/img2cif.c $(EXAMPLES)/img.c $(CC) $(CFLAGS) $(INCLUDES) $(WARNINGS) \ $(EXAMPLES)/img2cif.c $(EXAMPLES)/img.c -L$(LIB) \ -lcbf -lm -o $@ $(BIN)/cif2cbf: $(LIB)/libcbf.a $(EXAMPLES)/cif2cbf.c $(EXAMPLES)/img.c $(CC) $(CFLAGS) $(INCLUDES) $(WARNINGS) \ $(EXAMPLES)/cif2cbf.c $(EXAMPLES)/img.c -L$(LIB) \ -lcbf -lm -o $@ + #binaries with dynamic library + # + $(BIN_SH)/convert_image: $(LIB_SH)/libcbf.so $(EXAMPLES)/convert_image.c \ + $(EXAMPLES)/img.c + $(CC) $(CFLAGS) $(INCLUDES) $(WARNINGS) \ + $(EXAMPLES)/convert_image.c $(EXAMPLES)/img.c -L$(LIB_SH) \ + -lcbf -lm -o $@ + + $(BIN_SH)/makecbf: $(LIB_SH)/libcbf.so $(EXAMPLES)/makecbf.c $(EXAMPLES)/img.c + $(CC) $(CFLAGS) $(INCLUDES) $(WARNINGS) \ + $(EXAMPLES)/makecbf.c $(EXAMPLES)/img.c -L$(LIB_SH) \ + -lcbf -lm -o $@ + + $(BIN_SH)/img2cif: $(LIB_SH)/libcbf.so $(EXAMPLES)/img2cif.c $(EXAMPLES)/img.c + $(CC) $(CFLAGS) $(INCLUDES) $(WARNINGS) \ + $(EXAMPLES)/img2cif.c $(EXAMPLES)/img.c -L$(LIB_SH) \ + -lcbf -lm -o $@ + + $(BIN_SH)/cif2cbf: $(LIB_SH)/libcbf.so $(EXAMPLES)/cif2cbf.c $(EXAMPLES)/img.c + $(CC) $(CFLAGS) $(INCLUDES) $(WARNINGS) \ + $(EXAMPLES)/cif2cbf.c $(EXAMPLES)/img.c -L$(LIB_SH) \ + -lcbf -lm -o $@ + # binaries end here **************************************** # # ! # TEST START HERE ! # ====================== ! # Tests for binaries build with static library ! # ! tests: $(LIB) $(BIN) $(LIB_SH) $(BIN_SH) \ ! $(BIN)/makecbf $(BIN)/img2cif $(BIN)/cif2cbf example.mar2300 \ ! $(BIN_SH)/makecbf $(BIN_SH)/img2cif $(BIN_SH)/cif2cbf ! $(BIN)/makecbf example.mar2300 makecbf.cbf $(BIN)/img2cif -c packed -m headers -d digest \ -e base64 < example.mar2300 > img2cif_packed.cif *************** *** 265,274 **** -cmp cif2cbf_packed.cbf img2cif_packed.cbf -cmp cif2cbf_canonical.cbf img2cif_canonical.cbf # # Extra Tests # ! extra: $(BIN)/cif2cbf makecbf.cbf $(BIN)/cif2cbf -e hex -c none \ makecbf.cbf cif2cbf_ehcn.cif $(BIN)/cif2cbf -e none -c packed \ --- 309,338 ---- -cmp cif2cbf_packed.cbf img2cif_packed.cbf -cmp cif2cbf_canonical.cbf img2cif_canonical.cbf + #Test for binaries build with dynamic library + $(EXP_SH)\ + $(BIN_SH)/makecbf example.mar2300 makecbf.cbf;\ + $(BIN_SH)/img2cif -c packed -m headers -d digest \ + -e base64 < example.mar2300 > img2cif_packed.cif;\ + $(BIN_SH)/img2cif -c canonical -m headers -d digest \ + -e base64 < example.mar2300 > img2cif_canonical.cif;\ + $(BIN_SH)/img2cif -c packed -m headers -d digest \ + -e none < example.mar2300 > img2cif_packed.cbf;\ + $(BIN_SH)/img2cif -c canonical -m headers -d digest \ + -e none < example.mar2300 > img2cif_canonical.cbf;\ + $(BIN_SH)/cif2cbf -e none -c packed \ + img2cif_canonical.cif cif2cbf_packed.cbf;\ + $(BIN_SH)/cif2cbf -e none -c canonical \ + img2cif_packed.cif cif2cbf_canonical.cbf; + -cmp cif2cbf_packed.cbf makecbf.cbf + -cmp cif2cbf_packed.cbf img2cif_packed.cbf + -cmp cif2cbf_canonical.cbf img2cif_canonical.cbf + + # # Extra Tests # ! extra: $(BIN)/cif2cbf makecbf.cbf $(BIN_SH)/cif2cbf $(BIN)/cif2cbf -e hex -c none \ makecbf.cbf cif2cbf_ehcn.cif $(BIN)/cif2cbf -e none -c packed \ *************** *** 276,286 **** -cmp makecbf.cbf cif2cbf_encp.cbf # # Remove all non-source files # empty: clean ! @-rm -f $(LIB)/libcbf.a @-rm -f $(BIN)/makecbf @-rm -f $(BIN)/img2cif @-rm -f $(BIN)/cif2cbf --- 340,359 ---- -cmp makecbf.cbf cif2cbf_encp.cbf + $(EXP_SH)\ + $(BIN_SH)/cif2cbf -e hex -c none \ + makecbf.cbf cif2cbf_ehcn.cif;\ + $(BIN_SH)/cif2cbf -e none -c packed \ + cif2cbf_ehcn.cif cif2cbf_encp.cbf + -cmp makecbf.cbf cif2cbf_encp.cbf + + # # Remove all non-source files # empty: clean ! @-rm -f libcbf.so ! @-rm -f $(LIB)/libcbf.* $(LIB_SH)/libcbf.* @-rm -f $(BIN)/makecbf @-rm -f $(BIN)/img2cif @-rm -f $(BIN)/cif2cbf *************** *** 301,306 **** --- 374,381 ---- @-rm -f *.o @-rm -f *.u + bad: + @-rm -rf * # # Create a Shell Archive for distribution # diff -b -c -r ./old/examples/cif2cbf.c ./new/examples/cif2cbf.c *** ./old/examples/cif2cbf.c Fri Jan 31 22:07:22 2003 --- ./new/examples/cif2cbf.c Fri Jan 31 22:04:50 2003 *************** *** 263,269 **** int c; int errflg = 0; char *cifin, *cbfout, *ciftmp; ! char tmpbuf[L_tmpnam]; int nbytes; char buf[2048]; unsigned int blocks, categories, blocknum, catnum; --- 263,270 ---- int c; int errflg = 0; char *cifin, *cbfout, *ciftmp; ! int fd; ! char tmpbuf[]="/tmp/cbf.XXXXXX"; int nbytes; char buf[2048]; unsigned int blocks, categories, blocknum, catnum; *************** *** 469,479 **** /* Read the cif */ if (!cifin || strcmp(cifin?cifin:"","-") == 0) { ! ciftmp = strdup(tmpnam(&tmpbuf[0])); ! if ( (file = fopen(ciftmp, "w+")) == NULL) { ! fprintf(stderr,"Can't open temporary file %s.\n", ciftmp); exit(1); } while (nbytes = fread(buf, 1, 1024, stdin)) { if(nbytes != fwrite(buf, 1, nbytes, file)) { fprintf(stderr,"Failed to write %s.\n", ciftmp); --- 470,485 ---- /* Read the cif */ if (!cifin || strcmp(cifin?cifin:"","-") == 0) { ! ! fd=-1; ! fd = mkstemp(tmpbuf); ! ciftmp=tmpbuf; ! ! if ( fd == -1 || (file = fdopen(fd, "w+")) == NULL) { ! fprintf(stderr,"img2cif: Can't open temporary file %s.\n", ciftmp); exit(1); } + while (nbytes = fread(buf, 1, 1024, stdin)) { if(nbytes != fwrite(buf, 1, nbytes, file)) { fprintf(stderr,"Failed to write %s.\n", ciftmp); diff -b -c -r ./old/examples/img2cif.c ./new/examples/img2cif.c *** ./old/examples/img2cif.c Fri Jan 31 22:07:22 2003 --- ./new/examples/img2cif.c Fri Jan 31 22:04:50 2003 *************** *** 237,243 **** int c; int errflg = 0; char *imgin, *imgout, *imgtmp; ! char tmpbuf[L_tmpnam]; int nbytes; char buf[2048]; --- 237,244 ---- int c; int errflg = 0; char *imgin, *imgout, *imgtmp; ! int fd; ! char tmpbuf[]="/tmp/cbf.XXXXXX"; int nbytes; char buf[2048]; *************** *** 423,430 **** /* Read the image */ if (!imgin || strcmp(imgin?imgin:"","-") == 0) { ! imgtmp = strdup(tmpnam(&tmpbuf[0])); ! if ( (file = fopen(imgtmp, "w+")) == NULL) { fprintf(stderr,"img2cif: Can't open temporary file %s.\n", imgtmp); exit(1); } --- 424,434 ---- /* Read the image */ if (!imgin || strcmp(imgin?imgin:"","-") == 0) { ! fd=-1; ! fd = mkstemp(tmpbuf); ! imgtmp=tmpbuf; ! ! if ( fd == -1 || (file = fdopen(fd, "w+")) == NULL) { fprintf(stderr,"img2cif: Can't open temporary file %s.\n", imgtmp); exit(1); } diff -b -c -r ./old/src/cbf_read_mime.c ./new/src/cbf_read_mime.c *** ./old/src/cbf_read_mime.c Fri Jan 31 22:07:02 2003 --- ./new/src/cbf_read_mime.c Fri Jan 31 22:04:01 2003 *************** *** 429,435 **** const char **curpoint, int *freshline) { ! static const char end = '\0'; const char *c; --- 429,435 ---- const char **curpoint, int *freshline) { ! /* static*/ const char end = '\0'; const char *c; *************** *** 549,555 **** int *bits, int *sign) { ! static const char *value [] = { "Content-Type:", /* State 0 */ "Content-Transfer-Encoding:", /* State 1 */ --- 549,555 ---- int *bits, int *sign) { ! /* static*/ const char *value [] = { "Content-Type:", /* State 0 */ "Content-Transfer-Encoding:", /* State 1 */