diff options
| author | Ralph Amissah <ralph@amissah.com> | 2014-08-29 21:05:12 -0400 | 
|---|---|---|
| committer | Ralph Amissah <ralph@amissah.com> | 2014-08-29 21:05:12 -0400 | 
| commit | aed8d0f1cae7debfb4b9e1858b56d18abbfc7bf5 (patch) | |
| tree | 0296346dfc87f91371ed086e42231fad226ec455 /rbuild | |
| parent | debian/changelog (5.6.2-1) (diff) | |
| parent | v5 v6: dp, texpdf, copyright_and_license, minor fix, used by texpdf (diff) | |
Merge tag 'sisu_5.6.3' into debian/sid
SiSU 5.6.3
Diffstat (limited to 'rbuild')
| -rw-r--r-- | rbuild | 990 | 
1 files changed, 0 insertions, 990 deletions
| diff --git a/rbuild b/rbuild deleted file mode 100644 index 261c5256..00000000 --- a/rbuild +++ /dev/null @@ -1,990 +0,0 @@ -#!/usr/bin/env ruby -=begin - Common Rakefile, Rantfile installer for SiSU -   softlink Rakefile and Rantfile to this file - - * Homepage: <http://www.jus.uio.no/sisu/SiSU> -             <http://search.sisudoc.org> - * Download: <http://www.jus.uio.no/sisu/download> - - Copyright (C) 2007 Ralph Amissah - - * License: LGPL - GNU Lesser General Public License -     [same license as Rant provided within the Rant package] - - * Ralph Amissah <ralph@amissah.com> -   Ralph Amissah <ralph.amissah@gmail.com> - - Rake is a Ruby build program by Jim Weirich - * Rake may be downloaded and installed from: -     <http://rake.rubyforge.org/> - - Rant is a Ruby build program by Stefan Lang - * Rant may be downloaded and installed from: -     <http://make.rubyforge.org/> - - Notes on use: -   [if rake is preferred and installed] -     rake -T -   [if rant is preferred and installed] -     rant -T - - SiSU can also be Setup/Installation using: - * Minero Aoki's setup.rb, provided along with SiSU, or - -=end -#%% produce a makefile suitable for the target platform -#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     = '5.6.2' #% set version stable current -SiSU_version_next_unstable   = '6.2.3' #% set version unstable dev -#% rake file -SiSU_version_generic_next_stable     = '5.4.x' -SiSU_version_generic_next_unstable   = '6.0.x' -SiSU_version_dir_stable            = 'v5' -SiSU_version_dir_unstable          = 'v6' -require 'find' -require 'fileutils' -#require 'ftools' -require 'rbconfig.rb' -require 'yaml' -include FileUtils -module Project_details -  def self.name -    'SiSU' -  end -  def self.rake_rant -    "Rakefile/Rantfile for the installation/setup of #{name}" -  end -  def self.platform_notice -    "[#{name} is for Linux/Unix Platforms]" -  end -  def self.env -    RbConfig::CONFIG -  end -  def self.host -    env['host'] -  end -  def self.dir -    def self.proj -      Project_details.name.downcase -    end -    def self.arch -      env['archdir'] -    end -    def self.sitearch -      env['sitearchdir'] -    end -    def self.bin -      env['bindir'] -    end -    def self.lib -      env['sitelibdir'] -    end -    def self.data -      env['datadir'] -    end -    def self.share -      "#{env['datadir']}/sisu" -    end -    def self.conf -      env['sysconfdir'] -    end -    def self.man -      env['mandir'] -    end -    def self.vim -      "#{env['datadir']}/sisu/vim" -    end -    def self.out -      "#{env['localstatedir']}/#{proj}" -    end -    def self.rubylib -      env['LIBRUBYARG_SHARED'] -    end -    def self.pwd -      Dir.pwd #ENV['PWD'] -    end -    self -  end -  def self.version -    stamp={} -    v="#{dir.pwd}/conf/sisu/version.yml" -    if File.exist?(v) -      stamp=YAML::load(File::open(v)) -      stamp[:version] -    else '' -    end -  end -  def self.system_info -    ##{Project_details.platform_notice} -    puts <<-WOK -  Host -    host:             #{Project_details.host} -    arch:             #{Project_details.dir.arch} -    sitearch:         #{Project_details.dir.sitearch} -  Directories for installation -    bin:                                          #{Project_details.dir.bin} -    lib (site-ruby):                              #{Project_details.dir.lib}/#{Project_details.dir.proj}/v* -    conf [etc]:                                   #{Project_details.dir.conf}/#{Project_details.dir.proj} -    data (odf, shared images):                    #{Project_details.dir.share} -    vim  (vim syntax, highlighting, ftplugin):    #{Project_details.dir.data}/sisu/vim -    data (README, version_manifest):              #{Project_details.dir.data}/doc/#{Project_details.dir.proj} -    man (manual pages):                           #{Project_details.dir.man} -    output:                                       #{Project_details.dir.out} -      processing:                                 #{Project_details.dir.out}/processing -      www:                                        #{Project_details.dir.out}/www -    rubylib:                                      #{Project_details.dir.rubylib} - -    WOK -  end -  def self.gem_env -    system("gem env") -  end -end -module Utils -  def self.answer?(ask) -    resp='redo' -    print ask + " ['yes', 'no' or 'quit']: " -    resp=File.new('/dev/tty').gets.strip #resp=gets.strip -    if    resp == 'yes'        then true -    elsif resp == 'no'         then false -    elsif resp =~/^quit|exit$/ then exit -    else                       puts "[please type: 'yes', 'no' or 'quit']" -                               answer?(ask) -    end -  end -  def self.default_notice -    ans= %{#{Project_details.rake_rant} -    Information on alternative actions is available using: -    [if rake (or rant) is installed:] -      "rake help" or "rake -T" (or "rant help" or "rant -T") -    Default action selected - "install #{Project_details.name}" proceed? } -    resp=answer?(ans) -    exit unless resp -  end -  def self.chmod_file(place) -    if place =~/\/bin/; File.chmod(0755,place) -    else                File.chmod(0644,place) -    end -  end -  def self.chmod_util(place) -    if place =~/\/bin/; chmod(0755,place) -    else                chmod(0644,place) -    end -  end -  def self.system_date -    `date "+%Y-%m-%d"`.strip -  end -  def self.system_date_stamp -    `date "+%Yw%W/%u"`.strip -  end -  def self.program_found?(prog) -    found=`which #{prog}` #`whereis #{make}` -    (found =~/bin\/#{prog}\b/) ? :true : :false -  end -end -module Install -                                                           #%% using a directory and its mapping -  def self.setup_find_create(dir_get,dir_put,exclude_files=[''])               #primary, -    begin -    Find.find("#{Project_details.dir.pwd}/#{dir_get}") do |f| -      stub=f.scan(/#{Project_details.dir.pwd}\/#{dir_get}\/(\S+)/).join -      place="#{dir_put}/#{stub}" -      action=case -      when File.file?(f) -        unless f =~/#{exclude_files.inspect}/ -          cp(f,place) -          Utils.chmod_file(place) -          "->  #{dir_put}/" -        end -      when File.directory?(f) -        FileUtils.mkpath(place) unless FileTest.directory?(place) -        "./#{dir_get}/" -      else '?' -      end -      puts "#{action}#{stub}" -    end -    rescue -      puts "\n\n<< are you root? required for install >>" -    end -  end -  def self.setup_find_cp_r(dir_get,dir_put)                                    #secondary, using recursive copy -    Find.find("#{Project_details.dir.pwd}/#{dir_get}") do |f| -      stub=f.scan(/#{Project_details.dir.pwd}\/#{dir_get}\/(\S+)/).join -      place="#{dir_put}/#{stub}" -      case -      when File.file?(f) -        cp_r(f,place) -        Utils.chmod_util(place) -      when File.directory?(f) -        mkdir(place) unless FileTest.directory?(place) -      end -    end -  end -end -module Version_info -  def self.contents(vi) -    <<-WOK ---- -:project: #{vi[:project]} -:version: #{vi[:version]} -:date_stamp: #{vi[:date_stamp]} -:date: "#{vi[:date]}" -    WOK -  end -  module Current -    def self.yml_file_path(version) -      "data/sisu/#{version}/v/version.yml" -    end -    def self.settings(file) -      v="#{Dir.pwd}/#{file}" -      if File.exist?(v) -        YAML::load(File::open(v)) -      else '' -      end -    end -    def self.file_stable -      yml_file_path(SiSU_version_dir_stable) -    end -    def self.file_unstable -      yml_file_path(SiSU_version_dir_unstable) -    end -    def self.setting_stable -      settings(file_stable) -    end -    def self.setting_unstable -      settings(file_unstable) -    end -    def self.content_stable -      Version_info.contents(setting_stable) -    end -    def self.content_unstable -      Version_info.contents(setting_unstable) -    end -  end -  module Next -    def self.settings(v) -      { -        project:        "#{Project_details.name}", -        version:        "#{v}", -        date:           "#{Utils.system_date}", -        date_stamp:     "#{Utils.system_date_stamp}", -      } -    end -    def self.setting_stable -      settings(SiSU_version_next_stable) -    end -    def self.setting_unstable -      settings(SiSU_version_next_unstable) -    end -    def self.content_stable -      Version_info.contents(setting_stable) -    end -    def self.content_unstable -      Version_info.contents(setting_unstable) -    end -  end -  module Update -    def self.version_info_update_commit(filename,vi_hash_current,vi_content_current,vi_hash_next,vi_content_next) -      ans=%{update #{Project_details.name.downcase} version info replacing: -  #{vi_hash_current.sort} -with: -  #{vi_hash_next.sort} - -#{vi_content_current} becoming: -#{vi_content_next} -proceed? } -      resp=Utils.answer?(ans) -      if resp -        fn="#{Dir.pwd}/#{filename}" -        if File.writable?("#{Dir.pwd}/.") -          file_version=File.new(fn,'w+') -          file_version << vi_content_next -          file_version.close -        else -          puts %{*WARN* is the file or directory writable? could not create #{filename}} -        end -      end -    end -    def self.update_stable -      version_info_update_commit(Version_info::Current.file_stable,Version_info::Current.setting_stable,Version_info::Current.content_stable,Version_info::Next.setting_stable,Version_info::Next.content_stable) -    end -    def self.update_unstable -      version_info_update_commit(Version_info::Current.file_unstable,Version_info::Current.setting_unstable,Version_info::Current.content_unstable,Version_info::Next.setting_unstable,Version_info::Next.content_unstable) -    end -    def self.changelog_header(vi) -      <<-WOK -%% #{vi[:version]}.orig.tar.xz (#{vi[:date]}:#{vi[:date_stamp].gsub(/20\d\dw/,'')}) -http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=log;h=refs/tags/sisu_#{vi[:version]} -http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=log;h=refs/tags/debian/sisu_#{vi[:version]}-1 -http://www.jus.uio.no/sisu/pkg/src/sisu_#{vi[:version]}.orig.tar.xz -  sisu_#{vi[:version]}.orig.tar.xz -  sisu_#{vi[:version]}-1.dsc -      WOK -    end -    def self.changelog_header_stable -      changelog_header(Version_info::Current.setting_stable) -    end -    def self.changelog_header_unstable -      changelog_header(Version_info::Current.setting_unstable) -    end -  end -  self -end -module GitExtractTaggedVersionBuild -  def upstream -    system(%{ git checkout upstream }) -  end -  def self.git_tagged_versions(vb=nil) -    if vb.tag -      v=if vb.tag =~/sisu_[0-9](?:\.[0-9]){0,2}$/ then vb.tag -      elsif vb.tag =~/^[0-9](?:\.[0-9]){0,2}$/    then 'sisu_' + vb.tag -      else                                             'sisu_' -      end -      system(%{ git tag -l | ag --nocolor '^#{v}' }) -    end -  end -  def self.git_checkout_and_build_version(vb) -    begin -      ver=if vb.tag =~/sisu_[0-9]\.[0-9]+\.[0-9]+/ then vb.tag -      elsif  vb.tag =~/^[0-9]\.[0-9]+\.[0-9]+/     then 'sisu_' + vb.tag -      else                                               vb.branch -      end -      install_branch=case vb.branch -      when /^(?:stable|unstable)$/ -        "gem_create_build_install_#{vb.branch}" -      when /^(?:all)/ -        'gem_create_build_install' -      else -        'gem_create_build_install_stable' -      end -      commands =<<-WOK -        git checkout #{ver} && -        rake #{install_branch}; -      WOK -      puts commands -      system(commands) -    ensure -      system(%{ -        git checkout upstream -      }) -    end -  end -end -module Gemspecs -  def self.info(vi) -    puts <<-WOK --- -name:       #{vi[:project].downcase} -version:    #{vi[:version]} -date:       #{vi[:date]} -summary:    #{vi[:project]} -    WOK -  end -  def self.contents(vi,version) -    <<-WOK -Gem::Specification.new do |s| -  s.name           = '#{vi[:project].downcase}' -  s.version        = '#{vi[:version]}' -  s.date           = '#{vi[:date]}' -  s.summary        = '#{vi[:project]}' -  s.description    = '#{Project_details.name} gem' -  s.authors        = ["Ralph Amissah"] -  s.email          = 'ralph.amissah@gmail.com' -  s.files          = Dir['lib/#{Project_details.name.downcase}/#{version}/*.rb'] + -                     Dir['data/#{Project_details.name.downcase}/#{version}/v/version.yml'] + -                     Dir['data/#{Project_details.name.downcase}/image/*'] + -                     Dir['bin/#{Project_details.name.downcase}gem'] + -                     Dir['bin/#{Project_details.name.downcase}'] -  s.license        = 'GPL3' -  s.executables << '#{Project_details.name.downcase}gem' << '#{Project_details.name.downcase}' -end -    WOK -  end -  def self.create(filename,gemspec) -    fn="#{Dir.pwd}/#{filename}.gemspec" -    if File.writable?("#{Dir.pwd}/.") -      file_sisu_gemspec=File.new(fn,'w+') -      file_sisu_gemspec << gemspec -      file_sisu_gemspec.close -    else -      puts %{*WARN* is the file or directory writable? could not create #{filename}} -    end -  end -  def self.build(fn) -    system(%{ gem build #{fn}.gemspec }) -  end -  def self.install(fn) -    system(%{ -      sudo gem install --no-document --verbose #{fn}.gem -    }) -  end -  module Current -    def self.filename_stable -      "#{Project_details.name.downcase}-#{Version_info::Current.setting_stable[:version]}" -    end -    def self.filename_unstable -      "#{Project_details.name.downcase}-#{Version_info::Current.setting_unstable[:version]}" -    end -    def self.info_stable -      Gemspecs.info(Version_info::Current.setting_stable) -    end -    def self.info_unstable -      Gemspecs.info(Version_info::Current.setting_unstable) -    end -    def self.current_stable -      Gemspecs.contents(Version_info::Current.setting_stable,SiSU_version_dir_stable) -    end -    def self.current_unstable -      Gemspecs.contents(Version_info::Current.setting_unstable,SiSU_version_dir_unstable) -    end -    def self.create_stable -      Gemspecs.create(filename_stable,current_stable) -      Gemspecs.create("#{Project_details.name.downcase}-stable",current_stable) -    end -    def self.create_unstable -      Gemspecs.create(filename_unstable,current_unstable) -      Gemspecs.create("#{Project_details.name.downcase}-unstable",current_unstable) -    end -    def self.build_stable -      Gemspecs.build(filename_stable) -    end -    def self.build_unstable -      Gemspecs.build(filename_unstable) -    end -    def self.install_stable -      Gemspecs.install(filename_stable) -    end -    def self.install_unstable -      Gemspecs.install(filename_unstable) -    end -  end -  module Next -    def self.filename_stable -      "#{Project_details.name.downcase}-#{Version_info::Next.setting_stable[:version]}" -    end -    def self.filename_unstable -      "#{Project_details.name.downcase}-#{Version_info::Next.setting_unstable[:version]}" -    end -    def self.setting_stable -      Gemspecs.contents(Version_info::Next.setting_stable,SiSU_version_dir_stable) -    end -    def self.setting_unstable -      Gemspecs.contents(Version_info::Next.setting_unstable,SiSU_version_dir_unstable) -    end -    def self.create_stable -      Gemspecs.create(filename_stable,setting_stable) -    end -    def self.create_unstable -      Gemspecs.create(filename_unstable,setting_unstable) -    end -    def self.build_stable -      Gemspecs.build(filename_stable) -    end -    def self.build_unstable -      Gemspecs.build(filename_unstable) -    end -    def self.install_stable -      Gemspecs.install(filename_stable) -    end -    def self.install_unstable -      Gemspecs.install(filename_unstable) -    end -  end -end -module Help -  def self.project_help -    puts <<WOK - -#{Project_details.name} -  #{Project_details.rake_rant} -  #{Project_details.platform_notice} - -Commands quick start list -  #{Project_details.name} Rake/Rant Help: (Rakefile or Rantfile) -    rake (rake -T or rant -T)                  # a task list, (generated by Rake or Rant) for more complete and up to date help - -  Quick start install and remove project #{Project_details.name}, as root: -    rake setup                                  # install #{Project_details.name} -    rake resetup                                # reinstall #{Project_details.name} -    rake remove_package                         # clobber/remove #{Project_details.name}, all versions -  alternatively to install as a gem: -    rake gem_create_build_install               # create gemspec; build gem, &; install gem, for #{Project_details.name} - -  NOTE: these install options DO NOT setup #{Project_details.name} dependencies for: -  LaTeX(XeTeX) pdf output; or -  databases (postgresql or sqlite3) for #{Project_details.name} search -  should you wish to produce outputs that depend on them -  (on Debian for example this is the work of the debian installer) - -WOK -  end -  def self.tasks(make='rake') -    begin -      system("#{make} -T") -    rescue -      puts 'is either rake or rant installed?' -    end -  end -end -#% tasks -desc "show rake/rant tasks for sisu install, and sisu gem (create spec, build &) install" -  task :default => [:note_sources,:tasks,:note_installation] #[:default_notice,:setup_base] -desc "Setup/Install #{Project_details.name}" -  task :setup_project=> [:setup_bin_,:setup_lib_,:setup_conf_,:setup_share_,:setup_data_,:setup_man_,:setup_vim_,:src_note] -  task :project=> [:setup_project] -desc "Setup/Install #{Project_details.name}" -  task :setup=> [:setup_bin_, :setup_lib_,:setup_conf_,:setup_share_,:setup_data_] #, :help] -desc "Setup/Install #{Project_details.name}: bin, lib and conf (no data)" -  task :setup_base=> [:setup_bin_,:setup_lib_,:setup_conf_,:setup_share_,:setup_man_,:setup_vim_,:note_sources] -  task :base=> [:setup_base] -desc "Setup/Install #{Project_details.name}: bin, lib, conf & data" -  task :setup_with_data=> [:setup_base,:setup_data] -desc "check package version" -  task :sisuversion => [:sisu_version] -  task :version => [:sisu_version] -#desc "set package version" -  task :sisuversionset => [:sisu_version_set,:changelog_headers] -desc "check gemspec info" -  task :gem_spec => [:gemspec_info] -desc "create sisu v_stable gemspec" -  task :gem_create_spec_stable => [:gemspecs_stable_create_default_version] -  task :gem5cs => [:gem_create_spec_stable] -  task :gem5createspecs => [:gemspecs_stable_create_default_version] -desc "create sisu v_unstable gemspec" -  task :gem_create_spec_unstable => [:gemspecs_unstable_create_default_version] -  task :gem6cs => [:gem_create_spec_unstable] -  task :gem6createspecs => [:gemspecs_unstable_create_default_version] -desc "create gemspec" -  task :gem_create_spec => [:gemspecs_create_default_version] -  task :gemcs => [:gemspecs_create_default_version] -  task :gemc => [:gemspecs_create_default_version] -  task :gemspecscreate => [:gemspecs_create_default_version] -#--- -desc "build gem" -  task :gem_build => [:gem_build_] -  task :gemb => [:gem_build] -  task :gembuild => [:gem_build] -desc "build sisu v_stable gem" -  task :gem_build_stable => [:gem_stable_build] -  task :gem5b => [:gem_build_stable] -  task :gem5build => [:gem_build_stable] -desc "build sisu v_unstable gem" -  task :gem_build_unstable => [:gem_unstable_build] -  task :gem6b => [:gem_build_unstable] -  task :gem6build => [:gem_build_unstable] -#--- -desc "create, build & install sisu v_stable gem" -  task :gem_create_build_install_stable => [:gemspecs_stable_create_default_version,:gem_stable_build,:gem_stable_install] -  task :gem5cbi => [:gem_create_build_install_stable] -desc "create, build & install sisu v_unstable gem" -  task :gem_create_build_install_unstable => [:gemspecs_unstable_create_default_version,:gem_unstable_build,:gem_unstable_install] -  task :gem6cbi => [:gem_create_build_install_unstable] -desc "create, build & install sisu v_stable & v_unstable gem" -  task :gem_create_build_install => [:gemspecs_create_default_version,:gem_build_,:gem_install_] -  task :gemcbi => [:gem_create_build_install] -#--- -desc "install gem" -  task :gem_install => [:gem_install_] -  task :gemi => [:gem_install] -  task :geminstall => [:gem_install] -desc "build & install sisu v_stable gem" -  task :gem_build_install_stable => [:gem_stable_build,:gem_install_] -  task :gem5bi => [:gem_build_install_stable] -desc "build & install sisu v_unstable gem" -  task :gem_build_install_unstable => [:gem_unstable_build,:gem_install_] -  task :gem6bi => [:gem_build_install_unstable] -desc "build & install gem" -  task :gem_build_install => [:gem_build,:gem_install_] -  task :gembi => [:gem_build_install] -#-- manually set next version -#desc "create sisu v_stable gemspec, manually set next version" -  task :gem5csn => [:gemspecs_stable_create_next_version] -#desc "create sisu v_unstable gemspec, manually set next version" -  task :gem6csn => [:gemspecs_unstable_create_next_version] -#desc "create gemspec, manually set next version" -  task :gemcsn => [:gemspecs_create_next_version] -  task :gemcn => [:gemspecs_create_next_version] -#desc "build gem, manually set next version" -  task :gembn => [:gem_build_next_version] -#desc "build sisu v_stable gem, manually set next version" -  task :gem5bn => [:gem_stable_build_next_version] -#desc "build sisu v_unstable gem, manually set next version" -  task :gem6bn => [:gem_unstable_build_next_version] -#desc "install gem, manually set next version" -  task :gemin => [:gem_install_next_version] -#desc "build & install sisu v_stable gem, manually set next version" -  task :gem5bin => [:gem_stable_build_next_version,:gem_install_next_version] -#desc "build & install sisu v_unstable gem, manually set next version" -  task :gem6bin => [:gem_unstable_build_next_version,:gem_install_next_version] -#desc "build & install gem, manually set next version" -  task :gembin => [:gem_build_next_version,:gem_install_next_version] -#desc "create, build & install sisu v_stable gem, manually set next version" -  task :gem5cbin => [:gemspecs_stable_create_next_version,:gem_stable_build_next_version,:gem_stable_install_next_version] -#desc "create, build & install sisu v_unstable gem, manually set next version" -  task :gem6cbin => [:gemspecs_unstable_create_next_version,:gem_unstable_build_next_version,:gem_unstable_install_next_version] -#desc "create, build & install sisu v_stable & v_unstable gem, manually set next version" -  task :gemcbin => [:gemspecs_create_next_version,:gem_build_next_version,:gem_install_next_version] -#--- -#desc "check changelog headers" -  task :changelogheaders => [:changelog_headers] -  task :dev => [:note_developer] -  task :developer_note => [:note_developer] -if File.directory?('bin') -  desc "Setup #{Project_details.name} bin only, synonym :bin" -    task :setup_bin => [:setup_bin_] -    task :bin => [:setup_bin] -end -if File.directory?('lib') -  desc "Setup #{Project_details.name} lib only, synonym :lib" -    task :setup_lib => [:setup_lib_] -    task :lib => [:setup_lib] -end -if File.directory?('conf') -  desc "Setup #{Project_details.name} conf only, synonyms :conf & :etc" -    task :setup_conf => [:setup_conf_] -    task :conf => [:setup_conf] -    task :setup_etc => [:setup_conf] -    task :etc => [:setup_conf] -end -if File.directory?('data') -  desc "Setup #{Project_details.name} data only, synonyms :data & :examples" -    task :setup_data => [:setup_data_] -    task :data => [:setup_data] -    task :setup_examples => [:setup_data] -    task :examples => [:setup_data] -end -if File.directory?('data/sisu') -  #desc "Setup #{Project_details.name} shared data only (odf & shared images)" -    task :setup_share => [:setup_share_] -    task :share => [:setup_share] -end -if File.directory?('man') -  desc "Setup #{Project_details.name} man pages only, synonyms :man" -    task :setup_man => [:setup_man_] -    task :man => [:setup_man] -end -if File.directory?('data/vim') -  desc "Setup #{Project_details.name} vim config files only, synonyms :vim" -    task :setup_vim => [:setup_vim_] -    task :vim => [:setup_vim] -end -desc "Remove #{Project_details.name} (all versions)" -  task :remove_package => [:remove_bin, :remove_lib, :remove_conf] -if File.directory?('bin') -  #desc "Remove #{Project_details.name} bin only" -    task :remove_bin => [:remove_bin] -end -if File.directory?('lib') -  #desc "Remove #{Project_details.name} lib only" -    task :remove_lib => [:remove_lib] -end -if File.directory?('conf') -  #desc "Remove #{Project_details.name} conf only" -    task :remove_conf => [:remove_conf] -end -desc "Re-setup #{Project_details.name}, synonym :reinstall" -  task :resetup => [:remove, :setup] -  task :reinstall => [:remove, :setup] -#desc "Re-setup #{Project_details.name}: bin, lib, conf (ignore data), synonym :reinstall" -  task :resetup_base => [:remove, :setup_base_] -  task :reinstall_base => [:remove, :setup_base_] -if File.directory?('bin') -  #desc "Re-setup #{Project_details.name} bin, synonym :reinstall" -    task :resetup_bin => [:remove_bin, :setup_bin_] -    task :reinstall_bin => [:remove_bin, :setup_bin_] -end -if File.directory?('lib') -  #desc "Re-setup #{Project_details.name} lib, synonym :reinstall_lib" -    task :resetup_lib => [:remove_lib, :setup_lib_] -    task :reinstall_lib => [:remove_lib, :setup_lib_] -end -if File.directory?('conf') -  #desc "Re-setup #{Project_details.name} conf, synonyms :reinstall_conf & :resetup_etc" -    task :resetup_conf => [:remove_conf, :setup_conf_] -    task :reinstall_conf => [:remove_conf, :setup_conf_] -    task :resetup_etc => [:remove_conf, :setup_conf_] -    task :reinstall_etc => [:remove_conf, :setup_conf_] -end -if File.directory?('data/sisu') -  #desc "Re-setup #{Project_details.name} shared data, (odf & images)" -    task :resetup_share => [:remove_share, :setup_share_] -    task :reinstall_share => [:remove_share, :setup_share_] -end -if File.directory?('man') -  #desc "Re-setup #{Project_details.name} man, synonym :reinstall_man" -    task :resetup_man => [:remove_man, :setup_man_] -    task :reinstall_man => [:remove_man, :setup_man_] -end -desc 'Setup Note' -  task :setup_note => [:help] -desc "System information used by #{Project_details.name}" -  task :system => [:system_info,:project_help,:note_sources] -desc "show all system info available - parameters found" -  task :system_param => [:system_param_] -desc "Gem environment information used ruby gems for #{Project_details.name}" -  task :gem_env => [:gem_env_] -desc 'Help' -  task :help => [:project_help,:system_info,:tasks] -#desc "Setup/Install #{Project_details.name} (uses filelist)" -  task :install => [:default_notice,:project] -  task :install_bin => [:setup_bin_] -#desc "search for a version tag e.g. 'tag[5.6.0]'" -  task :tag, [:tag] do |t, args| -    args.with_defaults(:tag => Version_info::Next.setting_stable[:version]) -    puts "Check for Version Tag: #{args.tag}" -    print "Version Tag:           " -    GitExtractTaggedVersionBuild::git_tagged_versions(args) -  end -#desc "build and install a specific git tagged version of sisu, e.g. 'build[5.6.0]'" -  task :build, [:tag, :branch] => :done do |t, args| -    args.with_defaults(:tag => '5.6.0', :branch => 'stable') -    puts "Version Tag: #{args.tag}" -    puts "Branch: #{args.branch}" -    GitExtractTaggedVersionBuild::git_tagged_versions(args.tag) -    ans= <<-WOK -  Gem Install SiSU Version -    WOK -    resp=Utils.answer?(ans) -    exit unless resp -    GitExtractTaggedVersionBuild::git_checkout_and_build_version(args) -  end -  task :done do -    puts 'done' -  end -                                                           #%% setup/install tasks -task :rant_independence do                                 #notice -  resp='' -  while resp.length < 4 -    resp='sisu-install'                                     #default name install -    print %{#{Project_details.rake_rant} -  Create a rant dependency independent file -  provide filename default name is "install" -    [Warning, will overwrite file of name provided -      provide name or "quit" to exit]: } -    exit if resp =~/^(?:n|quit|exit)$/ -  end -  remove='y' #remove='n' - if remove =~/y/ -   system("rant-import --force --auto #{resp}; -     chmod 755 #{resp} -   ") - else #puts "#{resp} not replaced" - end -end - -task :default_notice do                                    #notice -  Utils.default_notice -end -task :default2 do                                     #secondary -  setup_find_cp_r('bin',Project_details.dir.bin) if File.directory?('bin') -  setup_find_cp_r('lib',Project_details.dir.lib) if File.directory?('lib') -  setup_find_cp_r('conf',Project_details.dir.conf) if File.directory?('conf') -  setup_find_cp_r('data/sisu',Project_details.dir.share) if File.directory?('data/sisu') # -  setup_find_cp_r('data',Project_details.dir.data) if File.directory?('data') -  setup_find_cp_r('data/vim',"#{Project_details.dir.data}/vim") if File.directory?('data/vim') -  setup_find_cp_r('man',Project_details.dir.man) if File.directory?('man') -end -task :setup_bin_ do -  exclude_files=['sisugem'] -  Install.setup_find_create('bin',Project_details.dir.bin,exclude_files) if File.directory?('bin') -end -task :setup_lib_ do -  Install.setup_find_create('lib',Project_details.dir.lib) if File.directory?('lib') -end -task :setup_conf_ do -  Install.setup_find_create('conf',Project_details.dir.conf) if File.directory?('conf') -end -task :setup_share_ do -  Install.setup_find_create('data/sisu',Project_details.dir.share) if File.directory?('data/sisu') -end -task :setup_data_ do -  Install.setup_find_create('data',Project_details.dir.data) if File.directory?('data') -end -task :setup_man_ do -  Install.setup_find_create('man',Project_details.dir.man) if File.directory?('man') -  Install.setup_find_create('man.deb/man',Project_details.dir.man) if File.directory?('man.deb/man') -end -task :setup_vim_ do -  Install.setup_find_create('data/vim',Project_details.dir.vim) if File.directory?('data/vim') -end -task :gemspec_info do -  Gemspecs.info_stable -  Gemspecs.info_unstable -end -task :gemspecs_stable_create_default_version do -  Gemspecs::Current.create_stable -end -task :gemspecs_unstable_create_default_version do -  Gemspecs::Current.create_unstable -end -task :gemspecs_create_default_version do -  Gemspecs::Current.create_stable -  Gemspecs::Current.create_unstable -end -task :gemspecs_stable_create_next_version do -  Gemspecs::Next.create_stable -end -task :gemspecs_unstable_create_next_version do -  Gemspecs::Next.create_unstable -end -task :gemspecs_create_next_version do -  Gemspecs::Next.create_stable -  Gemspecs::Next.create_unstable -end -task :gem_stable_build do -  Gemspecs::Current.build_stable -end -task :gem_unstable_build do -  Gemspecs::Current.build_unstable -end -task :gem_build_ do -  Gemspecs::Current.build_stable -  Gemspecs::Current.build_unstable -end -task :gem_stable_build_next_version do -  Gemspecs::Next.build_stable -end -task :gem_unstable_build_next_version do -  Gemspecs::Next.build_unstable -end -task :gem_build_next_version do -  Gemspecs::Next.build_stable -  Gemspecs::Next.build_unstable -end -task :gem_stable_install do -  Gemspecs::Current.install_stable -end -task :gem_unstable_install do -  Gemspecs::Current.install_unstable -end -task :gem_install_ do -  Gemspecs::Current.install_stable -  Gemspecs::Current.install_unstable -end -task :gem_stable_install_next_version do -  Gemspecs::Next.install_stable -end -task :gem_unstable_install_next_version do -  Gemspecs::Next.install_unstable -end -task :gem_install_next_version do -  Gemspecs::Next.install_stable -  Gemspecs::Next.install_unstable -end -task :changelog_headers do -  puts '---' -  puts Version_info::Update.changelog_header_stable -  puts '---' -  puts Version_info::Update.changelog_header_unstable -end -task :sisu_version do -  puts Version_info::Next.setting_stable -  puts Version_info::Next.setting_unstable -  puts '---' -  puts Version_info::Current.setting_stable[:project] -  puts Version_info::Current.setting_stable[:version] -  puts Version_info::Current.setting_stable[:date] -  puts Version_info::Current.setting_stable[:date_stamp] -  puts '---' -  puts Version_info::Current.setting_unstable[:project] -  puts Version_info::Current.setting_unstable[:version] -  puts Version_info::Current.setting_unstable[:date] -  puts Version_info::Current.setting_unstable[:date_stamp] -end -task :sisu_version_set do -  Version_info::Update.update_stable -  Version_info::Update.update_unstable -end -                                                           #%% post install -                                                           #%% clobber/remove tasks -task :remove_bin do -  rm_r "#{Project_details.dir.bin}/#{Project_details.dir.proj}" if FileTest.file?("#{Project_details.dir.bin}/#{Project_details.dir.proj}") -end -task :remove_lib do -  rm_r "#{Project_details.dir.lib}/#{Project_details.dir.proj}" if FileTest.directory?("#{Project_details.dir.lib}/#{Project_details.dir.proj}") -end -task :remove_conf do -  rm_r "#{Project_details.dir.conf}/#{Project_details.dir.proj}" if FileTest.directory?("#{Project_details.dir.conf}/#{Project_details.dir.proj}") -end -task :remove_man do -  rm_r "#{Project_details.dir.man}/**/#{Project_details.dir.proj}" if FileTest.directory?("#{Project_details.dir.man}/man1/#{Project_details.dir.proj}") -end -task :remove_version do -  rm_r "#{Project_details.dir.bin}/#{Project_details.dir.proj}" if FileTest.file?("#{Project_details.dir.bin}/#{Project_details.dir.proj}") -  rm_r "#{Project_details.dir.lib}/#{Project_details.dir.proj}/#{Project_details.version}" if FileTest.directory?("#{Project_details.dir.lib}/#{Project_details.dir.proj}/#{Project_details.version}") -  rm_r "#{Project_details.dir.conf}/#{Project_details.dir.proj} if FileTest.directory?("#{Project_details.dir.conf}/#{Project_details.dir.proj}") -end -task :remove_package do -  rm_r "#{Project_details.dir.bin}/#{Project_details.dir.proj}" if FileTest.file?("#{Project_details.dir.bin}/#{Project_details.dir.proj}") -  rm_r "#{Project_details.dir.lib}/#{Project_details.dir.proj}" if FileTest.directory?("#{Project_details.dir.lib}/#{Project_details.dir.proj}") -  rm_r "#{Project_details.dir.conf}/#{Project_details.dir.proj}" if FileTest.directory?("#{Project_details.dir.conf}/#{Project_details.dir.proj}") -end -task :note_sources do -  puts <<-WOK - -  SiSU project: -      <http://sisudoc.org> -      <http://www.jus.uio.no/sisu> -  sisu source code is available at: -      <http://sources.sisudoc.org> -      <http://sources.sisudoc.org/gitweb/?p=code/sisu.git;a=summary> -  sisu markup samples are provided/packaged separately as sisu-markup-samples: -      <http://sources.sisudoc.org/gitweb/?p=doc/sisu-markup-samples.git;a=summary> -  WOK -end -task :note_installation do -  puts <<-WOK -  alternative 0: distribution install, rather than this Rakefile -    a distribution install pulls in the many dependencies used by sisu after -    initial processing to generate and store output, significant amongst these are -    XeTeX & databases (sqlite3 and postgresql) - -  alternative 1: gem install, you need to: -    create the gemspec; build the gem (from the gemspec); install the gem -  which can be done with the single command: -    rake gem_create_build_install   # (to build and install sisu v5 & sisu v6, alias gemcbi) -  separate gems are made/installed for sisu v5 & sisu v6 contained in source: -    rake gem_create_build_install_stable   # (to build and install sisu v5, alias gem5cbi) -    rake gem_create_build_install_unstable   # (to build and install sisu v6, alias gem6cbi) -  for individual steps (create, build, install) see rake options, rake -T -  to specify sisu version for sisu installed via gem -    sisu _#{Version_info::Current.setting_stable[:version]}_ --version -    sisu _#{Version_info::Current.setting_unstable[:version]}_ --version -  to uninstall sisu installed via gem -    sudo gem uninstall --verbose sisu -  WOK -end -task :note_developer do -  puts <<-WOK - -  changelogheaders - -  sisuversion -  sisuversionset - -  gemcsn gem5csn gem6csn -  gembn gem5bn gem6bn -  gemin gem5in gem6in -  gembin gem5bin gem6bin -  gemcbin gem5cbin gem6cbin -  WOK -end -                                                           #%% help & system info -task :system_info do -  Project_details.system_info -end -task :system_param_ do -  Project_details.env.each {|c| puts c.inspect } -end -task :gem_env_ do -  Project_details.gem_env -end -task :project_help do -  Help.project_help -end -task :tasks do -  Help.tasks -end | 
