annotate rakefile @ 60:66be6a990713

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