specs/stx-jv.rbspec
author Jan Vrany <jan.vrany@fit.cvut.cz>
Mon, 14 Nov 2016 23:00:13 +0000
branchfeature-block-in-context
changeset 80 c213d491e876
parent 70 8e73f248c6d4
child 92 09cb62fedda3
permissions -rw-r--r--
Added feature branch "feature-block-in-context"
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     1
load "jv-branch.deps.rake"
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
     2
11
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
     3
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
     4
# A helper function to download and unpack pre-built stc and librun
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
     5
# for those who are not lucky enough to have an access to sources
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
     6
def download_blob_matching(pattern, directory)
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
     7
  plat = nil
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
     8
  blob = nil
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
     9
  sha256 = nil
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    10
  if win32? then        
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    11
      plat = 'Windows'
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    12
  elsif linux?        
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    13
    plat = 'Linux'
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    14
  else        
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    15
    error_unsupported_platform()
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    16
  end
29
cd2e05aff563 Switch URL of prebuilt stc and librun archives to 'production' job 'stx_jv'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 28
diff changeset
    17
  build = Jenkins::Build.new(%Q{https://swing.fit.cvut.cz/jenkins/job/stx_jv/ARCH=#{ARCH},PLATFORM=#{plat}N/lastSuccessfulBuild})
11
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    18
  build.artifacts.each do | artifact |
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    19
    if pattern =~ artifact.name then
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    20
      if artifact.name.end_with? '.sha256' then
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    21
        sha256 = artifact
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    22
      else
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    23
        blob = artifact
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    24
      end
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    25
    end
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    26
  end
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    27
  if not blob then
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    28
    error "No artifact matching given pattern found"
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    29
  end
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    30
  puts "Downloading binary component #{blob.name}"
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    31
  blob.download_to(directory)
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    32
  if sha256 then
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    33
    sha256.download_to(directory)
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    34
  end
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    35
  unzip directory / blob.name, remove: true
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    36
  rm_f directory / sha256.name
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    37
end
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    38
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    39
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    40
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    41
project :'stx:jv-branch-core' do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    42
  # Core Smalltalk/X - does contain only standard libraries,
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    43
  # and development tools. Does not contain any other 'features'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    44
  # like XML suite, Java support. Usable as a basis for standalone
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    45
  # applications that needs some JV-branch features.
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    46
  import :'stx:baseline'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    47
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    48
  # FORKED libraries
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    49
  # ======================================================================
80
c213d491e876 Added feature branch "feature-block-in-context"
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 70
diff changeset
    50
  package "stx:libbasic", :repository => :'bitbucket:janvrany', :branch => 'jv', :revision => 'feature-block-in-context'
32
0872e75d5c5c Use BitBucket repositories instead (mirrors) on swing.fit.cvut.cz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 31
diff changeset
    51
  package "stx:libbasic2", :repository => :'bitbucket:janvrany', :branch => 'jv'
0872e75d5c5c Use BitBucket repositories instead (mirrors) on swing.fit.cvut.cz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 31
diff changeset
    52
  package "stx:libbasic3", :repository => :'bitbucket:janvrany', :branch => 'jv'
0872e75d5c5c Use BitBucket repositories instead (mirrors) on swing.fit.cvut.cz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 31
diff changeset
    53
  package "stx:libcomp", :repository => :'bitbucket:janvrany', :branch => 'jv'
0872e75d5c5c Use BitBucket repositories instead (mirrors) on swing.fit.cvut.cz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 31
diff changeset
    54
  package "stx:libtool", :repository => :'bitbucket:janvrany', :branch => 'jv'
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    55
 
32
0872e75d5c5c Use BitBucket repositories instead (mirrors) on swing.fit.cvut.cz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 31
diff changeset
    56
  package "stx:libview", :repository => :'bitbucket:janvrany', :branch => 'jv'
0872e75d5c5c Use BitBucket repositories instead (mirrors) on swing.fit.cvut.cz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 31
diff changeset
    57
  package "stx:libview2", :repository => :'bitbucket:janvrany', :branch => 'jv'
0872e75d5c5c Use BitBucket repositories instead (mirrors) on swing.fit.cvut.cz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 31
diff changeset
    58
  package "stx:libwidg", :repository => :'bitbucket:janvrany', :branch => 'jv'
0872e75d5c5c Use BitBucket repositories instead (mirrors) on swing.fit.cvut.cz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 31
diff changeset
    59
  package "stx:libwidg2", :repository => :'bitbucket:janvrany', :branch => 'jv'
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    60
47
5d4271721e2f Use (forked) SUnit from branch 'jv'
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 37
diff changeset
    61
  package "stx:goodies/sunit", :repository => :'bitbucket:janvrany', :branch => 'jv'
32
0872e75d5c5c Use BitBucket repositories instead (mirrors) on swing.fit.cvut.cz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 31
diff changeset
    62
  package "stx:goodies/monticello", :repository => :'bitbucket:janvrany', :branch => 'jv'
0872e75d5c5c Use BitBucket repositories instead (mirrors) on swing.fit.cvut.cz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 31
diff changeset
    63
  package "stx:goodies/refactoryBrowser", :repository => :'bitbucket:janvrany', :branch => 'jv'
0872e75d5c5c Use BitBucket repositories instead (mirrors) on swing.fit.cvut.cz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 31
diff changeset
    64
  package "stx:libsvn", :repository => :'bitbucket:janvrany', :branch => 'jv'
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    65
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    66
  # Some more development tools to build and preload
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    67
  # ======================================================================
10
cb3e0e3ca28f Fixed repository specifications to allow anonymous checkout.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
    68
  package "stx:goodies/xml/vw", :repository => :'exept:public'
55
a5eedad6187d Project `stx:jv-branch`: Added package "stx:goodies/xml/stx"
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 54
diff changeset
    69
  package "stx:goodies/xml/stx", :repository => :'exept:public'
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    70
  
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    71
  # SmallSense
10
cb3e0e3ca28f Fixed repository specifications to allow anonymous checkout.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
    72
  package "stx:goodies/regex", :repository => :'exept:public'
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    73
  package "stx:goodies/smallsense", :repository => :'bitbucket:janvrany'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    74
  package "stx:goodies/smallsense/refactoring_custom"
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    75
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    76
  
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    77
  tasks do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    78
    # Build and install documentation for stx:libjava and stx:libscm/mercurial
14
a06f34a18af0 Defer build of documentation for STX:LIBJAVA and Mercurial to `install` step
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 13
diff changeset
    79
    task "install:pre" do 
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    80
      chdir BUILD_DIR / 'stx' / 'libjava' do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    81
        make "doc-install"
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    82
      end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    83
      chdir BUILD_DIR / 'stx' / 'libscm' / 'mercurial' do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    84
        make "doc-install"
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    85
      end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    86
    end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    87
7
b6fe3a90f6e0 Added `zip()` & `unzip()` extensions to easily create / extract archives from build scripts.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 4
diff changeset
    88
    redefine BUILD_DIR / 'stx' / 'stc' => BUILD_DIR do
70
8e73f248c6d4 Changed logic used to check whether to checkout or download stc and librun:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    89
      if Rake::Stx::Configuration::Repository::find(:'swing:private:hg') then
80
c213d491e876 Added feature branch "feature-block-in-context"
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 70
diff changeset
    90
        checkout :'swing:private:hg', 'stx/stc', :branch => 'jv', :revision => 'feature-block-in-context'
7
b6fe3a90f6e0 Added `zip()` & `unzip()` extensions to easily create / extract archives from build scripts.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 4
diff changeset
    91
      else
11
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
    92
        download_blob_matching(/prebuilt-stc/, BUILD_DIR / 'stx')
7
b6fe3a90f6e0 Added `zip()` & `unzip()` extensions to easily create / extract archives from build scripts.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 4
diff changeset
    93
      end
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    94
    end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
    95
7
b6fe3a90f6e0 Added `zip()` & `unzip()` extensions to easily create / extract archives from build scripts.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 4
diff changeset
    96
    redefine BUILD_DIR / 'stx' / 'librun' => BUILD_DIR do      
70
8e73f248c6d4 Changed logic used to check whether to checkout or download stc and librun:
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 67
diff changeset
    97
      if Rake::Stx::Configuration::Repository::find(:'swing:private:hg') then
80
c213d491e876 Added feature branch "feature-block-in-context"
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 70
diff changeset
    98
        checkout :'swing:private:hg', 'stx/librun', :branch => 'jv', :revision => 'feature-block-in-context'
7
b6fe3a90f6e0 Added `zip()` & `unzip()` extensions to easily create / extract archives from build scripts.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 4
diff changeset
    99
      else        
11
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
   100
        download_blob_matching(/prebuilt-librun/, BUILD_DIR / 'stx')
7
b6fe3a90f6e0 Added `zip()` & `unzip()` extensions to easily create / extract archives from build scripts.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 4
diff changeset
   101
      end
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   102
    end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   103
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   104
    # Try execute run the VM if it starts up
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   105
    task :'compile:post' do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   106
      if PROJECT == 'stx:jv-branch' then  
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   107
        chdir BUILD_DIR / 'stx' / 'projects' / 'smalltalk' do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   108
          if win32?
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   109
            cmd = "smalltalk.bat -I --quick --eval \"Stdout nextPutLine:'OKay, VM runs'. Smalltalk exit: 0\""
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   110
          else
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   111
            cmd = "./smalltalk -I --quick --eval \"Stdout nextPutLine:'OKay, VM runs'. Smalltalk exit: 0\""
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   112
          end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   113
          if not system cmd
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   114
            raise Exception.new("Cannot run smalltalk!")
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   115
          end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   116
        end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   117
      end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   118
    end
37
61064ee32813 Cleanup: removed workaround to patch stx/projects/smalltalk/bc.mak for MINGW
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 32
diff changeset
   119
        
26
fc755e1f25b4 Nuked package stx:libprofiler
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 19
diff changeset
   120
  if win32_wine?
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   121
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   122
    task :'stx:projects/smalltalk:pre' do   
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   123
      chdir (BUILD_DIR / 'stx' / 'projects' / 'smalltalk') do   
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   124
        make "buildDate.h"    
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   125
      end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   126
    end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   127
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   128
    task :'stx:goodies/xmlsuite/xmlreaderimpl:pre' do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   129
      chdir (BUILD_DIR / 'stx' / 'goodies' / 'xmlsuite' / 'xmlreaderimpl') do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   130
        [
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   131
          'support' / 'expat-2.0.1' / 'bcb5' / 'release' /'obj' / 'xmlwf',
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   132
          'support' / 'expat-2.0.1' / 'bcb5' / 'release' /'obj' / 'libexpat',
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   133
          'support' / 'expat-2.0.1' / 'bcb5' / 'release' /'obj' / 'libexpatw',
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   134
          'support' / 'expat-2.0.1' / 'bcb5' / 'release' /'obj' / 'libexpat_static',
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   135
          'support' / 'expat-2.0.1' / 'bcb5' / 'release' /'obj' / 'libexpatw_static',
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   136
          'support' / 'expat-2.0.1' / 'bcb5' / 'release' /'obj' / 'examples'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   137
        ].each do | f |
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   138
          if not File.exists?(f)
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   139
            mkdir_p f
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   140
          end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   141
        end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   142
      end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   143
    end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   144
    end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   145
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   146
    # Hack for badly-named files in libtool
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   147
    task :'stx:libtool:post' do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   148
      chdir (BUILD_DIR / 'stx' / 'libtool') do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   149
  # Windows does not support symlinks, copy the file
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   150
  if win32?
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   151
    if not File.exist? 'Tools_BrowserList.STH'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   152
      cp 'Tools__BrowserList.STH', 'Tools_BrowserList.STH'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   153
    end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   154
    if not File.exist? 'Tools_NavigatorModel.STH'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   155
      cp 'Tools__NavigatorModel.STH', 'Tools_NavigatorModel.STH'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   156
    end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   157
    if not File.exist? 'Tools_NavigationState.STH'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   158
      cp 'Tools__NavigationState.STH', 'Tools_NavigationState.STH'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   159
    end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   160
  else
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   161
    if not File.exist? 'Tools_BrowserList.H'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   162
      ln_s 'Tools__BrowserList.H', 'Tools_BrowserList.H'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   163
    end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   164
    if not File.exist? 'Tools_NavigatorModel.H'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   165
      ln_s 'Tools__NavigatorModel.H', 'Tools_NavigatorModel.H'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   166
    end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   167
    if not File.exist? 'Tools_NavigationState.H'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   168
      ln_s 'Tools__NavigationState.H', 'Tools_NavigationState.H'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   169
    end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   170
  end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   171
      end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   172
    end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   173
  end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   174
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   175
end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   176
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   177
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   178
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   179
project :'stx:jv-branch' do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   180
  # Standard Smalltalk/X IDE with some nice libraries preloaded
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   181
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   182
  import :'stx:jv-branch-core'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   183
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   184
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   185
  app_name "smalltalkx-jv-branch"
13
ba905210e6bb Make more suitable guess of actual version string
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   186
  app_version "6.2.5_#{BUILD_ID}"
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   187
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   188
  # Forked PetitParser
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   189
  package "stx:goodies/petitparser", :repository => :'bitbucket:janvrany', :link => false
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   190
  package "stx:goodies/petitparser/tests", :link => false
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   191
  package "stx:goodies/petitparser/analyzer",  :link => false
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   192
  package "stx:goodies/petitparser/analyzer/tests",  :link => false
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   193
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   194
  # Monticello
10
cb3e0e3ca28f Fixed repository specifications to allow anonymous checkout.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
   195
  package "stx:libcompat", :repository => :'exept:public'
cb3e0e3ca28f Fixed repository specifications to allow anonymous checkout.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
   196
  package "stx:goodies/communication", :repository => :'exept:public'
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   197
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   198
  # Java support
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   199
  package "stx:libjava", :repository => :'bitbucket:janvrany'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   200
  package "stx:libjava/tools"
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   201
  package "stx:libjava/experiments"
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   202
  #package "stx:libjava/examples" :link => false
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   203
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   204
  # Smalltalk/X IDE
32
0872e75d5c5c Use BitBucket repositories instead (mirrors) on swing.fit.cvut.cz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 31
diff changeset
   205
  application 'stx:projects/smalltalk', :repository => :'bitbucket:janvrany', :branch => 'jv'
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   206
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   207
  package 'stx:libscm', :repository => :'bitbucket:janvrany'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   208
  package 'stx:libscm/common', :repository => :'bitbucket:janvrany'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   209
  package 'stx:libscm/mercurial', :repository => :'bitbucket:janvrany'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   210
  package 'stx:libscm/mercurial/monticello', :repository => :'bitbucket:janvrany'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   211
  package 'stx:goodies/ring', :repository => :'bitbucket:janvrany', :link => false
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   212
  package 'stx:goodies/libcairo', :repository => :'bitbucket:janvrany', :link => false
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   213
  package 'stx:goodies/cypress', :repository => :'bitbucket:janvrany'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   214
  package "stx:goodies/xmlsuite", :repository => :'bitbucket:janvrany'  
10
cb3e0e3ca28f Fixed repository specifications to allow anonymous checkout.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 8
diff changeset
   215
  package "stx:goodies/loggia", :repository => :'exept:public'
32
0872e75d5c5c Use BitBucket repositories instead (mirrors) on swing.fit.cvut.cz
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 31
diff changeset
   216
  package 'stx:goodies/smaCC',:repository => :'bitbucket:janvrany'
80
c213d491e876 Added feature branch "feature-block-in-context"
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 70
diff changeset
   217
  package 'stx:goodies/regression',:repository => :'bitbucket:janvrany', :branch => 'jv', :revision => 'feature-block-in-context', :link => false
53
47340a2b7af3 Oops, fixed path to `stx:goodies/builder` package (uses JV's fork)
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 50
diff changeset
   218
  package "stx:goodies/builder", :repository => :'bitbucket:janvrany',:branch => 'jv', :link => false
67
75b6eb7b781c Added support for canonical, upstream and staging repositores.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 64
diff changeset
   219
  package "stx:goodies/builder/reports"
49
53414f4122e3 Project stx:jv-branch: make `rake test` to run tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 47
diff changeset
   220
53414f4122e3 Project stx:jv-branch: make `rake test` to run tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 47
diff changeset
   221
  # Define a "default" test suite, i.e., a set of tests that are run when
53414f4122e3 Project stx:jv-branch: make `rake test` to run tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 47
diff changeset
   222
  # user does `rake test`. 
63
0754faf5dad0 Project "stx:jv-branch": define default test suite for everyone but SWING Jenkins.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 54
diff changeset
   223
  # The test suite is defined conditionally only when not running under SWING Jenkins. 
49
53414f4122e3 Project stx:jv-branch: make `rake test` to run tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 47
diff changeset
   224
  # Though this is hacky, I'd like a Jenkins job to build exactly the same 
53414f4122e3 Project stx:jv-branch: make `rake test` to run tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 47
diff changeset
   225
  # project as user to make sure they're in sync. However, under Jenkins I don't
53414f4122e3 Project stx:jv-branch: make `rake test` to run tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 47
diff changeset
   226
  # want them to run - for running tests we have other jobs which run them under
53414f4122e3 Project stx:jv-branch: make `rake test` to run tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 47
diff changeset
   227
  # different configurations. 
63
0754faf5dad0 Project "stx:jv-branch": define default test suite for everyone but SWING Jenkins.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 54
diff changeset
   228
  #
0754faf5dad0 Project "stx:jv-branch": define default test suite for everyone but SWING Jenkins.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 54
diff changeset
   229
  # This hack will go as soon as SWING Jenkins will switch to pipeline
0754faf5dad0 Project "stx:jv-branch": define default test suite for everyone but SWING Jenkins.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 54
diff changeset
   230
  #
0754faf5dad0 Project "stx:jv-branch": define default test suite for everyone but SWING Jenkins.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 54
diff changeset
   231
  if (ENV['USER'] != 'builder') and (ENV['USERNAME'] != 'builder') then
49
53414f4122e3 Project stx:jv-branch: make `rake test` to run tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 47
diff changeset
   232
    package 'stx:libview/tests', :test => true;
53414f4122e3 Project stx:jv-branch: make `rake test` to run tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 47
diff changeset
   233
    package 'stx:libjava', :test => true;
53414f4122e3 Project stx:jv-branch: make `rake test` to run tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 47
diff changeset
   234
    package 'stx:libjava/tools', :test => true;
53414f4122e3 Project stx:jv-branch: make `rake test` to run tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 47
diff changeset
   235
    package 'stx:goodies/regression', :test => true;
53414f4122e3 Project stx:jv-branch: make `rake test` to run tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 47
diff changeset
   236
    package 'stx:libscm/mercurial', :test => true;
53414f4122e3 Project stx:jv-branch: make `rake test` to run tests
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 47
diff changeset
   237
  end
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   238
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   239
  tasks do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   240
    task "stx:projects/smalltalk" => "stx:libwebkit"
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   241
    task "stx:projects/smalltalk" => "stx:libjava"
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   242
    task "stx:projects/smalltalk" => "stx:libjava/tools"
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   243
    task "stx:projects/smalltalk" => "stx:libjava/experiments"
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   244
    #task "stx:libjava/examples" => "stx:libjava"
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   245
    #task "stx:projects/smalltalk" => "stx:libjava/examples"
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   246
    task 'stx:projects/smalltalk' => 'stx:goodies/loggia'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   247
    task 'stx:projects/smalltalk' => 'stx:goodies/monticello'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   248
    task 'stx:projects/smalltalk' => 'stx:goodies/cypress'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   249
    task 'stx:projects/smalltalk' => 'stx:libscm/mercurial'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   250
    task 'stx:projects/smalltalk' => 'stx:libscm/mercurial/monticello'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   251
    task 'stx:projects/smalltalk' => 'stx:goodies/builder/reports'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   252
    task 'stx:projects/smalltalk' => 'stx:goodies/ring'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   253
    task 'stx:projects/smalltalk' => 'stx:goodies/libcairo'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   254
    task "stx:goodies/builder/reports" => 'stx:libbasic'
54
a169d82bb0b0 Project stx:jv-branch: oops, checkout CharacterEncoderCodeGenerator into stx:goodies
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   255
a169d82bb0b0 Project stx:jv-branch: oops, checkout CharacterEncoderCodeGenerator into stx:goodies
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   256
    # We need to checkout CharacterEncoderCodeGenerator from stx:goodies
a169d82bb0b0 Project stx:jv-branch: oops, checkout CharacterEncoderCodeGenerator into stx:goodies
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   257
    # because RegressionTests::CharacterTests>>test01_CaseTesting needs that. 
a169d82bb0b0 Project stx:jv-branch: oops, checkout CharacterEncoderCodeGenerator into stx:goodies
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   258
    task 'checkout:post' => BUILD_DIR / 'goodies' / 'CharacterEncoderCodeGenerator.st'
a169d82bb0b0 Project stx:jv-branch: oops, checkout CharacterEncoderCodeGenerator into stx:goodies
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   259
    file BUILD_DIR / 'goodies' / 'CharacterEncoderCodeGenerator.st' do
a169d82bb0b0 Project stx:jv-branch: oops, checkout CharacterEncoderCodeGenerator into stx:goodies
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   260
        checkout(:'exept:public', 'stx/goodies/CharacterEncoderCodeGenerator.st')
a169d82bb0b0 Project stx:jv-branch: oops, checkout CharacterEncoderCodeGenerator into stx:goodies
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 53
diff changeset
   261
    end
4
48ec8a59ced4 Renamed `dist` target to `install`. Added new target `artifacts` (mainly) for Jenkins builds.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   262
  
48ec8a59ced4 Renamed `dist` target to `install`. Added new target `artifacts` (mainly) for Jenkins builds.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   263
    task :'install:main' => :'dist:jv-branch'
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   264
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   265
    task :'dist:jv:pre' => :'stx:jv-branch:extractver'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   266
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   267
    if win32?     	
4
48ec8a59ced4 Renamed `dist` target to `install`. Added new target `artifacts` (mainly) for Jenkins builds.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   268
      app_name    = project.app_name      || (raise Exception.new("No app_name property specified"))
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   269
	    app_version = project.app_version   || (raise Exception.new("No app_version property specified"))
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   270
	    version = app_version.split('_').first
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   271
4
48ec8a59ced4 Renamed `dist` target to `install`. Added new target `artifacts` (mainly) for Jenkins builds.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   272
	    install_dir = ARTIFACTS_DIR / BUILD_NAME
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   273
	    bin_dir = install_dir / 'bin'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   274
13
ba905210e6bb Make more suitable guess of actual version string
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   275
	    
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   276
    	cairo_dlls = nil
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   277
    	if ARCH == 'i386'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   278
	      cairo_dlls =  [ 
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   279
	      	'libcairo-2.dll' ,
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   280
					'libfontconfig-1.dll' ,
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   281
					'libfreetype-6.dll' ,
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   282
					'liblzma-5.dll' ,
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   283
					'libpixman-1-0.dll' ,
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   284
					'libpng15-15.dll' ,
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   285
					'libxml2-2.dll' ,
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   286
					'zlib1.dll'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   287
					]
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   288
			else
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   289
				cairo_dlls =  [ 
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   290
	      	'fontconfig.dll' ,
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   291
	      	'iconv.dll' ,
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   292
	      	'libcairo-2.dll' ,
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   293
	      	'libpng16.dll' ,
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   294
	      	'libxml2.dll' ,
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   295
	      	'pixman-1.dll' ,
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   296
	      	'zlib1.dll'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   297
	      ]
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   298
			end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   299
13
ba905210e6bb Make more suitable guess of actual version string
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   300
    	task :'dist:jv:post' => [ :'stx:jv-branch:extractver' , :'dist:jv:variables' ]
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   301
    	cairo_dlls.each do | dll |
13
ba905210e6bb Make more suitable guess of actual version string
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 11
diff changeset
   302
    		task :'dist:jv:post' => [ bin_dir / dll ]
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   303
				file bin_dir / dll do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   304
					mkdir_p bin_dir
19
f98626b9ca2d Fixed path to Cairo DLLs for i386 build.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 16
diff changeset
   305
					cp BUILD_DIR / 'stx' / 'goodies' / 'libcairo' / 'support' / 'win32' / (ARCH == 'i386' ? 'i586' : ARCH) / dll , bin_dir / dll
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   306
				end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   307
    	end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   308
    end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   309
4
48ec8a59ced4 Renamed `dist` target to `install`. Added new target `artifacts` (mainly) for Jenkins builds.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   310
    task :'dist:jv-branch' => [ :'dist:jv:all',                                                          
48ec8a59ced4 Renamed `dist` target to `install`. Added new target `artifacts` (mainly) for Jenkins builds.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   311
                                :'dist:jv:doc' ]
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   312
4
48ec8a59ced4 Renamed `dist` target to `install`. Added new target `artifacts` (mainly) for Jenkins builds.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   313
    task :'install:main' => [:'stx:jv-branch:extractver']
48ec8a59ced4 Renamed `dist` target to `install`. Added new target `artifacts` (mainly) for Jenkins builds.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   314
    task :'artifacts:main' => [:'stx:jv-branch:extractver']
8
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   315
    task :'artifacts:post' => [:'stx:jv-branch:extractver'] do  
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   316
      # Just to be sure, refuse to create stc and librun archives
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   317
      # if the directory contain sources. This is to prevent accidental
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   318
      # leak of non-disclosed sources. Better safe than sorry!
11
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
   319
      if core_developer? || (File.exist? BUILD_DIR / 'stx' / 'stc' / '.hg') || (File.exist? BUILD_DIR / 'stx' / 'stc' / 'CVS') then
8
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   320
        puts "WARNING: NOT CREATING stc archive since directory contains sources!!!"
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   321
      else
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   322
        # Be paranoid, do cleanup here. Should have been done, but who knows...
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   323
        cleanup_stc() 
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   324
    	  zip BUILD_DIR / 'stx' / 'stc' , archive: ARTIFACTS_DIR / "#{project.app_name}-#{project.app_version}_#{ARCH}-#{win32? ? 'win32' : RbConfig::CONFIG['host_os']}_prebuilt-stc"
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   325
      end
11
f7dc950d8df8 Automatically download pre-built librun and stc when sources are not available.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 10
diff changeset
   326
      if core_developer? || (File.exist? BUILD_DIR / 'stx' / 'librun' / '.hg') || (File.exist? BUILD_DIR / 'stx' / 'librun' / 'CVS') then
8
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   327
        puts  "WARNING: NOT CREATING librun archive since directory contains sources!!!"
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   328
      else
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   329
        # Be paranoid, do cleanup here. Should have been done, but who knows...
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   330
        cleanup_librun() 
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   331
    	  zip BUILD_DIR / 'stx' / 'librun' , archive: ARTIFACTS_DIR / "#{project.app_name}-#{project.app_version}_#{ARCH}-#{win32? ? 'win32' : RbConfig::CONFIG['host_os']}_prebuilt-librun"
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   332
      end
659ebd541dd2 Create extra archives with pre-build stc and librun
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 7
diff changeset
   333
    end
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   334
  end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   335
end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   336
4
48ec8a59ced4 Renamed `dist` target to `install`. Added new target `artifacts` (mainly) for Jenkins builds.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   337
task :'stx:jv-branch:extractver' => :'setup' do
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   338
  ver = nil
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   339
  if win32?
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   340
    stx_exe = 'stx.com'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   341
  else
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   342
    stx_exe = './stx'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   343
  end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   344
  chdir BUILD_DIR / 'stx' / 'projects' / 'smalltalk' do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   345
    ver = %x(#{stx_exe} --eval "Stdout nextPutAll: Smalltalk versionString")
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   346
    if $?.exitstatus != 0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   347
      raise Exception.new("Failed extract version from stx")
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   348
    end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   349
  end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   350
  ver = (ver.split(".")[0..2]).join(".")
7
b6fe3a90f6e0 Added `zip()` & `unzip()` extensions to easily create / extract archives from build scripts.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 4
diff changeset
   351
  project.app_version "#{ver}_#{BUILD_ID}"
4
48ec8a59ced4 Renamed `dist` target to `install`. Added new target `artifacts` (mainly) for Jenkins builds.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   352
  # This is really ugly. We need to clean that up...
48ec8a59ced4 Renamed `dist` target to `install`. Added new target `artifacts` (mainly) for Jenkins builds.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   353
  BUILD_NAME.replace "#{project.app_name}-#{project.app_version}_#{ARCH}-#{win32? ? 'win32' : RbConfig::CONFIG['host_os']}"
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   354
end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   355
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   356
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   357
project :'stx:jv-branch:for-reports-only' do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   358
  import :'stx:jv-branch'
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   359
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   360
  tasks do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   361
    task :'stx:projects/smalltalk:pre' do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   362
      chdir BUILD_DIR / 'stx' / 'projects' / 'smalltalk' do
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   363
         if win32?
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   364
           system "bmake clobber"
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   365
         else
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   366
           system "make clobber"
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   367
         end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   368
      end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   369
    end
4
48ec8a59ced4 Renamed `dist` target to `install`. Added new target `artifacts` (mainly) for Jenkins builds.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   370
    
48ec8a59ced4 Renamed `dist` target to `install`. Added new target `artifacts` (mainly) for Jenkins builds.
Jan Vrany <jan.vrany@fit.cvut.cz>
parents: 0
diff changeset
   371
    clear :'dist:install' => :'dist:jv-branch'
0
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   372
  end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   373
end
f46260ba26b1 Initial shot of "new" rake-based builder
Jan Vrany <jan.vrany@fit.cvut.cz>
parents:
diff changeset
   374