Diff
Not logged in

Differences From Artifact [3209afd0c1]:

To Artifact [52be5fb4d2]:


602
603
604
605
606
607
608
609

610
611
612
613
614
615
616
617

618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637




























638
639



640
641
642
643



644
645
646
647

648
649


650
651
652
653
654
655
656
602
603
604
605
606
607
608

609
610
611
612
613
614
615
616

617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666

667
668
669
670
671
672

673
674
675
676
677
678

679
680
681
682
683
684
685
686
687
688
689
690







-
+







-
+




















+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+

-
+
+
+



-
+
+
+



-
+


+
+








      if {[catch {
        eval exec -nocarriagereturns -stdout output -stderr error \
            [subst $fossilInfoCommand]
      } result] == 0} then {
        set result [appendArgs $output $error]
      } else {
        return false
        return ""
      }
    } else {
      set directory $scriptDirectory

      if {[catch {
        eval exec [subst $fossilInfoCommand]
      } result]} then {
        return false
        return ""
      }
    }

    if {![info exists result] || ![regexp -line -- \
        $fossilInfoLocalRootPattern $result dummy directory]} then {
      return ""
    }

    return [string trim $directory]
  }

  #
  # NOTE: This procedure attempts to verify that the root directory of the
  #       Fossil checkout is present, valid, and is actually a directory.
  #       There are no arguments.  Script errors will be raised if any of
  #       the checks fail.
  #
  proc verifyCheckoutDirectory {} {
    variable checkoutDirectory

    if {[isWindows]} then {
      set repositories C:\\repositories
      set checkouts C:\\checkouts
    } else {
      set repositories ~/repositories
      set checkouts ~/checkouts
    }

    set message [string trim [subst {
      The package client checkout directory has an issue: %error%

      Prior to running the package uploader client tool, Fossil must be
      installed -AND- the Package File Server repository must be cloned
      and opened, using commands very similar to the following:

        mkdir ${repositories}
        cd ${repositories}
        fossil clone https://your_login@pkg.management/pkgd pkgd.fossil
        mkdir ${checkouts}
        cd ${checkouts}
        fossil open [file join ${repositories} pkgd.fossil]

      After the above steps have been completed, package uploader client
      tool can be executed using a command very similar to the following:

        tclsh [file join ${checkouts} client 1.0 neutral pkgr_upload.eagle]
    }]]

    if {![info exists checkoutDirectory]} then {
      error "checkout directory is missing"
      set error "checkout directory is missing"

      error [string map [list %error% $error] $message]
    }

    if {[string length $checkoutDirectory] == 0} then {
      error "checkout directory is invalid"
      set error "checkout directory is invalid"

      error [string map [list %error% $error] $message]
    }

    if {![file isdir $checkoutDirectory]} then {
      error [appendArgs \
      set error [appendArgs \
          "checkout directory \"" $checkoutDirectory \
          "\" is not really a directory"]

      error [string map [list %error% $error] $message]
    }
  }

  #
  # NOTE: This procedure attempts to verify that an implementation of Fossil
  #       is installed locally.  There are no arguments.  Script errors are
  #       raised if any problems are found.  The return value is undefined.