Mercurial > projects > dwt2
annotate rakefile @ 20:dccb717aa902
Remove more tango imports
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Wed, 18 Mar 2009 12:10:17 +0100 |
parents | dbfb303e8fb0 |
children | 9b96950f2c3c |
rev | line source |
---|---|
1 | 1 # |
2 # RSP : Create a response file for the compiler, which lists all files from the packages | |
3 # Compile and create Headers | |
4 # Move objects to unique names | |
5 # | |
6 require 'find' | |
7 require 'fileutils' | |
8 | |
8 | 9 #DMD="c:\\project\\dmd-2.026\\dmd\\windows\\bin\\dmd.exe" |
10 DMD="dmd" | |
1 | 11 LOCALOBJDIR="obj" |
12 OBJDIR="obj" | |
13 DIMPDIR="imp" | |
14 RSPNAME="rsp" | |
12
bc29606a740c
Added dwt-addons in original directory structure of eclipse.org
Frank Benoit <benoit@tionex.de>
parents:
8
diff
changeset
|
15 ALL_RESDIRS= [ "java/res", "org.eclipse.swt.win32.win32.x86/res", "res" ] |
1 | 16 |
17 class String | |
18 def to_path | |
19 self.gsub( '/', '\\' ); | |
20 end | |
21 end | |
22 | |
16
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
23 def buildTree( basedir, srcdir, resdir, dcargs="" ) |
20 | 24 puts "Building #{basedir}/#{srcdir}" |
1 | 25 |
26 objdir_abs = File.expand_path( OBJDIR ) | |
27 dimpdir_abs = File.expand_path( DIMPDIR ) | |
28 resdir_abs = File.expand_path( File.join( basedir, resdir )) | |
29 srcdir_abs = File.expand_path( File.join( basedir, srcdir )) | |
30 rspfile_abs = File.expand_path( RSPNAME ) | |
31 | |
32 FileUtils.mkdir_p dimpdir_abs | |
33 FileUtils.mkdir_p objdir_abs | |
34 | |
35 rsp = File.new( rspfile_abs, "w+" ) | |
36 rsp.puts "-H" | |
37 rsp.puts "-I#{srcdir_abs.to_path}" | |
38 rsp.puts "-I#{dimpdir_abs.to_path}" | |
39 rsp.puts "-J#{resdir_abs.to_path}" | |
16
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
40 if dcargs.size > 0 then |
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
41 rsp.puts dcargs |
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
42 end |
3
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
43 ALL_RESDIRS.each do | dir | |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
44 rsp.puts "-J#{File.expand_path(dir).to_path}" |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
45 end |
1 | 46 rsp.puts "-c" |
47 rsp.puts "-op" | |
48 Find.find( srcdir_abs ) do |path| | |
49 if path =~ /\.d$/ then | |
50 rsp.puts path.to_path | |
51 end | |
52 end | |
53 rsp.close | |
54 | |
55 Dir.chdir(basedir) do | |
56 sh "#{DMD} @#{rspfile_abs.to_path}" do |ok, res| | |
3
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
57 |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
58 if !ok then |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
59 Find.find( srcdir_abs ) do |path| |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
60 if FileTest.file?(path) && path =~ /\.di$/ then |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
61 FileUtils.rm path |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
62 end |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
63 end |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
64 |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
65 raise "compile error" |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
66 end |
1 | 67 end |
68 end | |
69 | |
70 Find.find( srcdir_abs ) do |path| | |
71 if FileTest.file?(path) && path =~ /\.di$/ then | |
72 trgfile = File.join( dimpdir_abs, path[ srcdir_abs.length+1 .. -1 ]) | |
73 FileUtils.mkdir_p File.dirname(trgfile) | |
74 FileUtils.mv path, trgfile | |
75 end | |
76 end | |
77 | |
78 srcdirparts = split_all( srcdir_abs ).length | |
79 Find.find( srcdir_abs ) do |path| | |
80 if FileTest.file?(path) && path =~ /\.o(bj)?$/ then | |
81 trgfile = split_all( path )[ srcdirparts .. -1 ].join( "-" ) | |
82 FileUtils.mv path, File.join( objdir_abs, trgfile ) | |
83 end | |
84 end | |
85 | |
86 end | |
87 | |
3
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
88 desc "Clean" |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
89 task :clean do |
20 | 90 puts "Cleaning" |
3
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
91 FileUtils.rm_rf DIMPDIR |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
92 FileUtils.rm_rf OBJDIR |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
93 FileUtils.rm_rf RSPNAME |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
94 end |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
95 |
1 | 96 desc "Build Java" |
97 task :java do | |
98 buildTree( "java", "src", "res" ) | |
99 end | |
100 | |
101 desc "Build SWT" | |
102 task :swt do | |
103 buildTree( "org.eclipse.swt.win32.win32.x86", "src", "res" ) | |
104 end | |
105 | |
20 | 106 desc "Build Equinox" |
107 task :equinox do | |
16
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
108 buildTree( "org.eclipse.osgi", "src", "res" ) |
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
109 buildTree( "org.eclipse.osgi", "supplement/src", "res" ) |
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
110 buildTree( "org.eclipse.equinox.common", "src", "res" ) |
20 | 111 end |
112 | |
113 desc "Build Eclipse Core" | |
114 task :core do | |
16
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
115 buildTree( "org.eclipse.core.runtime", "src", "res" ) |
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
116 buildTree( "org.eclipse.core.commands", "src", "res" ) |
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
117 buildTree( "org.eclipse.core.jobs", "src", "res" ) |
20 | 118 end |
119 | |
120 desc "Build JFace" | |
121 task :jface do | |
16
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
122 buildTree( "org.eclipse.jface", "src", "res" ) |
12
bc29606a740c
Added dwt-addons in original directory structure of eclipse.org
Frank Benoit <benoit@tionex.de>
parents:
8
diff
changeset
|
123 buildTree( "org.eclipse.text", "src", "res" ) |
16
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
124 buildTree( "org.eclipse.jface.text", "projection", "res", "-Isrc" ) |
12
bc29606a740c
Added dwt-addons in original directory structure of eclipse.org
Frank Benoit <benoit@tionex.de>
parents:
8
diff
changeset
|
125 buildTree( "org.eclipse.jface.text", "src", "res" ) |
20 | 126 end |
127 | |
128 desc "Build UI Forms" | |
129 task :uiforms do | |
12
bc29606a740c
Added dwt-addons in original directory structure of eclipse.org
Frank Benoit <benoit@tionex.de>
parents:
8
diff
changeset
|
130 buildTree( "org.eclipse.ui.forms", "src", "res" ) |
20 | 131 end |
132 | |
133 desc "Build Draw2D" | |
134 task :draw2d do | |
12
bc29606a740c
Added dwt-addons in original directory structure of eclipse.org
Frank Benoit <benoit@tionex.de>
parents:
8
diff
changeset
|
135 buildTree( "org.eclipse.draw2d", "src", "res" ) |
3
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
136 end |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
137 |
20 | 138 desc "Build ALL" |
139 task :all => [ :java, :swt, :equinox, :core, :jface, :uiforms, :draw2d ] | |
140 | |
141 task :default => [ :clean, :all ] | |
142 | |
143 |