Mercurial > projects > dwt2
annotate rakefile @ 61:5ce9278ca82c
Added win32 static libs.
author | Frank Benoit <benoit@tionex.de> |
---|---|
date | Wed, 01 Apr 2009 13:10:06 +0200 |
parents | 66be6a990713 |
children | 1a69be0afe99 |
rev | line source |
---|---|
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
1 ########################################################################## |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
2 # DWT2 |
1 | 3 # |
4 require 'find' | |
5 require 'fileutils' | |
6 | |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
7 ########################################################################## |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
8 # Helpers |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
9 # |
1 | 10 class String |
11 def to_path | |
25 | 12 if isWindows |
13 self.gsub( '/', '\\' ); | |
14 else | |
15 self | |
16 end | |
1 | 17 end |
18 end | |
19 | |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
20 def isWindows |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
21 Config::CONFIG['host_os'] =~ /mswin/ |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
22 end |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
23 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
24 ########################################################################## |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
25 # Constants |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
26 # |
57
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
27 DIR_OBJ = File.expand_path("obj") |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
28 DIR_IMP = File.expand_path("imp") |
57
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
29 DIR_LIB = File.expand_path("lib") |
61 | 30 DIR_BIN = File.expand_path("bin") |
57
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
31 FILE_RSP = File.expand_path("rsp") |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
32 ALL_RESDIRS = [ "base/res", "res" ] |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
33 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
34 LOG_STDOUT = File.expand_path("olog.txt") |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
35 LOG_STDERR = File.expand_path("elog.txt") |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
36 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
37 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
38 if isWindows |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
39 BASEDIR_SWT = "org.eclipse.swt.win32.win32.x86" |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
40 LIBEXT = ".lib" |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
41 OBJEXT = ".obj" |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
42 EXEEXT = ".exe" |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
43 MAPEXT = ".map" |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
44 PROG_LIB = "lib.exe" |
61 | 45 DIR_WINLIBS = File.expand_path(File.join(BASEDIR_SWT,"lib")) |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
46 else |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
47 BASEDIR_SWT = "org.eclipse.swt.gtk.linux.x86" |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
48 LIBEXT = ".a" |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
49 OBJEXT = ".o" |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
50 EXEEXT = "" |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
51 PROG_LIB = "ar" |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
52 end |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
53 PROG_DMD = "dmd#{EXEEXT}" |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
54 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
55 ALL_RESDIRS << File.join(BASEDIR_SWT, "res" ) |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
56 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
57 if isWindows |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
58 LIBNAMES_BASIC = [ "advapi32", "comctl32", "comdlg32", "gdi32", "kernel32", |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
59 "shell32", "ole32", "oleaut32", "olepro32", "oleacc", |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
60 "user32", "usp10", "msimg32", "opengl32", "shlwapi", |
44
ed96ea2a2764
First swt win snippets are buiding with d2+phobos
Frank Benoit <benoit@tionex.de>
parents:
40
diff
changeset
|
61 "zlib", "dwt-base" ] |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
62 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
63 else |
57
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
64 SONAMES_BASIC = [ "gtk-x11-2.0", "gdk-x11-2.0", "atk-1.0", "gdk_pixbuf-2.0", |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
65 "gthread-2.0", "pangocairo-1.0", "fontconfig", "Xtst", |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
66 "Xext", "Xrender", "Xinerama", "Xi", "Xrandr", "Xcursor", |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
67 "Xcomposite", "Xdamage", "X11", "Xfixes", "pango-1.0", |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
68 "gobject-2.0", "gmodule-2.0", "dl", "glib-2.0", "cairo", |
57
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
69 "gnomeui-2" ] |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
70 LIBNAMES_BASIC = [ "dwt-base" ] |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
71 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
72 end |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
73 LIBNAMES_SWT = [ BASEDIR_SWT ] |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
74 LIBNAMES_EQUINOX = [ "org.eclipse.osgi", |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
75 "org.eclipse.osgi.supplement", |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
76 "org.eclipse.equinox.common" ] |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
77 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
78 LIBNAMES_CORE = [ "org.eclipse.core.runtime", |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
79 "org.eclipse.core.commands", |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
80 "org.eclipse.core.jobs" ] |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
81 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
82 LIBNAMES_JFACE = [ "org.eclipse.jface" ] |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
83 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
84 LIBNAMES_JFACETEXT = [ "org.eclipse.text", |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
85 "org.eclipse.jface.text.projection", |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
86 "org.eclipse.jface.text", ] |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
87 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
88 LIBNAMES_UIFORMS = [ "org.eclipse.ui.forms" ] |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
89 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
90 LIBNAMES_DRAW2D = [ "org.eclipse.draw2d" ] |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
91 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
92 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
93 ########################################################################## |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
94 # Routines |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
95 # |
59 | 96 def isDebug |
97 if ENV['DEBUG'] | |
98 ENV['DEBUG'] == "1" | |
99 else | |
100 false | |
101 end | |
102 end | |
34
a8a838017920
All JFace snippets build on windows
Frank Benoit <benoit@tionex.de>
parents:
33
diff
changeset
|
103 def buildTree( basedir, srcdir, resdir, dcargs=nil, libname=nil ) |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
104 if libname == nil |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
105 libname = basedir |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
106 end |
59 | 107 dbg_str = ""; |
108 if isDebug | |
109 dbg_str = "Debug " | |
110 end | |
111 puts "#{dbg_str}Building #{libname}" | |
1 | 112 |
113 resdir_abs = File.expand_path( File.join( basedir, resdir )) | |
114 srcdir_abs = File.expand_path( File.join( basedir, srcdir )) | |
115 | |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
116 FileUtils.mkdir_p DIR_IMP |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
117 FileUtils.mkdir_p DIR_OBJ |
1 | 118 |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
119 rsp = File.new( FILE_RSP, "w+" ) |
1 | 120 rsp.puts "-H" |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
121 #rsp.puts "-Hd#{DIR_IMP.to_path}" |
1 | 122 rsp.puts "-I#{srcdir_abs.to_path}" |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
123 rsp.puts "-I#{DIR_IMP.to_path}" |
1 | 124 rsp.puts "-J#{resdir_abs.to_path}" |
34
a8a838017920
All JFace snippets build on windows
Frank Benoit <benoit@tionex.de>
parents:
33
diff
changeset
|
125 if dcargs != nil |
16
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
126 rsp.puts dcargs |
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
127 end |
3
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
128 ALL_RESDIRS.each do | dir | |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
129 rsp.puts "-J#{File.expand_path(dir).to_path}" |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
130 end |
1 | 131 rsp.puts "-c" |
132 rsp.puts "-op" | |
59 | 133 if isDebug |
134 rsp.puts "-debug" | |
135 rsp.puts "-g" | |
136 end | |
1 | 137 Find.find( srcdir_abs ) do |path| |
138 if path =~ /\.d$/ then | |
45
d5dd1c5b90a9
Made src file paths relative, so the __FILE__ literal do only contain the relevant path.
Frank Benoit <benoit@tionex.de>
parents:
44
diff
changeset
|
139 rsp.puts path.to_path[ srcdir_abs.size+1 .. -1 ] |
1 | 140 end |
141 end | |
142 rsp.close | |
143 | |
40
9f32c409fe27
Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents:
36
diff
changeset
|
144 Dir.chdir(srcdir_abs) do |
25 | 145 if isWindows |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
146 cmd = "#{PROG_DMD} @#{FILE_RSP.to_path}" |
25 | 147 else |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
148 cmd = "cat #{FILE_RSP.to_path} | xargs #{PROG_DMD}" |
25 | 149 end |
150 sh cmd, :verbose => false do |ok, res| | |
3
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
151 if !ok then |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
152 Find.find( srcdir_abs ) do |path| |
59 | 153 if FileTest.file?(path) && path =~ /\.o(bj)?$/ then |
154 FileUtils.rm path | |
155 end | |
3
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
156 if FileTest.file?(path) && path =~ /\.di$/ then |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
157 FileUtils.rm path |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
158 end |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
159 end |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
160 |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
161 raise "compile error" |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
162 end |
1 | 163 end |
164 end | |
165 | |
166 Find.find( srcdir_abs ) do |path| | |
167 if FileTest.file?(path) && path =~ /\.di$/ then | |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
168 trgfile = File.join( DIR_IMP, path[ srcdir_abs.length+1 .. -1 ]) |
1 | 169 FileUtils.mkdir_p File.dirname(trgfile) |
170 FileUtils.mv path, trgfile | |
171 end | |
172 end | |
173 | |
40
9f32c409fe27
Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents:
36
diff
changeset
|
174 libobjs = FileList.new |
1 | 175 srcdirparts = split_all( srcdir_abs ).length |
176 Find.find( srcdir_abs ) do |path| | |
177 if FileTest.file?(path) && path =~ /\.o(bj)?$/ then | |
178 trgfile = split_all( path )[ srcdirparts .. -1 ].join( "-" ) | |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
179 FileUtils.mv path, File.join( DIR_OBJ, trgfile ) |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
180 libobjs << File.join( DIR_OBJ, trgfile ) |
28 | 181 end |
182 end | |
183 | |
184 createLib( libobjs, libname ) | |
185 end | |
186 | |
187 def createLib( libobjs, name ) | |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
188 FileUtils.mkdir_p DIR_LIB.to_path |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
189 rsp = File.new( FILE_RSP, "w+" ) |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
190 if isWindows |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
191 rsp.puts "-p512" |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
192 rsp.puts "-n" |
57
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
193 rsp.puts "-c #{DIR_LIB}\\#{name}#{LIBEXT}" |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
194 libobjs.each do |obj| |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
195 rsp.puts obj.to_path |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
196 end |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
197 else |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
198 rsp.puts "-r" |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
199 rsp.puts "-c #{DIR_LIB}/#{name}#{LIBEXT}" |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
200 libobjs.each do |obj| |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
201 rsp.puts obj.to_path |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
202 end |
28 | 203 end |
204 rsp.close | |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
205 cmd = "#{PROG_LIB} @#{FILE_RSP} > #{LOG_STDOUT}" |
28 | 206 sh cmd, :verbose => false do |ok, res| |
207 if !ok then | |
208 raise "librarian error" | |
1 | 209 end |
210 end | |
40
9f32c409fe27
Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents:
36
diff
changeset
|
211 FileUtils.rm libobjs |
1 | 212 |
213 end | |
214 | |
57
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
215 def buildApp( basedir, srcdir, resdir, dflags, appnameprefix, appname, filelist, libnames ) |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
216 if filelist == nil |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
217 filelist = FileList[ "**/#{appname}.d" ] |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
218 end |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
219 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
220 srcdir_abs = File.expand_path( File.join( basedir, srcdir)) |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
221 resdir_abs = File.expand_path( File.join( basedir, resdir)) |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
222 |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
223 rsp = File.new( FILE_RSP, "w+" ) |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
224 rsp.puts "-I#{srcdir_abs.to_path}" |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
225 rsp.puts "-I#{DIR_IMP.to_path}" |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
226 rsp.puts "-J#{resdir_abs.to_path}" |
59 | 227 if isDebug |
228 rsp.puts "-debug" | |
229 rsp.puts "-g" | |
230 end | |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
231 if dflags.size > 0 then |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
232 rsp.puts dflags |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
233 end |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
234 ALL_RESDIRS.each do | dir | |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
235 rsp.puts "-J#{File.expand_path(dir).to_path}" |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
236 end |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
237 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
238 rsp.puts "-op" |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
239 rsp.puts "-od#{DIR_OBJ.to_path}" |
61 | 240 applfile = File.join(DIR_BIN ,appnameprefix+appname+EXEEXT) |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
241 rsp.puts "-of#{applfile.to_path}" |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
242 filelist.each do |path| |
45
d5dd1c5b90a9
Made src file paths relative, so the __FILE__ literal do only contain the relevant path.
Frank Benoit <benoit@tionex.de>
parents:
44
diff
changeset
|
243 rsp.puts File.expand_path(path).to_path[ srcdir_abs.size+1 .. -1 ] |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
244 end |
57
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
245 |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
246 if isWindows |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
247 rsp.puts "-L/NOM" |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
248 libnames.each do | libname | |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
249 rsp.puts "-L+#{libname}#{LIBEXT}" |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
250 end |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
251 rsp.puts "-L+dwt-base.lib" |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
252 rsp.puts "-L+#{BASEDIR_SWT}.lib" |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
253 rsp.puts "-L+#{DIR_LIB.to_path}\\" |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
254 else |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
255 rsp.puts "-L-L#{DIR_LIB.to_path}" |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
256 libnames.reverse.each do | libname | |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
257 absname = File.join( DIR_LIB, "#{libname}#{LIBEXT}" ); |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
258 rsp.puts absname |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
259 end |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
260 SONAMES_BASIC.reverse.each do | soname | |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
261 rsp.puts "-L-l#{soname}" |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
262 end |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
263 end |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
264 |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
265 rsp.close |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
266 |
40
9f32c409fe27
Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents:
36
diff
changeset
|
267 Dir.chdir(srcdir_abs) do |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
268 if isWindows |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
269 cmd = "#{PROG_DMD} @#{FILE_RSP.to_path}" |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
270 else |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
271 cmd = "cat #{FILE_RSP.to_path} | xargs #{PROG_DMD}" |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
272 end |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
273 sh cmd, :verbose => false do |ok, res| |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
274 if !ok then |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
275 raise "compile error" |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
276 end |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
277 end |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
278 end |
40
9f32c409fe27
Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents:
36
diff
changeset
|
279 if isWindows |
9f32c409fe27
Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents:
36
diff
changeset
|
280 FileUtils.rm File.join(srcdir_abs,appname+MAPEXT), :force => true |
9f32c409fe27
Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents:
36
diff
changeset
|
281 end |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
282 |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
283 end |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
284 ########################################################################## |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
285 # Targets |
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
286 # |
3
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
287 desc "Clean" |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
288 task :clean do |
20 | 289 puts "Cleaning" |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
290 FileUtils.rm_rf DIR_IMP |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
291 FileUtils.rm_rf DIR_OBJ |
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
292 FileUtils.rm_rf DIR_LIB |
61 | 293 FileUtils.rm_rf DIR_BIN |
47
65761bc28ab2
swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents:
45
diff
changeset
|
294 FileUtils.rm FILE_RSP, :force => true |
33
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
295 FileUtils.rm LOG_STDOUT, :force => true |
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
296 FileUtils.rm LOG_STDERR, :force => true |
3
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
297 end |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
298 |
27 | 299 desc "Build Base (Java Environment and Helpers)" |
300 task :base do | |
28 | 301 buildTree( "base", "src", "res", "", "dwt-base" ) |
1 | 302 end |
303 | |
304 desc "Build SWT" | |
305 task :swt do | |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
306 buildTree( BASEDIR_SWT, "src", "res" ) |
61 | 307 if isWindows |
308 FileUtils.cp FileList[ File.join(DIR_WINLIBS, "*#{LIBEXT}") ], DIR_LIB | |
309 end | |
34
a8a838017920
All JFace snippets build on windows
Frank Benoit <benoit@tionex.de>
parents:
33
diff
changeset
|
310 end |
1 | 311 |
20 | 312 desc "Build Equinox" |
313 task :equinox do | |
16
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
314 buildTree( "org.eclipse.osgi", "src", "res" ) |
34
a8a838017920
All JFace snippets build on windows
Frank Benoit <benoit@tionex.de>
parents:
33
diff
changeset
|
315 buildTree( "org.eclipse.osgi", "supplement/src", "res", nil, "org.eclipse.osgi.supplement") |
16
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
316 buildTree( "org.eclipse.equinox.common", "src", "res" ) |
20 | 317 end |
318 | |
319 desc "Build Eclipse Core" | |
320 task :core do | |
16
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
321 buildTree( "org.eclipse.core.runtime", "src", "res" ) |
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
322 buildTree( "org.eclipse.core.commands", "src", "res" ) |
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
323 buildTree( "org.eclipse.core.jobs", "src", "res" ) |
20 | 324 end |
325 | |
326 desc "Build JFace" | |
327 task :jface do | |
16
dbfb303e8fb0
first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents:
12
diff
changeset
|
328 buildTree( "org.eclipse.jface", "src", "res" ) |
21
9b96950f2c3c
the 'java' tree compiles on both D1-Tango and D2-Phobos
Frank Benoit <benoit@tionex.de>
parents:
20
diff
changeset
|
329 end |
9b96950f2c3c
the 'java' tree compiles on both D1-Tango and D2-Phobos
Frank Benoit <benoit@tionex.de>
parents:
20
diff
changeset
|
330 |
60
66be6a990713
new eclipsetools target, fix of new exception stacktrace info.
Frank Benoit <benoit@tionex.de>
parents:
59
diff
changeset
|
331 desc "Build Eclipse Tools" |
66be6a990713
new eclipsetools target, fix of new exception stacktrace info.
Frank Benoit <benoit@tionex.de>
parents:
59
diff
changeset
|
332 task :eclipsetools do |
66be6a990713
new eclipsetools target, fix of new exception stacktrace info.
Frank Benoit <benoit@tionex.de>
parents:
59
diff
changeset
|
333 buildTree( "org.eclipse.tools", "Sleak", "res" ) |
66be6a990713
new eclipsetools target, fix of new exception stacktrace info.
Frank Benoit <benoit@tionex.de>
parents:
59
diff
changeset
|
334 end |
66be6a990713
new eclipsetools target, fix of new exception stacktrace info.
Frank Benoit <benoit@tionex.de>
parents:
59
diff
changeset
|
335 |
21
9b96950f2c3c
the 'java' tree compiles on both D1-Tango and D2-Phobos
Frank Benoit <benoit@tionex.de>
parents:
20
diff
changeset
|
336 desc "Build JFace.Text" |
9b96950f2c3c
the 'java' tree compiles on both D1-Tango and D2-Phobos
Frank Benoit <benoit@tionex.de>
parents:
20
diff
changeset
|
337 task :jfacetext do |
12
bc29606a740c
Added dwt-addons in original directory structure of eclipse.org
Frank Benoit <benoit@tionex.de>
parents:
8
diff
changeset
|
338 buildTree( "org.eclipse.text", "src", "res" ) |
40
9f32c409fe27
Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents:
36
diff
changeset
|
339 buildTree( "org.eclipse.jface.text", "projection", "res", "-I../src", "org.eclipse.jface.text.projection" ) |
12
bc29606a740c
Added dwt-addons in original directory structure of eclipse.org
Frank Benoit <benoit@tionex.de>
parents:
8
diff
changeset
|
340 buildTree( "org.eclipse.jface.text", "src", "res" ) |
20 | 341 end |
342 | |
343 desc "Build UI Forms" | |
344 task :uiforms do | |
12
bc29606a740c
Added dwt-addons in original directory structure of eclipse.org
Frank Benoit <benoit@tionex.de>
parents:
8
diff
changeset
|
345 buildTree( "org.eclipse.ui.forms", "src", "res" ) |
20 | 346 end |
347 | |
348 desc "Build Draw2D" | |
349 task :draw2d do | |
12
bc29606a740c
Added dwt-addons in original directory structure of eclipse.org
Frank Benoit <benoit@tionex.de>
parents:
8
diff
changeset
|
350 buildTree( "org.eclipse.draw2d", "src", "res" ) |
3
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
351 end |
4c0057e71936
Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents:
1
diff
changeset
|
352 |
20 | 353 desc "Build ALL" |
27 | 354 task :all => [ :base, :swt, :equinox, :core, :jface, :jfacetext, :uiforms, |
36
d46287db17ed
rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents:
34
diff
changeset
|
355 :draw2d, :swtsnippets, :jfacesnippets ] |
20 | 356 |
21
9b96950f2c3c
the 'java' tree compiles on both D1-Tango and D2-Phobos
Frank Benoit <benoit@tionex.de>
parents:
20
diff
changeset
|
357 desc "Clean, then build ALL" |
20 | 358 task :default => [ :clean, :all ] |
359 | |
360 | |
29
4e5843b771cc
First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents:
28
diff
changeset
|
361 desc "Build SWT Snippet Collection" |
30
93b0e7382fd5
SWT Snippets build on windows
Frank Benoit <benoit@tionex.de>
parents:
29
diff
changeset
|
362 task :swtsnippets, :explicit_snp do | t, args | |
29
4e5843b771cc
First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents:
28
diff
changeset
|
363 |
34
a8a838017920
All JFace snippets build on windows
Frank Benoit <benoit@tionex.de>
parents:
33
diff
changeset
|
364 libnames = LIBNAMES_BASIC + LIBNAMES_SWT |
29
4e5843b771cc
First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents:
28
diff
changeset
|
365 snps_browser = [ "Snippet128", "Snippet136" ] |
4e5843b771cc
First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents:
28
diff
changeset
|
366 snps_opengl = [ "Snippet174", "Snippet195" ] |
57
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
367 snps_ole = [ "Snippet81" ] |
29
4e5843b771cc
First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents:
28
diff
changeset
|
368 |
57
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
369 if isWindows |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
370 snps_exclude = snps_browser + snps_opengl + snps_ole |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
371 else |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
372 snps_exclude = snps_browser + snps_opengl + snps_ole |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
373 end |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
374 |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
375 PREFIX = "Swt" |
29
4e5843b771cc
First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents:
28
diff
changeset
|
376 allsnippets = FileList[ File.join("org.eclipse.swt.snippets", "src", "**/Snippet*.d" )] |
30
93b0e7382fd5
SWT Snippets build on windows
Frank Benoit <benoit@tionex.de>
parents:
29
diff
changeset
|
377 if args.explicit_snp != nil |
40
9f32c409fe27
Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents:
36
diff
changeset
|
378 snpname = args.explicit_snp |
9f32c409fe27
Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents:
36
diff
changeset
|
379 puts "Building swtsnippets[#{snpname}]" |
57
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
380 buildApp( "org.eclipse.swt.snippets", "src", "res", "", PREFIX, snpname, nil, libnames ) |
30
93b0e7382fd5
SWT Snippets build on windows
Frank Benoit <benoit@tionex.de>
parents:
29
diff
changeset
|
381 else |
93b0e7382fd5
SWT Snippets build on windows
Frank Benoit <benoit@tionex.de>
parents:
29
diff
changeset
|
382 allsnippets.each do | snp | |
93b0e7382fd5
SWT Snippets build on windows
Frank Benoit <benoit@tionex.de>
parents:
29
diff
changeset
|
383 if snp =~ /.*(Snippet\w+)\.d$/ |
93b0e7382fd5
SWT Snippets build on windows
Frank Benoit <benoit@tionex.de>
parents:
29
diff
changeset
|
384 snpname = $1 |
40
9f32c409fe27
Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents:
36
diff
changeset
|
385 puts "Building swtsnippets[#{snpname}]" |
30
93b0e7382fd5
SWT Snippets build on windows
Frank Benoit <benoit@tionex.de>
parents:
29
diff
changeset
|
386 if !snps_exclude.include? snpname |
57
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
387 buildApp( "org.eclipse.swt.snippets", "src", "res", "", PREFIX, snpname, nil, libnames ) |
30
93b0e7382fd5
SWT Snippets build on windows
Frank Benoit <benoit@tionex.de>
parents:
29
diff
changeset
|
388 end |
93b0e7382fd5
SWT Snippets build on windows
Frank Benoit <benoit@tionex.de>
parents:
29
diff
changeset
|
389 else |
40
9f32c409fe27
Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents:
36
diff
changeset
|
390 raise "Name does not match #{snp}" |
29
4e5843b771cc
First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents:
28
diff
changeset
|
391 end |
4e5843b771cc
First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents:
28
diff
changeset
|
392 end |
4e5843b771cc
First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents:
28
diff
changeset
|
393 end |
4e5843b771cc
First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents:
28
diff
changeset
|
394 end |
4e5843b771cc
First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents:
28
diff
changeset
|
395 |
33
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
396 desc "Build JFace Snippet Collection" |
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
397 task :jfacesnippets, :explicit_snp do | t, args | |
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
398 |
57
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
399 PREFIX = "JFace" |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
400 SRCPATH = "EclipseJfaceSnippets" |
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
401 BASEPATH = "org.eclipse.jface.snippets" |
34
a8a838017920
All JFace snippets build on windows
Frank Benoit <benoit@tionex.de>
parents:
33
diff
changeset
|
402 libnames = LIBNAMES_BASIC + LIBNAMES_SWT + LIBNAMES_EQUINOX + LIBNAMES_CORE + LIBNAMES_JFACE |
33
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
403 snps_exclude = [] |
57
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
404 allsnippets = FileList[ File.join(BASEPATH, SRCPATH, "**/*.d" )] |
33
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
405 if args.explicit_snp != nil |
40
9f32c409fe27
Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents:
36
diff
changeset
|
406 snpname = args.explicit_snp |
9f32c409fe27
Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents:
36
diff
changeset
|
407 puts "Building jfacesnippets[#{snpname}]" |
57
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
408 buildApp( BASEPATH, SRCPATH, "res", "", PREFIX, args.explicit_snp, nil, libnames ) |
33
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
409 else |
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
410 allsnippets.each do | snp | |
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
411 if snp =~ /.*[\\\/](\w+)\.d$/ |
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
412 snpname = $1 |
40
9f32c409fe27
Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents:
36
diff
changeset
|
413 puts "Building jfacesnippets[#{snpname}]" |
33
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
414 if !snps_exclude.include? snpname |
57
e2ca9bdc80f2
[samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents:
47
diff
changeset
|
415 buildApp( BASEPATH, SRCPATH, "res", "", PREFIX, snpname, nil, libnames ) |
33
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
416 end |
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
417 else |
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
418 puts snp |
40
9f32c409fe27
Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents:
36
diff
changeset
|
419 raise "Name does not match #{snp}" |
33
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
420 end |
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
421 end |
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
422 end |
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
423 end |
712f3c7f7660
make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents:
30
diff
changeset
|
424 |
29
4e5843b771cc
First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents:
28
diff
changeset
|
425 |
4e5843b771cc
First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents:
28
diff
changeset
|
426 |