# Makefile.complete for Redhat Linux 5.2 # # ========================================================================== # # This version of Makefile.complete was derived from # # - the Makefile for Redhat Linux 4.2 contributed 6-Jan-1998 # by Ethan Merritt # # - the Makefile.complete included in the Molscript 2.1.1 distribution # # It builds Molscript on a Redhat Linux 5.2 (intel) system that includes # the following libraries ( the .a versions of which are not used): # # GL: /usr/lib/libMesaGL.so # /usr/lib/libMesaGL.so.3 # /usr/lib/libMesaGL.so.3.0 # # GLUT: /usr/lib/libMesaGLU.so # /usr/lib/libMesaGLU.so.3 # /usr/lib/libMesaGLU.so.3.0 # # /usr/lib/libglut.a # /usr/lib/libglut.so # /usr/lib/libglut.so.3 # /usr/lib/libglut.so.3.7 # # X: /usr/X11/lib/libXmu.a # /usr/X11/lib/libXmu.so # /usr/X11/lib/libXmu.so.6 # /usr/X11/lib/libXmu.libXmu.so.6.0 # # /usr/X11/lib/libXext.a # /usr/X11/lib/libXext.so # /usr/X11/lib/libXext.so.6 # /usr/X11/lib/libXext.so.6.3 # # /usr/X11/lib/libXi.a # /usr/X11/lib/libXi.so # /usr/X11/lib/libXi.so.6 # /usr/X11/lib/libXi.so.6.0 # # /usr/X11/lib/libX11.a # /usr/X11/lib/libX11.so # /usr/X11/lib/libX11.so.6 # /usr/X11/lib/libX11.so.6.1 # # JPEG: /usr/lib/libjpeg.a # /usr/lib/libjpeg.la # /usr/lib/libjpeg.so # /usr/lib/libjpeg.so.62 # /usr/lib/libjpeg.so.62.0.0 # # PNG: /usr/lib/libpng.a # /usr/lib/libpng.so # /usr/lib/libpng.so.2 # /usr/lib/libpng.so.2.1.0 # # Z: /usr/lib/libz.a # /usr/lib/libz.so # /usr/lib/libz.so.1 # /usr/lib/libz.so.1.1.3 # # GD: /usr/lib/libgd.so # /usr/lib/libgd.so.1 # /usr/lib/libgd.so.1.2 # # Notes: # # - The Molscript tar.gz file was untarred in /usr/local and the # /usr/local/molscript-2.1.1 directory created there was renamed # /usr/local/molscript. # # - GD src code is in: /usr/local/src/gd. # # - The egcs C compiler was specified. # # - The header file glutbitmap.h was obtained from a Redhat utility # source rpm (on the Redhat Powertools 5.2 CD) and placed in # # /usr/src/redhat/SOURCES/Mesa-3.0/src-glut/glutbitmap.h # # and the file /usr/local/molscript/clib/ogl_bitmap_character.c # was modified from # # #include <../lib/glut/glutbitmap.h> # to # #include "/usr/src/redhat/SOURCES/Mesa-3.0/src-glut/glutbitmap.h" # # - The file # # /usr/local/molscript/examples/Makefile # # was modified so that lines referring to making .rgb files # (which require an SGI version of 'render') are commented out. E.g. # # ### # ### .SUFFIXES: .in .ps .wrl .rgb .eps .sgi .jpg .png .gif # ### # .SUFFIXES: .in .ps .wrl .eps .sgi .jpg .png .gif # # and # ### # ### .in.rgb: # ### $(MOLSCRIPT) -raster3d $(LARGE) -in $< | $(RASTER3D) -sgi $@ # ### # # etc. Then, in the examples directory, 'make complete' runs. # # The raster3D programs 'render' and 'render_jpeg' had previously # been built and placed in /usr/local/raster3d. # # ========================================================================== # Command execution shell. SHELL = /bin/sh FREEWAREDIR = /usr/local/molscript CLIBDIR = $(FREEWAREDIR)/clib GLLIBDIR = -L/usr/X11/lib GLUTLINK = $(GLLIBDIR) -lglut -lMesaGLU -lMesaGL -lXmu -lXext -lXi -lX11 # OPENGLFLAG = -DOPENGL_SUPPORT -I/usr/X11 -I/usr/X11/include OPENGLFLAG = -DOPENGL_SUPPORT -I/usr/X11 -I/usr/X11/include -I/usr/include/GL OPENGLOBJ = opengl.o OPENGLCLIBOBJ = ogl_utils.o ogl_body.o ogl_bitmap_character.o # Image files requiring only OpenGL and X IMAGEFLAG = -DIMAGE_SUPPORT IMAGEOBJ = image.o eps_img.o sgi_img.o # JPEG library JPEGLINK = -ljpeg JPEGFLAG = -DJPEG_SUPPORT JPEGOBJ = jpeg_img.o # PNG and Z libraries ZLIBLINK = -lz PNGLINK = -lpng PNGFLAG = -DPNG_SUPPORT PNGOBJ = png_img.o # GIF image file format GIFDIR = /usr/local/src/gd GIFLINK = -lgd GIFFLAG = -DGIF_SUPPORT -I$(GIFDIR) GIFOBJ = gif_img.o # C compiler CC = egcs # optimization flags: COPT = -g # correctness flags: CCHECK = -DNDEBUG # General cc compile flags. CFLAGS = $(COPT) $(CCHECK) -Iclib $(OPENGLFLAG) $(IMAGEFLAG) $(JPEGFLAG) \ $(PNGFLAG) $(GIFFLAG) # GNU's bison; required instead of the ordinary yacc. YACC = bison YFLAGS = -d YLIB = #------------------------------------------------------------ OBJ = molscript.tab.o global.o lex.o col.o select.o \ state.o graphics.o segment.o coord.o xform.o \ postscript.o raster3d.o vrml.o regex.o \ $(OPENGLOBJ) $(IMAGEOBJ) $(JPEGOBJ) $(PNGOBJ) $(GIFOBJ) #------------------------------------------------------------ all: molscript molauto #------------------------------------------------------------ clean: (rm -f molscript molauto *.o core *~) (cd clib; make clean) (cd examples; make clean) #------------------------------------------------------------ molscript: $(OBJ) clib/clib.a $(CC) -o molscript $(COPT) $(OBJ) $(YLIB) clib/clib.a \ $(GLUTLINK) $(JPEGLINK) $(PNGLINK) $(GIFLINK) $(ZLIBLINK) -lm molscript.tab.o: molscript.tab.c molscript.tab.h molscript.tab.c molscript.tab.h: molscript.y $(YACC) $(YFLAGS) molscript.y global.o: global.c global.h lex.h state.h graphics.h xform.h \ postscript.h raster3d.h vrml.h lex.o: lex.c lex.h global.h molscript.tab.h col.o: col.c col.h global.h lex.h state.h select.o: select.c select.h coord.h global.h state.h lex.h state.o: state.c state.h col.h global.h select.h graphics.o: graphics.c graphics.h coord.h state.h global.h lex.h \ select.h xform.h segment.h postscript.h raster3d.h vrml.h segment.o: segment.c segment.h coord.o: coord.c coord.h global.h lex.h select.h xform.o: xform.c xform.h global.h select.h postscript.o: postscript.c postscript.h coord.h global.h \ graphics.h segment.h state.h raster3d.o: raster3d.c raster3d.h coord.h global.h graphics.h \ segment.h state.h vrml.o: vrml.c vrml.h col.h coord.h global.h graphics.h segment.h state.h regex.o: other/regex.c $(CC) $(CFLAGS) -c -o ./regex.o other/regex.c opengl.o: opengl.c opengl.h col.h coord.h global.h graphics.h \ segment.h state.h lex.h select.h image.o: image.c image.h global.h graphics.h opengl.h eps_img.o: eps_img.c eps_img.h global.h graphics.h opengl.h sgi_img.o: sgi_img.c sgi_img.h global.h graphics.h image.h opengl.h jpeg_img.o: jpeg_img.c jpeg_img.h global.h graphics.h image.h opengl.h png_img.o: png_img.c png_img.h global.h graphics.h image.h opengl.h gif_img.o: gif_img.c gif_img.h global.h graphics.h image.h opengl.h #------------------------------------------------------------ molauto: molauto.o clib/clib.a $(CC) -o molauto molauto.o clib/clib.a -lm molauto.o: molauto.c #------------------------------------------------------------ clib/clib.a: cd clib; make clib.a CFLAGS="-I. $(CFLAGS)" OPENGLCLIBOBJ="$(OPENGLCLIBOBJ)"