diff -r -b -c cbf/examples/cif2cbf.c new/examples/cif2cbf.c *** cbf/examples/cif2cbf.c 2001-04-23 13:18:24.000000000 -0400 --- new/examples/cif2cbf.c 2003-01-13 16:17:45.000000000 -0500 *************** *** 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 -r -b -c cbf/examples/img2cif.c new/examples/img2cif.c *** cbf/examples/img2cif.c 2001-04-23 13:20:10.000000000 -0400 --- new/examples/img2cif.c 2003-01-13 16:15:24.000000000 -0500 *************** *** 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 -r -b -c cbf/Makefile new/Makefile *** cbf/Makefile 2002-11-07 21:36:46.000000000 -0500 --- new/Makefile 2003-01-10 19:18:38.000000000 -0500 *************** *** 18,25 **** CC = gcc #CFLAGS = -O #CFLAGS = -g3 -O2 CFLAGS = -g -O2 - # # Program to use to pack shars # --- 18,25 ---- CC = gcc #CFLAGS = -O #CFLAGS = -g3 -O2 + CFLAGS_SH = -fPIC -g -O2 CFLAGS = -g -O2 # # Program to use to pack shars # *************** *** 32,38 **** --- 32,40 ---- # 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 # --- 181,197 ---- # # 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 **** --- 200,212 ---- $(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 --- 224,292 ---- $(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 \ --- 304,334 ---- -cmp cif2cbf_packed.cbf img2cif_packed.cbf -cmp cif2cbf_canonical.cbf img2cif_canonical.cbf + #Test for binaries build with dynamic library + LD_LIBRARY_PATH=$(LIB_SH);\ + export LD_LIBRARY_PATH;\ + $(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 --- 336,356 ---- -cmp makecbf.cbf cif2cbf_encp.cbf + LD_LIBRARY_PATH=$(LIB_SH);\ + export LD_LIBRARY_PATH;\ + $(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 **** --- 371,378 ---- @-rm -f *.o @-rm -f *.u + bad: + @-rm -rf * # # Create a Shell Archive for distribution #