* platforms/linux.make (platform-check): Make more robust.
[mono.git] / mcs / build / ChangeLog
1 2004-11-04  Raja R Harinath  <rharinath@novell.com>
2
3         * platforms/linux.make (platform-check): Make more robust.
4         * rules.make (%-recursive): Propagate error exit from sub-makes
5         even if invoked with 'make -k'.
6
7 2004-10-29  Raja R Harinath  <rharinath@novell.com>
8
9         * profiles/net_2_0_bootstrap.make (PROFILE_MCS_FLAGS): Remove
10         -langversion:default flag.
11
12         * rules.make (distdir): Remove.
13         (PROFILE_SUBDIRS): New.  Support profile-specific SUBDIRS.
14         (DIST_SUBDIRS): New.
15         (dist-recursive): Define distdir here.
16
17 2004-10-25  Zoltan Varga  <vargaz@freemail.hu>
18
19         * config-default.make (TEST_RUNTIME): Add TEST_MONO_PATH variable.
20
21 2004-09-27  Raja R Harinath  <rharinath@novell.com>
22
23         * library.make ($(test_nunit_dep)): Make sure NUnit is built for
24         the profile being tested.
25         (nunit-$(PROFILE).stamp): Rename from nunit.stamp.
26         * config-default.make (TEST_HARNESS): Look for 'nunit-console' in
27         profile-specific directory.
28
29 2004-09-21  Raja R Harinath  <rharinath@novell.com>
30
31         * profiles/net_2_0_bootstrap.make: New file.
32
33         * library.make (the_mdb): Fix.
34         (library_CLEAN_FILES): Add the new test results files too.
35
36 2004-09-14  Raja R Harinath  <rharinath@novell.com>
37
38         * library.make (test_lib, btest_lib): Build separate test
39         assemblies for separate profiles.
40         (dist-local): Don't copy files beginning with '../'.
41         (test_sourcefile, btest_sourcefile): Define in terms of
42         $(test_lib) or $(btest_lib) only if they're overriden.
43         (test_response, test_makefrag): Remove redundant $(PROFILE) in name.
44         (run-test-lib, run-btest-lib): Unify.  Give profile-specific name
45         for output XML file.
46         * rules.make (dist-default): Handle any of Makefile, makefile, or
47         GNUmakefile being present.
48         * profiles/net_2_0.make (TEST_RUNTIME): Don't define.
49
50 2004-08-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
51
52         * executable.make:
53         * library.make: install/clean .mdb files.
54
55 2004-07-30  Martin Baulig  <martin@ximian.com>
56
57         * executable.make (EXTRA_SOURCES): New variable to add extra
58         sources to the program.
59
60 2004-07-30  Raja R Harinath  <harinath@blr-harinath.blr.novell.com>
61
62         * executable.make (PROGRAM_config): New auto-detecting define.
63         Defined if $(PROGRAM).config exists.
64         (install-local): Install $(PROGRAM_config) if it exists.
65
66 2004-07-21  Lluis Sanchez Gual  <lluis@novell.com>
67
68         * profiles/default.make, profiles/net_2_0.make, profiles/net_1_0.make:
69           Added FRAMEWORK_VERSION var.
70
71 2004-07-02  Raja R Harinath  <rharinath@novell.com>
72
73         Support for avoiding "sharing violations" while compiling core
74         libraries with an in-tree compiler.
75         * library.make (LIBRARY_USE_INTERMEDIATE_FILE): New toggle.
76         ($(the_lib)): Use it.
77
78 2004-07-02  Raja R Harinath  <rharinath@novell.com>
79
80         * rules.make (OVERRIDE_BARE_TARGETS): Remove.
81         (OVERRIDE_TARGET_ALL): New control for overriding the default all:
82         rule.  If set, 'make all' will run 'all.override' from the client
83         Makefile.
84         (all): Move commands ...
85         (all.real): ... here.  Make ordering assumptions explicit, and
86         parallel-safe.
87         (test,run-test,run-test-ondotnet,clean,install,uninstall):
88         Consolidate into ...
89         (STD_TARGETS): ... this new variable.  Make ordering assumption
90         between -recursive and -local targets explicit.
91         (%-recursive): Handle W32 GNU make that has --unix as the first
92         argument in $(MAKE).
93         * README.makefiles (Special recursion needs): Update to reflect
94         changes.
95         * library.make (all-local): Build $(the_lib_signature_stamp) when
96         NO_SIGN_ASSEMBLY is defined.
97         ($(gacutil),$(sn)): Consolidate rules.
98         (test-local,run-test-local,run-test-ondotnet-local): Likewise.
99
100 2004-07-02  Raja R Harinath  <rharinath@novell.com>
101         
102         * config-default.make (TEST_RUNTIME): Use 'mono' by default.
103         * platforms/win32.make (TEST_RUNTIME): Remove.
104         * profiles/default.make (TEST_RUNTIME): Remove.
105
106 2004-06-28  Raja R Harinath  <rharinath@novell.com>
107
108         * platforms/linux.make (RESGEN): Define using $(INTERNAL_RESGEN).
109
110 2004-06-21  Raja R Harinath  <rharinath@novell.com>
111
112         * executable.make ($(PROGRAM)): Move depend on the makefrags ...
113         (all-local): ... here.
114         * library.make ($(the_lib), $(test_lib), $(btest_lib), all-local):
115         Likewise.
116         (LIBRARY_SNK): New default define.  Allows library to be signed
117         with a key other than mono.snk.
118         ($(the_lib_signature_stamp)): New stamp file created when an
119         assembly is signed.
120         (install-local, uninstall-local, maybe-sign-lib): Set MONO_PATH.
121
122 2004-06-16  Raja R Harinath  <rharinath@novell.com>
123
124         * library.make ($(makefrag),$(test_makefrag),$(btest_makefrag)): 
125         Depend on library.make.
126         * executable.make ($(makefrag)): Depend on executable.make.
127
128 2004-06-16  Atsushi Enomoto  <atsushi@ximian.com>
129
130         * library.make : Added GACDIR. Use cygpath -w on windows.
131
132 2004-06-14  Raja R Harinath  <rharinath@novell.com>
133
134         * platforms/linux.make (PLATFORM_CHANGE_SEPARATOR_CMD): Define to 'cat'.
135         (PLATFORM_TWEAK_CORLIB_SOURCES): Remove.
136         (platform-check): Avoid bash-ism.
137         * library.make: Simplify uses of $(patsubst x,y,$(foo)) to $(foo:x=y).
138         (core_sourcefile): Rename back to ...
139         (sourcefile): ... this.  Remove creation of redundant intermediate file.
140         (response): Change test for optimization, now that
141         PLATFORM_CHANGE_SEPARATOR_CMD is unconditional.  Combine with
142         platform-exclude handling.
143         (library_CLEAN_FILES): New variable to specify clean:-able files
144         close to where they're defined.
145         (test_response, btest_response): Simplify.
146         * executable.make (response): Change test for optimization.
147         (executable_CLEAN_FILES): New define.
148
149 2004-06-14  Raja R Harinath  <rharinath@novell.com>
150
151         * library.make (uninstall-local): Fix typo.
152
153 2004-06-11  Atsushi Enomoto  <atsushi@ximian.com>
154
155         * library.make : HAVE_CS_TESTS fixie.
156
157 2004-06-11  Raja R Harinath  <rharinath@novell.com>
158
159         * library.make (HAVE_CS_TESTS, HAVE_VB_TESTS): Allow to be
160         overriden.  Useful if the tests sourcefile is generated.
161         (TEST_COMPILE, BTEST_COMPILE): Allow these to be customized too.
162
163         * platforms/win32.make (PLATFORM_TWEAK_CORLIB_SOURCES): Remove.
164
165         Support enough features to build mscorlib.dll.
166         * library.make (core_sourcefile): New renamed from $(sourcefile).
167         (PLATFORM_excludes): Auto-detecting define that sees if
168         $(LIBRARY).$(PLATFORM)-excludes file exists.
169         (sourcefile): New.  Possibly-built file that removes
170         PLATFORM_excluded files from core_sourcefile.
171         (test_against, test_dep): New.  Allow the test assembly to be
172         built against a different library.
173         (test_lib): Allow makefile to override the name of the test
174         assembly.
175         (LIBRARY_INSTALL_DIR): If defined, switch to using $(INSTALL_LIB)
176         rather than $(gacutil).
177         (DISTFILES, dist-local): Use core_sourcefile.
178         (clean-local): Remove sourcefile if it was generated.
179         (test_lib, btest_lib): Depend on $(test_dep).
180
181 2004-06-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
182
183         * library.make: fixed PLATFORM_CHANGE_SEPARATOR_CHAR on windows.
184
185 2004-06-09  Sebastien Pouliot  <sebastien@ximian.com>
186
187         * library.make: Added support to fully sign assemblies when doing a
188         "make install" (thanks to Jackson :-).
189
190 2004-06-09  Raja R Harinath  <rharinath@novell.com>
191
192         Do away with stampfiles.
193         Introduce support for VB test cases.
194         * library.make (HAVE_CS_TESTS, HAVE_VB_TESTS): New auto-detecting
195         defines.
196         (stampfile, test_stampfile): Remove.
197         (clean-local): Don't mention them.
198         (test-local, run-test-local, run-test-ondotnet-local):
199         Make unconditional.
200         ($(makefrag), $(test_makefrag)): Simplify.
201         ($(btest_lib)): New.  Support for VB testcases.
202
203 2004-06-09  Raja R Harinath  <rharinath@novell.com>
204
205         Partial support for writing Visual Basic source files.
206         * rules.make (USE_MBAS_FLAGS,BASCOMPILE,INTERNAL_MBAS): New.
207         * config-default.make (MBAS_FLAGS, DEFAULT_MBAS_FLAGS): New.
208         * profiles/default.make (MBAS): New.
209
210 2004-06-09  Raja R Harinath  <rharinath@novell.com>
211
212         Do away with stampfiles.
213         * executable.make (stampfile): Remove.
214         (clean-local): Remove mention of $(stampfile).
215         (test-local, run-test-local, run-test-ondotnet-local):
216         Make unconditional.  Add dummy rule to prevent other makefiles
217         from defining rules on these.
218         ($(PROGRAM)): Depend directly on $(BUILT_SOURCES).
219         ($(makefrag)): Simplify.
220
221 2004-06-03  Atsushi Enomoto  <atsushi@ximian.com>
222
223         * README.makefiles : added description for run-test-ondotnet.
224
225 2004-06-03  Atsushi Enomoto  <atsushi@ximian.com>
226
227         * Makefile, executable.make, library.make, rules.make :
228           Added new target "run-test-ondotnet" that works what "run-test"
229           used to be on windows (i.e. tests our libs under MS.NET).
230
231 2004-06-01  Atsushi Enomoto  <atsushi@ximian.com>
232
233         * platforms/win32.make : TEST_RUNTIME should be always mono we can't
234           test our libs against MS.NET runtime. Think about internal call).
235
236 2004-05-30  Jackson Harper  <jackson@ximian.com>
237
238         * library.make: Install to 2.0 package if building with the
239         net_2_0 profile.
240         
241 2004-05-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
242
243         * library.make: reference nunti.core.dll and nunit.util.dll when
244         building tests.
245
246 2004-05-26  Raja R Harinath  <rharinath@novell.com>
247
248         * library.make (clean-local): Add $(CLEAN_FILES) too.
249
250 2004-05-25  Sebastien Pouliot  <sebastien@ximian.com>
251
252         * library.make: changed case on nunit.framework.dll (lowercase)
253
254 2004-05-24  Raja R Harinath  <rharinath@novell.com>
255
256         * library.make (LIBRARY_COMPILE): New define.
257         ($(the_lib)): Use $(LIBRARY_COMPILE) to compile $(the_lib).
258
259         * executable.make (PROGRAM_INSTALL_DIR): Allow makefile to specify
260         a different directory for installation.
261         (install-local, uninstall-local): Use it.
262
263 2004-05-20  Raja R Harinath  <rharinath@novell.com>
264
265         * profiles/default.make (TEST_RUNTIME): Look in class/lib/default
266         for library to be tested.
267         * rules.make (INTERNAL_RESGEN): New Define.
268         * library.make (run-test-local): Move commands to run-test-lib.
269         Preparartion for allowing creation of addition test dll with .vb
270         testcases.
271         * executable.make (PROGRAM_COMPILE): New define.
272         ($(PROGRAM)): Use PROGRAM_COMPILE to compile PROGRAM.
273
274 2004-05-14  Jackson Harper  <jackson@ximian.com>
275
276         * library.make: Install package files. Get params in magical
277         correct order.
278         
279 2004-05-11  Jackson Harper  <jackson@ximian.com>
280
281         * platforms/linux.make:
282         * platforms/win32.make: Define a PLATFORM_PATH_SEPARATOR used for
283         separating paths in env vars. (ie MONO_PATH).
284         * profiles/net_2_0.make: Always use gmcs for building the 2.0
285         libraries. corlib is the first lib built and it will build gmcs.
286         
287 2004-05-11  Jackson Harper  <jackson@ximian.com>
288
289         * library.make: Allow assembly names to be different then their
290         .sources file names.
291         
292 2004-05-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
293
294         * library.make: build NUnit if we try to run 'make test' and the dll
295         is not found.
296
297 2004-04-29  Jackson Harper  <jackson@ximian.com>
298
299         * library.make: Fix uninstall
300         
301 2004-04-29  Martin Baulig  <martin@ximian.com>
302
303         * rules.make: Added `INTERNAL_ILASM'.
304
305 2004-04-29  Jackson Harper  <jackson@ximian.com>
306
307         * library.make: Use RUNTIME instead of PLATFORM_RUNTIME for the
308         gacutil. gacutil needs to be run on our runtime. Make dependancys
309         more sane.
310         
311 2004-04-28  Jackson Harper  <jackson@ximian.com>
312
313         * library.make: Use the proper runtime, make sure gacutil is
314         built.
315         
316 2004-04-28  Jackson Harper  <jackson@ximian.com>
317
318         * library.make: Install these bad actors to the GAC.
319         
320 2004-04-28  Raja R Harinath  <rharinath@novell.com>
321
322         * library.make (test_flags): NUnit.Framework.dll is now in
323         class/lib/$(PROFILE).
324
325 2004-04-26  Jackson Harper  <jackson@ximian.com>
326
327         * library.make:
328         * profiles/bootstrap.make:
329         * profiles/default.make: profiles are built in their ownb lib
330         directory now.
331         * profiles/net_2_0.make: new .net 2.0 profile.
332         
333 2004-04-22  Martin Baulig  <martin@ximian.com>
334
335         * profiles/net_1_2.make: Removed.
336         * profiles/martin-generics.make: Remove.
337
338 2004-04-19  Raja R Harinath  <rharinath@novell.com>
339
340         * rules.make (%-recursive): Honor 'make -k'.
341
342 2004-02-17  Martin Baulig  <martin@ximian.com>
343
344         * profiles/generics.make: Renamed to `martin-generics.make' and
345         added a comment to the file.  I'll rename this back when it's
346         ready for public use.
347
348 2003-12-17  Jackson Harper <jackson@ximian.com>
349
350         * profiles/default.make:
351         * profiles/net_1_0.make: Add ONLY_1_0 and ONLY_1_1 defines to fix
352         the build
353         
354 2003-12-08  Peter Williams  <peter@newton.cx>
355
356         * config-default.make: Don't check for / define
357         ECHO_ESCAPE: the check isn't smart enough and
358         apparently OS X's shell somehow doesn't support
359         escape characters.
360
361         * library.make: Use embedded tab instead of 
362         $(ECHO_ESCAPE). Fixes OS X build.
363         
364         * executable.make: Same.
365         
366 2003-12-05  Martin Baulig  <martin@ximian.com>
367
368         * profiles/generics.make: Define `GENERICS'.
369
370 2003-12-05  Martin Baulig  <martin@ximian.com>
371
372         * profiles/net_1_2.make: New profile; uses the .NET 1.2 API's, but
373         without generics and with mcs instead of gmcs.
374
375         * profiles/bootstrap.make: New profile; already use the newly
376         compiled mcs to compile corlib.
377
378 2003-12-04  Martin Baulig  <martin@ximian.com>
379
380         * profiles/generics.make: Use gmcs.
381
382 2003-11-12 Jackson Harper <jackson@ximian.com>
383
384         * rules.make: 
385         * platforms/linux.make: corlib name is now mscorlib.
386         
387 2003-11-09 Ben Maurer  <bmaurer@users.sourceforge.net>
388
389         * profiles/generics.make: add the -2 flag.
390
391 2003-10-28 Jackson Harper <jackson@ximian.com>
392
393         * platforms/linux.make: Tell users to read INSTALL.txt not the
394         non-existant README.building.
395         
396 2003-10-22  Dick Porter  <dick@ximian.com>
397
398         * platforms/win32.make:
399         * platforms/linux.make:
400         * rules.make: Added RESGEN platform-specific tool.
401
402 2003-08-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
403
404         * config-default.make: the /nowarn arguments are now set on a per
405         library basis.
406
407 2003-07-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
408
409         * executable.make: install-local depends on the program too.
410
411 2003-07-25  Peter Williams <peter@newton.cx>
412
413         * rules.make (run-test): Make it depend on 'test-local'
414         then 'run-test-local' after 'run-test-recursive'. This way,
415         'make run-test' from the toplevel doesn't recurse through all
416         the directories doing a make test before we run anything.
417
418 2003-07-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
419
420         * rules.make: run-test depends now on 'test'.
421
422 2003-07-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
423
424         * rules.make: set corlib to PLATFORM_CORLIB if this is defined.
425
426 2003-07-22  Peter Williams  <peter@newton.cx>
427
428         * rules.make (withmcs): Add this developer utility target.
429
430 2003-07-20  Peter Williams  <peter@newton.cx>
431
432         * README.platforms: Update docs for changes below.
433
434         * platforms/win32.make (PLATFORM_CORLIB): Set this variable
435         to 'mscorlib.dll', instead of $(corlib) which everything links
436         against. *Almost* everything should link against our corlib --
437         with the exception of corlib_cmp and corlib_res.
438
439         * platforms/linux.make: Same here: corlib.dll
440
441         * rules.make: Define $(corlib) here.
442
443 2003-07-20  Peter Williams  <peter@newton.cx>
444
445         * config-default.make (TEST_RUNTIME): Use the platform runtime
446         to run tests, by default.
447
448         * profiles/default.make (TEST_RUNTIME): If our test runtime is
449         mono, use the --debug flag.
450
451         * executable.make (sourcefile): Add a basename so that we can
452         find the nunit sources and so we behave a bit more like
453         library.make
454
455         * config-default.make (TEST_HARNESS): Find nunit-console in its
456         new home.
457
458 2003-07-20  Peter Williams  <peter@newton.cx>
459
460         * library.make ($(response)): Do a "Creating ..." line here.
461
462         * executable.make ($(response)): Same.
463
464         * config-default.make: Make warning more forceful.
465
466         * rules.make: Define a useful 'PLATFORM_MONO_NATIVE' that is
467         set if the platform does not have a native runtime (ie, linux).
468         Also reorder some definitions.
469
470 2003-07-20  Peter Williams  <peter@newton.cx>
471
472         * Created. See ../ChangeLog for entries earlier than
473         this.
474