home *** CD-ROM | disk | FTP | other *** search
- $! Set the def dir to proper place for use in batch. Works for interactive too.
- $flnm = f$enviroment("PROCEDURE") ! get current procedure name
- $set default 'f$parse(flnm,,,"DEVICE")''f$parse(flnm,,,"DIRECTORY")'
- $!
- $! Build the GNU "C" pre-processor on VMS
- $!
- $! Note: to build with DEC's VAX C compiler, uncomment the 2nd CC, CFLAGS,
- $! and LIBS alternatives, and also execute the following command:
- $! DEFINE SYS SYS$LIBRARY:
- $
- $!
- $! C compiler
- $!
- $ CC := gcc
- $! CC := cc !uncomment for VAXC
- $ BISON := bison
- $ RENAME := rename
- $ LINK := link
- $!
- $! Compiler options
- $!
- $ CFLAGS = "/debug/incl=([],[.config])"
- $! CFLAGS = "/noopt/incl=([],[.config])" !uncomment for VAXC
- $!
- $! Link options
- $!
- $ LDFLAGS := /nomap
- $!
- $! Link libraries
- $!
- $ LIBS := gnu_cc:[000000]gcclib.olb/libr,sys$library:vaxcrtl.olb/libr
- $! LIBS := alloca.obj,sys$library:vaxcrtl.olb/libr !uncomment for VAXC
- $
- $ if "''p1'" .eqs. "LINK" then goto Link
- $ 'CC 'CFLAGS cccp.c
- $ t1:='f$search("CEXP.C")'
- $ if "''t1'" .eqs. "" then goto 10$
- $ t1:='f$file_attributes("CEXP.Y","RDT")'
- $ t1:='f$cvtime(t1)'
- $ t2:='f$file_attributes("CEXP.C","RDT")'
- $ t2:='f$cvtime(t2)'
- $ if t1 .les. t2 then goto 20$
- $ 10$:
- $ bison cexp.y
- $ rename cexp_tab.c cexp.c
- $ 20$:
- $!
- $ if f$locate("alloca.obj",f$edit(LIBS,"lowercase")).lt.f$length(LIBS) then -
- 'CC 'CFLAGS /define="STACK_DIRECTION=(-1)" alloca.c
- $!
- $ 'CC 'CFLAGS cexp.c
- $ 'CC 'CFLAGS version.c
- $ Link:
- $ link 'LDFLAGS /exe=gcc-cpp cccp,cexp,version,version.opt/opt,'LIBS'
- $!
- $! Done
- $!
- $ exit
-