?? make-cccp.com
字號:
$v='f$verify(0) !make-cccp.com$!$! Build the GNU C preprocessor on VMS.$!$! Usage:$! $ @make-cccp.com [compiler] [link-only]$!$! where [compiler] is one of "GNUC", "VAXC", "DECC";$! default when none specified is "GNUC",$! and where [link-only] is "LINK" or omitted.$! If both options are specified, the compiler must come first.$!$ if f$type(gcc_debug).eqs."INTEGER" then if gcc_debug.and.1 then set verify$$ p1 = f$edit(p1,"UPCASE,TRIM")$ if p1.eqs."" then p1 = "GNUC"$!$! Compiler-specific setup (assume GNU C, then override as necessary):$!$ CC = "gcc"$ CFLAGS = "/Opt=2/Debug/noVerbos"$ LIBS = "gnu_cc:[000000]gcclib.olb/Libr,sys$library:vaxcrtl.olb/Libr"$ if p1.nes."GNUC"$ then$ CC = "cc"$ CFLAGS = "/noOpt" !disable optimizer when bootstrapping with native cc$ if p1.eqs."VAXC"$ then$ if f$trnlnm("DECC$CC_DEFAULT").nes."" then CC = "cc/VAXC"$ LIBS = "alloca.obj,sys$library:vaxcrtl.olb/Libr"$ define/noLog SYS SYS$LIBRARY:$ else$ if p1.eqs."DECC"$ then$ if f$trnlnm("DECC$CC_DEFAULT").nes."" then CC = "cc/DECC"$ CC = CC + "/Prefix=All"$ LIBS = "alloca.obj" !DECC$SHR will be found implicitly by linker$ define/noLog SYS DECC$LIBRARY_INCLUDE:$ else$ if p1.nes."LINK"$ then$ type sys$input: /Output=sys$error:$DECK[compiler] argument should be one of "GNUC", "VAXC", or "DECC".Usage:$ @make-cccp.com [compiler] [link-only]$EOD$ exit %x1000002C + 0*f$verify(v) !%SYSTEM-F-ABORT$ endif !!LINK$ endif !DECC$ endif !VAXC$ endif !!GNUC$$!$! Other setup:$!$ LDFLAGS = "/noMap"$ PARSER = "bison"$ RENAME = "rename/New_Version"$ LINK = "link"$ echo = "write sys$output"$$!!!!!!!$! Nothing beyond this point should need any local configuration changes.$!!!!!!!$$! Set the default directory to the same place as this command procedure.$ flnm = f$enviroment("PROCEDURE") !get current procedure name$ set default 'f$parse(flnm,,,"DEVICE")''f$parse(flnm,,,"DIRECTORY")'$$ if p1.eqs."LINK" .or. p2.eqs."LINK" then goto Link$ echo " Building the preprocessor."$$! Compile the simplest file first, to catch problem with compiler setup early.$ set verify$ 'CC''CFLAGS' version.c$!'f$verify(0)$$ set verify$ 'CC''CFLAGS' cccp.c$!'f$verify(0)$$! Compile preprocessor's parser, possibly making it with yacc first.$ if f$search("CEXP.C").nes."" then - if f$cvtime(f$file_attributes("CEXP.C","RDT")).ges.- f$cvtime(f$file_attributes("CEXP.Y","RDT")) then goto skip_yacc$ set verify$ 'PARSER' cexp.y$ 'RENAME' cexp_tab.c cexp.c$!'f$verify(0)$skip_yacc:$ echo " (Ignore any warning about not finding file ""bison.simple"".)"$ set verify$ 'CC''CFLAGS' cexp.c$ 'CC''CFLAGS'/Define="PREFIX=""_dummy_""" prefix.c$!'f$verify(0)$$! In case there's no builtin alloca support, use the C simulation.$ if f$locate("alloca.obj",f$edit(LIBS,"lowercase")).lt.f$length(LIBS)$ then$ set verify$ 'CC''CFLAGS'/Incl=[]/Defi=("HAVE_CONFIG_H","STACK_DIRECTION=(-1)") alloca.c$!'f$verify(0)$ endif$!$$Link:$ echo " Linking the preprocessor."$ set verify$ 'LINK''LDFLAGS'/Exe=gcc-cpp.exe - cccp.obj,cexp.obj,prefix.obj,version.obj,version.opt/Opt,- 'LIBS'$!'f$verify(0)$!$! Done$!$ exit 1+0*f$verify(v)
?? 快捷鍵說明
復制代碼
Ctrl + C
搜索代碼
Ctrl + F
全屏模式
F11
切換主題
Ctrl + Shift + D
顯示快捷鍵
?
增大字號
Ctrl + =
減小字號
Ctrl + -