annotate rakefile @ 47:65761bc28ab2

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