annotate rakefile @ 57:e2ca9bdc80f2

[samples] build now also on D1 linux
author Frank Benoit <benoit@tionex.de>
date Sat, 28 Mar 2009 01:28:11 +0100
parents 65761bc28ab2
children 7e0547d89731
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 #
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
95
34
a8a838017920 All JFace snippets build on windows
Frank Benoit <benoit@tionex.de>
parents: 33
diff changeset
96 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
97 if libname == nil
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
98 libname = basedir
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
99 end
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
100 puts "Building #{libname}"
1
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
101
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
102 resdir_abs = File.expand_path( File.join( basedir, resdir ))
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
103 srcdir_abs = File.expand_path( File.join( basedir, srcdir ))
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
104
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
105 FileUtils.mkdir_p DIR_IMP
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
106 FileUtils.mkdir_p DIR_OBJ
1
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
107
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
108 rsp = File.new( FILE_RSP, "w+" )
1
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
109 rsp.puts "-H"
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
110 #rsp.puts "-Hd#{DIR_IMP.to_path}"
1
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
111 rsp.puts "-I#{srcdir_abs.to_path}"
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
112 rsp.puts "-I#{DIR_IMP.to_path}"
1
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
113 rsp.puts "-J#{resdir_abs.to_path}"
34
a8a838017920 All JFace snippets build on windows
Frank Benoit <benoit@tionex.de>
parents: 33
diff changeset
114 if dcargs != nil
16
dbfb303e8fb0 first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents: 12
diff changeset
115 rsp.puts dcargs
dbfb303e8fb0 first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents: 12
diff changeset
116 end
3
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
117 ALL_RESDIRS.each do | dir |
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
118 rsp.puts "-J#{File.expand_path(dir).to_path}"
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
119 end
1
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
120 rsp.puts "-c"
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
121 rsp.puts "-op"
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
122 Find.find( srcdir_abs ) do |path|
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
123 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
124 rsp.puts path.to_path[ srcdir_abs.size+1 .. -1 ]
1
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
125 end
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
126 end
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
127 rsp.close
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
128
40
9f32c409fe27 Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents: 36
diff changeset
129 Dir.chdir(srcdir_abs) do
25
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents: 21
diff changeset
130 if isWindows
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
131 cmd = "#{PROG_DMD} @#{FILE_RSP.to_path}"
25
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents: 21
diff changeset
132 else
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
133 cmd = "cat #{FILE_RSP.to_path} | xargs #{PROG_DMD}"
25
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents: 21
diff changeset
134 end
f713da8bc051 Added SWT Linux GTK
Frank Benoit <benoit@tionex.de>
parents: 21
diff changeset
135 sh cmd, :verbose => false do |ok, res|
3
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
136 if !ok then
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
137 Find.find( srcdir_abs ) do |path|
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
138 if FileTest.file?(path) && path =~ /\.di$/ then
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
139 FileUtils.rm path
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
140 end
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
141 end
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
142
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
143 raise "compile error"
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
144 end
1
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
145 end
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
146 end
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
147
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
148 Find.find( srcdir_abs ) do |path|
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
149 if FileTest.file?(path) && path =~ /\.di$/ then
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
150 trgfile = File.join( DIR_IMP, path[ srcdir_abs.length+1 .. -1 ])
1
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
151 FileUtils.mkdir_p File.dirname(trgfile)
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
152 FileUtils.mv path, trgfile
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
153 end
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
154 end
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
155
40
9f32c409fe27 Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents: 36
diff changeset
156 libobjs = FileList.new
1
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
157 srcdirparts = split_all( srcdir_abs ).length
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
158 Find.find( srcdir_abs ) do |path|
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
159 if FileTest.file?(path) && path =~ /\.o(bj)?$/ then
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
160 trgfile = split_all( path )[ srcdirparts .. -1 ].join( "-" )
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
161 FileUtils.mv path, File.join( DIR_OBJ, trgfile )
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
162 libobjs << File.join( DIR_OBJ, trgfile )
28
69b1fa94a4a8 Added SWT snippets
Frank Benoit <benoit@tionex.de>
parents: 27
diff changeset
163 end
69b1fa94a4a8 Added SWT snippets
Frank Benoit <benoit@tionex.de>
parents: 27
diff changeset
164 end
69b1fa94a4a8 Added SWT snippets
Frank Benoit <benoit@tionex.de>
parents: 27
diff changeset
165
69b1fa94a4a8 Added SWT snippets
Frank Benoit <benoit@tionex.de>
parents: 27
diff changeset
166 createLib( libobjs, libname )
69b1fa94a4a8 Added SWT snippets
Frank Benoit <benoit@tionex.de>
parents: 27
diff changeset
167 end
69b1fa94a4a8 Added SWT snippets
Frank Benoit <benoit@tionex.de>
parents: 27
diff changeset
168
69b1fa94a4a8 Added SWT snippets
Frank Benoit <benoit@tionex.de>
parents: 27
diff changeset
169 def createLib( libobjs, name )
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
170 FileUtils.mkdir_p DIR_LIB.to_path
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
171 rsp = File.new( FILE_RSP, "w+" )
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
172 if isWindows
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
173 rsp.puts "-p512"
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
174 rsp.puts "-n"
57
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
175 rsp.puts "-c #{DIR_LIB}\\#{name}#{LIBEXT}"
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
176 libobjs.each do |obj|
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
177 rsp.puts obj.to_path
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
178 end
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
179 else
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
180 rsp.puts "-r"
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
181 rsp.puts "-c #{DIR_LIB}/#{name}#{LIBEXT}"
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
182 libobjs.each do |obj|
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
183 rsp.puts obj.to_path
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
184 end
28
69b1fa94a4a8 Added SWT snippets
Frank Benoit <benoit@tionex.de>
parents: 27
diff changeset
185 end
69b1fa94a4a8 Added SWT snippets
Frank Benoit <benoit@tionex.de>
parents: 27
diff changeset
186 rsp.close
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
187 cmd = "#{PROG_LIB} @#{FILE_RSP} > #{LOG_STDOUT}"
28
69b1fa94a4a8 Added SWT snippets
Frank Benoit <benoit@tionex.de>
parents: 27
diff changeset
188 sh cmd, :verbose => false do |ok, res|
69b1fa94a4a8 Added SWT snippets
Frank Benoit <benoit@tionex.de>
parents: 27
diff changeset
189 if !ok then
69b1fa94a4a8 Added SWT snippets
Frank Benoit <benoit@tionex.de>
parents: 27
diff changeset
190 raise "librarian error"
1
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
191 end
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
192 end
40
9f32c409fe27 Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents: 36
diff changeset
193 FileUtils.rm libobjs
1
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
194
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
195 end
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
196
57
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
197 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
198 if filelist == nil
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
199 filelist = FileList[ "**/#{appname}.d" ]
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
200 end
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
201
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
202 srcdir_abs = File.expand_path( File.join( basedir, srcdir))
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
203 resdir_abs = File.expand_path( File.join( basedir, resdir))
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
204
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
205 rsp = File.new( FILE_RSP, "w+" )
36
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
206 rsp.puts "-I#{srcdir_abs.to_path}"
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
207 rsp.puts "-I#{DIR_IMP.to_path}"
36
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
208 rsp.puts "-J#{resdir_abs.to_path}"
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
209 if dflags.size > 0 then
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
210 rsp.puts dflags
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
211 end
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
212 ALL_RESDIRS.each do | dir |
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
213 rsp.puts "-J#{File.expand_path(dir).to_path}"
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
214 end
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
215
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
216 rsp.puts "-op"
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
217 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
218 applfile = File.join(BINDIR,appnameprefix+appname+EXEEXT)
36
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
219 rsp.puts "-of#{applfile.to_path}"
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
220 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
221 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
222 end
57
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
223
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
224 if isWindows
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
225 rsp.puts "-L/NOM"
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
226 libnames.each do | libname |
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
227 rsp.puts "-L+#{libname}#{LIBEXT}"
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
228 end
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
229 rsp.puts "-L+dwt-base.lib"
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
230 rsp.puts "-L+#{BASEDIR_SWT}.lib"
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
231 rsp.puts "-L+#{DIR_LIB.to_path}\\"
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
232 else
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
233 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
234 libnames.reverse.each do | libname |
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
235 absname = File.join( DIR_LIB, "#{libname}#{LIBEXT}" );
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
236 rsp.puts absname
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
237 end
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
238 SONAMES_BASIC.reverse.each do | soname |
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
239 rsp.puts "-L-l#{soname}"
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
240 end
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
241 end
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
242
36
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
243 rsp.close
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
244
40
9f32c409fe27 Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents: 36
diff changeset
245 Dir.chdir(srcdir_abs) do
36
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
246 if isWindows
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
247 cmd = "#{PROG_DMD} @#{FILE_RSP.to_path}"
36
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
248 else
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
249 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
250 end
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
251 sh cmd, :verbose => false do |ok, res|
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
252 if !ok then
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
253 raise "compile error"
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
254 end
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
255 end
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
256 end
40
9f32c409fe27 Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents: 36
diff changeset
257 if isWindows
9f32c409fe27 Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents: 36
diff changeset
258 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
259 end
36
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
260
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
261 end
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
262 ##########################################################################
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
263 # Targets
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
264 #
3
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
265 desc "Clean"
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
266 task :clean do
20
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
267 puts "Cleaning"
47
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
268 FileUtils.rm_rf DIR_IMP
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
269 FileUtils.rm_rf DIR_OBJ
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
270 FileUtils.rm_rf DIR_LIB
65761bc28ab2 swt linux again compilable for d1.
Frank Benoit <benoit@tionex.de>
parents: 45
diff changeset
271 FileUtils.rm FILE_RSP, :force => true
33
712f3c7f7660 make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents: 30
diff changeset
272 FileUtils.rm LOG_STDOUT, :force => true
712f3c7f7660 make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents: 30
diff changeset
273 FileUtils.rm LOG_STDERR, :force => true
3
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
274 end
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
275
27
1bf55a6eb092 Renamed java tree to base
Frank Benoit <benoit@tionex.de>
parents: 25
diff changeset
276 desc "Build Base (Java Environment and Helpers)"
1bf55a6eb092 Renamed java tree to base
Frank Benoit <benoit@tionex.de>
parents: 25
diff changeset
277 task :base do
28
69b1fa94a4a8 Added SWT snippets
Frank Benoit <benoit@tionex.de>
parents: 27
diff changeset
278 buildTree( "base", "src", "res", "", "dwt-base" )
1
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
279 end
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
280
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
281 desc "Build SWT"
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
282 task :swt do
36
d46287db17ed rakefile reorg, swt win phobosification
Frank Benoit <benoit@tionex.de>
parents: 34
diff changeset
283 buildTree( BASEDIR_SWT, "src", "res" )
34
a8a838017920 All JFace snippets build on windows
Frank Benoit <benoit@tionex.de>
parents: 33
diff changeset
284 end
1
0e8eed4cac02 add rakefile
Frank Benoit <benoit@tionex.de>
parents:
diff changeset
285
20
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
286 desc "Build Equinox"
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
287 task :equinox do
16
dbfb303e8fb0 first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents: 12
diff changeset
288 buildTree( "org.eclipse.osgi", "src", "res" )
34
a8a838017920 All JFace snippets build on windows
Frank Benoit <benoit@tionex.de>
parents: 33
diff changeset
289 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
290 buildTree( "org.eclipse.equinox.common", "src", "res" )
20
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
291 end
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
292
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
293 desc "Build Eclipse Core"
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
294 task :core do
16
dbfb303e8fb0 first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents: 12
diff changeset
295 buildTree( "org.eclipse.core.runtime", "src", "res" )
dbfb303e8fb0 first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents: 12
diff changeset
296 buildTree( "org.eclipse.core.commands", "src", "res" )
dbfb303e8fb0 first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents: 12
diff changeset
297 buildTree( "org.eclipse.core.jobs", "src", "res" )
20
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
298 end
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
299
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
300 desc "Build JFace"
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
301 task :jface do
16
dbfb303e8fb0 first complete successful compile (win-only)
Frank Benoit <benoit@tionex.de>
parents: 12
diff changeset
302 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
303 end
9b96950f2c3c the 'java' tree compiles on both D1-Tango and D2-Phobos
Frank Benoit <benoit@tionex.de>
parents: 20
diff changeset
304
9b96950f2c3c the 'java' tree compiles on both D1-Tango and D2-Phobos
Frank Benoit <benoit@tionex.de>
parents: 20
diff changeset
305 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
306 task :jfacetext do
12
bc29606a740c Added dwt-addons in original directory structure of eclipse.org
Frank Benoit <benoit@tionex.de>
parents: 8
diff changeset
307 buildTree( "org.eclipse.text", "src", "res" )
40
9f32c409fe27 Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents: 36
diff changeset
308 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
309 buildTree( "org.eclipse.jface.text", "src", "res" )
20
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
310 end
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
311
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
312 desc "Build UI Forms"
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
313 task :uiforms do
12
bc29606a740c Added dwt-addons in original directory structure of eclipse.org
Frank Benoit <benoit@tionex.de>
parents: 8
diff changeset
314 buildTree( "org.eclipse.ui.forms", "src", "res" )
20
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
315 end
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
316
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
317 desc "Build Draw2D"
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
318 task :draw2d do
12
bc29606a740c Added dwt-addons in original directory structure of eclipse.org
Frank Benoit <benoit@tionex.de>
parents: 8
diff changeset
319 buildTree( "org.eclipse.draw2d", "src", "res" )
3
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
320 end
4c0057e71936 Made a class for StringBuffer
Frank Benoit <benoit@tionex.de>
parents: 1
diff changeset
321
20
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
322 desc "Build ALL"
27
1bf55a6eb092 Renamed java tree to base
Frank Benoit <benoit@tionex.de>
parents: 25
diff changeset
323 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
324 :draw2d, :swtsnippets, :jfacesnippets ]
20
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
325
21
9b96950f2c3c the 'java' tree compiles on both D1-Tango and D2-Phobos
Frank Benoit <benoit@tionex.de>
parents: 20
diff changeset
326 desc "Clean, then build ALL"
20
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
327 task :default => [ :clean, :all ]
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
328
dccb717aa902 Remove more tango imports
Frank Benoit <benoit@tionex.de>
parents: 16
diff changeset
329
29
4e5843b771cc First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents: 28
diff changeset
330 desc "Build SWT Snippet Collection"
30
93b0e7382fd5 SWT Snippets build on windows
Frank Benoit <benoit@tionex.de>
parents: 29
diff changeset
331 task :swtsnippets, :explicit_snp do | t, args |
29
4e5843b771cc First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents: 28
diff changeset
332
34
a8a838017920 All JFace snippets build on windows
Frank Benoit <benoit@tionex.de>
parents: 33
diff changeset
333 libnames = LIBNAMES_BASIC + LIBNAMES_SWT
29
4e5843b771cc First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents: 28
diff changeset
334 snps_browser = [ "Snippet128", "Snippet136" ]
4e5843b771cc First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents: 28
diff changeset
335 snps_opengl = [ "Snippet174", "Snippet195" ]
57
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
336 snps_ole = [ "Snippet81" ]
29
4e5843b771cc First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents: 28
diff changeset
337
57
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
338 if isWindows
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
339 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
340 else
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
341 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
342 end
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
343
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
344 PREFIX = "Swt"
29
4e5843b771cc First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents: 28
diff changeset
345 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
346 if args.explicit_snp != nil
40
9f32c409fe27 Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents: 36
diff changeset
347 snpname = args.explicit_snp
9f32c409fe27 Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents: 36
diff changeset
348 puts "Building swtsnippets[#{snpname}]"
57
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
349 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
350 else
93b0e7382fd5 SWT Snippets build on windows
Frank Benoit <benoit@tionex.de>
parents: 29
diff changeset
351 allsnippets.each do | snp |
93b0e7382fd5 SWT Snippets build on windows
Frank Benoit <benoit@tionex.de>
parents: 29
diff changeset
352 if snp =~ /.*(Snippet\w+)\.d$/
93b0e7382fd5 SWT Snippets build on windows
Frank Benoit <benoit@tionex.de>
parents: 29
diff changeset
353 snpname = $1
40
9f32c409fe27 Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents: 36
diff changeset
354 puts "Building swtsnippets[#{snpname}]"
30
93b0e7382fd5 SWT Snippets build on windows
Frank Benoit <benoit@tionex.de>
parents: 29
diff changeset
355 if !snps_exclude.include? snpname
57
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
356 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
357 end
93b0e7382fd5 SWT Snippets build on windows
Frank Benoit <benoit@tionex.de>
parents: 29
diff changeset
358 else
40
9f32c409fe27 Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents: 36
diff changeset
359 raise "Name does not match #{snp}"
29
4e5843b771cc First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents: 28
diff changeset
360 end
4e5843b771cc First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents: 28
diff changeset
361 end
4e5843b771cc First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents: 28
diff changeset
362 end
4e5843b771cc First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents: 28
diff changeset
363 end
4e5843b771cc First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents: 28
diff changeset
364
33
712f3c7f7660 make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents: 30
diff changeset
365 desc "Build JFace Snippet Collection"
712f3c7f7660 make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents: 30
diff changeset
366 task :jfacesnippets, :explicit_snp do | t, args |
712f3c7f7660 make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents: 30
diff changeset
367
57
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
368 PREFIX = "JFace"
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
369 SRCPATH = "EclipseJfaceSnippets"
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
370 BASEPATH = "org.eclipse.jface.snippets"
34
a8a838017920 All JFace snippets build on windows
Frank Benoit <benoit@tionex.de>
parents: 33
diff changeset
371 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
372 snps_exclude = []
57
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
373 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
374 if args.explicit_snp != nil
40
9f32c409fe27 Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents: 36
diff changeset
375 snpname = args.explicit_snp
9f32c409fe27 Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents: 36
diff changeset
376 puts "Building jfacesnippets[#{snpname}]"
57
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
377 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
378 else
712f3c7f7660 make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents: 30
diff changeset
379 allsnippets.each do | snp |
712f3c7f7660 make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents: 30
diff changeset
380 if snp =~ /.*[\\\/](\w+)\.d$/
712f3c7f7660 make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents: 30
diff changeset
381 snpname = $1
40
9f32c409fe27 Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents: 36
diff changeset
382 puts "Building jfacesnippets[#{snpname}]"
33
712f3c7f7660 make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents: 30
diff changeset
383 if !snps_exclude.include? snpname
57
e2ca9bdc80f2 [samples] build now also on D1 linux
Frank Benoit <benoit@tionex.de>
parents: 47
diff changeset
384 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
385 end
712f3c7f7660 make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents: 30
diff changeset
386 else
712f3c7f7660 make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents: 30
diff changeset
387 puts snp
40
9f32c409fe27 Fix compile problem and extend rakefile
Frank Benoit <benoit@tionex.de>
parents: 36
diff changeset
388 raise "Name does not match #{snp}"
33
712f3c7f7660 make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents: 30
diff changeset
389 end
712f3c7f7660 make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents: 30
diff changeset
390 end
712f3c7f7660 make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents: 30
diff changeset
391 end
712f3c7f7660 make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents: 30
diff changeset
392 end
712f3c7f7660 make clean work without require existing files
Frank Benoit <benoit@tionex.de>
parents: 30
diff changeset
393
29
4e5843b771cc First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents: 28
diff changeset
394
4e5843b771cc First snippets buildable on windows
Frank Benoit <benoit@tionex.de>
parents: 28
diff changeset
395