tclcompiler Code
Brought to you by:
aotto1968
## ## Cct - project.cct ## ## (C) IPN - Ingenieurbuero fuer Praezisionsnumerik ## ## Dipl.-Ing. Andreas Otto ## Ulmenstrasse 3 ## D-34289 Zierenberg ## mailto:aotto@t-online.de ## http://tclcompiler.sourceforge.net ## ## Alle Rechte vorbehalten ## ################################################################ ## this project.cct was build for cct version CCT_VERSION ## -> !never! change this number ## -> need for upgrade in the future CCT_VERSION 2.0 ################################################################ ## the META repository directory ## -> the repository is necessary to use all features of "cct" ## -> all local "project.cct" files should use the same repository ## -> the value can be an absolute or relative directory ## -> if the directory is not available it will be created ## -> if the directory is relative it will be ## (Lin) $HOME/.cct/repository/Master or ## (Win) $HOME\cct\repository\Master REPOSITORY Master ################################################################ ## set the DEFAULT values for all PACKAGE(s) ## -> do only modify it if you want to modify the default ## behaviour ## -> if you wan't to add your own PACKAGE please refer to the ## USER section down ## -> to setup your own package please modify the values providet ## to every configuration entry at the USER section. To add ## your own PACKGE please replace "PACKAGE DEFAULT" with ## "PACKAGE MyPack" and "TCL_FILE DEFAULT" with ## "TCL_FILE MyFile.tcl" PACKAGE DEFAULT { ################################################################ ## the MAJOR release number ## -> create lib(PACKAGE)(MAJOR).(MINOR).so MAJOR 8 ################################################################ ## the MINOR release number ## -> create lib(PACKAGE)(MAJOR).(MINOR).so MINOR 34 ################################################################ ## should the final software be compiled with DEBUGMODE ## -> only "yes" and "no" are supported ## -> "yes" is equal to "--enable-symbols" ## -> "no" is equal to "--disable-symbols" DEBUGMODE no ################################################################ ## the c-library installation directory C_INSTDIR ## -> it has to be a valid directory C_INSTDIR {} C_INSTDIR /home/dev1usr/Project/Compiler3/src/OtTk.tpkg/arch/$env(CCT_TARGET)/lib/tk8.3 ################################################################ ## the tcl-executable installation directory TCL_INSTDIR ## -> it has to be a valid directory TCL_INSTDIR $env(PROJECT2_ETCL) ################################################################ ## C input file ## -> only *.c files are supported ## -> automatically search for *.h file ## -> multiple C_FILE entries with different first aruments ## ( the file name ) are allowed ## -> allways two arguments per C_FILE ## -> {} as second argument is supported C_FILE DEFAULT {} ################################################################ ## Tcl input file ## -> only *.tcl or *.test files are supported ## -> multiple TCL_FILE entries with different first aruments ## ( the file name ) are allowed ## -> allways two arguments per TCL_FILE ## -> {} as second argument is supported TCL_FILE DEFAULT { ################################################################ ## Tcl2Meta option's ## TCL2META { ################################################################ ## should a TEST mode be used ? ## -> used to process the *.test files. If the flag is set a tcl ## "error ..." command for every found error will be created. ## The reason for this behavior is to pass the tcl test ## which have to fail by default. TEST no ################################################################ ## should additional informations be printed ? ## -> if set additional Tcl2Meta hash data will be printed PRINT no ################################################################ ## should a save interp be used ? ## -> tcl usually accept short options which mean ## "array get" will be equal to "array g" ## but the safe interp require the log options SAFE no ################################################################ ## list all packages required to resolve proc names ## -> it have to be a valid list ## -> the "package require STRING" command is analysed too, ## only packages which are not STRING have to be listed PKG_REQUIRE {tcl tk} } ################################################################ ## Meta2Tcl option's ## META2TCL { ################################################################ ## should additional informations be printed ## -> additional print output PRINT no } ################################################################ ## Meta2C option's ## META2C { ################################################################ ## should additional informations be printed ## -> additional print output PRINT no ################################################################ ## should der DEBUG mode be used ## -> every created C Procedure get additional DEBUG statements ## -> help to debug the created C code DEBUG no ################################################################ ## buildin commands provided to SKIP should be called without ## optimization code. ## -> valid entry's for this command are: ## proc append array catch expr for foreach gets global ## if incr interp info lappend namespace regexp regsub ## set switch time unset upvar uplevel variable while SKIP {} ################################################################ ## optimization level for Meta2C ## -> 0 ... no optimization => no speed improvements ## -> 1 ... optimization of some buildin commands : ## "append" "array" "catch" "expr" "for" "foreach" ## "gets" "global" "if" "incr" "interp" "info" ## "lappend" "namespace" "regexp" "regsub" "set" ## "switch" "time" "unset" "upvar" "variable" ## "while" "fileevent" and "proc" OPTIMIZATION 1 } } } ################################################################ ## This is the USER section ## -> add you PACKAGE(s) with a real unique name ## -> more than one PACKAGE(s) are supported ## -> create lib(PACKAGE)(MAJOR).(MINOR).so ## -> every package should contain at least one TCL_FILE set BASE {button.tcl entry.tcl listbox.tcl menu.tcl scale.tcl scrlbar.tcl text.tcl} foreach F [glob -nocomplain *.tcl] { if {[ lsearch -exact $BASE $F] != -1} continue PACKAGE TkLib_[file rootname $F] { TCL_FILE $F {} } } PACKAGE TkLib_base { foreach B $BASE { TCL_FILE $B {} } }