From a9ca53fa54c1a96316022f5195cb690e172d580b Mon Sep 17 00:00:00 2001 From: inv Date: Fri, 10 Dec 2010 12:40:44 +0000 Subject: [PATCH] OCC22124 Necessety to obtain current version of OCCT in different automatic scripts --- src/WOKTclLib/FILES | 1 + src/WOKTclLib/OCCTDocumentation.tcl | 24 +---------------------- src/WOKTclLib/OCCTGetVersion.tcl | 30 +++++++++++++++++++++++++++++ 3 files changed, 32 insertions(+), 23 deletions(-) create mode 100755 src/WOKTclLib/OCCTGetVersion.tcl diff --git a/src/WOKTclLib/FILES b/src/WOKTclLib/FILES index f0cbb93..3413b27 100755 --- a/src/WOKTclLib/FILES +++ b/src/WOKTclLib/FILES @@ -169,3 +169,4 @@ srcinc:::woksh.el srcinc:::wok-comm.el srcinc:::OCCTDocumentation.tcl srcinc:::OS.tcl +srcinc:::OCCTGetVersion.tcl diff --git a/src/WOKTclLib/OCCTDocumentation.tcl b/src/WOKTclLib/OCCTDocumentation.tcl index bec122c..d6b2326 100755 --- a/src/WOKTclLib/OCCTDocumentation.tcl +++ b/src/WOKTclLib/OCCTDocumentation.tcl @@ -50,29 +50,7 @@ proc OCCDoc_MakeDoxyfile {outDir {modules {}} {graphvizPath {}} {useSearch YES} set filelist $hdrlist # get OCCT version number - set occt_version "" - set verfile [woklocate -p "Standard:source:Standard_Version.hxx"] - if { "$verfile" != "" && [file readable $verfile] } { - set vfd [open $verfile "r"] - set vmajor "" - set vminor "" - set vpatch "" - set vbuild "" - while { [gets $vfd line] >= 0 } { - if { [regexp {^[ \t]*\#define[ \t]*OCC_VERSION_MAJOR[ \t]*([0-9]+)} $line str num] } { - set vmajor $num - } elseif { [regexp {^[ \t]*\#define[ \t]*OCC_VERSION_MINOR[ \t]*([0-9]+)} $line str num] } { - set vminor $num - } elseif { [regexp {^[ \t]*\#define[ \t]*OCC_VERSION_MAINTENANCE[ \t]*([0-9]+)} $line str num] || - [regexp {^[ \t]*\#define[ \t]*OCC_VERSION_PATCH[ \t]*([0-9]+)} $line str num] } { - set vpatch $num - } elseif { [regexp {^[ \t]*\#define[ \t]*OCC_VERSION_BUILD[ \t]*([0-9]+)} $line str num] } { - set vbuild .$num - } - } - close $vfd - set occt_version $vmajor.$vminor.$vpatch$vbuild - } + set occt_version [OCCTGetVersion] set filename "$outDir/$name.Doxyfile" msgprint -i -c "WOKStep_DocGenerate:Execute" "Generating Doxygen file for $title in $filename" diff --git a/src/WOKTclLib/OCCTGetVersion.tcl b/src/WOKTclLib/OCCTGetVersion.tcl new file mode 100755 index 0000000..ededb46 --- /dev/null +++ b/src/WOKTclLib/OCCTGetVersion.tcl @@ -0,0 +1,30 @@ +# Get current OCCT version +proc OCCTGetVersion {} { + set OCCTVersion "" + set OCCTVersionFile [woklocate -p "Standard:source:Standard_Version.hxx"] + if {$OCCTVersionFile != "" && [file readable $OCCTVersionFile]} { + set v_major "" + set v_minor "" + set v_patch "" + set v_build "" + set vfd [open $OCCTVersionFile {RDONLY}] + while {[gets $vfd line] >= 0} { + if {[regexp {^[ \t]*\#define[ \t]*OCC_VERSION_MAJOR[ \t]*([0-9]+)} $line str num]} { + set v_major $num + } elseif {[regexp {^[ \t]*\#define[ \t]*OCC_VERSION_MINOR[ \t]*([0-9]+)} $line str num]} { + set v_minor $num + } elseif {[regexp {^[ \t]*\#define[ \t]*OCC_VERSION_MAINTENANCE[ \t]*([0-9]+)} $line str num]} { + set v_patch $num + } elseif {[regexp {^[ \t]*\#define[ \t]*OCC_VERSION_BUILD[ \t]*([0-9]+)} $line str num]} { + set v_build $num + } + } + close $vfd + if {$v_build != 0 && $v_build != ""} { + set OCCTVersion $v_major.$v_minor.$v_patch.$v_build + } else { + set OCCTVersion $v_major.$v_minor.$v_patch + } + } + return $OCCTVersion +} -- 2.39.5