]> OCCT Git - occt-wok.git/commitdiff
Removing earlier removed file
authormnt <mnt@opencascade.com>
Fri, 11 Dec 2009 12:47:14 +0000 (12:47 +0000)
committermnt <mnt@opencascade.com>
Fri, 11 Dec 2009 12:47:14 +0000 (12:47 +0000)
18 files changed:
src/WOKTclLib/MatraDatavision.xpm [deleted file]
src/WOKTclLib/MdtvLogo33x120b.gif [deleted file]
src/WOKTclLib/WOKVC.ClearCase [deleted file]
src/WOKTclLib/bag.tcl [deleted file]
src/WOKTclLib/p-ul.tcl [deleted file]
src/WOKTclLib/padmin.tcl [deleted file]
src/WOKTclLib/pinstall.tcl [deleted file]
src/WOKTclLib/pintegre.tcl [deleted file]
src/WOKTclLib/pnews.tcl [deleted file]
src/WOKTclLib/pprepare.tcl [deleted file]
src/WOKTclLib/pstore.tcl [deleted file]
src/WOKTclLib/ptypefile.tcl [deleted file]
src/WOKTclLib/template.dsp [deleted file]
src/WOKTclLib/template.dspx [deleted file]
src/WOKTclLib/template.vcproj [deleted file]
src/WOKTclLib/template.vcprojx [deleted file]
src/WOKTclLib/wokOUC.tcl [deleted file]
src/WOKTclLib/woksh.el-wnt [deleted file]

diff --git a/src/WOKTclLib/MatraDatavision.xpm b/src/WOKTclLib/MatraDatavision.xpm
deleted file mode 100755 (executable)
index 4834785..0000000
+++ /dev/null
@@ -1,53 +0,0 @@
-/* XPM */
-static char *MatraDatavision[] = {
-/* width height num_colors chars_per_pixel */
-"   110    40        6            1",
-/* colors */
-". c #ffffff",
-"# c #000000",
-"a c #999999",
-"b c #c7c7c7",
-"c c #0000ff",
-"d c #20b2aa",
-/* pixels */
-"cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
-"cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
-"cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
-"cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
-"ccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc.c.c..dcccccccccccc",
-"cccc.ccccccccccc.ccccccccc.ccccccc.............ccc.......dccccccccccccc.cccccccccccccccccd.c.c..c..dcccccccccc",
-"cccc..ccccccccc..ccccccccd.dcccccc.............ccc........dcccccccccccd.dcccccccccccccccd.c.c..c..c.dccccccccc",
-"cccc...ccccccc...cccccccc...cccccc.............ccc...cc....ccccccccccc...ccccccccccccccd.c.c..c..c..ddcccccccc",
-"cccc....ccccc....cccccccd...dcccccccccc...cccccccc...ccd...ccccccccccd...dccccccccccccd.cccd.c..c..c..cccccccc",
-"cccc.....ccc.....ccccccc.....cccccccccc...cccccccc...cccd..cccccccccc.....cccccccccccd.c.ccccd.c..c...dccccccc",
-"cccc......c......ccccccc.....cccccccccc...cccccccc...ccd...cccccccccc.....ccccccccccc.c.c.cccccd.c....cccccccc",
-"cccc.............ccccccd.....dccccccccc...cccccccc...cc...dcccccccccd.....dcccccccccdc.c...dccccccd..c.ccccccc",
-"cccc...c.....c...cccccc...d...ccccccccc...cccccccc........cccccccccc...d...cccccccccc.c..c..dcccccccc..ccccccc",
-"cccc...cc...cc...cccccd...c...dcccccccc...cccccccc......dccccccccccd...d...dccccccccdc..c..dccccccccd..ccccccc",
-"cccc...ccc.ccc...ccccc...dcd...cccccccc...cccccccc......ccccccccccc...dcd...ccccccccc..c..ccccccc.c....ccccccc",
-"cccc...ccccccc...ccccc...ccc...cccccccc...cccccccc...d...cccccccccc...ccc...ccccccccc.c..cccccd..c.....ccccccc",
-"cccc...ccccccc...ccccd.........dccccccc...cccccccc...cd..dccccccccd.........dccccccccc..cccd....c.....dccccccc",
-"cccc...ccccccc...cccc...........ccccccc...cccccccc...cc...dccccccc...........ccccccccc.c..c....c......cccccccc",
-"cccc...ccccccc...cccd...ccccc...dcccccc...cccccccc...ccd...ccccccd...dcccd...dccccccccc..c....c......dcccccccc",
-"cccc...ccccccc...ccc...dcccccd...cccccc...cccccccc...cccd...ccccc...dcccccd...ccccccccccd....c......dccccccccc",
-"cccc...ccccccc...ccc...ccccccc...cccccc...cccccccc...cccc....cccc...ccccccc...ccccccccccc...c......dcccccccccc",
-"cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccd.....dcccccccccccc",
-"cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
-"cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
-"cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
-"cccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccccc",
-"..............................................................................................................",
-"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
-"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
-"bbbbbbbbbbbbbbbbbbb####bbbbbbb#bbbb#####bbbb#bbbb#bbbbb#bb#bbb###bbb#bbb####bbb##bbb#bbbbbbbbbbbbbbbbbbbbbbbbb",
-"bbbbbbbbbbbbbbbbbbb#bbb#bbbbba#abbbbb#bbbbba#abbb#bbbbb#bb#bb#bbb#bb#bb#bbbb#bb#aabb#bbbbbbbbbbbbbbbbbbbbbbbbb",
-"bbbbbbbbbbbbbbbbbbb#bbbb#bbbb#b#bbbbb#bbbbb#b#bbbaabbbaabb#bb#bbbbbb#bb#bbbb#bb#b#bb#bbbbbbbbbbbbbbbbbbbbbbbbb",
-"bbbbbbbbbbbbbbbbbbb#bbbb#bbbaabaabbbb#bbbbaabaabbb#bbb#bbb#bbb###bbb#bb#bbbb#bb#baab#bbbbbbbbbbbbbbbbbbbbbbbbb",
-"bbbbbbbbbbbbbbbbbbb#bbbb#bbb#bbb#bbbb#bbbb#bbb#bbb#bbb#bbb#bbbbbb#bb#bb#bbbb#bb#bb#b#bbbbbbbbbbbbbbbbbbbbbbbbb",
-"bbbbbbbbbbbbbbbbbbb#bbbb#bba#####abbb#bbba#####abbaabaabbb#bbbbbb#bb#bb#bbbb#bb#bb#b#bbbbbbbbbbbbbbbbbbbbbbbbb",
-"bbbbbbbbbbbbbbbbbbb#bbb#bbb#bbbbb#bbb#bbb#bbbbb#bbb#b#bbbb#bb#bbb#bb#bb#bbbb#bb#bbaa#bbbbbbbbbbbbbbbbbbbbbbbbb",
-"bbbbbbbbbbbbbbbbbbb####bbbb#bbbbb#bbb#bbb#bbbbb#bbbb#bbbbb#bbb###bbb#bbb####bbb#bbb##bbbbbbbbbbbbbbbbbbbbbbbbb",
-"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
-"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb",
-"bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb"
-};
diff --git a/src/WOKTclLib/MdtvLogo33x120b.gif b/src/WOKTclLib/MdtvLogo33x120b.gif
deleted file mode 100755 (executable)
index 63b7fe4..0000000
Binary files a/src/WOKTclLib/MdtvLogo33x120b.gif and /dev/null differ
diff --git a/src/WOKTclLib/WOKVC.ClearCase b/src/WOKTclLib/WOKVC.ClearCase
deleted file mode 100755 (executable)
index c004f7c..0000000
+++ /dev/null
@@ -1,102 +0,0 @@
-#
-# Interface ClearCase. 
-#
-proc wokIntegre:BASE:ftos { file vrs } {
-    return {}
-}
-#;>
-# 
-#;<
-proc wokIntegre:BASE:stof { file vrs } {
-    return {}  
-}
-#;>
-# 
-#;<
-proc wokIntegre:BASE:IsElm { file } {
-    return {}
-}
-#;>
-#
-#;<
-proc wokIntegre:BASE:InitFile { infile vrs cmt Sfile {fileid stdout} } {
-    return {}
-}
-#;>
-# 
-#;<
-proc wokIntegre:BASE:ReInitFile { Sfile vrs cmt infile {fileid stdout} } {
-    return {}
-}
-#;
-# 
-#;<
-proc wokIntegre:BASE:UpdateFile { Sfile vrs cmt infile {fileid stdout} } {
-    return {}
-}
-#;>
-# 
-#;<
-proc wokIntegre:BASE:DeleteFile { infile {fileid stdout} } {
-    return {}
-}
-#;>
-# 
-#;<
-proc wokIntegre:BASE:GetFile { Sfile invrs {fileid stdout} } {
-    return {}
-}
-#;>
-# 
-#;<
-proc wokIntegre:BASE:List { Bname vrs } {
-    return {}
-}
-#;>
-# 
-#;<
-proc wokIntegre:BASE:EOF { {fileid stdout} } {
-    return {}
-}
-#;>
-# 
-#;<
-proc wokIntegre:BASE:Execute { VERBOSE command {fileid stdout} } {
-    return {}
-}
-;#;>
-;#
-;#;<
-proc wokIntegre:BASE:diff { sfile v1 v2 } {
-    return {}
-}
-;#;>
-;# 
-;#;<
-proc wokIntegre:BASE:cat  { sfile {v last} } {
-    return {}
-}
-;#;>
-;# 
-;#;<
-proc wokIntegre:BASE:vrs { sfile } {
-    return {}
-}
-;#;>
-;#
-;#;<
-proc wokIntegre:BASE:check { sfile } {
-    return {}
-}      
-;#;>
-;# 
-;#;<
-proc wokIntegre:BASE:tree { infile fils} {
-    return {}
-}
-#;>
-# 
-#;<
-proc wokIntegre:Version:Check { shop ver } {
-    return {}
-}
diff --git a/src/WOKTclLib/bag.tcl b/src/WOKTclLib/bag.tcl
deleted file mode 100755 (executable)
index 19152a8..0000000
+++ /dev/null
@@ -1,669 +0,0 @@
-;#
-;#               (((((((((((( M A G I C ))))))))))))
-;#
-;# Poor parsing of a magic file. Returns the list of all extensions found after -name directive.
-;# mgfile returned by wokBAG:magic:Name
-;#
-proc wokBAG:magic:Parse { mgfile } {
-    if [ catch { set fileid [open $mgfile r] } ] {
-       return {}
-    }
-    set lx {}
-    foreach x [split [read $fileid] ] {
-       if { ([string compare $x "-name"] == 0 ) || ( [string compare $x "(-name"] == 0 ) } {
-           set name 1 
-       } else {
-           if [info exists name] {
-               regsub -all {[");]} $x "" res
-               set lx [concat $lx $res]
-               unset name
-           }
-       }
-    }
-    close $fileid
-    return $lx
-}
-;#
-;# returns the list of Known EXtension
-;#
-proc wokBAG:magic:kex { } {
-    set l {}
-    foreach mgfile [wokBAG:magic:Name] {
-       if [file exists $mgfile] {
-           set l [concat $l [wokBAG:magic:Parse $mgfile]]
-       } else {
-           puts stderr "Magic: File $mgfile not found"
-       }
-    }
-    return $l
-}
-;#
-;# Given a list of extension, returns the sublist of unknown extensions
-;# If this sublist is {} then all extensions are known.
-;# Plus merdique, tu meurs a virer des que possible.
-;#
-proc wokBAG:magic:CheckExt { lxt } {
-    set kex [wokBAG:magic:kex]
-    set l {}
-
-    foreach e $lxt {
-       set fnd 0
-       foreach x $kex {
-           if { [string match $x $e] } {
-               set fnd 1
-               break
-           }
-       }
-       if { $fnd == 0 } {
-           set l [concat $l $e]
-       }
-    }
-
-    return $l
-}
-;#
-;#             (((((((((((( A D M I N ))))))))))))
-;#
-proc wokBAG:admin:Create {} {
-    global tcl_platform
-    set NAM [wokBAG:admin:Name]
-    set TAG [file join [wokBAG:bag:GetRootTagName] $NAM]
-    set VBS [file join [wokBAG:bag:GetAdmName] ${NAM}.vbs]
-    set VWR [wokBAG:view:GetRootName]
-    if { "$tcl_platform(platform)" == "unix" } {
-       if ![file exists $TAG] {
-           if [catch {mkdir -path $TAG} tag_stat] {
-               puts stderr ${tag_stat}
-               return {}
-           }
-       }
-       if ![file exists [wokBAG:bag:GetAdmName]] {
-           if [catch {mkdir -path [wokBAG:bag:GetAdmName]} vbs_stat ] {
-               puts stderr ${vbs_stat}
-               return {}
-           }
-       }
-    }
-    lappend l "cleartool mkvob -nc -tag $TAG $VBS"
-    lappend l "cleartool mount $TAG"
-    lappend l "cleartool co -nc $VWR/[wokBAG:view:GetViewImport]${TAG}"
-    lappend l "cleartool mkelem -eltype directory  -nc $VWR/[wokBAG:view:GetViewImport]${TAG}/JOURNAL"
-    lappend l "cleartool mkelem -eltype directory  -nc $VWR/[wokBAG:view:GetViewImport]${TAG}/CONFIGS"
-    lappend l "cleartool ci -nc $VWR/[wokBAG:view:GetViewImport]${TAG}/JOURNAL"
-    lappend l "cleartool ci -nc $VWR/[wokBAG:view:GetViewImport]${TAG}/CONFIGS"
-    lappend l "cleartool ci -nc $VWR/[wokBAG:view:GetViewImport]${TAG}"
-    return $l
-}
-;#
-;#               (((((((((((( H L I N K ))))))))))))
-;#
-;# returns the sequence used to initialize the link for pnam
-;#
-proc wokBAG:hlink:Init { pnam } {
-    set NAM [wokBAG:admin:Name]
-    set TAG [file join [wokBAG:bag:GetRootTagName] $NAM]
-    lappend l "cleartool mkhltype -nc -shared [wokBAG:hlink:Umaked $pnam]@$TAG"
-}
-;# returns the string that identify the link used to reflect build dependencies of pnam
-;# This module uses journal definition.
-;#
-proc wokBAG:hlink:Umaked { pnam } {
-    return ${pnam}_umakedwith
-}
-;#
-;# Link 
-;# from, lto : Versionned composant name
-;# Example   : from = s_1 r_2
-;# set from /view/IMPORT/dl_07/REFERENCE/BAG/ADMIN/JOURNAL/s.jnl@@/s_1
-;# set to   /view/IMPORT/dl_07/REFERENCE/BAG/ADMIN/JOURNAL/r.jnl@@/r_2
-;# set command "cleartool mkhlink -nc umaked $from $to"
-;# set command "cleartool mkhlink -nc umake_s $from $to"
-
-proc wokBAG:hlink:Attach { pfrom lpto } {
-    if [regexp {([^_]*)_([0-9]*)} $pfrom all nfrom vfrom] {
-       set from [wokBAG:journal:name $nfrom]@@/${pfrom}
-       set hnam [wokBAG:hlink:Umaked $nfrom]
-       foreach pto $lpto {
-           if [regexp {([^_]*)_([0-9]*)} $pto all npto vpto] {
-               set to [wokBAG:journal:name $npto]@@/${pto}
-               lappend l "cleartool mkhlink -nc $hnam $from $to"
-           } else {
-               puts stderr "hlink:Attach(to) : Error in component name $pto"
-               return {}
-           }
-       }
-       return $l
-    } else {
-       puts stderr "hlink:Attach(from) : Error in component name $pfrom"
-       return {}
-    }
-}
-;#
-;#               (((((((((((( L A B E L S ))))))))))))
-;#
-;# returns the tag name of the VOB where labels are managed.
-;# This VOB should be public.
-;#
-proc wokBAG:label:GetAdminVOB { } {
-    return [file join [wokBAG:bag:GetRootTagName] [wokBAG:admin:Name]]
-}
-;#
-;# Returns all labels that match regexp
-;#
-proc wokBAG:label:ls { {rgx *} } {
-    set command "cleartool lstype -short -kind lbtype -invob [wokBAG:label:GetAdminVOB]"
-    if ![catch { eval exec $command } status ] {
-       set lret {}
-       foreach e [wokUtils:LIST:GM [split $status \n] $rgx] {
-          lappend lret [lindex [split $e] 0] 
-       }
-       return $lret
-    } else {
-       puts stderr "$status"
-       return -1
-    }
-}
-
-;#
-;# Returns all kwown labels
-;# writes map(pnam) = list of kwown labels for pnam
-;# opt should be short or long
-;#
-proc wokBAG:label:dump { map opt } {
-    upvar $map TLOC
-    catch { unset TLOC }
-    set command "cleartool lstype -$opt -kind lbtype -invob [wokBAG:label:GetAdminVOB]"
-    if ![catch { eval exec $command } status ] {
-       if { "$opt" == "short" } {
-           foreach e [split $status \n] {
-               if [regexp {([^_]*)_([0-9]*)} $e all n v] {
-                   lappend TLOC($n) $v 
-               }
-           }
-           foreach nam [array names TLOC] {
-               set TLOC($nam) [lsort -integer $TLOC($nam)]
-           }
-       } elseif { "$opt" == "long" } {
-           foreach e [split $status \n] {
-               if [regexp {^label type "(.*)"} $e match label] {
-                   set curlabel $label
-               } elseif { [regexp {^ ([^ ]*) by (.*)} $e match date byandwhere] } {
-                   if { "$curlabel" != "LATEST" && "$curlabel" != "CHECKEDOUT" } {
-                       set TLOC($date) "$curlabel $byandwhere"
-                   }
-               }
-           }
-       }
-       
-    } else {
-       puts stderr "$status"
-       return -1
-    }
-}
-;#
-;# Init a label in Admin VOB. 
-;#
-proc wokBAG:label:Init { name } {
-    lappend l "cleartool mklbtype -global -nc ${name}@[wokBAG:label:GetAdminVOB]"
-    return $l
-}
-;#
-;# Pose un label. name doit exister. (wokBAG:label:Add)
-;#
-proc wokBAG:label:Stick { name dir } {
-    lappend l "cleartool mklabel -nc -rec $name $dir"
-    lappend l "cleartool lock lbtype:${name}@$dir"
-    return $l
-}
-;#
-;# Delete a label. 
-;#
-proc wokBAG:label:Del { name } {
-    lappend l "cleartool rmtype -nc lbtype:${name}@[wokBAG:label:GetAdminVOB]"
-    return $l
-}
-
-;#
-;#                     ((((((((((((  L E V E L S    ))))))))))))
-;#
-;#
-;# Initialise les fichiers LEVEL.CFG (BASE.K4E, etc.. ) dans le repertoire ADMIN/CONFIG
-;# i. e. cree les fichiers LEVEL.CFGi pour i dans LCFG (K4E K4F etc..)
-;#
-proc wokBAG:level:Init { level cfg from } {
-    lappend l "cleartool co -nc [wokBAG:level:dirname]"
-    lappend l "cleartool mkelem -eltype text_file -nc [wokBAG:level:file $level $cfg]"
-    lappend l "cleartool ci -ide -rm -nc -from $from [wokBAG:level:file $level $cfg]"
-    lappend l "cleartool ci -nc [wokBAG:level:dirname]"
-    return $l
-}
-;#
-;# Update le level <level>  avec le contenu de from
-;# <flevel> : fichier associe au level
-;# <from>   : nouveau contenu
-;# <
-proc wokBAG:level:update { flevel from } {
-    lappend l "cleartool co -nc $flevel"
-    lappend l "cleartool ci -nc -rm -ide -from $from $flevel"
-    return $l
-}
-
-;#
-;# Retourne  le full path du fichier decrivant level dans la config cfg
-;# si ce 
-;# 2. le nomune liste destinee a remplacer l'ancien contenu du fichier 
-;# lbf est de la forme pnam_x
-;# 
-proc wokBAG:level:file { level cfg } {
-    return [file join [wokBAG:level:dirname] ${level}.${cfg}]
-}
-;#
-;# Retourne le nom du directory ou sont stockes les levels/configs
-;# penser a mettre le file le join sur NT c'est plus sur.
-;#
-proc wokBAG:level:dirname { } {
-    set vws [wokBAG:view:GetRootName]
-    return $vws/[wokBAG:view:GetViewImport]/[wokBAG:bag:GetRootTagName]/[wokBAG:admin:Name]/CONFIGS
-}
-;#
-;# Retourne 2 elements 
-;# 1. le full path du fichier contenant lbf pour la config cfg (celui a modifier)
-;# 2. une liste destinee a remplacer l'ancien contenu du fichier 
-;# lbf est de la forme pnam_x
-;# 
-proc wokBAG:level:find { pnam_x cfg } {
-    set pnam [wokBAG:cpnt:parse basename ${pnam_x}]
-    foreach file [wokBAG:level:ls $cfg] {
-       set lin [wokUtils:FILES:FileToList $file]
-       if [array exists map] { unset map }
-       set lxp [wokBAG:cpnt:explode $lin map]
-       if [info exists map($pnam)] {
-           set map($pnam) [wokBAG:cpnt:parse version ${pnam_x}]
-           set newl [wokBAG:cpnt:implode map]
-           return [list $file $newl]
-       }
-    }
-    return {}
-}
-;# Retourne le full path des fichiers de description correspondants a la config <cfg>
-;# i. e. tous les fichiers de noms XXX.cfg
-;#
-proc wokBAG:level:ls { cfg } {
-    return [glob -nocomplain [wokBAG:level:dirname]/*.${cfg}]
-}
-;#
-;#                     ((((((((((((  J O U R N A L  ))))))))))))
-;#
-;# Initialise la premiere version de journal associee a pnam.
-;#
-proc wokBAG:journal:Init { pnam jnl } {
-    set jnam [wokBAG:journal:name $pnam]
-    lappend l "cleartool co -nc [file dirname $jnam]"
-    lappend l "cleartool mkelem -nc $jnam"
-    lappend l "cleartool ci -ide -rm -nc -from $jnl $jnam"
-    lappend l "cleartool ci -nc [file dirname $jnam]"
-    return $l
-}
-;#
-;# Update le journal associe a pnam.
-;#
-proc wokBAG:journal:Update { pnam jnl } {
-    set jnam [wokBAG:journal:name $pnam]
-    lappend l "cleartool co -nc $jnam"
-    lappend l "cleartool ci -ide -rm -nc -from $jnl $jnam"
-    return $l
-}
-
-;#
-;# Retourne le nom du journal associe a pnam. 
-;#
-proc wokBAG:journal:name { pnam } {
-    set vws [wokBAG:view:GetRootName]
-    return $vws/[wokBAG:view:GetViewImport]/[wokBAG:bag:GetRootTagName]/[wokBAG:admin:Name]/JOURNAL/${pnam}.jnl
-}
-;#
-;# retourne le full path du journal associe a pnam_x 
-;#
-proc wokBAG:journal:read { pnam_x } {
-    set nam [wokBAG:cpnt:parse basename ${pnam_x}]
-    return  [wokBAG:journal:name $nam]@@/main/[wokBAG:cpnt:parse version ${pnam_x}]
-}
-;#
-;#                     (((((((((((( V I E W S ))))))))))))
-;#
-proc wokBAG:view:Init { vnam {location {}} } {
-    if { $location != {} } {
-       set vws [file join [$location ${vnam}.vws]]
-    } else {
-       set vws [file join [wokBAG:bag:GetAdmName] ${vnam}.vws]
-    }
-    lappend l "cleartool mkview -tag $vnam $vws"
-    return $l
-}
-;#
-;# Configure la vue <tag> avec le fichier configspec <file>
-;#
-proc wokBAG:view:setcs { file { tag {} } } {
-    if { $tag == {} } {
-       lappend l "cleartool setcs $file"
-    } else {
-       lappend l "cleartool setcs -tag $tag $file"
-    }
-    return $l
-}
-;#
-;#
-;#
-proc wokBAG:view:startview { view } {
-    lappend l "cleartool startview $view"
-}
-;#
-;#
-;#
-proc wokBAG:view:endview { view } {
-    lappend l "cleartool endview $view"
-}
-;#
-;#               (((((((((((( C O M P O N E N T S ))))))))))))
-;#
-;#
-;# Retourne le vob-tag associe a pnam
-;#
-proc wokBAG:cpnt:GetTagName { pnam } {
-    return [file join [wokBAG:bag:GetRootTagName] ${pnam}]
-}
-;#
-;# Retourne le directory avec lequel faut comparer dans la VOB
-;#
-proc wokBAG:cpnt:GetImportName { pnam } {
-    return  [wokBAG:view:GetRootName]/[wokBAG:view:GetViewImport][wokBAG:cpnt:GetTagName $pnam]
-}
-;#
-;# Retourne le directory dans lequel il faut prendre les fichiers de pnam relativement la vue d'export.
-;#
-proc wokBAG:cpnt:GetExportName { pnam } {
-    return  [wokBAG:view:GetRootName]/[wokBAG:view:GetViewExport][wokBAG:cpnt:GetTagName $pnam]
-}
-;#
-;# Init d'un composant. 
-;# pnam    : Nom du composant ( racine du directory dans la VOB)
-;# from    : Nom d'une racine 
-;# cvt_data: Nom du directory ou ecrire le fichier cvt_data de clearexport
-;# cmt     : Un commentaire
-;# LAM : faudrait voir a faire les mkdir sinon ca marchera pas.
-;# le cd est fait dans pintegre c'est moche mais en attendant mieux.
-;#
-proc wokBAG:cpnt:Init { pnam from cvt_data {cmt Init} {location {}} } {
-    global tcl_platform
-    set tag [wokBAG:cpnt:GetTagName $pnam]
-    if { $location != {} } {
-       set vbs [file join [$location ${pnam}.vbs]]
-    } else {
-       set vbs [file join [wokBAG:bag:GetAdmName] ${pnam}.vbs]
-    }
-    if { "$tcl_platform(platform)" == "unix"    } {
-       if ![file exists $tag] {
-           catch { mkdir -path $tag }
-       }
-       if ![file exists $vbs] {
-           catch { mkdir -path [file dirname $vbs] }
-       }
-    }
-    ;#lappend l "cleartool mkvob -tag $tag -nc -public -password $passwd $vbs"
-    lappend l "cleartool mkvob -nc -tag $tag $vbs"
-    lappend l "cleartool mount $tag"
-    lappend l "cleartool mkhlink AdminVOB vob:${tag} vob:[wokBAG:label:GetAdminVOB]"
-    ;#lappend l "cd $from"
-    lappend l "clearexport_ffile -r -o $cvt_data ."
-    lappend l "cleartool startview [wokBAG:view:GetViewImport]"
-    lappend l "clearimport -dir [wokBAG:cpnt:GetImportName $pnam] -comment \"$cmt\" $cvt_data"
-    return $l
-}
-;#
-;#
-;#
-proc wokBAG:cpnt:sortnam { pnam1 pnam2 } {
-    if { [lindex [split $pnam1 _] end] >  [lindex [split $pnam2 _] end] } {
-       return -1
-    } else {
-       return 1
-    }
-}
-;#
-;#
-;#
-proc wokBAG:cpnt:Del { pnam } {
-    lappend l "cleartool umount [wokBAG:bag:GetRootTagName]/${pnam}"
-    lappend l "cleartool rmvob -force [file join [wokBAG:bag:GetAdmName] ${pnam}.vbs]"
-    return $l
-}
-;#
-;# Returns the list of "patches" registered for pnam (Patch 0 is the version base.)
-;# pnam is a component name without version ( no _)
-;#
-proc wokBAG:cpnt:Patches { pnam {upto 99999} } {
-    set l {}
-    foreach x [wokBAG:label:ls ${pnam}_*] {
-       if { [lindex [split $x _] end] <= $upto } {
-           lappend l [file tail $x]
-       }
-    }
-    return [lsort -command wokBAG:cpnt:sortnam $l]
-}
-;#
-;# Returns the name of the label to place on pnam (_1 is the base version.)
-;# pnam is a component name without version ( no _)
-;#
-proc wokBAG:cpnt:GetLabel { pnam } {
-    set llp [wokBAG:cpnt:Patches $pnam]
-    if { $llp != {} } {
-       set n [lindex [split [lindex [wokBAG:cpnt:Patches $pnam] 0] _] 1]
-       return ${pnam}_[incr n]
-    } else {
-       return ${pnam}_1
-    }
-}
-;#
-;# fait a_1 b_2 c_3 => map(a)=1,map(b)=2, map(c)=3 Comme parse ci dessous
-;#
-proc wokBAG:cpnt:explode  { lpnam_x map } {
-    upvar $map TLOC
-    foreach pnam_x ${lpnam_x} {
-       set TLOC([lindex [split ${pnam_x} _] 0]) [lindex [split ${pnam_x} _] 1] 
-    }
-    return
-}
-;#
-;# fait map(a)=1,map(b)=2, map(c)=3 => a_1 b_2 c_3 (inverse de ci dessus)
-;#
-proc wokBAG:cpnt:implode  { map } {
-    upvar $map TLOC
-    set l {}
-    foreach n [array names TLOC] {
-       lappend l ${n}_$TLOC($n)
-    }
-    return $l
-}
-;# 
-;# Parse un nom d'UL a la JCR. 
-;# KERNEL-B4-2_8 => root=KERNEL,basename=KERNEL-B4-2,extension=B4-2,version=8
-;# KERNEL-B4-2   => root=KERNEL,basename=KERNEL-B4-2,extension=B4-2,version={}
-;# KERNEL        => root=KERNEL,basename={}         ,extension={}  ,version={}
-proc wokBAG:cpnt:parse { option pnam_x } {
-    if { [regexp {([^-]*)-([^_]*)_([0-9]+)} ${pnam_x} a r e v] != 0 } {
-       switch -- $option {
-           root      { return $r }
-           extension { return $e }
-           version   { return $v }
-           basename  { return ${r}-${e} }
-       }
-    } elseif { [regexp {([^-]*)-([^_]*)} ${pnam_x} a r e] != 0 } {
-       switch -- $option {
-           root      { return $r }
-           extension { return $e }
-           version   { return {} }
-           basename  { return ${r}-${e} }
-       }
-    } else {
-       return {}
-    }
-}
-;#
-;# Update directory dir ( which already exists in VOB ) with files in lfile.
-;# Each element of lfile (non empty ) has the following format:
-;# <sta> basn name1 [name2]
-;# sta is # - or + if the file must be (resp ) modified, removed or added.
-;#  if the file must be modified: 
-;#    name1/basn is the full path of the VOB element to be checkouted 
-;#    name2/basn is the full path of the file used for update 
-;# if the file must be removed:
-;#    name1/basn is the full path of the VOB element to be removed.
-;#    name2 is blank
-;# if the file must be added:
-;#    name1/basn is the full path of the file used for the creation.
-;#    
-;#
-proc wokBAG:cpnt:UpdateDirectory { dir lfile } {
-    set l {}
-    foreach e $lfile {
-       if [regexp {    #[ ]*([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)} $e all basn elem from] {
-           lappend l "cleartool co -nc [file join $elem $basn]"
-           lappend l "cleartool ci -nc -rm -from [file join $from $basn] [file join $elem $basn]"
-       } elseif [regexp {    \-[ ]*([^ ]*)[ ]*([^ ]*)} $e all basn elem] {
-           set mustco 1
-           lappend l "cleartool rmname -nc [file join $elem $basn]"
-       } elseif [regexp {    \+[ ]*([^ ]*)[ ]*([^ ]*)} $e all basn from] {
-           set mustco 1
-           lappend l "cleartool mkelem -nc [file join $dir $basn]"
-           lappend l "cleartool ci -nc -rm -from [file join $from $basn] [file join $dir $basn]"
-       } else {
-           puts stderr "wokBAG:cpnt:UpdateDirectory: Line $e does not match anything !!"
-           return {}
-       }
-    }
-
-    if [info exists mustco] {
-       lappend l "cleartool ci -nc $dir"
-       return  [linsert $l 0 "cleartool co -nc $dir"]
-    } else {
-       return $l
-    }
-}
-;#
-;# Creates a directory and populates it with new files.
-;#
-proc wokBAG:cpnt:CreateDirectory { dir lfile } {
-    lappend l "cleartool co -nc [file dirname $dir]"
-    lappend l "cleartool mkelem -nc -eltype directory $dir"
-    foreach e $lfile {
-       if [regexp {    \+[ ]*([^ ]*)[ ]*([^ ]*)} $e all basn from] {
-           lappend l "cleartool mkelem -nc [file join $dir $basn]"
-           lappend l "cleartool ci -nc -rm  -from [file join $from $basn] [file join $dir $basn]"
-       } else {
-           puts stderr "wokBAG:cpnt:CreateDirectory: Line $e does not match anything !!"
-           return {} 
-       }
-    }
-    lappend l "cleartool ci -nc $dir"
-    lappend l "cleartool ci -nc [file dirname $dir]"
-}
-;#
-;# Removes all files in dir and removes directory itself.
-;#
-proc wokBAG:cpnt:DeleteDirectory { dir lfile } {
-    lappend l "cleartool co -nc [file dirname $dir]"
-    lappend l "cleartool rmname -nc $dir"
-    lappend l "cleartool ci -nc [file dirname $dir]"
-}
-;#               (((((((((((( C O N F I G ))))))))))))
-;#
-;# <name> : The name of the config K4E, ..
-;#
-;# If Option is "strong" => then complete only if component already exists in Bag.
-;# If Option is "weak"   => then ignore components not found in the Bag.
-;#
-proc wokBAG:cfg:Complete { name cmplst {option "strong"} } {
-    set l {}
-    wokBAG:cpnt:explode [wokBAG:cfg:read $name] LABELS
-    foreach pnam $cmplst {
-       if [regexp {([^_]*)_([0-9]*)} $pnam all n v] {
-           if [info exists LABELS($n)] {
-               if { $v <= $LABELS($n) } {
-                   set l [concat $l $pnam]
-               } else {
-                   puts stderr "Error: Patch level $v for $n does not exists. Higher level is $LABELS($n)"
-                   return {} 
-               }
-           } else {
-               puts stderr "Error: $n is not a component."
-               if { "$option" == "strong" } {
-                   return {}
-               }
-           }
-       } else {
-           if [info exists LABELS($pnam)] {
-               set l [concat $l ${pnam}_$LABELS($pnam)]
-           } else {
-               puts stderr "Error: $pnam is not a component."
-               if { "$option" == "strong" } {
-                   return {}
-               }
-           }
-       }
-    }
-    return $l
-}
-;#
-;#  Returns all pnam_x belonging to assembly/config name
-;#  first is the name of configuration ( K4E, K4F ,.. )
-;#  vrs is the version number of the configuratrion
-;#  if vrs {} then use LATEST.
-;#
-proc wokBAG:cfg:read { name {vrs {}} } {
-    set l {}
-    foreach x [wokBAG:level:ls $name] {
-       set l [concat $l [wokUtils:FILES:FileToList $x]]
-    }
-    return $l
-}
-;#
-;# ecrit un config spec. lfpnam list de full path de composants dans le Bag
-;#
-proc wokBAG:cfg:ListToConfig { lfpnam file } {
-    set l {}
-    foreach pnam $lfpnam {
-       lappend l "element * $pnam -nocheckout"
-    }
-    wokUtils:FILES:ListToFile $l $file
-    return
-}
-;#               (((((((((((( E R R O R L O G ))))))))))))
-;#
-;#
-proc wokBAG:errlog:ls { } {
-    foreach f [readdir [wokBAG:errlog:location]] {
-       puts $f
-    }
-}
-;#
-;#
-;#
-proc wokBAG:errlog:purge { } {
-    foreach f [glob [wokBAG:errlog:location]/*] {
-       unlink  $f
-    }
-}
-;#
-;#
-;#
-proc wokBAG:errlog:Add { pnam } {
-    set p [file join [wokBAG:errlog:location] ${pnam}.[clock seconds]]
-    if ![ catch { set id [ open $p w ] } ] {
-       return $id
-    } else {
-       return {}
-    }
-}
-proc wokBAG:errlog:Regexp { } {
-    set rg1 {cleartool: Error:}
-}
diff --git a/src/WOKTclLib/p-ul.tcl b/src/WOKTclLib/p-ul.tcl
deleted file mode 100755 (executable)
index c0b1e8f..0000000
+++ /dev/null
@@ -1,1362 +0,0 @@
-#========================================================================================================\r
-# p-put Version 3.02 beta (egu 17/07/98 )\r
-# ajout verification que les fichiers embarques ne sont pas protege en ecriture sous WNT\r
-#========================================================================================================\r
-\r
-#  \r
-# Usage\r
-# \r
-proc p-putUsage { } {\r
-    puts stdout {p-put Version 3.02 17/07/98}\r
-    puts stdout {Usage   : p-put [-h]   (this help)}\r
-    puts stdout {Usage   : p-put [-web] (updating web site)}\r
-    puts stdout {Usage   : p-put <cfg> [<cfg1>...] -B <BAG> -U <UL>  }                                   \r
-    #puts stdout {          p-put <cfg> [<cfg1>...] -B <BAG> -U <UL>  [-P <patch>]                               }\r
-    puts stdout {          p-put <cfg> [<cfg1>...] -B <BAG> -U <UL>  [-P <patch>] -L <liste-patch> -C "comment" }\r
-    return\r
-}\r
-\r
-proc p-put { args } {\r
-    global env\r
-\r
-    set tblreq(-h)   {}\r
-    set tblreq(-web)   {}\r
-    set tblreq(-B)   value_required:string\r
-    set tblreq(-U)   value_required:string\r
-    set tblreq(-P)   value_required:string\r
-    set tblreq(-L)   value_required:string\r
-    set tblreq(-C)   value_required:string\r
-\r
-    set param {}\r
-    if { [putils:EASY:GETOPT param tabarg tblreq p-putUsage $args] == -1 } return\r
-\r
-#==================== OPTIONS SETTINGS ==========================\r
-\r
-    if [info exists tabarg(-web)] {\r
-       update-web-data\r
-       return\r
-    }\r
-\r
-    if [info exists tabarg(-h)] {\r
-       p-putUsage\r
-       return\r
-    }\r
-\r
-    set param_length [llength $param]\r
-\r
-    if { $param_length == 0 } {\r
-       puts stderr "Error : You must enter at least one configuration"\r
-       return error\r
-    } else {\r
-       set list_config {}\r
-       foreach config $param {\r
-           lappend list_config $config\r
-       }\r
-    }\r
-\r
-    ### ABOUT UL ###\r
-\r
-    set nbargx 0\r
-    if [info exists tabarg(-B)] {\r
-       set SRC_BAG_PATH $tabarg(-B)\r
-       if ![file exists $SRC_BAG_PATH] { \r
-           puts stderr " Error : can not see $SRC_BAG_PATH"\r
-           return error\r
-       }\r
-       incr nbargx\r
-    }\r
-\r
-    if [info exists tabarg(-U)] {\r
-       set SRC_BAG_DIR $tabarg(-U)\r
-       set SRC_DIR  ${SRC_BAG_PATH}/${SRC_BAG_DIR}\r
-       if ![file exists ${SRC_DIR}] { \r
-           puts stderr " Error : can not see $SRC_BAG_DIR directory under $SRC_BAG_PATH"\r
-           return error\r
-       }\r
-       incr nbargx\r
-    }\r
-\r
-    if [info exists tabarg(-P)] {\r
-       set PATCH $tabarg(-P)\r
-       set AUTONUM 0\r
-    } else {\r
-       set PATCH {}\r
-       set AUTONUM 1\r
-    }\r
-\r
-    ### ABOUT PATCH ###\r
-\r
-    set nbargy 0\r
-\r
-    if [info exists tabarg(-C)] {\r
-       set COMMENT $tabarg(-C)\r
-       incr nbargy\r
-    }\r
-    \r
-    \r
-        if [info exists tabarg(-L)] {\r
-       set LIST_FILE $tabarg(-L)\r
-       if ![file readable $LIST_FILE] { \r
-           puts stderr " Error : can not read $LIST_FILE"\r
-           return\r
-       } else {\r
-           set f [open $LIST_FILE r]\r
-           set PB 0\r
-           while { [ gets $f line ] >= 0 } {\r
-               if ![catch { glob ${SRC_DIR}/${line} } ] {\r
-                   foreach fich [glob ${SRC_DIR}/${line}] {\r
-                       if ![file readable $fich] {\r
-                           puts stderr " Error : can not read $fich"\r
-                           set PB 1\r
-                       } \r
-                   }   \r
-                   if { $env(WOKSTATION) == "wnt"} {\r
-                       foreach fich [glob ${SRC_DIR}/${line}] {\r
-                           if ![file writable $fich] {\r
-                               puts stderr " Error : $fich not writable, problem will exist for next patch"\r
-                               set PB 1\r
-                           }\r
-                       }\r
-                   }\r
-               } else {\r
-                   puts stderr " Error : can not glob line  ${SRC_DIR}/${line}"\r
-                   set PB 1\r
-               }\r
-           }\r
-           close $f\r
-           if { $PB == 1 } { \r
-               puts stderr " Procedure aborted " \r
-               return 0\r
-           }\r
-       }\r
-       incr nbargy\r
-    } else {\r
-       foreach fich [recursive_glob ${SRC_DIR} *] {\r
-           if ![file readable $fich] {\r
-               puts stderr " Error : can not read $fich"\r
-               return\r
-           }\r
-       }\r
-       if { $env(WOKSTATION) == "wnt"} {\r
-           foreach fich [recursive_glob ${SRC_DIR} *] {\r
-               if ![file writable $fich] {\r
-                   puts stderr " Error : $fich not writable, problem will exist for next patch"\r
-                   return\r
-               }\r
-           }\r
-       }\r
-    }\r
-\r
-    ### REFERENCE ###\r
-\r
-    set ULBAG [wokparam -e %BAG_Home REFERENCE]\r
-\r
-    ### LETS GO ###\r
-    \r
-    if [expr {$nbargx == 2 && $nbargy == 0}] {\r
-       if {[put-ul $SRC_BAG_PATH $SRC_BAG_DIR $ULBAG $list_config] == 1 } { return end }\r
-       return error\r
-    }\r
-\r
-    if [expr { $nbargx == 2 && $nbargy == 2}] {\r
-       if {[put-patch $SRC_BAG_PATH $SRC_BAG_DIR $AUTONUM $PATCH $ULBAG $LIST_FILE $COMMENT $list_config] == 1 } { return end }\r
-       return error\r
-    } \r
-    \r
-}\r
-\r
-##################### PUT-UL  ######################################\r
-\r
-proc put-ul { src_bag ul_name dest_dir config_list} {\r
-    \r
-    \r
-    if [file exists ${dest_dir}/${ul_name}.tar.gz] {\r
-       puts stderr "Error :  ${ul_name}.tar.gz already exist in ${dest_dir}"\r
-       return 0\r
-    }\r
-    \r
-    set savpwd [pwd]\r
-    cd ${src_bag}/${ul_name} \r
-\r
-    puts stdout "Info : Creating ${dest_dir}/${ul_name}.tar"\r
-    \r
-    if { [putils:EASY:tar tarfromroot ${dest_dir}/${ul_name}.tar .] == -1 } {\r
-       puts stderr "Error while creating ${dest_dir}/{ul_name}.tar "\r
-       catch {unlink ${dest_dir}/${ul_name}.tar}\r
-       cd $savpwd\r
-       return 0\r
-    } \r
\r
-    puts stdout "Info : Gziping  ${dest_dir}/${ul_name}.tar"\r
-    \r
-    if { [putils:FILES:compress ${dest_dir}/${ul_name}.tar] == -1 } {\r
-       puts stderr "Error while creating ${dest_dir}/${ul_name}.tar.gz\r
-       catch {unlink ${dest_dir}/${ul_name}.tar}\r
-       catch {unlink ${dest_dir}/${ul_name}.tar.gz}\r
-       cd $savpwd\r
-       return 0\r
-    }\r
-\r
-    #### Construction du fichier de trace ####\r
-    puts stdout "Info : Creating trace file  ${dest_dir}/TRC/${ul_name}.trc"\r
-    set trace [open ${dest_dir}/TRC/${ul_name}.trc w]\r
-    foreach fich [glob ${src_bag}/${ul_name}/*] {\r
-       puts $trace $fich\r
-    }\r
-    close $trace\r
-\r
-    #### Inscription dans le(s) configul(s) ####\r
-    set now [clock format [getclock] -format "%d/%m/%y   %H:%M:%S"]\r
-    foreach config $config_list {\r
-       set CONFIGUL  ${dest_dir}/CONFIGUL.${config}\r
-       puts stdout " Updating  $CONFIGUL"\r
-        set f [ open $CONFIGUL a+]\r
-        set s [format "%-18s %s" $ul_name $now]\r
-       puts $f $s\r
-        close $f\r
-    }\r
-\r
-    ###fin\r
-    puts stdout  "  success... at [set now [string range [fmtclock [getclock]] 0 18]]"\r
-    cd $savpwd\r
-\r
-\r
-    #### mise a jour des fichiers du web ####  \r
-    update-web-data\r
-\r
-    return 1           \r
-}\r
-\r
-\r
-#\r
-##################### PUT-PATCH  ######################################\r
-#\r
-\r
-proc put-patch { src_bag ul_name AUTONUM patch_name dest_bag lst_patch comment config_list} {\r
-    \r
-    set dest_dir $dest_bag/PATCH\r
-\r
-    ### Pour la numerotation automatique ###\r
-    if { $AUTONUM} {\r
-       set level [conf_ul_level $ul_name [lindex $config_list 0] $dest_bag]\r
-       foreach config $config_list {\r
-       if ![ file exists  ${dest_dir}/PATCHISTO.${config} ] {\r
-               puts stderr "Error autonum: File  ${dest_dir}/PATCHISTO.${config} dont exist, you must create it"\r
-               return 0\r
-           }\r
-           set new_level [conf_ul_level $ul_name $config $dest_bag]\r
-           if { $new_level != $level } {\r
-               puts stderr " Error autonum : different patch levels in different configul "\r
-               return 0\r
-           }\r
-       }\r
\r
-       \r
-       if { $level == -1 } { \r
-           puts stderr " Error : can't calculate patch levels "\r
-           return 0\r
-       }\r
-       incr level\r
-       set patch_name ${ul_name}_${level}\r
-        puts stdout "Info : patch auto numerotation = $level"\r
-    }\r
-\r
-    #####\r
-\r
-    set savpwd [pwd]\r
-    cd ${src_bag}/${ul_name}\r
-       \r
-    if [file exists ${dest_dir}/${patch_name}.tar.gz ] {\r
-       puts stderr "Error : File  ${dest_dir}/${patch_name}.tar.gz already exists. Nothing done"\r
-       cd $savpwd\r
-       return 0\r
-    }\r
-\r
-    puts stdout "Info : Creating  ${dest_dir}/${patch_name}.tar"\r
-    \r
-if { [putils:EASY:tar tarfromliste ${dest_dir}/${patch_name}.tar ${lst_patch}] == -1 } {\r
-       puts stderr "Error while creating ${dest_dir}/{patch_name}.tar "\r
-       catch {unlink ${dest_dir}/{patch_name}.tar }\r
-       cd $savpwd\r
-       return 0\r
-    } \r
-       \r
-    puts stdout "Info : Gziping  ${dest_dir}/${patch_name}.tar"\r
-    if { [putils:FILES:compress ${dest_dir}/${patch_name}.tar] == -1 } {\r
-       puts stderr "Error while creating ${dest_dir}/${patch_name}.tar.gz\r
-       catch {unlink ${dest_dir}/${patch_name}.tar}\r
-       catch {unlink ${dest_dir}/${patch_name}.tar.gz}\r
-       cd $savpwd\r
-       return 0\r
-    }\r
-\r
-    puts stdout  "  success... at [set now [string range [fmtclock [getclock]] 0 18]]"\r
-       \r
-    #### Construction du fichier de trace ####\r
-    puts stdout "Info : Creating trace file  ${dest_dir}/TRC/${patch_name}.trc"\r
-    set f     [open $lst_patch r]\r
-    set trace [open ${dest_dir}/TRC/${patch_name}.trc w]\r
-    while { [ gets $f line ] >= 0 } {\r
-       foreach fich [glob ${src_bag}/${ul_name}/${line}] {\r
-           puts $trace $fich\r
-       }\r
-    }\r
-    close $f\r
-    close $trace\r
-               \r
-    #### Inscription dans le(s) patchisto(s) ####\r
-    \r
-    #set now [string range [fmtclock [getclock]] 0 18]\r
-    set now [clock format [getclock] -format "%d/%m/%y   %H:%M:%S"]\r
-    set level [lindex [split ${patch_name} _] end]\r
-    set ul_name [lindex [split ${patch_name} _] 0]\r
-    foreach config $config_list {\r
-        set PATCHISTO "${dest_dir}/PATCHISTO.${config}"\r
-        puts stdout "Info : updating $PATCHISTO"\r
-        set f [open $PATCHISTO r+]\r
-       set indice 0\r
-       while { [ gets $f line ] >= 0 } {\r
-           if [ ctype alnum [ lindex $line 0 ] ] {\r
-               set indice [ lindex $line 0 ]\r
-           }\r
-       }\r
-        incr indice\r
-       puts stdout "Info : $PATCHISTO patch indice = $indice"\r
-        close $f\r
-        set lpatch [putils:FILES:FileToList $PATCHISTO ]\r
-       set s [format "%-5s%-18s%3s   %-5s    %s" $indice $ul_name $level $now $comment]\r
-        lappend lpatch $s\r
-       putils:FILES:ListToFile $lpatch $PATCHISTO\r
-    }\r
-\r
-    ###FIN\r
-    puts stdout  "  success... at [set now [string range [fmtclock [getclock]] 0 18]]"\r
-    cd $savpwd\r
-\r
-    #### mise a jour des fichiers du web ####  \r
-    update-web-data\r
-\r
-    return 1           \r
-}\r
-\r
-#=================================================================================\r
-proc conf_ul_level { ul_name config bag_path } {\r
-\r
-    set CONFIGUL ${bag_path}/CONFIGUL.${config}\r
-    set PATCHISTO ${bag_path}/PATCH/PATCHISTO.${config}\r
-\r
-    set level -1\r
-    if [file exists ${CONFIGUL} ] { \r
-       set f [open $CONFIGUL r ]\r
-       while {[gets $f line] >= 0 } {\r
-           if [ctype alnum [ cindex [lindex $line 0] 0 ] ] {\r
-               if { [lindex $line 0] == $ul_name } {\r
-                   set level 0\r
-               }\r
-           }\r
-       }\r
-        close $f\r
-    }\r
-    \r
-    if [file exists ${PATCHISTO}] { \r
-       set f [open $PATCHISTO r]\r
-       while { [ gets $f line ] >= 0 } {\r
-           if [ ctype alnum [ lindex $line 0 ] ] {\r
-               if { [lindex $line 1] == $ul_name } {\r
-                   set level [lindex $line 2]\r
-               }\r
-           }\r
-       }\r
-       close $f\r
-    }\r
-    return $level\r
-}\r
-\r
-#################################################\r
-proc update-web-data  { } {\r
-\r
-    global env        \r
-    set PROCFTPPATH $env(FACTORYHOME)/MajWeb\r
-    puts -nonewline "=== Updating www data....."\r
-\r
-    if { $env(WOKSTATION) == "wnt"} {\r
-       if [file exists $PROCFTPPATH/putdata.ftp] { \r
-               if [catch { eval exec ftp {-v -i -s:$PROCFTPPATH/putdata.ftp} } status] {\r
-                   puts stderr $status\r
-               } else {\r
-                   puts " done ==="\r
-               }\r
-       } else {\r
-         puts stdout "Info : Cant find $PROCFTPPATH/putdata.ftp"\r
-      }\r
-    } else {\r
-       if [file exists $PROCFTPPATH/putdata.com] { \r
-            if [catch { eval exec $PROCFTPPATH/putdata.com } status] {\r
-               puts stderr $status\r
-           } else {\r
-               puts " done ==="\r
-           }\r
-       } else {\r
-        puts stdout "Info : Cant find $PROCFTPPATH/putdat.ftp"\r
-      }\r
-    }\r
-return\r
-}\r
-\r
-#========================================================================================================\r
-# p-get Version 3.04 (egu 29/09/98 )\r
-# ajout de l'option -f pour forcer l'install des patch\r
-# (ajout de l'option -runtime pour ne pas faire de declarations\r
-# liees a la descente des patchs)activite non visible\r
-# Modification de nombreuses functions pour wok: wok n'est plus versionne\r
-# suppression des options -v (verbose) et -n (no execute)\r
-#========================================================================================================\r
-#========================================================================================================\r
-#========================================================================================================\r
-\r
-proc p-get-usage { } {\r
-    puts stderr {}\r
-    puts stdout {p-get Version 3.04 (september 98)}\r
-    #puts stderr {Usage  : p-get [-h][-f][-rt][-clean][-d dirinstall] <conf> [del list] [-P patch |-I indice]}\r
-    puts stderr {Usage  : p-get [-h][-f][-clean][-d dirinstall] <conf> [del list] [-P patch |-I indice]}\r
-    puts stderr {                   -h : this help}\r
-    puts stderr {                   -f : force install}\r
-#   puts stderr {                  -rt : runtime mode} #fonctionne mais volontairement cache\r
-    puts stderr {               -clean : clean mode}\r
-    puts stderr {      [-d dirinstall] : directory to install ul}\r
-    puts stderr {               <conf> : configuration}\r
-    puts stderr {           [del list] : list of one or more Delivery: [ <del1> [del2] [del3] ... ]}\r
-    puts stderr {                        OR "ALL" ("ALL" is default value)}\r
-    puts stderr {          [-P patch | : patch number OR "ALL" ("ALL" is default value)}\r
-    puts stderr {          |-I indice] : indice number OR "ALL" ("ALL" is default value)}\r
-#    puts stderr { Online doc at http://info.paris1.matra-dtv.fr/Devlog/Departements/Dcfao/env/pget304.htm}\r
-    return\r
-}\r
-\r
-#========================================================================================================\r
-\r
-proc p-get { args } {\r
-    \r
-    global env\r
-    \r
-    set tblreq(-h)      {}\r
-    set tblreq(-f)      {}\r
-    set tblreq(-rt)     {}\r
-    set tblreq(-clean)  {}\r
-    set tblreq(-d)   value_required:string\r
-    set tblreq(-P)   value_required:string\r
-    set tblreq(-I)   value_required:string\r
-    \r
-    set param {}\r
-    if { [putils:EASY:GETOPT param tabarg tblreq p-get-usage $args] == -1 } return\r
-    set param_length [llength $param]\r
-    \r
-    #======================================= VARIABLES SETTINGS =============================================\r
-    if [info exists tabarg(-h)] {\r
-       p-get-usage\r
-       return\r
-    }\r
-    \r
-    #----------- WOK SETTINGS -------------------------------------  \r
-    wokclose -a [wokparam -e %[finfo]_Home]\r
-    set SRCBAGPATH  [wokparam -e %BAG_Home REFERENCE]\r
-    set SRCPATCHPATH $SRCBAGPATH/PATCH\r
-    set DESTBAGPATH  [wokparam -e %BAG_Home]\r
-\r
-    #------------- OPTIONS SETTINGS -------------------------------\r
-    set FORCE    [info exists tabarg(-f)]\r
-    set RUNTIME  [info exists tabarg(-rt)]\r
-    set CLEAN    [info exists tabarg(-clean)]\r
-\r
-    if [info exists tabarg(-d)] {\r
-       set NEWDIR $tabarg(-d)\r
-    } else {\r
-       set NEWDIR 0\r
-    }\r
-    \r
-    if { $param_length == 0 } {\r
-       puts stderr " Error : You must at least enter a configuration"\r
-       p-get-usage\r
-       return\r
-    }\r
-\r
-    set CONF [lindex $param 0]\r
-    set CONFIGUL ${SRCBAGPATH}/CONFIGUL.${CONF}\r
-    if { ![file exists $CONFIGUL] } {\r
-       puts stderr " Error : Cannot find $CONFIGUL, maybe version $CONF don't exist "\r
-       p-get-usage\r
-       return\r
-    }\r
-    \r
-    set PATCHISTO ${SRCPATCHPATH}/PATCHISTO.${CONF}\r
-    \r
-    set ul_list {}\r
-    if { $param_length == 1 } {  lappend ul_list ALL }\r
-    if { $param_length >= 2 } {\r
-       if { [lindex $param 1] == "ALL" } {  \r
-           lappend ul_list ALL \r
-       } else {\r
-           for { set i 1 } { $i < $param_length } { incr i } {\r
-               lappend ul_list [lindex $param $i]\r
-           }\r
-       }\r
-    }\r
-    \r
-    if [info exists tabarg(-P)] {\r
-       set maxlevel $tabarg(-P)\r
-       if { $maxlevel != "ALL" && [ctype digit $maxlevel] == 0 } {\r
-           puts stderr " Error : -P option must be a number or \"ALL\""\r
-           p-get-usage\r
-           return\r
-       }\r
-    } else {\r
-       set maxlevel ALL\r
-    }\r
-    \r
-    if [info exists tabarg(-I)] {\r
-       set maxindice $tabarg(-I)\r
-       if { $maxindice != "ALL" && [ctype digit $maxindice] == 0 } {\r
-           puts stderr " Error : -I option must be a number or \"ALL\""\r
-           p-get-usage\r
-           return\r
-       }\r
-    } else {\r
-       set maxindice ALL\r
-    }\r
-    \r
-    \r
-    #----------- OPTIONS RESTRICTIONS --------------------------\r
-    \r
-    if { $maxlevel != "ALL" && $maxindice != "ALL" } {\r
-       puts stderr "Error : You can't use -I and -P options together"\r
-       return\r
-    }\r
-    \r
-    if { $maxlevel != "ALL" } {\r
-       if { [llength $ul_list] > 1 || [lindex $ul_list 0] == "ALL"} {\r
-           puts stderr "Error : You can't use -P option with more than one selected UL"\r
-           return\r
-       }\r
-    }\r
-    \r
-    #-- Infos --\r
-    puts "SELECTED UL(s)   : $ul_list"\r
-    puts "CONFIGURATION    : $CONF"\r
-    puts "MAX PATCH LEVEL  : $maxlevel"\r
-    puts "MAX INDICE LEVEL : $maxindice"\r
-    if { $NEWDIR != 0 } {\r
-       puts "INSTALLATION DIR : $NEWDIR"\r
-    } else {\r
-       puts "INSTALLATION DIR : $DESTBAGPATH"\r
-    }\r
-    if $FORCE      { puts "FORCE   ON" }\r
-    if $RUNTIME    { puts "RUNTIME ON" }\r
-    puts {}\r
-\r
-       \r
-    #================================= LET'S GO ==============================================\r
-    #====== creating array mytab of couples (ul full name - patch level to be installed) ======\r
-\r
-    #reconstruct ul_list if "ALL" ul specified\r
-    if { [lindex $ul_list 0] == "ALL" } {\r
-       set admdir [wokparam -e %[finfo]_Adm]\r
-       set file ${admdir}/${CONF}.edl\r
-       if [file exists $file] {\r
-           wokclose -a [wokparam -e %[finfo]_Home]\r
-           set lst_conf [join  [wokparam -e %${CONF}_Config] ]\r
-           if ![ catch { wokparam -e %${CONF}_Runtime } gonogo ] {\r
-               foreach a [join  [wokparam -e %${CONF}_Runtime] ] { lappend lst_conf $a }\r
-           } \r
-           set ul_list {}\r
-           foreach p $lst_conf {\r
-               if {  [lindex [split $p "-"] 1] != $CONF } {\r
-                   puts stdout "   Info: I don't take accompt of a bad parcel name in your $file : $p"\r
-                   #return\r
-               } else {\r
-               lappend ul_list [lindex [split $p "-"] 0]\r
-               }       \r
-           }\r
-           foreach p $lst_conf {\r
-               if {  [lindex [split $p "-"] 1] != $CONF } {\r
-                   puts stdout "   Info: I don't take accompt of a bad parcel name in your $file : $p"\r
-                   #return\r
-               } else {\r
-               lappend ul_list [lindex [split $p "-"] 0]\r
-               }       \r
-           }\r
-       } else {\r
-           puts stderr "Error: None ul installed. Option ul_list = ALL can't be used"\r
-           return\r
-       }\r
-    }\r
-\r
-    #construct array from CONFIGUL file\r
-    if { [array-set-from-CONFIGUL tab $CONFIGUL $ul_list] == 0 } { return }\r
-\r
-    if { [array exists tab] == 0 } {\r
-       puts stderr "Error : none del of $CONF matching given list"\r
-       return\r
-    }\r
-\r
-    #construct array from PATCHISTO file\r
-    array-set-from-PATCHISTO tab  $PATCHISTO $ul_list $maxindice $maxlevel\r
-    \r
-    #----------- Infos ----------------- \r
-    puts "***** install levels *****"\r
-    array-print tab\r
-   \r
-\r
-    #====================== Installation from array "tab" ===============================\r
-    \r
-    set lstul [ lsort [array names tab] ]\r
-   \r
-    ### set destination directory ###\r
-    if { $NEWDIR != 0 } {\r
-       foreach MYUL $lstul {\r
-           set MYDEL [lindex [split $MYUL "-"] 0]\r
-           set PARCELPATH  [parcel-path $MYUL $CONF]\r
-           \r
-           #verrue wok\r
-           if { $MYDEL == "wok"} {\r
-               set pat ${DESTBAGPATH}/${MYUL}\r
-               if { $NEWDIR != $pat } {\r
-                   puts stderr "Error : wok cannot be install in a special directory"\r
-                   return\r
-               }\r
-           }\r
-           #fin verrue wok\r
-           \r
-           if { $PARCELPATH != 0 && $PARCELPATH != $NEWDIR } {\r
-               puts stderr "${MYDEL}-${CONF} already exist in $PARCELPATH : Cannot create same parcel in $NEWDIR"\r
-               puts stderr "Nothing done"\r
-               return\r
-           }\r
-       }\r
-    }\r
-\r
-    ### begin install from array tab ###\r
-    foreach MYUL $lstul {\r
-       if { $tab($MYUL) >= 0 } {\r
-           set MYDEL [lindex [split $MYUL "-"] 0]\r
-           \r
-           ### test for wok \r
-           if { $MYDEL == "wok"} { \r
-               set MYPARCEL ${MYUL}\r
-               set PARCELPATH ${DESTBAGPATH}/${MYPARCEL}\r
-           } else {\r
-               set MYPARCEL ${MYDEL}-${CONF}\r
-               if { $NEWDIR != 0 } {\r
-                   set PARCELPATH $NEWDIR \r
-               } else {\r
-                   set PARCELPATH  [parcel-path $MYUL $CONF]\r
-                   if { $PARCELPATH == 0 } {\r
-                       set PARCELPATH ${DESTBAGPATH}/${MYPARCEL}\r
-                   }\r
-               }\r
-           }\r
-           \r
-            if $FORCE {  \r
-               set level_to_begin_install 0 \r
-           } else {\r
-               set installed_level [parcel-level $MYUL $CONF]\r
-               set level_to_begin_install [expr ( $installed_level + 1)]\r
-           }\r
-           \r
-           if { $level_to_begin_install > $tab($MYUL) } {\r
-               set bag_patch_level [conf_ul_level $MYUL $CONF $SRCBAGPATH]\r
-#FUN 13/10/98 \r
-               if {$installed_level > $tab($MYUL)} {\r
-                   puts "\nWarning:  $MYUL is already at level $installed_level > $tab($MYUL)"\r
-               } else {\r
-                   puts "\n----- $MYUL is already at level $installed_level (max = $bag_patch_level)"\r
-               }\r
-           } else {\r
-               set s [format "\n----- INSTALLING %-15s\t%-3s>> %-3s in %s -----" $MYUL $level_to_begin_install $tab($MYUL) $PARCELPATH ]\r
-               puts stdout $s\r
-           }\r
-           \r
-           for { set pnumber $level_to_begin_install } { $pnumber <= $tab($MYUL) } { incr pnumber } {\r
-               puts stdout "INSTALL LEVEL $pnumber"\r
-               switch $pnumber 0 {\r
-                   if { ![install-ul $MYUL $SRCBAGPATH $PARCELPATH $CONF taberror $RUNTIME $FORCE]} { break }\r
-                   set pnumber [expr max(0,[parcel-level $MYUL $CONF])]\r
-               } default {\r
-                   if { ![install-patch  $MYUL $pnumber $SRCPATCHPATH $PARCELPATH $CONF taberror] } { break }\r
-                   \r
-               }\r
-           }\r
-            \r
-           if $CLEAN {\r
-               set lst_station [join [wokparam -e %[finfo -W]_Stations] " "]\r
-               foreach station [join [wokparam -e %REFERENCE_Stations]  " "] {\r
-                   if {[lsearch -exact $lst_station $station] == -1} { \r
-                       puts stdout "   - removing $station dependent files..."\r
-                       if { [file exists  $PARCELPATH/$station] }      { catch { exec rm -rf $PARCELPATH/$station  } }\r
-                       if { [file exists  $PARCELPATH/tmp/$station] }  { catch { exec rm -rf $PARCELPATH/tmp/$station  } }\r
-                       if { [file exists  $PARCELPATH/.adm/$station] } { catch { exec rm -rf $PARCELPATH/.adm/$station  } }\r
-                   }\r
-               }\r
-           }\r
-       }\r
-    }\r
-    array-print taberror\r
-      \r
-    return\r
-}\r
-\r
-#=================================================================\r
-# ARRAY-SET-FROM-CONFIGUL (egu)\r
-#\r
-# set "array_name" with couples (ul-level) get from "conf-file".\r
-# with ul matching "ul-list" element\r
-#=================================================================\r
-\r
-proc array-set-from-CONFIGUL { array_name conf_file ul_list } {\r
-\r
-    upvar $array_name tab\r
-    if [file readable $conf_file ] {\r
-       set f [open $conf_file r]\r
-       set line {}\r
-       while {[gets $f line] >= 0 } { \r
-           if { [llength $line] != 0 } { \r
-               if { [ctype alnum [cindex [lindex $line 0] 0]] == 1 } { \r
-                   set  ul_name  [lindex $line 0]\r
-                   if { [lindex $ul_list 0] == "ALL" } {\r
-                       set tab($ul_name) 0\r
-                   } else {\r
-                       foreach ul $ul_list {\r
-                           if { $ul == $ul_name ||  $ul == [lindex [split $ul_name "-"] 0 ] } {\r
-                               set tab($ul_name) 0 \r
-                               break\r
-                           }\r
-                       }\r
-                   }\r
-               }\r
-           }\r
-       }\r
-       close $f\r
-    } else {\r
-       puts stderr "Error : Can not read $conf_file"\r
-       return 0\r
-    }\r
-\r
-    return 1\r
-}\r
-\r
-\r
-#=================================================================\r
-# ARRAY-SET-FROM-PATCHISTO (egu)\r
-#\r
-# set "array_name" with couples (ul-level) get from "patch-file"\r
-# line of indice < max_i\r
-# with ul matching "ul-list" element \r
-# with level < max_p\r
-#=================================================================\r
-\r
-proc array-set-from-PATCHISTO { array_name patch_file ul_list {max_i ALL} {max_p ALL} } {\r
-\r
-    upvar $array_name tab\r
-    if { $max_i == "ALL" } { set maxindice 1000000 } else { set maxindice $max_i }\r
-    if { $max_p == "ALL" } { set maxpatch  1000000 } else { set maxpatch  $max_p }\r
-    if [ file readable $patch_file ] {\r
-       set f [open $patch_file r]\r
-       set line {}\r
-       incr maxindice\r
-       while { [ gets $f line ] >= 0 && [ lindex $line 0 ] != $maxindice } {\r
-           if { [ llength $line ] != 0 } {   \r
-               if { [ ctype alnum [ lindex $line 0 ] ] == 1 } {\r
-                   \r
-                   set ul_name  [lindex $line 1]\r
-                   set ul_level [lindex $line 2]\r
-                   if { [lindex $ul_list 0] == "ALL" } {\r
-                       set tab($ul_name) $ul_level \r
-                   } else {\r
-                       foreach ul $ul_list {\r
-                           if { $ul == $ul_name ||  $ul == [lindex [split $ul_name "-"] 0 ] } {\r
-                               set tab($ul_name) [expr min($ul_level,$maxpatch)] \r
-                               break\r
-                           }\r
-                       }\r
-                   }\r
-               }\r
-           }\r
-       }\r
-       close $f\r
-    } else {\r
-       #puts stderr "Info : Can't find $patch_file, no patch exist for this configuration"\r
-       return 0\r
-    }\r
-    return 1\r
-}\r
-\r
-#=================================================================\r
-# ARRAY-PRINT (egu)\r
-#=================================================================\r
-proc array-print { array_name } {\r
-    upvar $array_name tab\r
-    set lst [lsort [array names tab]] \r
-    foreach elt $lst {\r
-       set s [format "%-20s\t%s" $elt $tab($elt)]\r
-       puts stdout $s\r
-    }\r
-}\r
-\r
-#=================================================================\r
-# PARCEL-EXIST (egu)\r
-# test if parcel exist\r
-# Last modif: 27/07/98: for wok (param del become param ul)\r
-#=================================================================\r
-\r
-proc parcel-exist { ul conf } {\r
-    set del [lindex [split $ul "-"] 0]\r
-    #verrue wok\r
-    if { $del == "wok" } { \r
-       if [file exists [wokparam -e %BAG_Home]/${ul}] { \r
-           return 1 \r
-       } else {\r
-           return 0\r
-       }\r
-    }\r
-    #fin verrue wok\r
-    set ul_name ${del}-${conf}\r
-    set lst [ Winfo -p [finfo]:[finfo -W]]\r
-    if {[lsearch -exact $lst $ul_name] == -1} { return 0 } else { return 1 }\r
-}\r
-#=================================================================\r
-# PARCEL-PATH (egu)\r
-# return parcel-path, 0 if it parcel doesn't exist\r
-# Last modif: 27/07/98: for wok (param del become param ul)\r
-#=================================================================\r
-\r
-proc parcel-path { ul conf } {\r
-    set del [lindex [split $ul "-"] 0]\r
-    if [parcel-exist $ul $conf] {\r
-       if { $del == "wok" } {\r
-           set path [wokparam -e %BAG_Home]/${ul}\r
-       } else {\r
-           set path  [wokinfo -p HomeDir [finfo]:[finfo -W]:${del}-${conf}]\r
-       }\r
-       return $path\r
-    } else {\r
-       return 0\r
-    }\r
-}\r
-#=================================================================\r
-# PARCEL-LEVEL (egu)\r
-# return the patch top level already install, -1 if no install\r
-# Last modif: 27/07/98: for wok (param del become param ul)\r
-#=================================================================\r
-\r
-proc parcel-level { ul conf } {\r
-    if [parcel-exist $ul $conf] {\r
-       set del [lindex [split $ul "-"] 0]\r
-       if { $del == "wok" } {  \r
-           set getpatch_file [parcel-path $ul $conf]/.${ul}.GETPATCH \r
-       } else {\r
-           set getpatch_file [parcel-path $ul $conf]/.${del}-${conf}.GETPATCH\r
-       }\r
-       if [file exists $getpatch_file] {\r
-           set list_level [lsort -integer [p-get-installed $getpatch_file]]\r
-           set index [llength $list_level]\r
-           incr index -1\r
-           return [lindex $list_level $index]\r
-       } else {\r
-           return 0\r
-       }\r
-    } else {\r
-       return -1\r
-    }\r
-}\r
-\r
-#=================================================================\r
-# INSTALL-UL (egu)\r
-#\r
-# create and declare parcel, return 0 if failled\r
-# if success : return patch level already install\r
-# 27/07/98: verrue for wok (egu) ajout option force et runtime\r
-# 10/08/98: supression option vernose et no-execute\r
-#=================================================================\r
-\r
-proc install-ul  { ul_name src_dir dest_dir conf tab_error RUNTIME FORCE} {\r
\r
-    ### variables setting\r
-    upvar $tab_error tab_err\r
-\r
-    #verrue anti verion pour wok\r
-    set MYDEL [lindex [split $ul_name "-"] 0]\r
-    if { $MYDEL == "wok" } {\r
-       set MYPARCEL ${ul_name}\r
-    } else {\r
-       set MYPARCEL ${MYDEL}-${conf}\r
-    }\r
-    set WAREHOUSE_ADM_PATH [wokparam -e %[finfo -W]_Adm]\r
-    set wdeclare_file      ${WAREHOUSE_ADM_PATH}/${MYPARCEL}.edl \r
-    set getpatch_file      ${dest_dir}/.${MYPARCEL}.GETPATCH\r
-    set parcellist_file    ${WAREHOUSE_ADM_PATH}/ParcelList \r
-    \r
-    ### on verifie l'existence du fichier a decompresser\r
-    set tar ${src_dir}/${ul_name}.tar.gz\r
-    if ![file exists $tar] {\r
-       puts stderr ".... error"\r
-       puts stderr "Nothing done : Cannot find $tar"\r
-       set tab_err($ul_name) "Nothing done : Cannot find $tar"\r
-       return 0\r
-    }\r
-    \r
-    ### test cause option -d : dest_dir peut deja exister\r
-    if { ![file exists $dest_dir] } {\r
-       puts stdout "   - Mkdir $dest_dir ..."\r
-       if [catch { mkdir $dest_dir} mkstat]   {\r
-           puts stderr ".... error"\r
-           puts stderr "Nothing done : Cannot create $dest_dir : $mkstat"\r
-           set tab_err($ul_name) "Nothing done : Cannot create $dest_dir : $mkstat"\r
-           return 0\r
-       }\r
-    }\r
-    \r
-    ### security cleaning\r
-    if [file exists $getpatch_file] { \r
-       puts stdout "   - remove $getpatch_file"\r
-       exec rm -rf $getpatch_file \r
-    }\r
-    \r
-    ### let's go\r
-    puts stdout "   - Downloading $tar in $dest_dir..."\r
-    p-get-ptar  $ul_name $dest_dir $tar\r
-    \r
-    ### in FORCE case without first classic install\r
-  \r
-    if { $MYDEL != "wok" && $FORCE } { \r
-       if ![file exists [wokparam -e %[finfo -W]_Adm]/${MYPARCEL}.edl] { \r
-           set FORCE 0 \r
-           puts stdout "     -> Info: ${MYPARCEL} has never been declared, it will in spite of FORCE option"\r
-       }\r
-    }\r
-    \r
-    # if: verrue for wok: pas de declaration\r
-    if { $MYDEL != "wok" && !$FORCE } {\r
-       if { [file exists ${WAREHOUSE_ADM_PATH}/${MYPARCEL}.edl] } {\r
-           puts stderr ".... error"\r
-           puts stderr "Cannot create ${WAREHOUSE_ADM_PATH}/${MYPARCEL}.edl : file already exists"\r
-           set tab_err($ul_name) "Cannot create ${WAREHOUSE_ADM_PATH}/${MYPARCEL}.edl : file already exists"\r
-           return 0\r
-       } else {\r
-            puts stdout "   - Wdeclare ${MYPARCEL} (Don't worry about \"Error   : No entity...\")" \r
-           puts stdout "     -> Info: Wdeclare create $wdeclare_file and update $parcellist_file"\r
-           \r
-           if { [catch { Wdeclare -p $MYPARCEL -d -DHome=${dest_dir} -DStations=[join [wokparam -e %[finfo -W]_Stations] " "]  -DDelivery=${MYDEL} [finfo -W]  } ] } {\r
-               puts stderr ".... error" \r
-               puts stderr "Error Wdeclare $MYPARCEL"\r
-               set tab_err($ul_name) "Error Wdeclare $MYPARCEL"\r
-               return 0\r
-           } \r
-       }\r
-       \r
-       #declaration\r
-       set FACTORY_ADM_PATH [wokparam -e %[finfo]_Adm]\r
-       puts stdout "   - Updating ${FACTORY_ADM_PATH}/${conf}.edl file... "\r
-       if {[maj-conf-edl $conf $MYPARCEL $RUNTIME] == 0 } {\r
-           puts stderr ".... error"\r
-           puts stderr "Cannot update  ${FACTORY_ADM_PATH}/${conf}.edl"\r
-           set tab_err($ul_name) "Error : Cannot update  ${FACTORY_ADM_PATH}/${conf}.edl"\r
-           return 0\r
-       }\r
-    }   \r
-    return 1   \r
-}\r
-#=================================================================\r
-# MAJ-CONF-EDL (egu)\r
-# Mise a jour du fichier BAG/adm/${conf}.edl\r
-# return 1 si ok, 0 sinon\r
-#=================================================================\r
-\r
-proc maj-conf-edl { conf new_parcel RUNTIME } {\r
-    set admdir [wokparam -e %[finfo]_Adm]\r
-    set lst_conf {}\r
-    set lst_runt {}\r
-    if [file exists ${admdir}/${conf}.edl] {\r
-       wokclose -a [wokparam -e %[finfo]_Home]\r
-       set lst_conf [join  [wokparam -e %${conf}_Config] ]\r
-       ### test cause old version of $file.edl\r
-       if ![ catch { wokparam -e %${conf}_Runtime } toto ] {\r
-           set lst_runt  [join  [wokparam -e %${conf}_Runtime] ]\r
-       } \r
-       exec rm -rf ${admdir}/${conf}.edl    \r
-    } else {\r
-       #lappend lst_conf $new_parcel\r
-    }   \r
-    if { $RUNTIME } {\r
-       lappend lst_runt $new_parcel\r
-    } else {\r
-       lappend lst_conf $new_parcel\r
-    }\r
-    return [make-conf-edl $conf $lst_conf $lst_runt ]\r
-}\r
-#=================================================================\r
-# MAKE-CONF-EDL (egu)\r
-#=================================================================\r
-\r
-proc make-conf-edl { conf lst_conf lst_runt } {\r
-    set admdir [wokparam -e %[finfo]_Adm]\r
-    set path ${admdir}/${conf}.edl\r
-    if  [ catch { set fid [ open $path w ] } ] {\r
-       return 0\r
-    } else {\r
-       puts $fid "@set %${conf}_Config  = \"$lst_conf\"; "\r
-       puts $fid "@set %${conf}_Runtime = \"$lst_runt\"; "\r
-       close $fid\r
-       wokclose -a [wokparam -e %[finfo]_Home]\r
-       return 1\r
-    }\r
-}\r
-#=================================================================\r
-# INSTALL-PATCH (egu)\r
-#=================================================================\r
-\r
-proc install-patch { ul_name patch_level src_dir dest_dir conf tab_error} {\r
-    upvar $tab_error tab_err\r
-    set tar ${src_dir}/${ul_name}_${patch_level}.tar.gz\r
-    if ![catch { file exists $tar } ] {\r
-       set MYDEL [lindex [split $ul_name "-"] 0]\r
-       if { $MYDEL == "wok" } {\r
-           set MYPARCEL ${ul_name}\r
-       } else {\r
-           set MYPARCEL ${MYDEL}-${conf}\r
-       }\r
-\r
-       #untar\r
-       puts stdout "   - Downloading $tar in $dest_dir... "\r
-       p-get-ptar  ${ul_name}_${patch_level} $dest_dir $tar\r
-       \r
-       # updating .GETPATCH file\r
-        set getpatch_file ${dest_dir}/.${MYPARCEL}.GETPATCH\r
-       puts stdout "   - Updating $getpatch_file file..."\r
-       set now [string range [fmtclock [getclock]] 0 18]\r
-       if [file exists $getpatch_file] {\r
-           set lf [putils:FILES:FileToList $getpatch_file]\r
-       } else {\r
-           set lf {}\r
-       }\r
-       set s [format "%s %s %s %s" $ul_name ${ul_name}_${patch_level} $dest_dir $now]\r
-       lappend lf $s\r
-       putils:FILES:ListToFile $lf $getpatch_file\r
-       \r
-       \r
-    } else {\r
-       puts stderr ".... error"\r
-       puts stderr "Nothing done : Cannot find $tar"\r
-       set tab_err(${ul_name}_${patch_level}) "Nothing done : Cannot find $tar"\r
-       return 0\r
-    }\r
-    return 1\r
-}\r
-\r
-#=================================================================\r
-# P-GET-INSTALLED (egu)\r
-#\r
-# return list of patch'numbers already write in GETPATCH file \r
-# return null list if file doesn't exist\r
-#=================================================================\r
-\r
-proc p-get-installed { file } {\r
-    if { ![file exists $file] } {\r
-       return {}\r
-    } else {\r
-       set ll {}\r
-       foreach l [putils:FILES:FileToList $file] {\r
-           lappend ll [lindex [split [lindex $l 1] _] end]\r
-       }\r
-       return $ll\r
-    }\r
-}\r
-\r
-###==============================================================================================\r
-\r
-proc p-get-ptar  { MYUL ULBAG tar } {\r
-\r
-    global tcl_platform\r
-    set savpwd [pwd]\r
-    cd $ULBAG\r
-\r
-    if { "$tcl_platform(platform)" == "unix" } {\r
-\r
-       putils:EASY:tar untarZ ${tar}\r
-\r
-    } elseif { "$tcl_platform(platform)" == "windows" } {\r
-        set dirtmp [putils:EASY:tmpname ulget[id process]]\r
-        catch { mkdir $dirtmp }\r
-        putils:FILES:copy ${tar}  $dirtmp/${MYUL}.tar.gz\r
-\r
-        if { [file exists  $dirtmp/${MYUL}.tar] } {\r
-           unlink $dirtmp/${MYUL}.tar\r
-        }\r
-        putils:FILES:uncompress $dirtmp/${MYUL}.tar.gz\r
-        if { [file exists $dirtmp/${MYUL}.tar] } {\r
-           puts stderr "Info : Downloading $tar in [pwd]... "\r
-           putils:EASY:tar untar $dirtmp/${MYUL}.tar\r
-        }\r
-        unlink $dirtmp/${MYUL}.tar\r
-        unlink -nocomplain $dirtmp\r
-    }\r
-    cd $savpwd\r
-    return\r
-}\r
-\r
-#\r
-# ######################################################################\r
-#\r
-proc putils:EASY:GETOPT { prm table tablereq usage listarg } {\r
-\r
-    upvar $table TLOC $tablereq TRQ $prm PARAM\r
-    catch {unset TLOC}\r
-\r
-    set fill 0\r
-\r
-    foreach e $listarg {\r
-       if [regexp {^-.*} $e opt] {\r
-           if [info exists TRQ($opt)] {\r
-               set TLOC($opt) {}\r
-               set fill 1\r
-           } else {\r
-               puts stderr "Error: Unknown option $e"\r
-               eval $usage\r
-               return -1\r
-    }\r
-       } else {\r
-           if [info exist opt] {\r
-               set fill [regexp {value_required:(.*)} $TRQ($opt) all typ]\r
-               if { $fill } {\r
-                   if { $TLOC($opt) == {} } {\r
-                       set TLOC($opt) $e\r
-                       set fill 0\r
-                   } else {\r
-                       lappend PARAM $e\r
-                   }\r
-               } else {\r
-                   lappend PARAM $e\r
-               }\r
-           } else {\r
-               lappend PARAM $e\r
-           }\r
-       }\r
-    }\r
-\r
-    foreach e [array names TLOC] {\r
-       if { [regexp {value_required:(.*)} $TRQ($e) all typ ] == 1 } {\r
-           if { $TLOC($e) == {} } {\r
-               puts "Error: Option $e requires a value"\r
-               eval $usage\r
-               return -1\r
-           }\r
-           switch -- $typ {\r
-\r
-               file {\r
-               }\r
-\r
-               string {\r
-               }\r
-               \r
-               date {\r
-               }\r
-\r
-               list {\r
-                   set TLOC($e) [split $TLOC($e) ,]\r
-               }\r
-\r
-               number {\r
-                   if ![ regexp {^[0-9]+$} $TLOC($e) n ] {\r
-                       puts "Error: Option $e requires a number."\r
-                       eval $usage\r
-                       return -1\r
-                   }\r
-               }\r
-\r
-           }\r
-               \r
-       }\r
-    }\r
-\r
-    return\r
-}\r
-#\r
-#\r
-#\r
-proc putils:EASY:tar { option args } {\r
-    \r
-    catch { unset command return_output }\r
-    \r
-    switch -- $option {\r
-       \r
-       tarfromroot {\r
-           set name [lindex $args 0]\r
-           set root [lindex $args 1]\r
-           append command {tar cf } $name " " $root\r
-       }\r
-       \r
-       tarfromliste {\r
-           set name [lindex $args 0]\r
-           set list [lindex $args 1]\r
-           if [file exists $list] {\r
-               set liste [putils:FILES:FileToList [lindex $args 1]]\r
-               append command  {tar cf } $name\r
-               foreach f $liste {\r
-#fsa\r
-                   set listeeval [eval glob $f]\r
-                   foreach ff $listeeval {\r
-                       append command " " $ff\r
-                   }\r
-#fsa               append command " " $f\r
-               }\r
-           } else {\r
-               error "File $list not found"\r
-               return -1\r
-           }\r
-       }\r
-       \r
-       untar {\r
-           set name [lindex $args 0]\r
-           append command {tar xomf } $name\r
-       }\r
-       \r
-       untarZ {\r
-           set name [lindex $args 0]\r
-#fun       append command uncompress { -c } $name { | tar xof - >& /dev/null }\r
-           append command gzip { -d -c } $name { | tar xomf - >& /dev/null }\r
-       }\r
-\r
-\r
-       ls {\r
-           set return_output 1\r
-           set name [lindex $args 0]\r
-           append command {tar tvf } $name\r
-       }\r
-\r
-       lsZ {\r
-           set return_output 1\r
-           set name [lindex $args 0]\r
-#fun       append command uncompress { -c } $name { | tar tvf - }\r
-           append command gzip -d { -c } $name { | tar tvf - }\r
-       }\r
-\r
-    }\r
-    \r
-    ;#puts "command = $command"\r
-    \r
-    if [catch {eval exec $command} status] {\r
-       puts stderr "Tar messages in command: $command"\r
-       puts stderr "Status          : $status"\r
-       set statutar 1\r
-    } else {\r
-       if [info exist return_output] {\r
-           set statutar $status\r
-       } else {\r
-           set statutar 1\r
-       }\r
-    }\r
-\r
-    return $statutar\r
-}\r
-#\r
-#\r
-#\r
-proc putils:FILES:ListToFile { liste path } {\r
-    if [ catch { set id [ open $path w ] } ] {\r
-       return 0\r
-    } else {\r
-       foreach e $liste {\r
-           puts $id $e\r
-       }\r
-       close $id\r
-       return 1\r
-    }\r
-}\r
-#\r
-#\r
-#\r
-proc putils:FILES:FileToList { path {sort 0} {trim 0} {purge 0} {emptl 1} } {\r
-    if ![ catch { set id [ open $path r ] } ] {\r
-       set l  {}\r
-       while {[gets $id line] >= 0 } {\r
-           if { $trim } {\r
-               regsub -all {[ ]+} $line " " line\r
-           }\r
-           if { $emptl } {\r
-               if { [string length ${line}] != 0 } {\r
-                   lappend l $line\r
-               }\r
-           } else {\r
-               lappend l $line\r
-           }\r
-       }\r
-       close $id\r
-       if { $sort } {\r
-           return [lsort $l]\r
-       } else {\r
-           return $l\r
-       }\r
-    } else {\r
-       return {}\r
-    }\r
-}\r
-#\r
-#\r
-#\r
-proc putils:FILES:copy { fin fout } {\r
-    if { [catch { set in [ open $fin r ] } errin] == 0 } {\r
-        if { [catch { set out [ open $fout w ] } errout] == 0 } {\r
-           set nb [copyfile $in $out]\r
-           close $in \r
-           close $out\r
-           return $nb\r
-       } else {\r
-           puts stderr "Error: $errout"\r
-           return -1\r
-       }\r
-    } else {\r
-           puts stderr "Error: $errin"\r
-       return -1\r
-    }\r
-}\r
-#\r
-#\r
-##\r
-proc putils:FILES:compress { fullpath } {\r
-    if [file exists ${fullpath}.gz] {\r
-       catch {unlink ${fullpath}.gz}\r
-    }\r
-#fsa    if [catch { exec compress -f $fullpath} status] \r
-   if [catch { exec gzip -f $fullpath} status] {\r
-       puts stderr "Error while compressing ${fullpath}: $status"\r
-       return -1\r
-    } else {\r
-       return 1\r
-    }\r
-}\r
-\r
-proc putils:FILES:uncompress { fullpath } {\r
-#fsa    if [catch {exec uncompress -f $fullpath} status]\r
-#fun:patch K4B_7\r
-    if [catch {exec gzip -d -f $fullpath} status] {\r
-       puts stderr "Error while uncompressing ${fullpath}: $status"\r
-       return -1\r
-    } else {\r
-       return 1\r
-    }\r
-}\r
-\r
-proc putils:EASY:tmpname { name } {\r
-    global env\r
-    global tcl_platform\r
-    if { "$tcl_platform(platform)" == "unix" } {\r
-       if [info exists env(TMPDIR)] {\r
-           return [file join $env(TMPDIR) $name]\r
-       } else { \r
-           return [file join "/tmp" $name]\r
-       }\r
-    } elseif { "$tcl_platform(platform)" == "windows" } {\r
-       return [file join $env(TMP) $name]\r
-    }\r
-    return {}\r
-}\r
-\r
-\r
diff --git a/src/WOKTclLib/padmin.tcl b/src/WOKTclLib/padmin.tcl
deleted file mode 100755 (executable)
index 56db109..0000000
+++ /dev/null
@@ -1,149 +0,0 @@
-#############################################################################
-#
-#                              P A D M I N
-#                              ___________
-#
-#############################################################################
-#
-# Usage
-#
-proc padminUsage { } {
-    puts stderr \
-       {
-    Usage : padmin [ options ... ] [pnam,...]
-       
-    This command operates on elements in the central BAG. 
-
-    Components: A component represents an UL and all its versions
-
-    -param       : List parameters relative to the BAG.
-
-    -ls          : List kwown components. 
-    -rm          : Deletes the components pnam1,pnam2 ... This will destroy the VOB associated and all
-                   label attached to it in the Admin VOB. 
-    
-    -mkadm       : Creates the vob administration. 
-    
-    -noexec      : Don't execute. Only display script file.
-
-    Types: Set of rules used to store files.
-
-    -lsext       : List known extensions. For more information, use -magic and explore 
-                   the magic file.
-
-    
-    }
-    return
-}   
-#
-# Point d'entree de la commande
-#
-proc padmin { args } {
-    
-    set tblreq(-h)         {}
-    
-    set tblreq(-mkadm)     {}
-    set tblreq(-noexec)    {}
-    set tblreq(-rm)        value_required:list
-
-    set tblreq(-lsext)     {}
-
-    set tblreq(-ls)        value_required:string
-
-    set tblreq(-magic)     {}
-
-    set tblreq(-param)     {}
-
-    set param {}
-    
-    if { [wokUtils:EASY:GETOPT param tabarg tblreq padminUsage $args] == -1 } return
-    
-    if { [info exists tabarg(-h)] } {
-       padminUsage
-       return
-    }
-
-    if { [info exists tabarg(-param)] } {
-       padmin:param
-       return
-    }
-
-
-    set execute 1
-    if { [info exists tabarg(-noexec)] } { set execute 0 }
-
-    if { [info exists tabarg(-mkadm)] } {
-       set lvws [concat [wokBAG:view:Init IMPORT] [wokBAG:view:Init EXPORT]]
-       padmin:execute [wokUtils:EASY:stobs2 $lvws] $execute
-       set ladm [wokBAG:admin:Create]
-       padmin:execute [wokUtils:EASY:stobs2 $ladm] $execute
-       return
-    }
-
-    if { [info exist tabarg(-rm)] } {
-       foreach pnam $tabarg(-rm) {
-           set res [wokBAG:cpnt:Del $pnam]
-           foreach lbs [wokBAG:cpnt:Patches $pnam] {
-               set res [concat $res [wokBAG:label:Del $lbs]]
-           }
-           padmin:execute $res $execute
-       }
-       return
-    }
-
-    
-    
-    if { [info exist tabarg(-ls)] } {
-       puts "not yet"
-    }
-
-
-    if { [info exist tabarg(-lsext)] } {
-       foreach e [wokBAG:magic:kex] {
-           puts $e
-       }
-       return
-    }
-
-    if { [info exist tabarg(-magic)] } {
-       foreach e [wokUtils:LIST:SortPurge [wokBAG:magic:Name]] {
-           puts "$e"
-       }
-       return
-    }
-    
-
-
-}
-;#
-;#
-;#
-proc padmin:execute { res execute } {
-    if { $execute } {
-       wokUtils:FILES:ListToFile $res execute
-       wokUtils:EASY:Execute execute
-       unlink execute
-    } else {
-       foreach l $res {
-           puts "$l"
-       } 
-    }
-}
-;#
-;# Je m'emmerddre , tai vi o phap troi lanh qua !!
-;#
-proc padmin:param { } {
-    set maxl 0
-    foreach name [wokBAG:bag:Names] {
-       set lb [$name 1]
-       if {[string length $lb] > $maxl} {
-           set maxl [string length $lb]
-       }
-    }
-    set maxl [expr {$maxl + 2}]
-    foreach name [wokBAG:bag:Names] {
-       puts stdout [format "%-*s %s" $maxl [$name 1] [$name]]
-    }
-    return
-}
diff --git a/src/WOKTclLib/pinstall.tcl b/src/WOKTclLib/pinstall.tcl
deleted file mode 100755 (executable)
index 7f4dc37..0000000
+++ /dev/null
@@ -1,41 +0,0 @@
-proc pinstallUsage {} {
-    puts stderr { usage : pinstall parcelname }
-}
-
-proc pinstall {args} {
-
-    set tblreq(-h) {}
-    set param {}
-
-    if { [wokUtils:EASY:GETOPT param table tblreq pinstallUsage $args] == -1 } return
-    
-    if { [info exists table(-h)] } {
-       pinstallUsage
-       return
-    }
-
-    set ULNAME [lindex $param 0]
-    if { $ULNAME == {} } {
-       pinstallUsage
-       return
-    }
-
-    set thefact [Sinfo -f]
-    set theware [finfo -W $thefact]
-    puts "Installing $ULNAME from Warehouse ${thefact}:${theware}"
-    wokcd ${thefact}:${theware}
-    wokcd $ULNAME
-    set theullibdir [wokparam -e WOKEntity_libdir ${thefact}:${theware}:${ULNAME}]
-    cd $theullibdir
-    foreach atempld [glob *.ldt] {
-       source $atempld
-       set goodlen [expr [string length $atempld] - 2]
-       set aldfile [crange $atempld 0 $goodlen]
-       set ldfileid [open $aldfile w]
-       puts $ldfileid [WOKDeliv_Makeld $thefact]
-       if {![catch {set esvers [wokparam -e %ENV_EngineStarterVersion]}]} {
-           puts $ldfileid $esvers
-       }
-       close $ldfileid
-    }
-}
diff --git a/src/WOKTclLib/pintegre.tcl b/src/WOKTclLib/pintegre.tcl
deleted file mode 100755 (executable)
index 6505356..0000000
+++ /dev/null
@@ -1,698 +0,0 @@
-#############################################################################
-#
-#                              P I N T E G R E
-#                              _______________
-#
-#############################################################################
-#
-# Usage
-#
-proc pintegreUsage { } {
-    puts stderr \
-           {
-       usage : pintegre [ <reportID> ]
-       
-       <reportID>  is a number. The range of the report in the queue.
-       You get this number by using the command : pstore -ls 
-       
-       -all            : Process all reports in the queue. 
-       -noexec         : Don't execute. Only display script file.
-       -dump   <file>  : Trace of commands in file. If file exists append commands. 
-    }
-    return
-}
-#
-# Point d'entree de la commande
-#
-proc pintegre { args } {
-    
-    set tblreq(-h)      {}
-    set tblreq(-all)    {}
-    set tblreq(-v)      {}
-    set tblreq(-noexec) {}
-    set tblreq(-dump)   value_required:string
-    
-    set param {}
-    if { [wokUtils:EASY:GETOPT param tabarg tblreq pintegreUsage $args] == -1 } return
-    set VERBOSE [info exists tabarg(-v)]
-    
-    if { [info exists tabarg(-h)] } {
-       pintegreUsage 
-       return
-    }
-    
-    set fshop nil
-    
-    if { [info exists tabarg(-all)] } {
-       set LISTREPORT [pstore:Report:Get all $fshop ]
-    } else {
-       if { [llength $param] == 1 } {
-           set ID [lindex $param 0]
-           set LISTREPORT [pstore:Report:Get $ID $fshop ]
-       } else {
-           pintegreUsage 
-           return -1 
-       }
-    }
-    
-    set execute 1
-    if { [info exists tabarg(-noexec)] } { set execute 0 }
-
-    if { [info exists tabarg(-dump)] } { 
-       set FileDump $tabarg(-dump)
-    }
-
-    set savpwd [pwd]
-
-    foreach REPORT $LISTREPORT {
-       
-       if { [pstore:Report:Process $REPORT] != 1 } { 
-           return 
-       }
-       if { [set l [pstoreReportWasThere]] != {} } {
-           foreach f $l {
-               puts stderr "File $f has been removed since storage of that report."
-           }
-           pstore:Report:UnProcess $REPORT
-           return
-       }
-       pstoreReportHeader  ReportHeader       
-       pstoreReportBody    ReportBody
-       set Config          [pstoreReportConfig]
-       set pnam $ReportHeader(Parcel)
-       set label [wokBAG:cpnt:GetLabel $pnam]
-       set umaked [split $ReportHeader(Umaked) ,]
-       set tmpconf [lindex $Config 0]
-
-       set depends [wokBAG:cfg:Complete $tmpconf $umaked]
-
-       pstore:Report:UnProcess $REPORT
-
-       if { $VERBOSE } {
-           puts stderr "Processing report in $REPORT" 
-           puts stderr "Will use label $label to stick elements of this update."
-           puts stderr "Requires $umaked"
-           puts stderr "That is: $depends"
-       }
-       
-       set init $ReportHeader(Init) ;# Si Init != "NO" => level a creer et a updater si existe pas.
-
-       if { "$init" != "NO" } {
-           cd  $ReportHeader(Revision)
-           set x_1  [wokBAG:cpnt:Init $pnam $ReportHeader(Revision) $ReportHeader(FrigoName)/cvt_data]
-           set x_2  [wokBAG:journal:Init $pnam $ReportHeader(Journal)]
-           set x_3  [wokBAG:label:Init  $label]
-           set x_4  [wokBAG:hlink:Init  $pnam]
-           set x_5  [wokBAG:label:Stick $label $ReportHeader(Master)]
-           set x_6  [wokBAG:label:Stick $label [wokBAG:journal:name $pnam]]
-           set res  [concat $x_1 $x_2 $x_3 $x_4 $x_5 $x_6]
-       } else {
-           set x_mod {}
-           foreach e [array names ReportBody ##,*] {
-               set dir [file join $ReportHeader(Master) [string range $e 4 end]]  
-               if { $ReportBody($e) != {} } {
-                   set x_mod [concat $x_mod [wokBAG:cpnt:UpdateDirectory $dir $ReportBody($e)]]
-               }
-           }
-           set x_add {}
-           foreach e [lsort -command wokUtils:FILES:Depth [array names ReportBody ++,*]] {
-               set dir [file join $ReportHeader(Master) [string range $e 4 end]]
-               if { $ReportBody($e) != {} } {
-                   set x_add [concat $x_add [wokBAG:cpnt:CreateDirectory $dir $ReportBody($e)]]
-               }
-           }
-           set x_del {}
-           foreach e [lsort -decreasing -command wokUtils:FILES:Depth [array names ReportBody --,*]] {
-               set dir [file join $ReportHeader(Master) [string range $e 4 end]]
-               if { $ReportBody($e) != {} } {
-                   set x_del [concat $x_del [wokBAG:cpnt:DeleteDirectory $dir $ReportBody($e)]]
-               }
-           }
-           set x_labinit [wokBAG:label:Init  $label]
-           set j_upd     [wokBAG:journal:Update $pnam $ReportHeader(Journal)]
-           set x_lab     [wokBAG:label:Stick $label $ReportHeader(Master)]
-           set j_lab     [wokBAG:label:Stick $label [wokBAG:journal:name $pnam]]
-
-           set res [concat $x_mod $x_add $x_del  $x_labinit $x_lab $j_upd $j_lab]
-
-       }
-       
-       if { $depends != {} } {
-           set actdep [wokBAG:cfg:Complete $tmpconf $depends]
-           if { $actdep != {} } {
-               if { $VERBOSE } { puts stderr "Will link $label to $actdep" }
-               set res [concat $res [wokBAG:hlink:Attach $label $actdep]]
-           }
-       }
-       
-       if { [info exists FileDump] } {
-           wokUtils:FILES:AppendListToFile $res $FileDump
-       }
-       
-       wokUtils:FILES:ListToFile [wokUtils:EASY:stobs2 $res] $ReportHeader(COMMAND)_1
-       if { $execute } {
-           if { [set fileid [wokBAG:errlog:Add $pnam]] != {} } {
-               wokUtils:EASY:Execute $ReportHeader(COMMAND)_1 sh $fileid
-               close $fileid
-           } else {
-               puts "Unable to open log file for writing"
-               return
-           }
-       } else {
-           wokUtils:EASY:Execute $ReportHeader(COMMAND)_1 noexec stdout
-       }
-       
-       ;# Mise a jour des levels
-       
-       puts "Mise a jour levels Config = $Config"
-       foreach cfg $Config {
-           set LABELTMP $ReportHeader(LABEL).$cfg
-           wokUtils:FILES:ListToFile $label $LABELTMP
-           if { "$init" != "NO" } {  
-               puts -nonewline "on fait INIT ($cfg) ..."
-               ;# Init = ANAME il faut soit creer le level soit l'updater avec la nouvelle UL.
-               set flevel [wokBAG:level:file $init $cfg]
-               if [file exists $flevel] {
-                   puts "dans un level qui existe"
-                   set contents [wokUtils:FILES:FileToList $flevel]
-                   wokUtils:FILES:ListToFile [concat $contents $label] $LABELTMP
-                   set xlv [wokBAG:level:update $flevel $LABELTMP]
-               } else {
-                   puts "dans un level qui n'existe pas "
-                   set xlv [wokBAG:level:Init  $init $cfg $LABELTMP]           
-               }
-           } else {
-               ;# Init = NO Il faut recuperer le level auquel appartient pnam
-               set lvl [wokBAG:level:find $label $cfg]
-               if { $lvl != {} } {
-                   wokUtils:FILES:ListToFile [lindex $lvl 1] $LABELTMP
-                   set xlv [wokBAG:level:update [lindex $lvl 0] $LABELTMP]
-               } else {
-                   puts stderr "Error updating levels for $label in $cfg . Level not found"
-                   return
-               }
-           }
-           wokUtils:FILES:ListToFile [wokUtils:EASY:stobs2 $xlv] $ReportHeader(COMMAND)_2
-           if { $execute } {
-               if { [set fileid [wokBAG:errlog:Add $pnam]] != {} } {
-                   wokUtils:EASY:Execute $ReportHeader(COMMAND)_2 sh $fileid
-                   close $fileid
-               } else {
-                   puts "Unable to open log file for writing"
-                   return
-               }
-           } else {
-               wokUtils:EASY:Execute $ReportHeader(COMMAND)_2 noexec stdout
-           }
-       }
-
-       
-       ;# Destruction du report
-       if { $execute } { pstore:Report:Del $REPORT 1 } 
-       
-    }
-    cd $savpwd
-    return
-}
-
-#############################################################################
-#
-#                              P G E T
-#                              _______
-#
-#############################################################################
-#
-# Usage
-#
-proc pgetUsage { } {
-    puts stderr \
-           {
-       Usage  : pget [-h]  [-d dir] -conf <name> [-parcel <p1,p2,..>] [-P patch]
-       -h          : this help
-       -d dir      : Uses dir as directory for downloading files.
-       -conf name  : configuration name. This parameter is required.
-       -parcel <p1,p2..> : list of one or more parcel. if this parameter is not given
-                            install all parcels listed in name. 
-       -v          : verbose mode
-       -noexec     : Display update operations but don't perform them.
-       [-P num ]   : <num> is a patch number. By default the parcel is downloaded up to its last patch. 
-                     This option can be used to specify the higher patch level you want to download.
-                     This option cannot be used with more than one parcel specified in the -parcel option.
-
-       Acces modes  : By default, files of parcels are created (copied) in the bag of your factory. If you
-                      specify -view <Myview> then a ClearCase view <Myview> will be configured so that
-                      you can access (read) the parcels without copying them. Note that <Myview> must 
-                      already exists. 
-    }
-}
-#
-# Point d'entree de la commande
-#
-proc pget { args } {
-
-    set tblreq(-h)      {}
-    set tblreq(-conf)   value_required:string
-    set tblreq(-parcel) value_required:list
-    set tblreq(-d)      value_required:string 
-    set tblreq(-v)      {}
-    set tblreq(-mode)   value_required:string
-    set tblreq(-P)      value_required:number
-    set tblreq(-cat)    {}
-    set tblreq(-noexec) {}
-
-    set param {}
-    if { [wokUtils:EASY:GETOPT param tabarg tblreq pgetUsage $args] == -1 } return
-
-    if { $param != {} } {
-       pgetUsage 
-       return
-    }
-
-
-    if { [info exists tabarg(-h)] } {
-       pgetUsage 
-       return
-    }
-
-    set VERBOSE [info exists tabarg(-v)]
-    
-    if { [info exists tabarg(-conf)] } {
-       set conf $tabarg(-conf)
-    } else {
-       pgetUsage 
-       return
-    }
-
-    if { [info exists tabarg(-cat)] } {
-       foreach pnam [lsort [wokBAG:cfg:read $conf]] {
-           puts $pnam
-       }
-       return
-    }
-
-    
-    if [info exists tabarg(-mode)] {
-       set mode $tabarg(-mode)
-    } else {
-       set mode copy
-    }
-
-    set view [wokBAG:view:GetViewExport]
-    ;# tester ici que la vue view existe
-    
-    set fact [wokinfo -f [wokcd]]
-
-    if { [info exists tabarg(-d)] } {
-       set down $tabarg(-d)
-       if ![file exists $down] {
-           if { [wokUtils:DIR:create $down] == -1 } {
-               return
-           }
-       }
-    } else {
-       set down {}
-    }
-    
-    if { [info exists tabarg(-parcel)] } {
-       set lnuk $tabarg(-parcel)
-    } else {
-       set luli [pget:ulist read $conf $fact $down {} $VERBOSE]
-       if { $luli != {} } {
-           set lnuk {}
-           foreach p $luli {
-               if { $p != {} } {
-                   if { "[wokBAG:cpnt:parse extension $p]" == "$conf" } {
-                       lappend lnuk [wokBAG:cpnt:parse root $p]
-                   } else {
-                       puts stderr "Mismatch version for $p . Ignored."
-                   }
-               }
-           }
-       } else {
-           puts stderr "Please Specify at least one parcel of this config."
-           puts stderr "All parcels defined in this config are:"
-           pget -cat -conf $conf
-           return
-       }
-    }
-
-    if { [info exists tabarg(-P)] } {
-       if { [llength $lnuk] == 1 } {
-           set preq $tabarg(-P)
-       } else {
-           puts stderr "You cannot use -P option with more than one parcel."  
-           return
-       }
-    }
-
-    if { $VERBOSE } { puts "lnuk = $lnuk" }
-    # lnuk est la liste des ULs demandees dans la ligne de commande
-    # wokBAG:cfg:read retourne la liste des Uls de <conf> au dernier niveau 
-    # pget:sink fait la correspondance CCL <-> CCL-B4-5_13
-    # Il faudra mettre ici le niveau si il est demande et separer BASE, MODEL, APPLI 
-
-    set linst [pget:sink $lnuk [wokBAG:cfg:read $conf {}]]
-     if  { $linst == {} } {
-        puts "No match for $lnuk in config $conf."
-        return
-    }
-
-    # si preq est settee => il n'y a qu'une parcel , et on a demande une version precise.
-    # lcomp contient pour le level demandee la plus haute version connue.
-    # verifier que preq est inferieur ou egal a cette version. 
-
-    if [info exists preq] {
-       set vx [wokBAG:cpnt:parse version $linst]
-       if { $preq > $vx } {
-           puts stderr "Patch level $preq does not exist. Higher level is $vx."
-           return
-       }
-       set lres [wokBAG:cpnt:parse basename $linst]_${preq}
-    } else {
-       set lres $linst
-    }
-
-    if { $VERBOSE } { puts "linst = $linst" }
-    ;# 1. Calcul du fichier ConfigSpec pour configurer la vue d'acces au Bag
-    ;#
-    wokBAG:cfg:ListToConfig $lres [set configspec [wokUtils:FILES:tmpname viewof[id user].setcs]]
-    
-    if { $VERBOSE } {
-       foreach x [wokUtils:FILES:FileToList $configspec] { puts $x }
-    }
-
-    if { $VERBOSE } {
-       puts "Configuring view $view.."
-    }
-
-    ;# 2.   execute ( config + demarrage )
-    ;#
-    set cfw [concat [wokBAG:view:setcs $configspec $view] [wokBAG:view:startview $view]]
-
-    ;# 3. La demarrer
-    ;#
-    wokUtils:FILES:ListToFile $cfw [set cmdget [wokUtils:FILES:tmpname cmdget[id user]]]
-    wokUtils:EASY:Execute $cmdget sh stdout
-
-    ;# 4. Mode increment, ou copy, ou view
-    ;#
-    switch -- $mode {
-
-       increment {
-           set lget {}
-           foreach pnam_x $lres { 
-               set jnl [wokBAG:journal:read ${pnam_x}]
-               set dfrom [wokBAG:cpnt:GetExportName [wokBAG:cpnt:parse basename ${pnam_x}]]
-               set dto [pget:down $conf $fact $down $pnam_x]
-               if { $VERBOSE } { puts stderr "Downloading ${pnam_x} in $dto" }
-               set lget [concat $lget [pget:getfiles ${pnam_x} $jnl $dfrom $dto]]
-           }
-           
-           ;# 5. Executer la copie
-           ;#
-           if { [info exists tabarg(-noexec)] } {
-               foreach x $lget {
-                   puts "$x"
-               }
-           } else {
-               wokUtils:EASY:TclCommand $lget $VERBOSE 
-           }
-
-           pget:ulist write $conf $fact $down $lres $VERBOSE 
-       }
-
-       copy {
-           foreach pnam_x $lres {
-               set dfrom [wokBAG:cpnt:GetExportName [wokBAG:cpnt:parse basename ${pnam_x}]]
-               if { [file exist $dfrom] } {
-                   set dto [pget:down $conf $fact $down ${pnam_x}]
-                   if { $VERBOSE } { puts stderr "Downloading ${pnam_x} in $dto" }
-                   set FunCopy wokUtils:FILES:copy
-                   if { [info exists tabarg(-noexec)] } { set FunCopy pget:CopyNothing }
-                   wokUtils:FILES:recopy $dfrom $dto $VERBOSE $FunCopy
-               } else {
-                   puts stderr "Error: Directory $dfrom is unreachable."
-               }
-           }
-
-           pget:ulist write $conf $fact $down $lres $VERBOSE 
-       }
-
-       view {
-       }
-
-    }
-
-    return 
-}
-#
-# retourne le nom du dir ou il faut descendre pnam_x
-#
-proc pget:down { conf fact down pnam_x } {
-    if { $down == {} } { 
-       set root [wokinfo -p HomeDir ${fact}:[finfo -W $fact]]
-       return $root/[wokBAG:cpnt:parse root ${pnam_x}]-${conf} 
-    } else { 
-       return $down 
-    }
-}
-#
-# Lit/Ecrit la liste des Uls du bag de <fact> se trouvant listes dans <conf>. 
-# De fait le contenu de : Factory/adm/K4E_Config.
-# ya qqche dans WOK pour lire mais pas pour ecrire
-# quand on fait read: ulist  = {}              retourne dans la liste le contenu du parametre K4E_Config
-# quand on fait write ulist  = suite de pnam_x retourne une liste ayant le format suivant
-# {KERNEL KERNEL-K4E down KERNEL-B4-2 8} 
-#
-proc pget:ulist { option conf fact down ulist VERBOSE } {
-    switch -- $option {
-
-       read {
-           set lvc [wokparam -l ${conf} $fact]
-           if { $lvc != {} } {
-               if { [lsearch -regexp $lvc %${conf}_Config=*] != -1 } {
-                   catch { set value [wokparam -e %${conf}_Config $fact] }
-                   if [info exists value] {
-                       return [split [join $value]]
-                   } else {
-                       return {}
-                   }
-               } else {
-                   return {}
-               }
-           } else {
-               return {}
-           }  
-       }
-
-       write {
-           set bagName ${fact}:[finfo -W $fact]
-           set bagAdm [wokinfo -p AdmDir $bagName]
-           set ParcelListFile [wokinfo -p ParcelListFile $bagName]
-           set lp [wokUtils:FILES:FileToList $ParcelListFile]
-           set Config  "@set %${conf}_Config   = \""
-           set Runtime "@set %${conf}_Runtime  = \""
-           foreach pnam_x $ulist {
-               set pclName [wokBAG:cpnt:parse root ${pnam_x}]
-               set pclHome [pget:down $conf $fact $down ${pnam_x}]
-               set pclAdm  $pclHome/adm
-               catch { mkdir -path $pclAdm }
-               set edl [pget:declare ${pclName}-${conf} $pclName $pclHome $pclAdm]
-               if [wokUtils:FILES:ListToFile [list $edl] $bagAdm/${pclName}-${conf}.edl] {
-                   if { $VERBOSE } { puts stderr "File $bagAdm/${pclName}-${conf}.edl has been created." }
-               } else {
-                   puts stderr "Unable to create file $bagAdm/${pclName}-${conf}.edl"
-               }
-               pget:WVersion $bagName $conf ${pclName} ${pnam_x}
-               ;#if [wokUtils:FILES:ListToFile ${pnam_x} $pclAdm/${pclName}.version] {
-                   ;#if { $VERBOSE } { puts stderr "File $pclAdm/${pclName}.version has been created" }
-               ;#} else {
-                  ;# puts stderr "Unable to create file $pclAdm/${pclName}.version"
-               ;#}
-               append Config " ${pclName}-${conf}"
-               if { [lsearch $lp ${pclName}-${conf}] == -1 } { lappend lp ${pclName}-${conf} }
-           }
-           append Config "\";"
-           append Runtime "\";"
-           if [wokUtils:FILES:ListToFile [list $Config $Runtime] [wokinfo -p AdmDir $fact]/${conf}.edl] {
-               if { $VERBOSE } { puts stderr "File [wokinfo -p AdmDir $fact]/${conf}.edl has been updated" }
-           } else {
-               puts stderr "Unable to update file [wokinfo -p AdmDir $fact]/${conf}.edl"
-           }
-           if [wokUtils:FILES:ListToFile $lp $ParcelListFile] {
-               if { $VERBOSE } { puts stderr "File $ParcelListFile has been updated."}
-           } else {
-               puts stderr "Unable to update file $ParcelListFile."
-           }
-       }
-    }
-    
-}
-#
-# retourne les occurences de lnuk = { CCL GRAPHIC KERNEL VIEWERS .. } 
-#              trouvees dans loff = { KERNEL-B4-2_x CCL-B4-2_y GRAPHIC-B4-2_z ...}
-#
-proc pget:sink { lnuk loff } {
-    foreach p $loff {
-       set map([wokBAG:cpnt:parse root $p]) $p
-    }
-    set l {}
-    foreach p $lnuk {
-       if [info exists map($p)] {
-           lappend l $map($p)
-       } else {
-           puts stderr "Warning : $p not found in required config. Ignored"
-       }
-    }
-    return $l
-}
-;#
-;# retourne la liste des commandes a passer pour updater le directory dest avec le patch pnam_x
-;# La vue doit avoir ete configuree (element * pnam_x -nocheckout)
-;#
-proc pget:getfiles { pnam_x jnl dmas dest } {
-    if ![ catch { set fileid [ open $jnl r ] } ] {
-       pprepare:header:read $fileid RepHeader
-       wokUtils:EASY:ReadCompare ReportBody $fileid
-       if ![wokUtils:EASY:MapEmpty ReportBody] {
-           set x_mod {}
-           set vers ${pnam_x}
-           foreach e [array names ReportBody ##,*] {
-               set dir [string range $e 4 end]  
-               if { $ReportBody($e) != {} } {
-                   set x_mod [concat $x_mod [pget:UpdateDirectory $vers $dest $dmas $dir $ReportBody($e)]]
-               }
-           }
-           
-           set x_add {}
-           foreach e [lsort -command wokUtils:FILES:Depth [array names ReportBody ++,*]] {
-               set dir [string range $e 4 end]
-               if { $ReportBody($e) != {} } {
-                   set x_add [concat $x_add [pget:CreateDirectory $vers $dest $dmas $dir $ReportBody($e)]]
-               }
-           }
-           
-           set x_del {}
-           foreach e [lsort -decreasing -command wokUtils:FILES:Depth [array names ReportBody --,*]] {
-               set dir [string range $e 4 end]
-               if { $ReportBody($e) != {} } {
-                   set x_del [concat $x_del [pget:DeleteDirectory $vers $dest $dmas $dir $ReportBody($e)]]
-               }
-           }
-
-       }
-       close $fileid
-       return [concat $x_mod $x_add $x_del]
-    } else {
-       puts stderr "pget:getfiles. Unable to open $jnl for reading."
-       return {}
-    }
-}
-;#
-;# 
-;#
-proc pget:UpdateDirectory { vers dest dmas dir lfile } {
-    set l {}
-    foreach e $lfile {
-       if [regexp {    #[ ]*([^ ]*)[ ]*([^ ]*)[ ]*([^ ]*)} $e all basn elem from] {
-           lappend l "wokUtils:FILES:copy [file join $dmas $dir $basn]@@/main/$vers [file join $dest $dir $basn]"
-       } elseif [regexp {    \-[ ]*([^ ]*)[ ]*([^ ]*)} $e all basn elem] {
-           lappend l "wokUtils:FILES:delete [file join $dest $dir $basn]"
-       } elseif [regexp {    \+[ ]*([^ ]*)[ ]*([^ ]*)} $e all basn from] {
-           lappend l "wokUtils:FILES:copy [file join $dmas $dir $basn]@@/main/$vers [file join $dest $dir $basn]"
-       } else {
-           puts stderr "pget:UpdateDirectory: Line $e does not match anything !!"
-           return {}
-       }
-    }
-    return $l
-}
-;#
-;# 
-;#
-proc pget:CreateDirectory { vers dest dmas dir lfile } {
-    lappend l "wokUtils:DIR:create [file join $dest $dir]"
-    foreach e $lfile {
-       if [regexp {    \+[ ]*([^ ]*)[ ]*([^ ]*)} $e all basn from] {
-           if [file exists [file join $dmas $dir $basn]@@/main/$vers] {
-               lappend l "wokUtils:FILES:copy [file join $dmas $dir $basn]@@/main/$vers [file join $dest $dir $basn]"
-           } else {
-               puts stderr "pget:CreateDirectory: [file join $dmas $dir $basn]@@/main/$vers not found"
-           }
-       } else {
-           puts stderr "pget:CreateDirectory: Line $e does not match anything !!"
-           return {} 
-       }
-    }
-    return $l
-}
-;#
-;# Removes all files in dir but dont removes directory itself. Merdier aggregats
-;#
-proc pget:DeleteDirectory { vers dest dmas dir lfile } {
-    foreach e $lfile {
-       if [regexp {    \-[ ]*([^ ]*)[ ]*([^ ]*)} $e all basn elem] {
-           lappend l "wokUtils:FILES:delete [file join $dest $dir $basn]"
-       }
-    }
-    ;#lappend l "rmdir [file join $dest $dir]"
-    return $l
-}
-;#
-;# Remplace Wdeclare.. 
-;# 1. ce qui est retourne doit etre ecrit dans CCL-K4E.edl dans l'adm du bag et s'appeler CCL-K4E.edl. 
-;# Wdeclare -p ${pclName}-${conf} -d -DHome=$pclHome -DDelivery=$pclName $bagName
-;#
-;# p  = CCL-K4E
-;# d  = CCL
-;# h  = /adv_22/WOK/BAG/CCL-K4E
-;# a  = /adv_22/WOK/BAG/CCL-K4E/adm
-;#
-proc pget:declare { p d h a } {
-    append st {@ifnotdefined ( %__PNAM_EDL ) then} \n
-    append st {@set %__PNAM_EDL = "";} \n
-    append st {@set %__PNAM_Home = "__HOME";} \n
-    append st {@set %__PNAM_Adm = "__ADM";} \n
-    append st {@set %__PNAM_Stations = "sun ao1 sil hp";} \n 
-    append st {@set %__PNAM_DBMSystems = " DFLT ";} \n 
-    append st {@set %__PNAM_Delivery = "__NAME";} \n  
-    append st {@ifdefined(%ShopName) then} \n 
-    append st {@uses "USECONFIG.edl";} \n 
-    append st {@endif;} \n
-    append st {@endif;} \n
-    regsub -all {__PNAM} $st $p r1  
-    regsub -all {__NAME} $r1 $d r2
-    regsub -all {__HOME} $r2 $h r3
-    regsub -all {__ADM}  $r3 $a xx
-    return $xx
-}
-;#
-;# Retourne le nom de l'UL 
-;#
-proc pget:RVersion { bagName conf PclName } {
-    if [wokinfo -x ${bagName}:${PclName}-${conf}] {
-       set pclAdm  [wokinfo -p admdir ${bagName}:${PclName}-${conf}]/${PclName}.version
-       return [wokUtils:FILES:FileToList $pclAdm]
-    } else {
-       return {}
-    }
-}
-;#
-;# 
-;#
-proc pget:WVersion { bagName conf PclName version } {
-    set pclAdm  [wokinfo -p admdir ${bagName}:${PclName}-${conf}]/${PclName}.version
-    return [wokUtils:FILES:ListToFile $version $pclAdm]
-}
-;#
-;#
-;#
-proc pget:specialwok { } {
-}
-;#
-;# copy avec -noexec mode.
-;#
-proc pget:CopyNothing { f1 f2 } {
-    puts stderr "copy $f1 $f2"
-    return
-}
diff --git a/src/WOKTclLib/pnews.tcl b/src/WOKTclLib/pnews.tcl
deleted file mode 100755 (executable)
index 77c5df3..0000000
+++ /dev/null
@@ -1,61 +0,0 @@
-#############################################################################
-#
-#                              P N E W S
-#                              _________
-#
-#############################################################################
-#
-# Usage
-#
-proc wokpnewsUsage { } {
-    puts stderr \
-           {
-       Usage  : pnews [-h]   [-parcel <p1,p2,..>] 
-
-    }
-}
-#
-# Point d'entree de la commande
-#
-proc pnews { args } {
-
-    set tblreq(-h)      {}
-    set tblreq(-parcel) value_required:string
-
-    set param {}
-    if { [wokUtils:EASY:GETOPT param tabarg tblreq wokpnewsUsage $args] == -1 } return
-
-
-    if { [info exists tabarg(-h)] } {
-       wokpnewsUsage 
-       return
-    }
-
-    set VERBOSE [info exists tabarg(-v)]
-    
-    if { [info exists tabarg(-parcel)] } {
-       pnews:journal $tabarg(-parcel) 
-       return
-    }
-
-    return 
-}
-#
-# Retourne la liste des Uls du bag de <factory> se trouvant listes dans <config>
-#
-proc pnews:journal { {regx *} } {
-    wokBAG:label:dump JNL long
-    set blank "                                                             "
-    if [array exists JNL] {
-       set i 0
-       foreach n [lsort -command wokUtils:TIME:clrsort [array names JNL]] {
-           set i [incr i]
-           set pnam [lindex [split $JNL($n)] 0]
-           if [string match $regx $pnam] {
-               set b [string range $blank 1 [expr {30 - [string length $pnam] }]]
-               puts [format "%3d - %s%s (Done at %s)" $i $pnam $b $n  ]
-           }
-       }
-    }
-    return
-}
diff --git a/src/WOKTclLib/pprepare.tcl b/src/WOKTclLib/pprepare.tcl
deleted file mode 100755 (executable)
index 4054cba..0000000
+++ /dev/null
@@ -1,336 +0,0 @@
-#############################################################################
-#
-#                              P P R E P A R E
-#                              _______________
-#
-#############################################################################
-#
-# Usage
-#
-proc wokpprepareUsage { } {
-    puts stderr \
-           {
-       Usage: pprepare Pnam [ options... ]
-
-       Compare the parcel Pnam in the local bag with its last occurence in 
-        the reference bag. Pnam should be given with its full path, in the format
-        FACTORY:BAGNAME:PARCELNAME
-      
-        File extensions in Pnam are checked against a list of known types.
-        If some extensions are unknown, a warning is issued. 
-
-     Options for specifying location and contents of the parcel Pnam.
-        -from <dir> specify that <dir> must be used as the contents of Pnam.
-        By default <dir> is the root directory of the parcel in the bag of
-        your factory.
-
-       -init <level> specify that Pnam is a new parcel to be initialized in the 
-         reference BAG. No comparison is done. <level> is a character string
-       that identify the level the parcel belongs to. <level> should be
-       given using uppercase letter.
-
-       -req specify a list of parcels used to build Pnam.
-        By default this list is automatically inserted using the requisites
-        declared in your bag.
-
-     Options for specifying output. 
-
-        By default, creates a file named Pnam.report in the current directory.
-        If option -o <file> is specified the output is written in file.
-        By default the identical files are not listed unless option -show= is 
-        specified.
-      
-     Options for filtering comparison:
-
-        By default, all the directories and files under Pnam root directory
-        are compared with the contents of the last occurence of pnam in
-        the reference bag. You can avoid some of these comparisons with the
-        following options.
-
-        -depth depth : Subdirectories whose level is greater than depth are  
-                       not compared. (Directory itself is depth = 0 )         
-        -ext e1,e2,..: Select extension file to be compared. Extenstions must 
-                       separated by comma, and begin with a dot (.)          
-        -dir d1,d2,. : Select directory names to be compared. Names can be   
-                       glob-style match.                                     
-        -Xdir d1,d2, : Same as above but excludes listed directories.
-                                                                         
-       Examples: 
-
-       Writes in /tmp/report the compared state of parcel KL:BAG:KERNEL-B4-1
-        with the last occurence of KERNEL-B4-1 in the reference BAG.
-
-          tclsh> pprepare KL:BAG:KERNEL-B4-1 -o /tmp/report
-
-      }        
-    return
-}
-#
-# Point d'entree de la commande
-#
-proc pprepare { args } {
-    
-    set tblreq(-h)       {}
-    set tblreq(-o)       value_required:file
-    set tblreq(-show=)   {}
-    set tblreq(-init)    value_required:string
-    set tblreq(-from)    value_required:file
-    set tblreq(-v)       {}
-    set tblreq(-V)       {}
-    set tblreq(-req)     value_required:string
-    set tblreq(-depth)   value_required:string
-    set tblreq(-ext)     value_required:list
-    set tblreq(-dir)     value_required:list
-    set tblreq(-xdir)    value_required:list
-
-    set param {}
-    if { [wokUtils:EASY:GETOPT param tabarg tblreq wokpprepareUsage $args] == -1 } return
-
-    if [info exists tabarg(-h)] {
-       wokpprepareUsage
-       return
-    }
-
-    set verbose 0
-    if { [info exists tabarg(-v)] || [info exists tabarg(-V)] } { set verbose 1 }
-
-    if { [llength $param] != 1 } {
-       wokpprepareUsage
-       return
-    }
-
-    set hidee 1
-    if [info exists tabarg(-show=)] {
-       set hidee 0
-    }
-
-
-    set init NO
-    if [info exists tabarg(-init)] {
-       set init $tabarg(-init)
-    } 
-
-    if { [set comp [package require Wokutils]] != {} } {
-       set compare_routine wokcmp
-    } else {
-       set compare_routine wokUtils:FILES:AreSame
-    }
-
-    if { $verbose } { puts "Will use the command $compare_routine for file comparison." ; flush stdout }
-
-    set inam [lindex $param 0]
-
-    if [info exists tabarg(-from)] {
-       set pnam $inam  ;# si il n'y a pas de : 
-       set drev $tabarg(-from)
-    } else {
-       if [wokinfo -x $inam] {
-           set pnam [wokinfo -n $inam]
-           set drev [wokinfo -p HomeDir $inam]
-       } else { 
-           puts "Qui peut me dire comment on utilise simplement wokinfo et Cie.. ??"
-           puts "En attendant specifier la parcel avec son full path. Ex KERNEL:BAG:KERNEL-B6-1"
-           puts "ou utiliser l'option -from pour dire ou faut prendre les directories de l'UL"
-           return
-       }
-    } 
-
-    if [info exists tabarg(-req)] {
-       set umak $tabarg(-req)
-    } else {
-       set umak [pprepare:depends:read $inam]
-    }
-
-    set dmas [wokBAG:cpnt:GetImportName $pnam]
-    if { "$init" == "NO" } {
-       if { $verbose } { puts "Will use $dmas as directory for comparison" ; flush stdout }
-       if { [file exists $dmas] } {
-           if { ![file isdirectory $dmas] } {
-               puts  stderr "$dmas is not a directory"
-               return
-           }
-           if { $verbose } { puts -nonewline "Reading $dmas ..."; flush stdout }
-           
-           wokUtils:FILES:DirToMap $dmas mas
-           
-           if { $verbose } { puts "Done"  ; flush stdout}
-           if [info exists mas(/lost+found)] {
-               unset mas(/lost+found)
-           }
-       }
-    }
-
-    if { [file exists  $drev] } {
-       if { ![file isdirectory $drev] } {
-           puts stderr "$drev is not a directory"
-           return
-       }
-       if { $verbose } { puts -nonewline "Reading $drev ..." ; flush stdout  }
-       wokUtils:FILES:DirToMap $drev rev
-       if { $verbose } { puts "Done" ; flush stdout }
-       if [info exists rev(/lost+found)] {
-           unset rev(/lost+found)
-       }
-    } else {
-       puts  stderr "Directory $drev does not exists."
-       return
-    }
-
-    if [info exists tabarg(-o)] {
-       if [ catch { set fileid [ open [set written $tabarg(-o)] w ] } status ] {
-           puts stderr "$status"
-           return
-       }
-    } else {
-       if [ catch { set fileid [ open [set written [pwd]/${pnam}.report] w ] } status ] {
-           puts stderr "$status"
-           return
-       }
-    }
-
-    set gblist {}
-    if [info exists tabarg(-ext)] {
-       foreach e $tabarg(-ext) {
-           lappend gblist $e
-       }
-    }
-
-    if [info exists tabarg(-depth)] {
-       set depth [expr $tabarg(-depth) + 1]
-       if [array exists mas] {
-           foreach ky [array names mas] {
-               if { [expr [llength [split $ky /]] -1] >= $depth } {
-                   unset mas($ky)  
-               }
-           }
-       }
-       foreach ky [array names rev] {
-           if { [expr [llength [split $ky /]] -1] >= $depth } {
-               unset rev($ky)  
-           }
-       }
-    }
-    
-    if [info exists tabarg(-dir)] {
-       foreach ptn $tabarg(-dir) {
-           if [array exists mas] {
-               foreach ky [array names mas] {
-                   if ![string match $ptn $ky] {
-                       unset mas($ky)
-                   }
-               }
-           }
-           foreach ky [array names rev] {
-               if ![string match $ptn $ky] {
-                   unset rev($ky)
-               }
-           }
-       }
-    }
-    
-    if [info exists tabarg(-xdir)] {
-       foreach ptn $tabarg(-xdir) {
-           if [array exists mas] {
-               foreach ky [array names mas] {
-                   if [string match $ptn $ky] {
-                       unset mas($ky)
-                   }
-               }
-           }
-           foreach ky [array names rev] {
-               if [string match $ptn $ky] {
-                   unset rev($ky)
-               }
-           }
-       }
-    }
-    ;# bai gio em phai di lam...
-    if { $verbose } { puts -nonewline "Begin comparison ..." ; flush stdout }
-    wokUtils:EASY:Compare mas rev MAPWRK $compare_routine $hidee $gblist
-    if { $verbose } { puts "Done ..." ; flush stdout }
-
-    pprepare:header:write $pnam $dmas $drev $init $umak $fileid
-    wokUtils:EASY:WriteCompare $dmas $drev MAPWRK $fileid
-    pprepare:comments:write $fileid
-
-    if { [string match file* $fileid] } {
-       close $fileid
-    }
-    
-    set l [wokUtils:EASY:RevFiles MAPWRK] 
-    wokUtils:EASY:ext $l Extensions
-    if { [set unk [wokBAG:magic:CheckExt [array names Extensions]]] != {} } {
-       foreach ext $unk {
-           puts "Error : Unknown extension $ext"
-       }
-    }
-
-    puts "File $written has been created."
-    return
-}
-;#
-;# retourne le header d'un report dans map.
-;#
-proc pprepare:header:read { fileid  map } {
-    upvar $map TLOC
-    while {[gets $fileid x] >= 0} {
-       if { [regexp {^Parcel  : (.*)} $x all pnam] } {set f0 1 }
-       if { [regexp {^Master  : (.*)} $x all dmas] } {set f1 1 }
-       if { [regexp {^Revision: (.*)} $x all drev] } {set f2 1 }
-       if { [regexp {^Init    : (.*)} $x all init] } {set f3 1 }
-       if { [regexp {^Umaked  : (.*)} $x all umak] } {set f4 1 }
-       if { [info exists f0] && [info exists f1] && [info exists f2] && [info exists f3]  && [info exists f4]} { 
-           array set TLOC [list Parcel $pnam Master $dmas Revision $drev Init $init Umaked $umak]
-           return 1
-       } 
-    }
-    return {}
-}
-;#
-;# ecrit le header d'un report.
-;#
-proc pprepare:header:write { pnam dir1 dir2 init umak fileid } {
-    puts $fileid "Parcel  : $pnam"
-    puts $fileid "Master  : $dir1"
-    puts $fileid "Revision: $dir2"
-    puts $fileid "Init    : $init"
-    puts $fileid "Umaked  : $umak"
-    return
-}
-;#
-;# retourne les commentaires d'un report
-;#
-proc pprepare:comments:read { fileid  } {
-    set l {}
-    while {[gets $fileid x] >= 0} {
-       lappend l $x
-    }
-    return $l
-}
-;#
-;# ecrit un template de commentaires d'un report
-;#
-proc pprepare:comments:write { fileid } {
-    puts $fileid "is"
-    puts $fileid "  Author        :"
-    puts $fileid "  Study/CSR     :"
-    puts $fileid "  Debug         :"
-    puts $fileid "  Improvements  :"
-    puts $fileid "  News          :"
-    puts $fileid "  Deletions     :"
-    puts $fileid "  Impact        :"
-    puts $fileid "  Comments      :"
-    puts $fileid "end;"
-}
-;#
-;# recupere les dependances de fab i. e. lit un machin ecrit 
-;# /adv_20/MDL/BAG/GEOMETRY-M4-6/adm/GEOMETRY.depul qui contient (GEOMLITE-M4-6 KERNEL-K4L)
-;# 
-;# inam est un FULL PATH.
-;#
-proc pprepare:depends:read { inam } {
-    if [wokinfo -x $inam] {
-       set nam [wokBAG:cpnt:parse root [wokinfo -n $inam]]
-       return [wokUtils:FILES:FileToList [wokinfo -p AdmDir $inam]/$nam.depul]
-    }
-}
diff --git a/src/WOKTclLib/pstore.tcl b/src/WOKTclLib/pstore.tcl
deleted file mode 100755 (executable)
index ae841fd..0000000
+++ /dev/null
@@ -1,476 +0,0 @@
-#############################################################################
-#
-#                              P S T O R E
-#                              ___________
-#
-#############################################################################
-#
-# Usage
-#
-proc pstoreUsage { } {
-    puts stderr \
-           {
-       Usage : pstore    [-conf cnam1,cnam2,..]  [-f] [-rm|-ls|-cat] [filename] 
-       
-       pstore filename  -conf option : Add a report in the report's list from <filename>.     
-       -conf option is mandatory.    : Will update <cnam1,cnam2> during integration. (pintegre)
-       
-       pstore [-ls]               : Lists pending reports with their owner and IDs.        
-       pstore -cat <report_ID>    : Shows the content of <report_ID>.                      
-       pstore [-f] -rm <report_ID>: Remove a report from the queue                         
-       : (-f used to force if you dont own the report).          
-       
-       -dump  <report_ID>         : Dump contents of Report .                                      
-       -check                     : Check that all files referenced in queue have not
-                                     not been modified since their storage.
-       
-    }
-    return
-}   
-#
-# Point d'entree de la commande
-#
-proc pstore { args } {
-
-    set tblreq(-h)         {}
-    set tblreq(-f)         {}
-    set tblreq(-rm)        {}
-    set tblreq(-ls)        {}
-    set tblreq(-cat)       {}
-
-    set tblreq(-dump)      {}
-    set tblreq(-check)     {}
-
-    set tblreq(-conf)      value_required:list
-
-
-    set param {}
-
-    if { [wokUtils:EASY:GETOPT param tabarg tblreq pstoreUsage $args] == -1 } return
-
-    set option_specified [array exists tabarg]
-
-    if { [info exists tabarg(-h)] } {
-       pstoreUsage
-       return
-    }
-    
-    if { [info exists tabarg(-f)] } {
-       set forced -1
-    } else {
-       set forced 0
-    }
-    
-
-
-    set fshop nil
-    
-    set FrigoName [pstore:Report:MkRoot $fshop 1]
-    
-    if { $FrigoName == {} } {
-       msgprint -c WOKBAG -e "Bad queue name."
-       return
-    }
-
-    set ListReport [pstore:Report:GetReportList $FrigoName] 
-
-    ;#
-    ;#  Options ne s'appliquant pas a un ID
-    ;#    
-    set ID [lindex $param 0]
-
-    if { $ID == {} } {
-       if { ( [info exists tabarg(-ls)] == 1 ) || ( $option_specified == 0 ) } {
-           set i 0
-           foreach e  $ListReport { 
-               set user [wokUtils:FILES:Userid $FrigoName/$e]
-               set str  [pstore:Report:GetPrettyName $e]
-               if { $str != {} } {
-                   set rep [string range [lindex $str 0] 0 19]
-                   set dte [lindex $str 1]
-                   puts [format "%3d - %-10s %-20s (stored at %s)" [incr i] $user $rep $dte ]
-               } else {
-                   msgprint -c WOKBAG -e "Bad entry ($e) found in report.list"
-               }
-           }
-           return
-       } elseif { [info exists tabarg(-check)] } {
-           set LISTREPORT [pstore:Report:Get all $fshop]
-           foreach REPORT $LISTREPORT {
-               set cmd [pstore:Report:Process $REPORT]
-               if { [info procs pstoreReportWasThere] != {} } {
-                   if { [set l [pstoreReportWasThere]] != {} } {
-                       foreach f $l {
-                           puts stderr "File $f has been removed since storage of that report."
-                       }
-                       return
-                   }
-               }
-               if { [info procs pstoreReportRemember] != {} } {
-                   if { [set l [pstoreReportRemember]] != {} } {
-                       foreach [list fn dt] $l {
-                           puts -nonewline stderr "File date has changed for $fn." 
-                           puts stderr "Was stored at [fmtclock $dt]. Current is [fmtclock [file mtime $fn]]"
-                       }
-                   }
-               }
-               pstore:Report:UnProcess $REPORT
-           }
-           return
-       }
-    }
-    
-    if { [info exists tabarg(-check)] || [info exists tabarg(-ls)] } {
-       pstoreUsage
-       return
-    }
-
-
-    ;#
-    ;#  Options s'appliquant a un ID
-    ;# 
-    
-    if ![wokUtils:FILES:ValidName $ID] {
-       msgprint -c WOKBAG -e "Malformed command or invalid file name $ID"
-       return {}
-    }
-    
-
-    
-    if [info exists tabarg(-rm)] {
-       set entry [pstore:Report:GetTrueName $ID $ListReport]
-       if { $entry != {}  } {
-           pstore:Report:Del $FrigoName/$entry $forced  
-       }
-       return
-    }
-    
-    if [info exists tabarg(-cat)] {
-       set entry [pstore:Report:GetTrueName $ID $ListReport]
-       if { $entry != {}  } {
-           set rep $FrigoName/$entry/report-orig
-           if { [file exists $rep] } {
-               return [exec cat $rep]
-           } else {
-               msgprint -c WOKBAG -e "File $rep not found."
-           }
-       }
-       return
-    }
-    
-    if [info exists tabarg(-dump)] {
-       set entry [pstore:Report:GetTrueName $ID [pstore:Report:GetReportList $FrigoName]]
-       return [pstore:Report:Dump $FrigoName/$entry]
-    }
-
-    
-    if { [info exists tabarg(-conf)] } {
-       set Config $tabarg(-conf)
-    } else {
-       pstoreUsage
-       return
-    }
-
-    if [file exists [set report [lindex $ID 0]]] {
-       if ![ catch { set fileid [ open $report r ] } ] {
-           pprepare:header:read $fileid RepHeader
-           set pnam  $RepHeader(Parcel)
-           if ![pstore:Report:Exists $pnam $ListReport] {
-               wokUtils:EASY:ReadCompare map $fileid
-               if ![wokUtils:EASY:MapEmpty map] {
-                   set entry [pstore:Report:GetUniqueName $pnam]
-                   if { $entry != {}  } {
-                       if [pstore:Report:Add $Config $report RepHeader map $FrigoName/${entry}] {
-                           msgprint -c WOKBAG -i [set subject "Report $report has been stored."]
-                           seek $fileid 0 start
-                           pstore:mail:Send "With love from $pnam ..." [read $fileid]
-                           close $fileid
-                       } else {
-                           msgprint -c WOKBAG -e " during storage of $report"
-                           catch { exec rm -rf $FrigoName/${entry} }
-                       }
-                   } else {
-                       msgprint -c WOKBAG -e "Parcel name $pnam should not contains a comma." 
-                   }
-               } else {
-                   msgprint -c WOKBAG -e "Report $report is empty."
-               }
-           } else {
-               msgprint -c WOKBAG -e "A report for parcel $pnam is already in queue."
-           }
-       } else {
-           msgprint -c WOKBAG -e "File $report cannot be read."
-       }
-    } else {
-       msgprint -c WOKBAG -e "File $report not found."
-    }
-    return
-}
-#;>
-# Ajoute un report dans un frigo
-#;<
-proc pstore:Report:Add { Config report Header table frigo } {
-    upvar $Header RepHeader $table RepBody
-    
-    mkdir -path $frigo
-    chmod 0777 $frigo
-
-    set RepHeader(FrigoName) $frigo
-    wokUtils:FILES:ListToFile {} [set RepHeader(COMMAND) $frigo/COMMAND]
-    wokUtils:FILES:ListToFile {} [set RepHeader(LABEL)   $frigo/LABEL]
-    wokUtils:FILES:copy $report  [set RepHeader(Journal) $frigo/report-orig]
-    wokUtils:EASY:ListToProc $Config   $frigo/Config.tcl pstoreReportConfig
-    wokUtils:EASY:MapToProc  RepHeader $frigo/Header.tcl pstoreReportHeader
-    wokUtils:EASY:MapToProc  RepBody   $frigo/Body.tcl   pstoreReportBody
-    set l [wokUtils:EASY:RevFiles RepBody] 
-    wokUtils:FILES:ListToFile [wokUtils:FILES:WasThere $l pstoreReportWasThere] $frigo/WasThere.tcl
-    source $frigo/WasThere.tcl
-    if { [set ll [pstoreReportWasThere]] == {} } {
-       wokUtils:FILES:ListToFile [wokUtils:FILES:Remember $l pstoreReportRemember] $frigo/Remember.tcl
-       chmod 0777 [list $frigo/Config.tcl $frigo/Header.tcl $frigo/Body.tcl $frigo/Remember.tcl $frigo/report-orig $frigo/COMMAND $frigo/LABEL]
-       rename pstoreReportWasThere {}
-       wokUtils:EASY:ext $l Extensions
-       if { [set unk [wokBAG:magic:CheckExt [array names Extensions]]] != {} } {
-           foreach ext $unk {
-               puts "Error : Unknown extension $ext ( $Extensions($ext) )"
-           }
-           return 0
-       }
-       return 1
-    } else {
-       foreach f $ll {
-           puts stderr "File $f not found"
-       }
-       rename pstoreReportWasThere {}
-       return 0
-    }
-}
-#;>
-# Lit un report enregistre par pstore, remplit une table
-#;<
-proc pstore:Report:Process { RepName } {
-    foreach file [list Config.tcl WasThere.tcl Remember.tcl Header.tcl Body.tcl] {
-       if { [file exists $RepName/$file] } {
-           source $RepName/$file
-       } else {
-           puts stderr "Report:Process. File $file not found in $RepName."
-           return 0
-       }
-    }
-    return 1
-}
-#;>
-# retire les procs utilisees par un report
-# Pour l'instant RepName n'est pas utilise (la proc est independante !!).
-#;<
-proc pstore:Report:UnProcess { RepName } {
-    foreach proc [list pstoreReportConfig pstoreReportWasThere pstoreReportRemember pstoreReportHeader pstoreReportBody] {
-       if { [info procs $proc] != {} } { 
-           rename $proc {}
-       }
-    }
-}
-#;>
-# Retire un report du frigo, le report est donne par son full path
-#;<
-proc pstore:Report:Del { LISTREPORT {forced -1} } {
-    foreach entry $LISTREPORT {
-       if { [file owned $entry] || $forced != -1 } {
-           if { [pstore:Report:RmEntry $entry] == -1 } {
-               return -1
-           }
-       } else {
-           msgprint -c WOKBAG -e "You are not the owner of this report."
-           return -1
-       }
-    }
-    return
-}
-#;>
-# Detruit effectivement une entry (full path) dans la queue.
-#;<
-proc pstore:Report:RmEntry { fullentry } {
-    foreach itm [glob -nocomplain $fullentry/*] {
-       if [file isdirectory $itm] {
-           wokUtils:FILES:removedir $itm
-       }
-    }
-    wokUtils:FILES:removedir $fullentry
-    return
-}
-;#
-;#
-;#
-proc pstore:Report:Getexcep { } {
-    return [list LABEL COMMAND Remember.tcl Header.tcl Body.tcl cvt_data report-orig]
-}
-
-#;>
-# Pour debugger. Imprime tout ce qui se trouve accroche sous ID
-#;<
-proc pstore:Report:Dump { D } {
-    wokUtils:FILES:FindFile $D *
-}
-#;>
-# Retourne le nom de l'entry associee a  ReportID {} sinon
-#;<
-proc pstore:Report:GetTrueName { ReportID listreport } {
-    set ln [llength $listreport]
-    if { $ln > 0 } {
-       if [ regexp {^[0-9]+$} $ReportID ] {
-           set idm1 [expr $ReportID - 1]
-           set res [lindex $listreport $idm1]
-           if { $res != {} } {
-               return $res
-           } else {
-               msgprint -c WOKBAG -e "Bad report ID. Should be a digit and range into ( 1 and $ln ) "
-               return {}
-           }
-       } else {
-           msgprint -c WOKBAG -e "Bad report ID. Should be a digit and range into ( 1 and $ln ) "
-           return {}
-       }
-    } else {
-       msgprint -c WOKBAG -e "Report Queue is empty."
-       return {}
-
-    }
-}
-#;>
-#
-# Retourne un nom de directory unique base sur l'heure /append le nom du report
-#
-#;<
-proc pstore:Report:GetUniqueName { name } {
-    if { [string first , $name] == -1 } {
-       return [getclock],${name}
-    } else {
-       return {}
-    }
-}
-#;>
-# A partir d'un nom genere par GetUniqueName, retourne une liste de 2 elem
-#   1. La date ayant servi a creer le directory
-#   2. Le nom du report
-#;<
-proc pstore:Report:GetPrettyName { Uniquename } {
-    set l [split $Uniquename ,]
-    return [list [lindex $l 1] [fmtclock [lindex $l 0]] ]
-}
-;#
-;# Retourne 1 si pnam est deja dans la liste des reports.
-;#
-proc pstore:Report:Exists { pnam ListReport } {
-    if { [lsearch -glob $ListReport *,$pnam] == -1 } {
-       return 0
-    } else {
-       return 1
-    }
-}
-#;>
-# Retourne la liste des reports ordonnee par rapport a leur date d'arrivee
-#;<
-proc pstore:Report:GetReportList { FrigoName } {
-    if [file exists $FrigoName] {
-       return [lsort -command pstore:Report:SortEntry [readdir $FrigoName] ]
-    } else {
-       return {}
-    }
-}
-#;>
-# Retourne l'index dans la queue d'un report -1 si existe pas
-#;<
-proc pstore:Report:Index { FrigoName Truename } {
-    set i [lsearch [pstore:Report:GetReportList $FrigoName] $Truename]
-    if { $i != -1 } {
-       return [expr $i + 1]
-    } else {
-       return -1
-    }
-}
-#;>
-# Retourne a partir d'un full path le nom du report
-#;<
-proc pstore:Report:Head { fullpath } {
-    if [regexp {.*/([0-9]*,[^/]*)} $fullpath all rep] {
-       return $rep
-    } else {
-       return {}
-    }
-}
-#;
-# Retourne la longueur  de la liste des reports en attente dans shop
-#;<
-proc pstore:Report:QueueLength { fshop } {
-    return [llength [pstore:Report:GetReportList [pstore:Report:GetRootName]]]
-}
-
-#;>
-# Commande utilise pour le tri ci dessus: (u,string1 > v,string2 <=> u > v)
-#;<
-proc pstore:Report:SortEntry { a b } {
-    set lna [split $a ,] 
-    set lnb [split $b ,]
-    return [expr [lindex $lna 0] - [lindex $lnb 0] ]
-}
-
-;#
-;# Retourne  un ou plusieurs pathes de report, mangeables par pstore:Report:Process
-;#
-proc pstore:Report:Get { id fshop } {
-    set l {}
-    if { [pstore:Report:QueueLength $fshop] != 0 } {
-       set FrigoName [pstore:Report:GetRootName]
-       if { $FrigoName != {} } {
-           set ListReport [pstore:Report:GetReportList $FrigoName] 
-           if { $ListReport != {} } {
-               if { "$id" == "all" } {
-                   foreach e $ListReport {
-                       lappend l $FrigoName/$e
-                   }
-               } else {
-                   set brep [pstore:Report:GetTrueName $id $ListReport]
-                   if { "$brep" != "" } {
-                       lappend l $FrigoName/$brep
-                   }
-               }
-           } else {
-               msgprint -c WOKBAG -e "Unable to get report list."
-           }
-       } else {
-           msgprint -c WOKBAG -e "Administration directory for $fshop not found. No report was stored."
-       }
-    } else {
-       msgprint -c WOKBAG -i "Report queue is empty."
-    }
-    return $l
-}
-;#
-;# Create root for report's queue. 
-;#
-proc pstore:Report:MkRoot { fshop {create 0} } {
-    set root [pstore:Report:GetRootName]
-    if [file exists $root] {
-       return $root
-    } else {
-       if { $create } {
-           wokUtils:DIR:create $root
-           chmod 0777 $root
-           return $root
-       } else {
-           return {}
-       }
-    }
-}
-;#
-;# Actually send the mail.
-;# The user "from"
-;# The subject
-;#
-proc pstore:mail:Send { subject text } {
-    foreach user [pstore:mail:Users] { 
-       wokUtils:EASY:mail $user [id user] {} $subject $text send 
-    }
-
-}
diff --git a/src/WOKTclLib/ptypefile.tcl b/src/WOKTclLib/ptypefile.tcl
deleted file mode 100755 (executable)
index c2908bc..0000000
+++ /dev/null
@@ -1,217 +0,0 @@
-proc ptypefile_usage { } {
-    puts stderr \
-           {
-       Usage: ptypefile -[hwt] [-S ao1,sil,sun,hp,wnt] <Parcelname>
-       
-       Context:
-       The command must be runned from a workbnech belonging to a workshop which contains
-       the given parcel in its ParcelList
-
-       ptypefile -h displays this text
-
-       ptypefile -w <Parcelname>  
-       displays on the standard output the non kept type files.
-
-       ptypefile <Parcelname> 
-       generates a type file in the adm directory of the parcel for ALL UNIX PLATFORMS
-
-       ptypefile -S ao1,sil <ParcelName> 
-       generates a type file in the adm directory of the parcel ONLY for the given platforms 
-       
-       ptypefile -S wnt <ParcelName> 
-       generates a type file in the adm directory of the parcel ONLY for wnt platform
-       
-       ptypefile -t <Parcelname> 
-       generates a type file in the adm directory where the package libraries contained in a toolkit
-       are removed from the type file.
-
-       3 files are generated:
-       parcel.typ contains pairs of file type, relative path which will be taken into account 
-       during packaging.
-       parcel.unktyp file warns the UNKNOWN types i.e. not taken into account
-       parcel.notyp warns all the files that will be removed while packaging the parcel for Quantum
-    }
-}
-proc ptypefile { args } {
-    ;# Options
-    ;#
-    set tblreq(-h) {}
-    set tblreq(-w) {}
-    set tblreq(-t) {}
-    set tblreq(-S) value_required:list
-    ;# Parameters
-    ;# 
-    set param {}
-    if {[wokUtils:EASY:GETOPT param table tblreq ptypefile_usage $args] == -1 } return
-    ;#
-    if { [info exists table(-h)] } {
-       ptypefile_usage 
-       return
-    }
-    set warn 0
-    if { [info exists table(-w)] } {
-       set warn 1
-    }
-    if { [info exists table(-t)] } {
-       set tkpriority 1
-       msgprint -w "SORRY NOT YET IMPLEMENTED ...."
-       return
-    }
-    set statlist { ao1 hp sil sun }
-    if { [info exists table(-S)] } {
-       set statlist $table(-S)
-       }
-    set parc [lindex  $param 0]
-    if { $parc == "" } {
-       ptypefile_usage
-       return
-    }
-    set parcname [wokinfo -n $parc]
-    # sauvons la plateforme en cours 
-    set curstation  [wokparam -v %Station]
-    ;# sauvons
-    catch {exec cp "[wokparam -v %${parcname}_Adm]/${parcname}.typ" "[wokparam -v %${parcname}_Adm]/${parcname}.typ-sav"}
-    set typfile [open  "[wokparam -v %${parcname}_Adm]/$parcname.typ" w+]
-    set notypfile [open  "[wokparam -v %${parcname}_Adm]/$parcname.notyp" w+]
-    set unktypfile [open  "[wokparam -v %${parcname}_Adm]/$parcname.unktyp" w+]
-    # Traitons d'abord les fichiers non plateformes dependants
-    # les uds de l'ul
-    ;#    catch {
-       foreach ud [ pinfo -l $parc] {
-           set lstwokfilecom "[uinfo -Fi $parc:$ud ] [uinfo -Fb $parc:$ud ] "
-           puts " UD $ud "
-           foreach wokfile  $lstwokfilecom  {
-               switch  -exact [lindex $wokfile 0] {
-                   EXTERNLIB -
-                   admfile -
-                   ccldrv -
-                   dbadmfile -
-                   demofile -
-                   derivated -
-                   dummy -
-                   infofile -
-                   intdat -
-                   object -
-                   pubinclude -
-                   source -
-                   srcinc -
-                   stadmfile -
-                   sttmpdir -
-                   testobject {typnotkept $warn $wokfile $notypfile }
-                   cclcfg -
-                   cclrun -
-                   corelisp -
-                   dbunit -
-                   'default' -
-                   engdatfile -
-                   engine -
-                   englisp -
-                   englispfile -
-                   executable -
-                   icon -
-                   iconfd -
-                   loginfile -
-                   motifdefault -
-                   msentity -
-                   msgfile -
-                   shapefile -
-                   shellcfg -
-                   shellscript -
-                   template -
-                   testexec { typkept $wokfile  $parcname $ud $typfile }
-                   datafile { typdatafile $warn $wokfile $parcname $ud  $typfile $notypfile }
-                   default { typunknown $wokfile $unktypfile}
-               }
-           }
-           foreach worksta $statlist {
-               wokprofile -S $worksta
-               set lstwokfilesta [uinfo -Fs $parc:$ud ]
-               foreach wokfile  $lstwokfilesta  {
-                   switch  -exact [lindex $wokfile 0] {
-                       EXTERNLIB -
-                       admfile -
-                       ccldrv -
-                       dbadmfile -
-                       demofile -
-                       derivated -
-                       dummy -
-                       infofile -
-                       intdat -
-                       object -
-                       pubinclude -
-                       source -
-                       srcinc -
-                       stadmfile -
-                       sttmpdir -
-                       testobject { typnotkept $warn $wokfile $notypfile }
-                       cclcfg -
-                       cclrun -
-                       corelisp -
-                       dbunit -
-                       'default' -
-                       engdatfile -
-                       engine -
-                       englisp -
-                       englispfile -
-                       executable -
-                       icon -
-                       iconfd -
-                       motifdefault -
-                       msentity -
-                       msgfile -
-                       shapefile -
-                       shellcfg -
-                       shellscript -
-                       template -
-                       testexec { typkept $wokfile  $parcname $ud $typfile }
-                       library { typlibrary $warn $wokfile $parcname $ud $typfile $notypfile }
-                       datafile { typdatafile $warn $wokfile $parcname $ud $typfile $notypfile }
-                       loginfile { typloginfile $warn $wokfile $parcname $ud $typfile $notypfile }
-                       default { typunknown $wokfile $unktypfile }
-                   }
-               }
-           }
-       }
-    ;#    }
-    close $typfile         
-    close $unktypfile      
-    close $notypfile
-    ;# on remet la station
-    wokprofile -S $curstation      
-}
-;#
-proc typkept { wokfile parcname ud typfile  } {
-    puts  $typfile "[lindex $wokfile 0]          [string range [wokinfo -p [lindex $wokfile 0]:[lindex $wokfile 1]   ${parcname}:${ud}] [expr [string length [wokparam -v %${parcname}_Home]] + 1] end]"
-}
-proc typnotkept { warn wokfile notypfile } {
-    if { $warn } { msgprint -w "TYPE $wokfile NOT KEPT"         }
-    puts $notypfile "TYPE $wokfile  NOT KEPT" 
-} 
-proc typunknown { wokfile unktypfile } {
-    msgprint -e "TYPE $wokfile UNKNOWN " 
-    puts $unktypfile "TYPE $wokfile UNKNOWN"
-}
-
-proc typlibrary { warn  wokfile parcname ud  typfile notypfile } {
-    ;# rajouter pktklist et tkpriority apres
-    if {[file extension [lindex $wokfile 1]] == ".Z"} {
-       typnotkept $warn $wokfile $notypfile 
-    } else { 
-       typkept $wokfile  $parcname $ud $typfile
-    }
-}
-proc typdatafile { warn  wokfile parcname ud  typfile notypfile} {
-    if {[file extension [lindex $wokfile 1]] == ".ilm"} {      
-       typnotkept $warn $wokfile $notypfile 
-    } else { 
-       typkept $wokfile  $parcname $ud $typfile
-    }
-}
-proc typloginfile { warn  wokfile parcname ud  typfile notypfile } {
-    if {[file extension [lindex $wokfile 1]] == ".edl"} {
-       typnotkept $warn $wokfile $notypfile 
-    } else { 
-       typkept $wokfile  $parcname $ud $typfile
-    }
-}
-
diff --git a/src/WOKTclLib/template.dsp b/src/WOKTclLib/template.dsp
deleted file mode 100755 (executable)
index b9b9555..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-# Microsoft Developer Studio Project File - Name="__TKNAM__" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Dynamic-Link Library" 0x0102
-
-CFG=__TKNAM__ - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "__TKNAM__.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "__TKNAM__.mak" CFG="__TKNAM__ - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "__TKNAM__ - Win32 Release" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE "__TKNAM__ - Win32 Debug" (based on "Win32 (x86) Dynamic-Link Library")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-MTL=midl.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "__TKNAM__ - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "..\..\win32\obj\__TKNAM__"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "..\..\win32\bin"
-# PROP Intermediate_Dir "..\..\win32\obj\__TKNAM__"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /FD /c
-# ADD CPP /nologo /MD  /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "WNT" /D "CSFDB"/D "No_Exception" /FD /c
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /o "NUL" /win32
-# ADD BASE RSC /l 0x40c /d "NDEBUG"
-# ADD RSC /l 0x40c /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /machine:I386
-# ADD LINK32 __TKDEP__ opengl32.lib glu32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ws2_32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /incremental:no /machine:I386 /libpath:"..\..\win32\lib" /implib:"..\..\win32\lib\__TKNAM__.lib"
-
-!ELSEIF  "$(CFG)" == "__TKNAM__ - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "..\..\win32\objd\__TKNAM__"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "..\..\win32\bind"
-# PROP Intermediate_Dir "..\..\win32\objd\__TKNAM__"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /Zi /Od /D "WIN32" /D "DEB" /D "_DEBUG" /D "_WINDOWS" /FD /c
-# ADD CPP /nologo /MDd /W3 /GX /Zi /Od /D "WIN32" /D "DEB" /D "_DEBUG" /D "_WINDOWS" /D "WNT" /D "CSFDB" /FD /c
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /o "NUL" /win32
-# ADD BASE RSC /l 0x40c /d "_DEBUG"
-# ADD RSC /l 0x40c /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 __TKDEP__ opengl32.lib glu32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ws2_32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:windows /dll /incremental:no /debug /machine:IX86 /libpath:"..\..\win32\libd" /pdb:"..\..\win32\bind\__TKNAM__.pdb" /implib:"..\..\win32\libd\__TKNAM__.lib"
-
-!ENDIF 
-
-# Begin Target
-
-# Name "__TKNAM__ - Win32 Release"
-# Name "__TKNAM__ - Win32 Debug"
-# Begin Group "Source files"
-__FILES__
-# End Group
-# End Target
-# End Project
diff --git a/src/WOKTclLib/template.dspx b/src/WOKTclLib/template.dspx
deleted file mode 100755 (executable)
index 6bc39cf..0000000
+++ /dev/null
@@ -1,94 +0,0 @@
-# Microsoft Developer Studio Project File - Name="__XQTNAM__" - Package Owner=<4>
-# Microsoft Developer Studio Generated Build File, Format Version 6.00
-# ** DO NOT EDIT **
-
-# TARGTYPE "Win32 (x86) Application" 0x0103
-
-CFG=__XQTNAM__ - Win32 Debug
-!MESSAGE This is not a valid makefile. To build this project using NMAKE,
-!MESSAGE use the Export Makefile command and run
-!MESSAGE 
-!MESSAGE NMAKE /f "__XQTNAM__.mak".
-!MESSAGE 
-!MESSAGE You can specify a configuration when running NMAKE
-!MESSAGE by defining the macro CFG on the command line. For example:
-!MESSAGE 
-!MESSAGE NMAKE /f "__XQTNAM__.mak" CFG="__XQTNAM__ - Win32 Debug"
-!MESSAGE 
-!MESSAGE Possible choices for configuration are:
-!MESSAGE 
-!MESSAGE "__XQTNAM__ - Win32 Release" (based on "Win32 (x86) Console Application")
-!MESSAGE "__XQTNAM__ - Win32 Debug" (based on "Win32 (x86) Console Application")
-!MESSAGE 
-
-# Begin Project
-# PROP AllowPerConfigDependencies 0
-# PROP Scc_ProjName ""
-# PROP Scc_LocalPath ""
-CPP=cl.exe
-MTL=midl.exe
-RSC=rc.exe
-
-!IF  "$(CFG)" == "__XQTNAM__ - Win32 Release"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 0
-# PROP BASE Output_Dir "Release"
-# PROP BASE Intermediate_Dir "..\..\win32\obj\__XQTNAM__"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 0
-# PROP Output_Dir "..\..\win32\bin"
-# PROP Intermediate_Dir "..\..\win32\obj\__XQTNAM__"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_WINDOWS" /D "_MBCS" /FD /c
-# ADD CPP /nologo __COMPOPT__ /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "No_Exception" /D "_WINDOWS" /D "WNT" /D "CSFDB" /FD /c
-# ADD BASE MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "NDEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x409 /d "NDEBUG"
-# ADD RSC /l 0x409 /d "NDEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
-# ADD LINK32 __TKDEP__ /nologo /subsystem:console /machine:I386 /libpath:"..\..\win32\lib" /implib:"..\..\win32\lib\__XQTNAM__.lib"
-
-!ELSEIF  "$(CFG)" == "__XQTNAM__ - Win32 Debug"
-
-# PROP BASE Use_MFC 0
-# PROP BASE Use_Debug_Libraries 1
-# PROP BASE Output_Dir "Debug"
-# PROP BASE Intermediate_Dir "..\..\win32\objd\__XQTNAM__"
-# PROP BASE Target_Dir ""
-# PROP Use_MFC 0
-# PROP Use_Debug_Libraries 1
-# PROP Output_Dir "..\..\win32\bind"
-# PROP Intermediate_Dir "..\..\win32\objd\__XQTNAM__"
-# PROP Ignore_Export_Lib 0
-# PROP Target_Dir ""
-# ADD BASE CPP /nologo /W3 /GX /Zi /Od /D "WIN32" /D "DEB" /D "_DEBUG" /D "_WINDOWS" /FD /GZ /c
-# ADD CPP /nologo __COMPOPTD__ /W3 /GX /Zi /Od /D "WIN32" /D "DEB" /D "_DEBUG" /D "_WINDOWS" /D "WNT" /D "CSFDB" /FD /GZ /c
-# ADD BASE MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD MTL /nologo /D "_DEBUG" /mktyplib203 /win32
-# ADD BASE RSC /l 0x409 /d "_DEBUG"
-# ADD RSC /l 0x409 /d "_DEBUG"
-BSC32=bscmake.exe
-# ADD BASE BSC32 /nologo
-# ADD BSC32 /nologo
-LINK32=link.exe
-# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
-# ADD LINK32 __TKDEP__ /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept /libpath:"..\..\win32\libd" /implib:"..\..\win32\libd\__XQTNAM__.lib"
-
-!ENDIF 
-
-# Begin Target
-
-# Name "__XQTNAM__ - Win32 Release"
-# Name "__XQTNAM__ - Win32 Debug"
-# Begin Group "Source Files"
-__FILES__
-# End Group
-# End Target
-# End Project
diff --git a/src/WOKTclLib/template.vcproj b/src/WOKTclLib/template.vcproj
deleted file mode 100755 (executable)
index 80c89d4..0000000
+++ /dev/null
@@ -1,156 +0,0 @@
-<?xml version="1.0" encoding="windows-1251"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.10"
-       Name="__TKNAM__"
-       SccProjectName=""
-       SccLocalPath="">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory=".\..\..\win32\bin"
-                       IntermediateDirectory=".\..\..\win32\obj\__TKNAM__"
-                       ConfigurationType="2"
-                       UseOfMFC="0"
-                       ATLMinimizesCRunTimeLibraryUsage="FALSE">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalOptions="/DWNT"
-                               Optimization="2"
-                               InlineFunctionExpansion="1"
-                               PreprocessorDefinitions="NDEBUG;WIN32;_WINDOWS;WNT;No_Exception;CSFDB"
-                               StringPooling="TRUE"
-                               RuntimeLibrary="2"
-                               EnableFunctionLevelLinking="TRUE"
-                               PrecompiledHeaderFile=".\..\..\win32\obj\__TKNAM__/__TKNAM__.pch"
-                               AssemblerListingLocation=".\..\..\win32\obj\__TKNAM__/"
-                               ObjectFile=".\..\..\win32\obj\__TKNAM__/"
-                               ProgramDataBaseFileName=".\..\..\win32\obj\__TKNAM__/"
-                               WarningLevel="3"
-                               SuppressStartupBanner="TRUE"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="__TKDEP__ opengl32.lib glu32.lib ws2_32.lib odbc32.lib odbccp32.lib"
-                               OutputFile=".\..\..\win32\bin/__TKNAM__.dll"
-                               LinkIncremental="1"
-                               SuppressStartupBanner="TRUE"
-                               AdditionalLibraryDirectories="..\..\win32\lib"
-                               ProgramDatabaseFile=".\..\..\win32\bin/__TKNAM__.pdb"
-                               SubSystem="2"
-                               ImportLibrary="..\..\win32\lib\__TKNAM__.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"
-                               PreprocessorDefinitions="NDEBUG"
-                               MkTypLibCompatible="TRUE"
-                               SuppressStartupBanner="TRUE"
-                               TargetEnvironment="1"
-                               TypeLibraryName=".\..\..\win32\bin/__TKNAM__.tlb"
-                               HeaderFileName=""/>
-                       <Tool
-                               Name="VCPostBuildEventTool"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"
-                               PreprocessorDefinitions="NDEBUG"
-                               Culture="1036"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory=".\..\..\win32\bind"
-                       IntermediateDirectory=".\..\..\win32\objd\__TKNAM__"
-                       ConfigurationType="2"
-                       UseOfMFC="0"
-                       ATLMinimizesCRunTimeLibraryUsage="FALSE"
-                       ManagedExtensions="FALSE"
-                       WholeProgramOptimization="FALSE">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalOptions="/DWNT"
-                               Optimization="0"
-                               InlineFunctionExpansion="1"
-                               PreprocessorDefinitions="DEB;_DEBUG;WIN32;_WINDOWS;WNT;CSFDB"
-                               RuntimeLibrary="3"
-                               PrecompiledHeaderFile=".\..\..\win32\objd\__TKNAM__/__TKNAM__.pch"
-                               AssemblerListingLocation=".\..\..\win32\objd\__TKNAM__/"
-                               ObjectFile=".\..\..\win32\objd\__TKNAM__/"
-                               ProgramDataBaseFileName=".\..\..\win32\objd\__TKNAM__/"
-                               WarningLevel="3"
-                               SuppressStartupBanner="TRUE"
-                               Detect64BitPortabilityProblems="FALSE"
-                               DebugInformationFormat="3"
-                               CompileAs="0"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="__TKDEP__ opengl32.lib glu32.lib ws2_32.lib odbc32.lib odbccp32.lib"
-                               OutputFile=".\..\..\win32\bind/__TKNAM__.dll"
-                               LinkIncremental="1"
-                               SuppressStartupBanner="TRUE"
-                               AdditionalLibraryDirectories="..\..\win32\libd"
-                               GenerateDebugInformation="TRUE"
-                               ProgramDatabaseFile="..\..\win32\bind\__TKNAM__.pdb"
-                               SubSystem="2"
-                               ImportLibrary="..\..\win32\libd\__TKNAM__.lib"/>
-                       <Tool
-                               Name="VCMIDLTool"
-                               PreprocessorDefinitions="_DEBUG"
-                               MkTypLibCompatible="TRUE"
-                               SuppressStartupBanner="TRUE"
-                               TargetEnvironment="1"
-                               TypeLibraryName=".\..\..\win32\bind/__TKNAM__.tlb"
-                               HeaderFileName=""/>
-                       <Tool
-                               Name="VCPostBuildEventTool"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"
-                               PreprocessorDefinitions="_DEBUG"
-                               Culture="1036"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source files"
-                       Filter="">
-                        __FILES__
-               </Filter>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
diff --git a/src/WOKTclLib/template.vcprojx b/src/WOKTclLib/template.vcprojx
deleted file mode 100755 (executable)
index 4503238..0000000
+++ /dev/null
@@ -1,150 +0,0 @@
-<?xml version="1.0" encoding="windows-1251"?>
-<VisualStudioProject
-       ProjectType="Visual C++"
-       Version="7.10"
-       Name="__XQTNAM__"
-       ProjectGUID="{193A5B07-7F8B-4280-9F4E-32D5F326DFC5}"
-       SccProjectName=""
-       SccLocalPath="">
-       <Platforms>
-               <Platform
-                       Name="Win32"/>
-       </Platforms>
-       <Configurations>
-               <Configuration
-                       Name="Debug|Win32"
-                       OutputDirectory=".\..\..\win32\bind"
-                       IntermediateDirectory=".\..\..\win32\objd\__XQTNAM__"
-                       ConfigurationType="__CONF__"
-                       UseOfMFC="0"
-                       ATLMinimizesCRunTimeLibraryUsage="FALSE">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalOptions="/DWNT"
-                               Optimization="0"
-                               PreprocessorDefinitions="WIN32;DEB;_DEBUG;_WINDOWS;WNT;CSFDB;"
-                               BasicRuntimeChecks="3"
-                               RuntimeLibrary="3"
-                               AssemblerListingLocation=".\..\..\win32\objd\__XQTNAM__/"
-                               ObjectFile=".\..\..\win32\objd\__XQTNAM__/"
-                               ProgramDataBaseFileName=".\..\..\win32\objd\__XQTNAM__/"
-                               WarningLevel="3"
-                               SuppressStartupBanner="TRUE"
-                               DebugInformationFormat="3"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="__TKDEP__"
-                               LinkIncremental="1"
-                               SuppressStartupBanner="TRUE"
-                               AdditionalLibraryDirectories="..\..\win32\libd"
-                               GenerateDebugInformation="TRUE"
-                               ProgramDatabaseFile=".\..\..\win32\bind/__XQTNAM__.pdb"
-                               SubSystem="1"
-                               ImportLibrary="..\..\win32\libd\__XQTNAM__.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"
-                               PreprocessorDefinitions="_DEBUG"
-                               MkTypLibCompatible="TRUE"
-                               SuppressStartupBanner="TRUE"
-                               TargetEnvironment="1"
-                               TypeLibraryName=".\..\..\win32\bind/__XQTNAM__.tlb"
-                               HeaderFileName=""/>
-                       <Tool
-                               Name="VCPostBuildEventTool"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"
-                               PreprocessorDefinitions="_DEBUG"
-                               Culture="1033"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-               <Configuration
-                       Name="Release|Win32"
-                       OutputDirectory=".\..\..\win32\bin"
-                       IntermediateDirectory=".\..\..\win32\obj\__XQTNAM__"
-                       ConfigurationType="__CONF__"
-                       UseOfMFC="0"
-                       ATLMinimizesCRunTimeLibraryUsage="FALSE">
-                       <Tool
-                               Name="VCCLCompilerTool"
-                               AdditionalOptions="/DWNT"
-                               Optimization="2"
-                               InlineFunctionExpansion="1"
-                               PreprocessorDefinitions="WIN32;NDEBUG;No_Exception;_WINDOWS;WNT;CSFDB;"
-                               StringPooling="TRUE"
-                               RuntimeLibrary="2"
-                               EnableFunctionLevelLinking="TRUE"
-                               AssemblerListingLocation=".\..\..\win32\obj\__XQTNAM__/"
-                               ObjectFile=".\..\..\win32\obj\__XQTNAM__/"
-                               ProgramDataBaseFileName=".\..\..\win32\obj\__XQTNAM__/"
-                               WarningLevel="3"
-                               SuppressStartupBanner="TRUE"/>
-                       <Tool
-                               Name="VCCustomBuildTool"/>
-                       <Tool
-                               Name="VCLinkerTool"
-                               AdditionalDependencies="__TKDEP__"
-                               LinkIncremental="1"
-                               SuppressStartupBanner="TRUE"
-                               AdditionalLibraryDirectories="..\..\win32\lib"
-                               ProgramDatabaseFile=".\..\..\win32\bin/__XQTNAM__.pdb"
-                               SubSystem="1"
-                               ImportLibrary="..\..\win32\lib\__XQTNAM__.lib"
-                               TargetMachine="1"/>
-                       <Tool
-                               Name="VCMIDLTool"
-                               PreprocessorDefinitions="NDEBUG"
-                               MkTypLibCompatible="TRUE"
-                               SuppressStartupBanner="TRUE"
-                               TargetEnvironment="1"
-                               TypeLibraryName=".\..\..\win32\bin/__XQTNAM__.tlb"
-                               HeaderFileName=""/>
-                       <Tool
-                               Name="VCPostBuildEventTool"/>
-                       <Tool
-                               Name="VCPreBuildEventTool"/>
-                       <Tool
-                               Name="VCPreLinkEventTool"/>
-                       <Tool
-                               Name="VCResourceCompilerTool"
-                               PreprocessorDefinitions="NDEBUG"
-                               Culture="1033"/>
-                       <Tool
-                               Name="VCWebServiceProxyGeneratorTool"/>
-                       <Tool
-                               Name="VCXMLDataGeneratorTool"/>
-                       <Tool
-                               Name="VCWebDeploymentTool"/>
-                       <Tool
-                               Name="VCManagedWrapperGeneratorTool"/>
-                       <Tool
-                               Name="VCAuxiliaryManagedWrapperGeneratorTool"/>
-               </Configuration>
-       </Configurations>
-       <References>
-       </References>
-       <Files>
-               <Filter
-                       Name="Source Files"
-                       Filter="">
-__FILES__
-               </Filter>
-       </Files>
-       <Globals>
-       </Globals>
-</VisualStudioProject>
diff --git a/src/WOKTclLib/wokOUC.tcl b/src/WOKTclLib/wokOUC.tcl
deleted file mode 100755 (executable)
index 3c2c8e7..0000000
+++ /dev/null
@@ -1,481 +0,0 @@
-
-proc wokOUC:DBG { {root {}} } {
-    global IWOK_GLOBALS
-    global IWOK_WINDOWS
-    set w .oucewokk4dev
-    set hli $IWOK_WINDOWS($w,OUC,hlist)
-    foreach c [$hli info children $root] {
-       puts "$c : data <[$hli info data $c]>"
-       wokOUC:DBG $c
-    }
-    return
-}
-
-
-
-#############################################################################
-#
-#                              O U C
-#                              _____
-#
-#############################################################################
-proc wokOUC:Exit { w } {
-    global IWOK_WINDOWS
-    destroy $w
-    wokButton delw [list ouce $w]
-    foreach var [array names IWOK_WINDOWS $w,OUC,*] {
-       unset IWOK_WINDOWS($var)
-    }
-    return
-}
-
-proc wokOUC:Help { w } {
-    return
-}
-
-proc wokOUC:Create { {loc {}} } {
-    global IWOK_WINDOWS
-    global IWOK_GLOBALS
-
-    if { $loc == {} } {
-       set verrue [wokCWD readnocell]
-    } else {
-       regexp {(.*):OUCE} $loc all verrue 
-    }
-
-    if ![wokinfo -x $verrue] {
-       wokDialBox .wokcd {Unknown location} "Location $verrue is unknown" {} -1 OK
-       return
-    }
-    set fshop [wokinfo -s $verrue]
-
-    set w  [wokTPL ouce${verrue}]
-    if [winfo exists $w ] {
-       wm deiconify $w
-       raise $w
-       return 
-    }
-    
-    toplevel $w
-    wm title $w "OUCE of $fshop"
-    wm geometry $w 880x555+515+2
-
-    wokButton setw [list ouce $w]
-    
-    menubutton $w.file -menu $w.file.m -text File -underline 0 -takefocus 0
-    menu $w.file.m 
-    $w.file.m add command -label "Exit     " -underline 1 -command [list wokOUC:Exit $w]
-
-    menubutton $w.help -menu $w.help.m -text Help -underline 0 -takefocus 0
-    menu $w.help.m
-    $w.help.m add command -label "Help"      -underline 1 -command [list wokOUC:Help $w]
-
-    frame $w.top -relief sunken -bd 1 
-     
-    tixPanedWindow $w.top.pane -orient horizontal -paneborderwidth 0 -separatorbg gray50
-    pack $w.top.pane -side top -expand yes -fill both -padx 10 -pady 10
-    
-    set p1 [$w.top.pane add tree -min 70 -size 200]
-    set p2 [$w.top.pane add text -min 70]
-    
-    set tree [tixTree $p1.tree  -options {hlist.separator "^" hlist.selectMode single }]
-    set text [tixScrolledText $p2.text ] ; $text subwidget text    config -font $IWOK_GLOBALS(font)
-
-    $tree config -opencmd  [list wokOUC:Tree:Open $w] -browsecmd [list wokOUC:Tree:Browse $w]
-
-    pack $p1.tree -expand yes -fill both -padx 1 -pady 1
-    pack $p2.text -expand yes -fill both -padx 1 -pady 1
-
-    set IWOK_WINDOWS($w,OUC,tree)     $tree
-    set IWOK_WINDOWS($w,OUC,hlist)    [$tree subwidget hlist]
-    set IWOK_WINDOWS($w,OUC,text)     [$text subwidget text]
-    set IWOK_WINDOWS($w,OUC,label)    [label $w.lab]
-    set IWOK_WINDOWS($w,OUC,shop)     $fshop
-    set IWOK_WINDOWS($w,OUC,root)     [wokOUC:GetRootName $fshop]
-    set IWOK_WINDOWS($w,OUC,dupstyle) [tixDisplayStyle imagetext -fg orange]
-
-    tixButtonBox $w.act -orientation horizontal -relief flat -padx 0 -pady 0
-    
-
-    tixForm $w.file ; tixForm $w.help -right -2
-    tixForm $w.act -top $w.file -left 2
-    tixForm $w.top -top $w.act -left 2 -right  %99 -bottom $w.lab 
-    tixForm $w.lab -left 2 -right %99  -bottom %99
-
-    bind $IWOK_WINDOWS($w,OUC,hlist) <Control-Button-1> {
-       wokOUC:Tree:diff [winfo toplevel %W]
-    }
-    bind $IWOK_WINDOWS($w,OUC,hlist) <Control-Button-1> {
-       wokOUC:Tree:diff [winfo toplevel %W]
-    }
-    wokOUC:Tree:Fill $w 
-    
-    return
-}
-
-proc wokOUC:Tree:diff { w } {
-    global IWOK_WINDOWS
-    if ![info exists IWOK_WINDOWS($w,OUC,v1)] {
-       set IWOK_WINDOWS($w,OUC,v1) [$IWOK_WINDOWS($w,OUC,hlist) info anchor]
-    } else {
-       if ![info exists IWOK_WINDOWS($w,OUC,v2)] {
-           set IWOK_WINDOWS($w,OUC,v2) [$IWOK_WINDOWS($w,OUC,hlist) info anchor]
-           set pth1 [lindex [lindex [$IWOK_WINDOWS($w,OUC,hlist) info data $IWOK_WINDOWS($w,OUC,v1)] 1] 2]
-           set pth2 [lindex [lindex [$IWOK_WINDOWS($w,OUC,hlist) info data $IWOK_WINDOWS($w,OUC,v2)] 1] 2]
-           if { [file exists $pth1] && [file exists $pth2] } {
-               wokDiffInText $IWOK_WINDOWS($w,OUC,text) $pth1 $pth2 
-               if [wokUtils:EASY:INPATH xdiff] {
-               }
-           }
-       }
-    }
-    return
-}
-#;>
-# Pour iwok Ecrit la table dans un tree
-#;<
-proc wokOUC:Tree:Fill { w } {
-    global IWOK_WINDOWS
-    tixBusy $w on
-    set fshop $IWOK_WINDOWS($w,OUC,shop)
-    set root  $IWOK_WINDOWS($w,OUC,root)
-    set hlist $IWOK_WINDOWS($w,OUC,hlist)
-    set filima [tix getimage textfile]
-    foreach e [lsort [readdir $root]] {
-       set ldup [llength [set lem [wokUtils:FILES:FileToList $root/$e]]]
-       if { $lem != {} } {
-           if { $ldup == 1 } {
-               $hlist add $e -itemtype imagetext -text $e \
-                       -image $filima \
-                       -data [list HEADER [list $ldup $lem]]
-           } else {
-               $hlist add $e -itemtype imagetext -text $e -style $IWOK_WINDOWS($w,OUC,dupstyle) \
-                       -image $filima \
-                       -data [list HEADER [list $ldup $lem]]
-           }
-           $IWOK_WINDOWS($w,OUC,tree) setmode $e open
-           update
-       } else {
-          unlink $root/$e 
-       }
-    }
-    tixBusy $w off
-    return
-}
-
-
-proc wokOUC:Tree:Open { w dir } {
-    global IWOK_WINDOWS
-    global IWOK_GLOBALS
-     if {[$IWOK_WINDOWS($w,OUC,hlist) info children $dir] != {}} {
-       foreach kid [$IWOK_WINDOWS($w,OUC,hlist) info children $dir] {
-           $IWOK_WINDOWS($w,OUC,hlist) show entry $kid
-       }
-    } else {
-       tixBusy $w on
-       set lem [lindex [lindex [$IWOK_WINDOWS($w,OUC,hlist) info data $dir] 1] 1]
-       set upd {}
-       foreach f $lem {
-           set lf [split $f]
-           if { [file exists [lindex $lf 2]] } {
-               lappend upd $f
-               set adr [lindex $lf 0]
-               $IWOK_WINDOWS($w,OUC,hlist) add ${dir}^${adr} -itemtype imagetext \
-                       -text [join [lrange [split $adr :] 2 3] :] \
-                       -image $IWOK_GLOBALS(image,[lindex $lf 1]) \
-                       -data [list PATH [list $adr [lindex $lf 1] [lindex $lf 2]]]
-           }
-       }
-       update
-       if { $upd != {} } {
-           wokUtils:FILES:ListToFile $upd $IWOK_WINDOWS($w,OUC,root)/$dir          
-       } else {
-           unlink $IWOK_WINDOWS($w,OUC,root)/$dir
-       }
-       tixBusy $w off
-    }
-    return
-}
-
-proc wokOUC:Tree:Browse { w dir } {
-    global IWOK_WINDOWS
-
-    ;# parce qu'elle est aussi appelee  dans le bind
-    if { [info exists IWOK_WINDOWS($w,OUC,v1)] && [info exists IWOK_WINDOWS($w,OUC,v2)] } {
-       unset IWOK_WINDOWS($w,OUC,v1) IWOK_WINDOWS($w,OUC,v2)
-       return
-    }
-
-    set data [$IWOK_WINDOWS($w,OUC,hlist) info data $dir]
-    set type [lindex $data 0]
-    
-    switch -- $type {
-
-       PATH   {
-           set dd  [lindex $data 1]
-           set adr [lindex $dd 0]
-           set typ [lindex $dd 1]
-           set pth [lindex $dd 2]
-           wokReadFile $IWOK_WINDOWS($w,OUC,text) $pth
-       }
-
-       HEADER {
-       }
-    }
-    
-    return
-}
-
-#
-#;>
-# Ajoute une entry pour lname { nam1 nam2 ..} a l'adresse adr
-# wokOUC:Add WOK:k4dev k4dev:adnk4:WOKAPI package /adv_23/WOK/k4dev/adnk4/src/WOKAPI WOKAPI_Command.c
-# Dans le cad d'une duplication update GetDupName
-#;<
-proc wokOUC:Add { fshop adr typ dir lname } {
-    set root [wokOUC:GetRootName $fshop 1]
-    set dupl [wokOUC:GetDupName  $fshop 1]
-    foreach name $lname {
-       set entry $root/$name
-       if { [file exists $entry] == 1 } {
-           set lem [wokUtils:FILES:FileToList $entry]
-           set new {}
-           set add 1
-           set nbe 0
-           foreach f $lem {
-               set lf [split $f]
-               set a  [lindex $lf 0]
-               set t  [lindex $lf 1]
-               set p  [lindex $lf 2]
-               if { [file exist $p] } {
-                   lappend new $f
-                   incr nbe
-               }
-               if { "$a" == "$adr" && "$t" == "$typ" && "$p" == "$dir"} {
-                   set add 0
-               }
-           }
-           if { $add } { 
-               lappend new "$adr $typ $dir/$name" 
-           }
-           wokUtils:FILES:ListToFile $new $entry
-           if { $nbe > 1 } {
-               wokUtils:FILES:touch $dupl/$name
-           }
-       } else {
-           wokUtils:FILES:ListToFile [list "$adr $typ $dir/$name"] $entry
-           chmod 0777 $entry
-       }
-    }
-    return 
-}
-#;>
-# Teste si une entry existe, la detruit sinon. 
-# 
-#;<
-proc wokOUC:Exists { fshop adr typ name } {
-    set root [wokOUC:GetRootName $fshop]
-    set entry $root/$name
-    if { [file exists $entry] } {
-       set lem [wokUtils:FILES:FileToList $entry]
-       set new {}
-       set x 0
-       foreach f $lem {
-           set lf [split $f]
-           set a  [lindex $lf 0]
-           set t  [lindex $lf 1]
-           set p  [lindex $lf 2]
-           if [file exist $p] {
-               lappend new $f
-           }
-           if { "$a" == "$adr" && "$t" == "$typ" } {
-               set x 1
-           }
-       }
-       if { $new != {} } {
-           wokUtils:FILES:ListToFile $new $entry           
-       } else {
-           set x 0
-           unlink $entry
-       }
-       return $x
-    } else {
-       return 0
-    }
-}
-#;>
-# Retourne le full path du repertoire d'administration de wsee pour un ilot donne.
-#  1. Si create = 1 le cree dans le cas ou il n'existe pas.
-#;<
-proc wokOUC:GetRootName { fshop {create 0} } {
-    set diradm [wokparam -e %VC_ROOT $fshop]/adm/[wokinfo -n [wokinfo -s $fshop]]/OUC_ENTRIES
-    if [file exists $diradm] {
-       return $diradm
-    } else {
-       if { $create } {
-           msgprint -c WOKVC -i "Creating file $diradm"
-           mkdir -path $diradm
-           chmod 0777 $diradm
-           return $diradm
-       } else {
-           return {}
-       }
-    }
-}
-proc wokOUC:GetDupName { fshop {create 0} } {
-    set diradm [wokparam -e %VC_ROOT $fshop]/adm/[wokinfo -n [wokinfo -s $fshop]]/OUC_DUP
-    if [file exists $diradm] {
-       return $diradm
-    } else {
-       if { $create } {
-           msgprint -c WOKVC -i "Creating file $diradm"
-           mkdir -path $diradm
-           chmod 0777 $diradm
-           return $diradm
-       } else {
-           return {}
-       }
-    }
-}
-#;>
-# remplit root avec le contenu de fshop sauf le workbench appele ref.
-# prevoir de faire mv root ->root-sav et d'ecrire dans root neuve.
-#;<
-proc wokOUC:Make { fshop {wr ref} } {
-    set wr ref
-    set root [wokOUC:GetRootName $fshop 1]
-    foreach adr [wokFind $fshop] {
-       if {"[wokinfo -t $adr]" == "devunit" } {
-           if { "[wokinfo -n [wokinfo -w $adr]]" != "$wr" } {
-               set typ [uinfo -t $adr]
-               set dir [wokinfo -p source:. ${adr}]
-               set lname {}
-               foreach f [glob -nocomplain $dir/*] {
-                   if { "[set n [wokOUC:Valid $f]]" != {} } {
-                       lappend lname $n
-                   }
-               }
-               puts "Creer les entries de $adr avec:"
-               ;#puts "lname = $lname"
-               wokOUC:Add $fshop $adr $typ $dir $lname
-           }
-       }
-    }
-    return 
-}
-
-proc wokOUC:Clean { fshop {type entries} } {
-    switch -- $type {
-       entries {
-           set root [wokOUC:GetRootName $fshop]
-           foreach f [glob -nocomplain $root/*] {
-               if [catch { unlink $f } status] {
-                   puts "Clean: $status"
-               }
-           }
-       }
-
-       dup {
-           set duproot [wokOUC:GetDupName $fshop]
-            foreach f [glob -nocomplain $duproot/*] {
-               if [catch { unlink $f } status] {
-                   puts "Clean: $status"
-               }
-           }
-       }
-    }
-    return
-}
-
-proc wokOUC:Dump { fshop {type entries} } {
-    switch -- $type {
-       
-       entries {
-           set root [wokOUC:GetRootName $fshop]
-           foreach f [glob -nocomplain $root/*] {
-               puts $f
-           }
-       }
-
-       dup {
-           set duproot [wokOUC:GetDupName $fshop]
-           foreach f [glob -nocomplain $duproot/*] {
-               puts $f
-           }
-       }
-    }
-    return
-}
-
-proc wokOUC:Valid { p } {
-    if { ![file isdirectory $p] } {
-       set e [file extension [set n [file tail $p]]]
-       if { ![string match {*~} $n] } {
-           if { ![string match {*~} $e] } {
-               if { ![string match {#*#} $n] } {
-                   if { ![string match {*-sav} $e] } {
-                       return $n
-                   } else {
-                       return {}
-                   }
-               } else {
-                   return {}
-               }
-           } else {
-               return {}
-           }
-       } else {
-           return {}
-       }
-    } else {
-       return {}
-    }
-
-
-}
-
-
-
-
-
-#;>
-# Pour la commande
-#;<
-proc wokOUC:Tree:Print { w } {
-    global IWOK_WINDOWS
-    global IWOK_GLOBALS
-    set fshop $IWOK_WINDOWS($w,OUC,shop)
-    set root  $IWOK_WINDOWS($w,OUC,root)
-    set hlist $IWOK_WINDOWS($w,OUC,hlist)
-    set filima [tix getimage textfile]
-    foreach e [lsort [readdir $root]] {
-       set lem [wokUtils:FILES:FileToList $root/$e]
-       if { $lem != {} } {
-           $hlist add $e -itemtype imagetext -text $e \
-                   -image $filima \
-                   -data [list HEADER {}]
-           set upd {}
-           foreach f $lem {
-               set lf [split $f]
-               if { [file exists [lindex $lf 2]] } {
-                   lappend upd $f
-                   set adr [lindex $lf 0]
-                   $hlist add ${e}^${adr} -itemtype imagetext \
-                           -text [join [lrange [split $adr :] 1 2] :] \
-                           -image $IWOK_GLOBALS(image,[lindex $lf 1]) \
-                           -data [list PATH [list $adr lindex $lf 2]]
-               }
-           }
-           update 
-           if { $upd != {} } {
-               wokUtils:FILES:ListToFile $upd $root/$e     
-           } else {
-               unlink $root/$e
-           }
-       } else {
-           unlink $root/$e
-       }
-    }
-    return
-}
diff --git a/src/WOKTclLib/woksh.el-wnt b/src/WOKTclLib/woksh.el-wnt
deleted file mode 100755 (executable)
index 6328e9c..0000000
+++ /dev/null
@@ -1,357 +0,0 @@
-;;; woksh.el --- WOK TCL interface
-
-;;; Code:
-
-(require 'comint)
-(require 'shell)
-(require 'wok-comm)
-
-;;(defvar woksh-program "tclsh"
-(defvar woksh-program "D:/DevTools/TclTk/bin/ntsh.exe"\r
-  "*Name of program to invoke woksh")
-
-(defvar woksh-explicit-args nil
-  "*List of arguments to pass to woksh on the command line.")
-
-(defvar woksh-mode-hook nil
-  "*Hooks to run after setting current buffer to woksh-mode.")
-
-(defvar woksh-process-connection-type t
-  "*If non-`nil', use a pty for the local woksh process.
-If `nil', use a pipe (if pipes are supported on the local system).
-
-Generally it is better not to waste ptys on systems which have a static
-number of them.  On the other hand, some implementations of `woksh' assume
-a pty is being used, and errors will result from using a pipe instead.")
-
-(defvar woksh-directory-tracking-mode 'local
-  "*Control whether and how to do directory tracking in an woksh buffer.
-
-nil means don't do directory tracking.
-
-t means do so using an ftp remote file name.
-
-Any other value means do directory tracking using local file names.
-This works only if the remote machine and the local one
-share the same directories (through NFS).  This is the default.
-
-This variable becomes local to a buffer when set in any fashion for it.
-
-It is better to use the function of the same name to change the behavior of
-directory tracking in an woksh session once it has begun, rather than
-simply setting this variable, since the function does the necessary
-re-synching of directories.")
-
-(make-variable-buffer-local 'woksh-directory-tracking-mode)
-
-;; Initialize woksh mode map.
-(defvar woksh-mode-map '())
-(cond
- ((null woksh-mode-map)
-  (setq woksh-mode-map (if (consp shell-mode-map)
-                            (cons 'keymap shell-mode-map)
-                          (copy-keymap shell-mode-map)))
-  (define-key woksh-mode-map "\C-c\C-c" 'woksh-send-Ctrl-C)
-  (define-key woksh-mode-map "\C-c\C-d" 'woksh-send-Ctrl-D)
-  (define-key woksh-mode-map "\C-c\C-z" 'woksh-send-Ctrl-Z)
-  (define-key woksh-mode-map "\C-c\C-\\" 'woksh-send-Ctrl-backslash)
-  (define-key woksh-mode-map "\C-d" 'woksh-delchar-or-send-Ctrl-D)
-  (define-key woksh-mode-map "\C-i" 'woksh-tab-or-complete)))
-
-\f
-;;(add-hook 'same-window-regexps "^\\*woksh-.*\\*\\(\\|<[0-9]+>\\)")
-
-(defvar woksh-history nil)
-
-;;;###autoload
-(defun woksh (input-args &optional buffer)
-  "Open a woksh"
-
-  (interactive (list
-               "1566"
-               current-prefix-arg))
-
-  (let* ((process-connection-type woksh-process-connection-type)
-         (args nil)
-         (buffer-name "*woksh*")
-        (iport (string-to-int input-args))
-        proc)
-
-    (cond ((null buffer))
-         ((stringp buffer)
-          (setq buffer-name buffer))
-          ((bufferp buffer)
-           (setq buffer-name (buffer-name buffer)))
-          ((numberp buffer)
-           (setq buffer-name (format "%s<%d>" buffer-name buffer)))
-          (t
-           (setq buffer-name (generate-new-buffer-name buffer-name))))
-
-    (setq buffer (get-buffer-create buffer-name))
-    (pop-to-buffer buffer-name)
-
-    (cond
-     ((comint-check-proc buffer-name))
-     (t
-      (comint-exec buffer buffer-name woksh-program nil args)
-      (setq proc (get-buffer-process buffer))
-      ;; Set process-mark to point-max in case there is text in the
-      ;; buffer from a previous exited process.
-      (set-marker (process-mark proc) (point-max))
-      (woksh-mode)
-
-      ;; comint-output-filter-functions is just like a hook, except that the
-      ;; functions in that list are passed arguments.  add-hook serves well
-      ;; enough for modifying it.
-      (add-hook 'comint-output-filter-functions 'woksh-carriage-filter)
-
-      (cd-absolute (concat comint-file-name-prefix "~/"))))
-    (if (not (eq iport 0))
-       (if (not  (wok-connectedp))
-           (progn
-             (send-string nil (format "wokemacs_init %d\n" iport))
-             (wok-connect-to-controller "localhost" iport)
-             (send-string nil "auto_load wok_cd_proc\n")
-             (erase-buffer)
-         )))))
-(defun woksh-mode ()
-  "Set major-mode for woksh sessions.
-If `woksh-mode-hook' is set, run it."
-  (interactive)
-  (kill-all-local-variables)
-  (shell-mode)
-  (setq major-mode 'woksh-mode)
-  (setq mode-name "woksh")
-  (use-local-map woksh-mode-map)
-  (setq shell-dirtrackp woksh-directory-tracking-mode)
-  (make-local-variable 'comint-file-name-prefix)
-  (run-hooks 'woksh-mode-hook))
-
-(defun woksh-directory-tracking-mode (&optional prefix)
-  "Do remote or local directory tracking, or disable entirely.
-
-If called with no prefix argument or a unspecified prefix argument (just
-``\\[universal-argument]'' with no number) do remote directory tracking via
-ange-ftp.  If called as a function, give it no argument.
-
-If called with a negative prefix argument, disable directory tracking
-entirely.
-
-If called with a positive, numeric prefix argument, e.g.
-``\\[universal-argument] 1 M-x woksh-directory-tracking-mode\'',
-then do directory tracking but assume the remote filesystem is the same as
-the local system.  This only works in general if the remote machine and the
-local one share the same directories (through NFS)."
-  (interactive "P")
-  (cond
-   ((or (null prefix)
-        (consp prefix))
-    (setq woksh-directory-tracking-mode t)
-    (setq shell-dirtrackp t)
-    (setq comint-file-name-prefix ""))
-   ((< prefix 0)
-    (setq woksh-directory-tracking-mode nil)
-    (setq shell-dirtrackp nil))
-   (t
-    (setq woksh-directory-tracking-mode 'local)
-    (setq comint-file-name-prefix "")
-    (setq shell-dirtrackp t)))
-  (cond
-   (shell-dirtrackp
-    (let* ((proc (get-buffer-process (current-buffer)))
-           (proc-mark (process-mark proc))
-           (current-input (buffer-substring proc-mark (point-max)))
-           (orig-point (point))
-           (offset (and (>= orig-point proc-mark)
-                        (- (point-max) orig-point))))
-      (unwind-protect
-          (progn
-            (delete-region proc-mark (point-max))
-            (goto-char (point-max))
-            (shell-resync-dirs))
-        (goto-char proc-mark)
-        (insert current-input)
-        (if offset
-            (goto-char (- (point-max) offset))
-          (goto-char orig-point)))))))
-
-\f
-;; Parse a line into its constituent parts (words separated by
-;; whitespace).  Return a list of the words.
-(defun woksh-parse-words (line)
-  (let ((list nil)
-       (posn 0)
-        (match-data (match-data)))
-    (while (string-match "[^ \t\n]+" line posn)
-      (setq list (cons (substring line (match-beginning 0) (match-end 0))
-                       list))
-      (setq posn (match-end 0)))
-    (store-match-data (match-data))
-    (nreverse list)))
-
-(defun woksh-carriage-filter (string)
-  (let* ((point-marker (point-marker))
-         (end (process-mark (get-buffer-process (current-buffer))))
-         (beg (or (and (boundp 'comint-last-output-start)
-                       comint-last-output-start)
-                  (- end (length string)))))
-    (goto-char beg)
-    (while (search-forward "\C-m" end t)
-      (delete-char -1))
-    (goto-char point-marker)))
-
-(defun woksh-send-Ctrl-C ()
-  (interactive)
-  (send-string nil "\C-c"))
-
-(defun woksh-send-Ctrl-D ()
-  (interactive)
-  (send-string nil "\C-d"))
-
-(defun woksh-send-Ctrl-Z ()
-  (interactive)
-  (send-string nil "\C-z"))
-
-(defun woksh-send-Ctrl-backslash ()
-  (interactive)
-  (send-string nil "\C-\\"))
-
-(defun woksh-delchar-or-send-Ctrl-D (arg)
-  "\
-Delete ARG characters forward, or send a C-d to process if at end of buffer."
-  (interactive "p")
-  (if (eobp)
-      (woksh-send-Ctrl-D)
-    (delete-char arg)))
-
-(defun woksh-tab-or-complete ()
-  "Complete file name if doing directory tracking, or just insert TAB."
-  (interactive)
-  (if woksh-directory-tracking-mode
-      (comint-dynamic-complete)
-    (insert "\C-i")))
-;;
-
-(defun wok-command (command) 
-  (interactive (list (read-from-minibuffer "Command : "
-                                          nil nil nil 'woksh-history)))
-  (save-excursion
-    
-    (if (not (wok-connectedp))
-         (if (equal "yes" (completing-read "WOK not connected: connect ? (yes/no) : "
-                                           '(("yes") ("no")) nil t
-                                           '("yes" . 0)  'woksh-history))
-             (woksh "1566" "*woksh*")
-           ))
-    
-    (if (wok-connectedp)
-       (progn
-         (set-buffer "*woksh*")
-         (woksh-parse-words (wok-send-command command)))
-      (progn
-       (ding)
-       (error "Wok controller not connected")))))
-
-;; Goto Entity
-
-(defun wokcd ( userpath ) 
-  "\
-Moves into a Wok entity"
-  (interactive (list (read-from-minibuffer "wokcd : "
-                                    nil nil nil 'woksh-history)))
-
-  (wok-command (format "wokcd %s" userpath)))
-
-
-(defun wcd ( Unit )
-  (interactive (list (read-from-minibuffer "wcd : "
-                                    nil nil nil 'woksh-history)))
-  (wok-command (format "wokcd %s -PSrc" Unit)))
-
-;;; woksh.el ends here
-(defvar woksh-entity-history nil)
-(defvar woksh-type-history nil)
-(defvar woksh-name-history nil)
-
-(defun wok-dired ( Entity Type )
-  (interactive (list 
-               (setq myent (completing-read "Entity : " 
-                                (mapcar 'list (wok-command (format "Sinfo -N"))) nil nil
-                                (cons (car (wok-command "wokinfo -n [wokcd]")) 0) 'woksh-entity-history))
-               (completing-read "Type : " 
-                                (mapcar 'list (wok-command (format "wokinfo -T %s" myent))) nil nil 
-                                '("source" . 0) 'woksh-type-history)))
-  ;; insert formatted string into a buffer
-  (let ((type Type))
-    (if (not (string-match ":" Type))
-       (setq type (format "%s:." Type)))
-    (set-buffer (dired 
-                (car (wok-command (format "wokinfo -p %s %s\n" type Entity)))))
-      
-    (rename-buffer (format "%s-%s [%s] (%s)" 
-                          (car (wok-command (format "wokinfo -n %s" Entity)))
-                          type
-                          (car (wok-command (format "wokinfo -N %s" Entity)))
-                          (car (wok-command (format "wokinfo -t %s" Entity)))))))
-
-(defun wok-findfile ( Entity Type FileName )
-  (interactive (list 
-               (setq myent (completing-read "Entity : " 
-                                (mapcar 'list (wok-command (format "Sinfo -N"))) nil nil
-                                (cons (car (wok-command "wokinfo -n [wokcd]")) 0) 'woksh-entity-history))
-               (setq mytype (completing-read "Type : " 
-                                (mapcar 'list (wok-command (format "wokinfo -T %s" myent))) nil nil 
-                                '("source" . 0) 'woksh-type-history))
-               (completing-read "Name : "
-                                (mapcar 'list (wok-command (format "uinfo -fT%s %s" mytype myent))) nil nil
-                                '("" . 0) 'woksh-name-history)))
-  ;; insert formatted string into a buffer
-  (set-buffer (find-file 
-              (car (wok-command (format "woklocate -p %s:%s:%s\n" Entity Type FileName)))))
-  )
-
-(defun wok-locate (  Entity Type FileName )
-  (interactive (list 
-               (setq myent (completing-read "Entity : " 
-                                            (mapcar 'list (wok-command (format "Sinfo -N"))) nil nil
-                                            (cons (car (wok-command "wokinfo -n [wokcd]")) 0) 'woksh-entity-history))
-               (setq mytype (completing-read "Type : " 
-                                             (mapcar 'list (wok-command (format "wokinfo -T %s" myent))) nil nil 
-                                             '("source" . 0) 'woksh-type-history))
-               (completing-read "Name : "
-                                (mapcar 'list (wok-command (format "uinfo -fT%s %s" mytype myent))) nil nil
-                                '("" . 0) 'woksh-name-history)))
-  ;; insert formatted string into a buffer
-  (car (wok-command (format "woklocate -p %s:%s:%s\n" Entity Type FileName)))
-  )
-
-
-(setq wok-compile-defaults '('("umake") ("umake -o obj") ("umake -o exec") ("umake -o xcpp")))
-
-(defun wok-compile ( commande )
-  (interactive (list 
-               (completing-read "Command : " 
-                                wok-compile-defaults nil nil 
-                                "umake " 'woksh-history)))
-  (set-buffer "*woksh*")
-  (wok-command commande))
-
-(defun concat-list-error (thelist)
-  (let ((res " "))
-    (mapcar (lambda (x)
-             (setq res (concat res x " ")))
-           thelist)
-    res))
-
-(defun receive-tcl-error (linearg)
-  (interactive)
-  
-  (kill-buffer (switch-to-buffer-other-window "*compilation*"))
-  (switch-to-buffer-other-window "*compilation*")
-  (compilation-mode)
-  (goto-char (point-max))
-  (insert "\n\n")
-  (insert-file  linearg)
-  (compile-goto-error)
-)