diff options
| author | Ralph Amissah <ralph@amissah.com> | 2014-01-26 02:00:29 -0500 | 
|---|---|---|
| committer | Ralph Amissah <ralph@amissah.com> | 2014-01-26 02:00:29 -0500 | 
| commit | 8537b3c3640e2e588c96096561ae1444c71de53a (patch) | |
| tree | e96ca33c85d8016b2b6083157df462e39213e957 | |
| parent | debian/changelog (4.2.20-1) (diff) | |
| parent | bin/sisu changes to simplify switching to new stable & development branches (diff) | |
Merge tag 'sisu_4.2.21' into debian/sid
SiSU 4.2.21
| -rw-r--r-- | bin/sisu | 370 | ||||
| -rw-r--r-- | data/doc/sisu/CHANGELOG_v4 | 11 | ||||
| -rw-r--r-- | data/doc/sisu/CHANGELOG_v5 | 9 | ||||
| -rw-r--r-- | data/sisu/v4/v/version.yml | 6 | ||||
| -rw-r--r-- | data/sisu/v5/v/version.yml | 6 | ||||
| -rw-r--r-- | rbuild | 4 | 
6 files changed, 271 insertions, 135 deletions
| @@ -1,144 +1,260 @@  #!/usr/bin/env ruby  # encoding: utf-8  #SiSU: copyright (C) 1997 - 2014 Ralph Amissah; License GPL 3, see appended program information -begin -  def require_hub_path(sisu_path_specified_lib_) -    if sisu_path_specified_lib_ \ -    && FileTest.file?("#{sisu_path_specified_lib_}/#{@sisu_lib}/hub.rb") -      "#{sisu_path_specified_lib_}/#{@sisu_lib}" -    else @sisu_lib -    end -  end -  def select_version_check(instructions) -    case instructions -    when /"(?:--v4|--current|--stable)"/              then @version[:stable] -    when /"(?:--v5|--next|--dev)"/                    then @version[:unstable] -    else                                                   @version[:default] -    end -  end -#% sisu branch -  $VERBOSE=nil -  argv=$* -  @sisu_called_from_directory=Dir.pwd -  require 'rubygems' -  @version={ -    stable:   'v4', -    unstable: 'v5', -  } -  @version[:default]=@version[:stable] -  if $0 == __FILE__ \ -  and File.dirname(__FILE__) != Config::CONFIG['bindir'] -    sisu_run_from_= :full_path_to_sisu_bin_in_sisu_dir_tree -    sisu_version_dir_=case $0 -    when /\bsisu4$/                                   then @version[:stable] -    when /\bsisu5$/                                   then @version[:unstable] -    else select_version_check(argv.inspect) -    end -  elsif __FILE__ =~/\/gems\// \ -  and  __FILE__ =~/\/sisu-[45]\.(?:\d+|[a-z])\.(?:\d+|[a-z])\// -    sisu_run_from_=:gem_install -    sisu_version_dir_=case __FILE__ -    when /\/sisu-4\.(?:\d+|[a-z])\.(?:\d+|[a-z])\//   then @version[:stable] -    when /\/sisu-5\.(?:\d+|[a-z])\.(?:\d+|[a-z])\//   then @version[:unstable] -    else                                                   @version[:default] -    end -  else -    sisu_run_from_=:system_install -    sisu_version_dir_=case $0 -    when /\bsisu4$/                                   then @version[:stable] -    when /\bsisu5$/                                   then @version[:unstable] -    else select_version_check(argv.inspect) -    end -  end -#% $0 File.expand_path($0) -  sisu_path_base=if sisu_run_from_ == :system_install \ -  and $0 =~ /^#{Config::CONFIG['bindir']}\/sisu[45]?$/ -    sisu_path_base_system_data=Config::CONFIG['datadir'] + '/sisu' -    Config::CONFIG['datadir'] + '/sisu' # system install more widely distributed -  elsif sisu_run_from_ == :full_path_to_sisu_bin_in_sisu_dir_tree \ -  and $0 !~ /^#{Config::CONFIG['bindir']}\/sisu[45]?$/ \ -  && File.expand_path($0) =~/bin\/sisu[45]?$/ \ -  && FileTest.file?($0) -    sisu_path_base_system_data=File.expand_path($0).sub(/\/bin\/sisu[45]?$/,'/data/sisu') -    File.expand_path($0).sub(/\/bin\/sisu[45]?$/,'') -  elsif sisu_run_from_==:gem_install -    sisu_path_base_system_data=Gem::Specification.find_by_name("sisu").gem_dir + '/data/sisu' -    Gem::Specification.find_by_name("sisu").gem_dir -  else nil -  end -  @sisu_lib="sisu/#{sisu_version_dir_}" -  sisu_path_specified_lib_=($0 !~ /^#{Config::CONFIG['bindir']}\/sisu[45]?$/) \ -  ? File.expand_path($0).sub(/bin\/sisu[45]?$/,'lib') -  : nil -  sisu_version_info_path_="#{sisu_path_base_system_data}/#{sisu_version_dir_}/v/version.yml" -  sisu_path_lib="#{require_hub_path(sisu_path_specified_lib_)}" -  lng_lst_ = %w[am bg bn br ca cs cy da de el en eo es et eu fi fr ga gl he hi hr hy ia is it ja ko la lo lt lv ml mr nl nn no oc pl pt pt_BR ro ru sa se sk sl sq sr sv ta te th tk tr uk ur us vi zh] -  SiSU_is={ -    run_from:              sisu_run_from_, -    version_dir:           sisu_version_dir_, -    path_base:             sisu_path_base, -    path_base_system_data: sisu_path_base_system_data, -    path_lib:              sisu_path_lib, -    version_info_path:     sisu_version_info_path_, -    language_list:         lng_lst_, -  } -#% $* -  require "#{SiSU_is[:path_lib]}/hub" -  lng_lst_rgx=SiSU_is[:language_list].join('|') -  argv_sub_files={} -  argv_sub_mods=[] -  argv.each do |x| -    if x =~/^-+/ -      argv_sub_mods << x -    elsif x =~/\.ss[tm]/ -      if x =~/\// -        markup_path,markup_file =(/(\S+\/)((?:#{lng_lst_rgx})?[^\/]+)/).match(x)[1,2] -        if not argv_sub_files[markup_path] -          argv_sub_files[markup_path]=[] -        end -        argv_sub_files[markup_path] << markup_file +class Orient +  require 'singleton' +  include Singleton +  def initialize #(called_as_,argv) +    super() +    @called_as,@argv=$0,$* +  end +  def version +    def stable +     '4' +    end +    def unstable +     '5' +    end +    def default +     stable +    end +    self +  end +  def sisu_called_from_directory +    Dir.pwd +  end +  def sisu_run_from +    if processing.called_as == processing.file_full_path \ +    and File.dirname(processing.file_full_path) != Config::CONFIG['bindir'] +      :full_path_to_sisu_bin_in_sisu_dir_tree +    elsif processing.file_full_path =~/\/gems\// \ +    and  processing.file_full_path =~/\/sisu-[#{version.stable}#{version.unstable}]\.(?:\d+|[a-z])\.(?:\d+|[a-z])\// +      :gem_install +    else +      :system_install +    end +  end +  def processing +    def called_as +      @called_as +    end +    def argv +      @argv +    end +    def argv_str +      argv.inspect +    end +    def file_full_path +      __FILE__ +    end +    def stable +      'v' + version.stable +    end +    def unstable +      'v' + version.unstable +    end +    def default +      'v' + version.default +    end +    def stable_bin_file_regex +      %r{\bsisu#{version.stable}$} +    end +    def unstable_bin_file_regex +      %r{\bsisu#{version.unstable}$} +    end +    def stable_gem_regex +      %r{\/sisu-#{version.stable}\.(?:\d+|[a-z])\.(?:\d+|[a-z])\/} +    end +    def unstable_gem_regex +      %r{\/sisu-#{version.unstable}\.(?:\d+|[a-z])\.(?:\d+|[a-z])\/} +    end +    def stable_modifier_regex +      %r{"(?:--v#{version.stable}|--current|--stable)"} +    end +    def unstable_modifier_regex +      %r{"(?:--v#{version.unstable}|--current|--stable)"} +    end +    self +  end +  def sisu_lib +    "sisu/#{select_version_check}" +  end +  def sisu_path_lib +    if sisu_path_specified_lib \ +    && FileTest.file?("#{sisu_path_specified_lib}/#{sisu_lib}/hub.rb") +      "#{sisu_path_specified_lib}/#{sisu_lib}" +    else sisu_lib +    end +  end +  def sisu_version_info_path +    "#{sisu_path_base_system_data}/#{select_version_check}/v/version.yml" +  end +  def select_version_check +    if sisu_run_from == :full_path_to_sisu_bin_in_sisu_dir_tree \ +    or sisu_run_from == :system_install +      case processing.called_as +      when processing.stable_bin_file_regex         then processing.stable +      when processing.unstable_bin_file_regex       then processing.unstable        else -        if not argv_sub_files['./'] -          argv_sub_files['./']=[] +        case processing.argv_str +        when processing.stable_modifier_regex       then processing.stable +        when processing.unstable_modifier_regex     then processing.unstable +        else                                             processing.default          end -        argv_sub_files['./'] << x        end +    elsif sisu_run_from == :gem_install +      case processing.file_full_path +      when processing.stable_gem_regex              then processing.stable +      when processing.unstable_gem_regex            then processing.unstable +      else                                               processing.default +      end +    else                                                 processing.default +    end +  end +  def paths_set +    if sisu_run_from == :system_install \ +    and processing.called_as =~ /^#{Config::CONFIG['bindir']}\/sisu[#{version.stable}#{version.unstable}]?$/ +      :set_path_system +    elsif sisu_run_from == :full_path_to_sisu_bin_in_sisu_dir_tree \ +    and processing.called_as !~ /^#{Config::CONFIG['bindir']}\/sisu[#{version.stable}#{version.unstable}]?$/ \ +    && File.expand_path(processing.called_as) =~/bin\/sisu[#{version.stable}#{version.unstable}]?$/ \ +    && FileTest.file?(processing.called_as) +      :set_dir_tree_full_path +    elsif sisu_run_from==:gem_install +      :set_gem_path +    else nil +    end +  end +  def sisu_path_base +    case paths_set +    when :set_path_system +      Config::CONFIG['datadir'] + '/sisu' +    when :set_dir_tree_full_path +      File.expand_path(processing.called_as).sub(/\/bin\/sisu[#{version.stable}#{version.unstable}]?$/,'') +    when :set_gem_path +      Gem::Specification.find_by_name("sisu").gem_dir +    else nil +    end +  end +  def sisu_path_base_system_data +    case paths_set +    when :set_path_system +      Config::CONFIG['datadir'] + '/sisu' +    when :set_dir_tree_full_path +      File.expand_path(processing.called_as).sub(/\/bin\/sisu[#{version.stable}#{version.unstable}]?$/,'/data/sisu') +    when :set_gem_path +      Gem::Specification.find_by_name("sisu").gem_dir + '/data/sisu' +    else nil +    end +  end +  def sisu_path_specified_lib +    if (processing.called_as !~ /^#{Config::CONFIG['bindir']}\/sisu[#{version.stable}#{version.unstable}]?$/) +      File.expand_path(processing.called_as).sub(/bin\/sisu[#{version.stable}#{version.unstable}]?$/,'lib') +    else nil      end    end -  if argv_sub_files.length > 0 -    argv_sub_files.each_pair do |markup_dir,markup_file| -      $sisu_document_markup_directory=markup_dir.gsub(/\/$/,'') -      argv_sub=argv_sub_mods + markup_file -      if FileTest.directory?(markup_dir) -        system("cd #{markup_dir}") -        Dir.chdir(markup_dir) -        $sisu_document_markup_directory_base_fixed_path=Dir.pwd.gsub(/\/(?:#{lng_lst_rgx})$/,'') -        SiSU::HubMaster.new(argv_sub) -        Dir.chdir(@sisu_called_from_directory) -        system("cd #{@sisu_called_from_directory}") -      elsif markup_dir =~/https?:/ -        markup_file.each do |mf| -          (FileTest.file?(mf)) \ -          ? (puts 'requested remote file already exists in current directory ' + Dir.pwd + ' using ' + mf) -          : (system("wget #{markup_dir}/#{mf}")) +  def language_list +    def codes +      %w[am bg bn br ca cs cy da de el en eo es et eu fi fr ga gl he hi hr hy ia is it ja ko la lo lt lv ml mr nl nn no oc pl pt pt_BR ro ru sa se sk sl sq sr sv ta te th tk tr uk ur us vi zh] +    end +    def regex +      codes.join('|') +    end +    self +  end +  def sisu_is +    { +      run_from:              sisu_run_from, +      version_dir:           select_version_check, +      path_base:             sisu_path_base, +      path_base_system_data: sisu_path_base_system_data, +      path_lib:              sisu_path_lib, +      version_info_path:     sisu_version_info_path, +      language_list:         language_list.codes, +    } +  end +  def get_processing_info +    def sortout +      unless @clm_pf +        processing_files={} +        command_line_modifiers=[] +        processing.argv.each do |x| +          if x =~/^-+/ +            command_line_modifiers << x +          elsif x =~/\.ss[tm]/ +            if x =~/\// +              markup_path,markup_file =(/(\S+\/)((?:#{language_list.regex})?[^\/]+)/).match(x)[1,2] +              if not processing_files[markup_path] +                processing_files[markup_path]=[] +              end +              processing_files[markup_path] << markup_file +            else +              if not processing_files['./'] +                processing_files['./']=[] +              end +              processing_files['./'] << x +            end +          end +        end +      end +      @clm_pf ||={ +        command_line_modifiers: command_line_modifiers, +        processing_files:       processing_files, +      } +    end +    def command_line_modifiers +      sortout[:command_line_modifiers] +    end +    def processing_files +      sortout[:processing_files] +    end +    self +  end +  def control +    require "#{sisu_is[:path_lib]}/hub" +    if get_processing_info.processing_files. length > 0 +      get_processing_info.processing_files.each_pair do |markup_dir,markup_file| +        $sisu_document_markup_directory=markup_dir.gsub(/\/$/,'') +        argv_sub=get_processing_info.command_line_modifiers + markup_file +        if FileTest.directory?(markup_dir) +          system("cd #{markup_dir}") +          Dir.chdir(markup_dir) +          $sisu_document_markup_directory_base_fixed_path=Dir.pwd.gsub(/\/(?:#{language_list.regex})$/,'') +          SiSU::HubMaster.new(argv_sub) +          Dir.chdir(sisu_called_from_directory) +          system("cd #{sisu_called_from_directory}") +        elsif markup_dir =~/https?:/ +          markup_file.each do |mf| +            (FileTest.file?(mf)) \ +            ? (puts 'requested remote file already exists in current directory ' + Dir.pwd + ' using ' + mf) +            : (system("wget #{markup_dir}/#{mf}")) +          end +          $sisu_document_markup_directory_base_fixed_path=Dir.pwd.gsub(/\/(?:#{language_list.regex})$/,'') +          argv_sub=command_line_modifiers + markup_file +          SiSU::HubMaster.new(argv_sub) +        else p "Error directory specified #{markup_dir} not found"          end -        $sisu_document_markup_directory_base_fixed_path=Dir.pwd.gsub(/\/(?:#{lng_lst_rgx})$/,'') -        argv_sub=argv_sub_mods + markup_file -        SiSU::HubMaster.new(argv_sub) -      else p "Error directory specified #{markup_dir} not found"        end +    else +      $sisu_document_markup_directory=Dir.pwd.gsub(/\/$/,'') +      $sisu_document_markup_directory_base_fixed_path=Dir.pwd.gsub(/(^|\/)(?:#{language_list.regex})$/,'') +      SiSU::HubMaster.new(processing.argv)      end -  else -    $sisu_document_markup_directory=Dir.pwd.gsub(/\/$/,'') -    $sisu_document_markup_directory_base_fixed_path=Dir.pwd.gsub(/(^|\/)(?:#{lng_lst_rgx})$/,'') -    SiSU::HubMaster.new(argv)    end -rescue +end +#% sisu select source & branch, begin +$VERBOSE=nil +require 'rbconfig' +require 'rubygems' +begin +  require 'singleton' +  s=Orient.instance +  SiSU_is=s.sisu_is +  s.control +rescue #% -    STDERR.puts 'ERROR'    STDERR.puts $!    STDERR.puts $@ -  require 'rbconfig' -  require 'rubygems'    puts %{                     #{%x{ruby -v}.strip.to_s}                     #{RUBY_VERSION} @@ -151,7 +267,7 @@ rescue    }    system(%{echo "      system RUBYPATH: ${RUBYPATH} -    system RUBYLIB: ${RUBYLIB} +    system RUBYLIB:  ${RUBYLIB}    "})  end  __END__ diff --git a/data/doc/sisu/CHANGELOG_v4 b/data/doc/sisu/CHANGELOG_v4 index c3a3cf80..cebc237f 100644 --- a/data/doc/sisu/CHANGELOG_v4 +++ b/data/doc/sisu/CHANGELOG_v4 @@ -25,6 +25,17 @@ v2 branch is removed; it is available in sisu =< 3.3.2  %% Reverse Chronological: +%% 4.2.21.orig.tar.xz (2014-01-26:03/7) +http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=shortlog;h=refs/tags/sisu_4.2.21 +http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=shortlog;h=refs/tags/debian/sisu_4.2.21-1 +http://www.jus.uio.no/sisu/pkg/src/sisu_4.2.21.orig.tar.xz +  sisu_4.2.21.orig.tar.xz +  sisu_4.2.21-1.dsc + +[closing] + +* bin/sisu changes to simplify switching to new stable and development branches +  %% 4.2.20.orig.tar.xz (2014-01-20:03/1)  http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=shortlog;h=refs/tags/sisu_4.2.20  http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=shortlog;h=refs/tags/debian/sisu_4.2.20-1 diff --git a/data/doc/sisu/CHANGELOG_v5 b/data/doc/sisu/CHANGELOG_v5 index 5eff6d0c..55015596 100644 --- a/data/doc/sisu/CHANGELOG_v5 +++ b/data/doc/sisu/CHANGELOG_v5 @@ -29,6 +29,15 @@ v2 branch is removed; it is available in sisu =< 3.3.2  %% Reverse Chronological: +%% 5.2.4.orig.tar.xz (2014-01-26:03/7) +http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=shortlog;h=refs/tags/sisu_5.2.4 +http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=shortlog;h=refs/tags/debian/sisu_5.2.4-1 +http://www.jus.uio.no/sisu/pkg/src/sisu_5.2.4.orig.tar.xz +  sisu_5.2.4.orig.tar.xz +  sisu_5.2.4-1.dsc + +* bin/sisu changes to simplify switching to new stable and development branches +  %% 5.2.3.orig.tar.xz (2014-01-20:03/1)  http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=shortlog;h=refs/tags/sisu_5.2.3  http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=shortlog;h=refs/tags/debian/sisu_5.2.3-1 diff --git a/data/sisu/v4/v/version.yml b/data/sisu/v4/v/version.yml index 41bffc8e..961c340f 100644 --- a/data/sisu/v4/v/version.yml +++ b/data/sisu/v4/v/version.yml @@ -1,5 +1,5 @@  ---  :project: SiSU -:version: 4.2.20 -:date_stamp: 2014w03/1 -:date: "2014-01-20" +:version: 4.2.21 +:date_stamp: 2014w03/7 +:date: "2014-01-26" diff --git a/data/sisu/v5/v/version.yml b/data/sisu/v5/v/version.yml index de7e0305..6155e970 100644 --- a/data/sisu/v5/v/version.yml +++ b/data/sisu/v5/v/version.yml @@ -1,5 +1,5 @@  ---  :project: SiSU -:version: 5.2.3 -:date_stamp: 2014w03/1 -:date: "2014-01-20" +:version: 5.2.4 +:date_stamp: 2014w03/7 +:date: "2014-01-26" @@ -37,8 +37,8 @@  #require 'mkmf'  #create_makefile("sisu")  #% manual settings, edit/update as required (note current default settings are obtained from sisu version yml file) -SiSU_version_next_stable     = '4.2.20' -SiSU_version_next_unstable   = '5.2.3' +SiSU_version_next_stable     = '4.2.21' +SiSU_version_next_unstable   = '5.2.4'  #% rake file  SiSU_version_generic_next_stable     = '4.2.x'  SiSU_version_generic_next_unstable   = '5.2.x' | 
