@@ -22,13 +22,13 @@ require 'rake/clean'
22
22
# configuration
23
23
# --------------------------------------------------------------------------- #
24
24
PROJECT = 'Cube.FileSystem.SevenZip'
25
- LIBRARY = '../packages'
25
+ LIB = '../packages'
26
26
NATIVE = '../resources/native'
27
27
BRANCHES = [ 'stable' , 'net35' ]
28
28
FRAMEWORKS = [ 'net45' , 'net35' ]
29
29
PLATFORMS = [ 'Any CPU' , 'x86' , 'x64' ]
30
30
CONFIGS = [ 'Release' , 'Debug' ]
31
- COPIES = [ 'Libraries/Tests' , 'Applications/Ice/Tests' , 'Applications/Ice/Main' ]
31
+ LIB_DEST = [ 'Libraries/Tests' , 'Applications/Ice/Tests' , 'Applications/Ice/Main' ]
32
32
PACKAGES = [ "Libraries/Core/#{ PROJECT } .nuspec" ]
33
33
TESTCASES = { "#{ PROJECT } .Tests" => 'Libraries/Tests' ,
34
34
"#{ PROJECT } .Ice.Tests" => 'Applications/Ice/Tests' }
@@ -70,7 +70,7 @@ desc "Clean objects and build the solution in pre-defined branches and platforms
70
70
task :clean_build => [ :clean ] do
71
71
BRANCHES . product ( [ 'Any CPU' ] ) { |e |
72
72
sh ( "git checkout #{ e [ 0 ] } " )
73
- RakeFileUtils ::rm_rf ( FileList . new ( "#{ LIBRARY } /cube.*" ) )
73
+ RakeFileUtils ::rm_rf ( FileList . new ( "#{ LIB } /cube.*" ) )
74
74
Rake ::Task [ :build ] . reenable
75
75
Rake ::Task [ :build ] . invoke ( e [ 1 ] )
76
76
}
91
91
# --------------------------------------------------------------------------- #
92
92
desc "Build and test projects in the current branch."
93
93
task :test => [ :build ] do
94
+ pf = PLATFORMS [ 0 ]
94
95
fw = %x(git symbolic-ref --short HEAD) . chomp
95
96
fw = 'net45' if ( fw != 'net35' )
96
- bin = [ 'bin' , PLATFORMS [ 0 ] , CONFIGS [ 0 ] , fw ] . join ( '/' )
97
-
97
+ bin = [ 'bin' , pf , CONFIGS [ 0 ] , fw ] . join ( '/' )
98
98
Rake ::Task [ :copy ] . reenable
99
- Rake ::Task [ :copy ] . invoke ( fw )
100
-
101
- TESTCASES . each { |proj , root |
102
- dir = "#{ root } /#{ bin } "
103
- sh ( "#{ TEST } \" #{ dir } /#{ proj } .dll\" --work=\" #{ dir } \" " )
104
- }
99
+ Rake ::Task [ :copy ] . invoke ( pf , fw )
100
+ TESTCASES . each { |p , d | sh ( %(#{ TEST } "#{ d } /#{ bin } /#{ p } .dll" --work="#{ d } /#{ bin } ") ) }
105
101
end
106
102
107
103
# --------------------------------------------------------------------------- #
108
104
# copy
109
105
# --------------------------------------------------------------------------- #
110
106
desc "Copy resources to the bin directories."
111
- task :copy , [ :framework ] do |_ , e |
112
- fw = ( e . framework != nil ) ? [ e . framework ] : FRAMEWORKS
113
- fw . product ( PLATFORMS , CONFIGS ) { |set |
114
- pf = ( set [ 1 ] == 'Any CPU' ) ? 'x64' : set [ 1 ]
115
- bin = [ 'bin' , set [ 1 ] , set [ 2 ] , set [ 0 ] ] . join ( '/' )
116
- COPIES . each { |root |
117
- src = Dir ::glob ( "#{ NATIVE } /#{ pf } /7z/7z.*" )
107
+ task :copy , [ :platform , :framework ] do |_ , e |
108
+ v0 = ( e . platform != nil ) ? [ e . platform ] : PLATFORMS
109
+ v1 = ( e . framework != nil ) ? [ e . framework ] : FRAMEWORKS
110
+
111
+ v0 . product ( CONFIGS , v1 ) { |set |
112
+ pf = ( set [ 0 ] == 'Any CPU' ) ? 'x64' : set [ 0 ]
113
+ bin = [ 'bin' , set [ 0 ] , set [ 1 ] , set [ 2 ] ] . join ( '/' )
114
+
115
+ LIB_DEST . each { |root |
116
+ src = FileList . new ( "#{ NATIVE } /#{ pf } /7z/7z.*" )
118
117
dest = "#{ root } /#{ bin } "
119
118
RakeFileUtils ::mkdir_p ( dest )
120
119
RakeFileUtils ::cp_r ( src , dest )
0 commit comments