home *** CD-ROM | disk | FTP | other *** search
/ PC World 1998 October / PCWorld_1998-10_cd.bin / software / prehled / komix / DATA.Z / config_ne.tcl < prev    next >
Text File  |  1997-11-07  |  3KB  |  132 lines

  1. #---------------------------------------------------------------------------
  2. #
  3. # Copyright (c) 1995 by Cayenne Software Inc., Delft, The Netherlands.
  4. #
  5. # This software is furnished under a license and may be used only in
  6. # accordance with the terms of such license and with the inclusion of
  7. # the above copyright notice. This software or any other copies thereof
  8. # may not be provided or otherwise made available to any other person.
  9. # No title to and ownership of the software is hereby transferred.
  10. #
  11. # The information in this software is subject to change without notice
  12. # and should not be construed as a commitment by Cayenne Software Inc..
  13. #
  14. #---------------------------------------------------------------------------
  15. #
  16. #    File        : @(#)config_ne.tcl    /main/titanic/5
  17. #    Original date    : 28-02-1995
  18. #    Description    : Script for NewEra configuration. Currently this means
  19. #              copying files from lw4omtne to the user environment
  20. #              at configuration level.
  21. #
  22. #---------------------------------------------------------------------------
  23. #
  24.  
  25. source [m4_path_name tcl cginit.tcl]
  26.  
  27. require wmt_util.tcl
  28.  
  29. proc config_newera {} {
  30.     set clientContext [ClientContext::global]
  31.     set configV [$clientContext currentConfig]
  32.     if {[$configV isNil]} {
  33.         puts "Open a configuration to configure first"
  34.         return
  35.     }
  36.     set confName [[$configV config] name]
  37.     set confVersion [$configV versionName]
  38.     set header_line "Configure NewEra class library for configuration\
  39.         version '${confName}.${confVersion}'"
  40.  
  41.     #while {"true"} {
  42.     #    puts "\n\t$header_line"
  43.     #    puts "\t[print_n [string length $header_line] -]\n"
  44.     #    puts "\ti.\tInstall library"
  45.     #    puts "\tr.\tRemove library"
  46.     #    puts -nonewline "\n\tChoice (q to quit): "
  47.     #    set answer [gets stdin]
  48.     #    if {$answer == "q"} {
  49.     #        return
  50.     #    }
  51.     #    if {$answer == "r"} {
  52.     #        do_rm
  53.     #        continue
  54.     #    }
  55.     #    if {$answer == "i"} {
  56.             do_install
  57.     #        continue
  58.     #    }
  59.     #}
  60. }
  61.  
  62. proc print_n {count symbol} {
  63.     if {$count <= 0} {
  64.         return
  65.     }
  66.     set result ""
  67.     incr count -1
  68.     while {$count} {
  69.         incr count -1
  70.         append result $symbol
  71.     }
  72.     append result $symbol
  73. }
  74.  
  75. proc do_rm {} {
  76.     puts ""
  77.     set pdir [fstorage::getFsPath config src]
  78.     if [file exists $pdir] {
  79.         puts "Removing directory $pdir"
  80.         BasicFS::removeDirAll $pdir
  81.     }
  82.  
  83.     set pdir [fstorage::getFsPath config include]
  84.     if [file exists $pdir] {
  85.         puts "Removing directory $pdir"
  86.         BasicFS::removeDirAll $pdir
  87.     }
  88. }
  89.  
  90. proc do_install {} {
  91.     m4copydir [location src lw4omtne]
  92. }
  93.  
  94. proc m4copydir {dir} {
  95.     set save_dir [pwd]
  96.     set loc [location config $dir]
  97.     if [catch {set cddir [m4_path_name $loc main.4gl]}] {
  98.         return
  99.     }
  100.  
  101.         set tempdir [path_name directory $cddir]
  102.         cd $tempdir
  103.  
  104.         set files [glob -nocomplain *]
  105.         puts "Copying from $tempdir..."
  106.     foreach file $files {
  107.         set toFile [fstorage::copyFile $file config $dir $file]
  108.         if {$toFile != ""} {
  109.             puts "    $toFile"
  110.         } else {
  111.             puts "    $file *NOT COPIED*"
  112.         }
  113.     }
  114.  
  115.     set files [glob -nocomplain *.4gh]
  116.     foreach file $files {
  117.         set toFile [fstorage::copyFile $file config include $file]
  118.         if {$toFile != ""} {
  119.             puts "    $toFile"
  120.         } else {
  121.             puts "    $file *NOT COPIED*"
  122.         }
  123.     }
  124.  
  125.     puts ""
  126.     puts "Now build the library by using the NewEra Application Builder."
  127.  
  128.     cd $save_dir
  129. }
  130.     
  131. config_newera
  132.