]> OCCT Git - occt-wok.git/commitdiff
No comments
authorcas <cas@opencascade.com>
Mon, 2 Jul 2001 18:20:51 +0000 (18:20 +0000)
committercas <cas@opencascade.com>
Mon, 2 Jul 2001 18:20:51 +0000 (18:20 +0000)
src/WOKTclLib/FILES
src/WOKTclLib/osutils.tcl

index 69a80bf3e2824e508b142dc4749f699edb6dfa8c..2bad7087222d3aff83132edefc73d5475a44c67a 100755 (executable)
@@ -141,6 +141,7 @@ srcinc:::README
 srcinc:::wokcvs.tcl
 srcinc:::ud2cvs_unix
 srcinc:::template.dsp
+srcinc:::template.dspx
 srcinc:::template.min
 srcinc:::template.mam
 srcinc:::osutils.tcl
index 284018013cb8ac863f2c85295fe17c5ea931d9ff..1405d5a8f3d9b212bfc118d121293258884f7059 100755 (executable)
@@ -16,13 +16,17 @@ proc osutils:dsp:readtemplate { } {
     puts stderr "Info : readtemplate : Template for MS project from [set loc /adv_20/KAS/C40/ros/src/OS/template.dsp]"
     return [wokUtils:FILES:FileToString $loc]
 }
+proc osutils:dsp:readtemplatex { } {
+    puts stderr "Info : readtemplate : Template for MS project from [set loc /adv_20/KAS/C40/ros/src/OS/template.dspx]"
+    return [wokUtils:FILES:FileToString $loc]
+}
 proc osutils:am:readtemplate { } {
-    puts stderr "Info : readtemplate : Template for Makefile.am from [set loc /adv_21/KAS/C40/yan/src/WOKTclLib/template.mam]"
+    puts stderr "Info : readtemplate : Template for Makefile.am from [set loc /adv_20/KAS/C40/ros/src/WOKTclLib/template.mam]"
     return [wokUtils:FILES:FileToString $loc]
 
 }
 proc osutils:in:readtemplate { } {
-    puts stderr "Info : readtemplate : Template for Makefile.in from [set loc /adv_21/KAS/C40/yan/src/WOKTclLib/template.min]"
+    puts stderr "Info : readtemplate : Template for Makefile.in from [set loc /adv_20/KAS/C40/ros/src/WOKTclLib/template.min]"
     return [wokUtils:FILES:FileToString $loc]
 
 }
@@ -98,12 +102,18 @@ proc osutils:dsw:footer { } {
     return $var
 }
 ;#
-;#
+;# An item for compiling a c++ class
 ;#
 proc osutils:dsp:fmtcpp { } {
     return {# ADD CPP /I ..\..\inc /I ..\..\drv\%s /I ..\..\src\%s /D "__%s_DLL"}
 }
 ;#
+;# An item for compiling a c++ main
+;#
+proc osutils:dsp:fmtcppx { } {
+    return {# ADD CPP /I ..\..\inc /I ..\..\drv\%s /I ..\..\src\%s /D "__%s_DLL"}
+}
+;#
 ;# List extensions of files devoted to be eaten by cl.exe compiler.
 ;#
 proc osutils:dsp:compilable { } {
@@ -209,7 +219,7 @@ proc osutils:tk:units { tkloc {typed 0} } {
        }
     }
     if { $l == {} } {
-       puts stderr "Error. No devunit for $tkloc"
+       ;#puts stderr "Warning. No devunit included in $tkloc"
     }
     return $l
 }
@@ -240,15 +250,18 @@ proc osutils:tk:loadunit { loc map {local 0}} {
     return
 }
 ;#
-;# Returns the list of all compilable files name in a toolkit,
+;# Returns the list of all compilable files name in a toolkit, or devunit of any type
 ;# Call unit filter on units name to accept or reject a unit
+;# Tfiles lists for each unit the type of file that can be compiled.
 ;#
 proc osutils:tk:files { tkloc  {l_compilable {} } {justail 1} {unitfilter {}} } {
     set Tfiles(source,package)       {source derivated privinclude pubinclude drvfile}
     set Tfiles(source,nocdlpack)     {source pubinclude drvfile}
     set Tfiles(source,schema)        {source derivated privinclude pubinclude drvfile}
     set Tfiles(source,toolkit)       {}
+    set Tfiles(source,executable)    {source pubinclude drvfile}
     set listloc [concat [osutils:tk:units [woklocate -u $tkloc]] [woklocate -u $tkloc]]
+    ;#puts " listloc = $listloc"
     if { $l_compilable == {} } {
        set l_comp [list .c .cxx .cpp]
     } else {
@@ -312,64 +325,94 @@ proc osutils:tk:hascsf { EXTERNLIB } {
     return $lret
 }
 ;#
-;# Create file tkloc.dsp in dir return the full path of the created file
+;# Create file tkloc.dsp for a shareable library (dll).
+;# in dir return the full path of the created file
 ;#
-proc osutils:mkdsp { dir tkloc {tmplat {} } {fmtcpp {} } {doinsert 1} } {
-    set Tfiles(source,package)       {source derivated privinclude pubinclude drvfile}
-    set Tfiles(source,nocdlpack)     {source pubinclude drvfile}
-    set Tfiles(source,schema)        {source derivated privinclude pubinclude drvfile}
-    set Tfiles(source,toolkit)       {}
+proc osutils:mkdsp { dir tkloc {tmplat {} } {fmtcpp {} } } {
     if { $tmplat == {} } {set tmplat [osutils:dsp:readtemplate]}
     if { $fmtcpp == {} } {set fmtcpp [osutils:dsp:fmtcpp]}
     set fp [open [set fdsp [file join $dir ${tkloc}.dsp]] w]
     fconfigure $fp -translation crlf
     set l_compilable [osutils:dsp:compilable]
-    if { $doinsert } {
-       regsub -all -- {__TKNAM__} $tmplat $tkloc  temp0
-       set tkused ""
-       foreach tkx [wokUtils:LIST:Purge [osutils:tk:close [woklocate -u $tkloc]]] {
-           append tkused "${tkx}.lib "
-       }
-       puts "$tkloc requires  $tkused"
-       regsub -all -- {__TKDEP__} $temp0  $tkused temp1
-       set files ""
-       lappend lret $fdsp
-       set listloc [concat [osutils:tk:units [woklocate -u $tkloc]] [woklocate -u $tkloc]]
-       set resultloc [osutils:justwnt $listloc]
-       foreach loc $resultloc {
-           set utyp [uinfo -t $loc]
-           if [array exists map] { unset map }         
-           osutils:tk:loadunit $loc map
-           ;#puts " loc = $loc === > [array names map]"
-           set LType $Tfiles(source,${utyp})
-           foreach typ [array names map] {
-               if { [lsearch $LType $typ] == -1 } {
-                   unset map($typ)
-               }
-           }
-           set xlo [wokinfo -n $loc]
-           if [array exists written] { unset written }                         
-           foreach type [array names map] {
-               foreach f $map($type) {
-                   if { [lsearch $l_compilable [file extension $f]] != -1 } {
-                       if { ![info exists written([file tail $f])] } {
-                           set written([file tail $f]) 1
-                           append files "# Begin Source File" "\n"
-                           append files "SOURCE=..\\..\\" [wokUtils:EASY:bs1 [wokUtils:FILES:wtail $f 3]] "\n"
-                           append files [format $fmtcpp $xlo $xlo $xlo] "\n"
-                           append files "# End Source File" "\n"
-                       } else {
-                           puts "Warning : in dsp more than one occurences for [file tail $f]"
-                       }
-                   }
-               }
+    regsub -all -- {__TKNAM__} $tmplat $tkloc  temp0
+    set tkused ""
+    foreach tkx [wokUtils:LIST:Purge [osutils:tk:close [woklocate -u $tkloc]]] {
+       append tkused "${tkx}.lib "
+    }
+    puts "$tkloc requires  $tkused"
+    regsub -all -- {__TKDEP__} $temp0  $tkused temp1
+    set files ""
+    ;#set listloc [concat [osutils:tk:units [woklocate -u $tkloc]] [woklocate -u $tkloc]]
+    set listloc [osutils:tk:units [woklocate -u $tkloc]]
+    set resultloc [osutils:justwnt $listloc]
+    ;#puts "result = $resultloc"
+    ;#set lsrc   [lsort [osutils:tk:files $tkloc osutils:am:compilable 1 osutils:justwnt]]
+    if [array exists written] { unset written }
+    foreach fxlo $resultloc {
+       set xlo [wokinfo -n $fxlo]
+       set lsrc   [osutils:tk:files $xlo osutils:am:compilable 0]
+       foreach f $lsrc {
+           ;#puts " f = $f"
+           if { ![info exists written([file tail $f])] } {
+               set written([file tail $f]) 1
+               append files "# Begin Source File" "\n"
+               append files "SOURCE=..\\..\\" [wokUtils:EASY:bs1 [wokUtils:FILES:wtail $f 3]] "\n"
+               append files [format $fmtcpp $xlo $xlo $xlo] "\n"
+               append files "# End Source File" "\n"
+           } else {
+               puts "Warning : in dsp more than one occurences for [file tail $f]"
            }
        }
-       regsub -all -- {__FILES__} $temp1 $files temp2
-       puts $fp $temp2
-    } else {
-       puts $fp $tmplat
     }
+    
+    regsub -all -- {__FILES__} $temp1 $files temp2
+    puts $fp $temp2
+    close $fp
+    return $fdsp
+}
+;#
+;# Create file tkloc.dsp for a executable "console" application
+;# in dir return the full path of the created file
+;#
+proc osutils:mkdspx { dir tkloc {tmplat {} } {fmtcpp {} } } {
+    if { $tmplat == {} } {set tmplat [osutils:dsp:readtemplatex]}
+    if { $fmtcpp == {} } {set fmtcpp [osutils:dsp:fmtcppx]}
+    set fp [open [set fdsp [file join $dir ${tkloc}.dsp]] w]
+    fconfigure $fp -translation crlf
+    set l_compilable [osutils:dsp:compilable]
+    regsub -all -- {__XQTNAM__} $tmplat $tkloc  temp0
+    set tkused ""
+    foreach tkx [wokUtils:LIST:Purge [osutils:tk:close [woklocate -u $tkloc]]] {
+       append tkused "${tkx}.lib "
+    }
+    puts "$tkloc requires  $tkused"
+    regsub -all -- {__TKDEP__} $temp0  $tkused temp1
+    set files ""
+    ;#set listloc [concat [osutils:tk:units [woklocate -u $tkloc]] [woklocate -u $tkloc]]
+    ;#set listloc [osutils:tk:units [woklocate -u $tkloc]]
+    ;#set resultloc [osutils:justwnt $listloc]
+    ;#puts "result = $resultloc"
+    ;#set lsrc   [lsort [osutils:tk:files $tkloc osutils:am:compilable 1 osutils:justwnt]]
+    ;#if [array exists written] { unset written }
+    ;#foreach fxlo $resultloc {
+       ;#set tkloc [set xlo [wokinfo -n $fxlo]]
+       set lsrc   [osutils:tk:files $tkloc osutils:am:compilable 0]
+       foreach f $lsrc {
+           ;#puts " f = $f"
+           if { ![info exists written([file tail $f])] } {
+               set written([file tail $f]) 1
+               append files "# Begin Source File" "\n"
+               append files "SOURCE=..\\..\\" [wokUtils:EASY:bs1 [wokUtils:FILES:wtail $f 3]] "\n"
+               append files [format $fmtcpp $tkloc $tkloc $tkloc] "\n"
+               append files "# End Source File" "\n"
+           } else {
+               puts "Warning : in dsp more than one occurences for [file tail $f]"
+           }
+       }
+    ;#}
+    
+    regsub -all -- {__FILES__} $temp1 $files temp2
+    puts $fp $temp2
     close $fp
     return $fdsp
 }