A micro-optimization of 'make dist'
[mono.git] / mcs / build / ChangeLog
1 2008-11-18  Raja R Harinath  <harinath@hurrynot.org>
2
3         * library.make (TEST_FILES): Notice filenames with ../ in the test
4         sources file, and handle them in a way suitable for the 'make
5         dist' handling of such files.
6
7 2008-11-12  Zoltan Varga  <vargaz@gmail.com>
8
9         * library.make: AOT the library after compilation if the AOT_IN_PROFILES
10         variable is defined and it contains the current profile.
11
12 2008-10-18  Jonathan Pryor  <jpryor@novell.com>
13
14         * rules.make (dist-default): Distribute the Documentation directory, 
15           if present.
16
17 2008-10-18  Jonathan Pryor  <jpryor@novell.com>
18
19         * rules.make (MDOC): MONO_PATH needs to include net_1_1 so monodoc.dll
20           can be found.
21
22 2008-10-17  Jonathan Pryor  <jpryor@novell.com>
23
24         * README.makefiles: Add documentation about the new doc-update target.
25
26 2008-10-18  Raja R Harinath  <harinath@hurrynot.org>
27
28         * rules.make (MDOC): Pass a proper MONO_PATH.
29
30 2008-10-17  Jonathan Pryor  <jpryor@novell.com>
31
32         * build.rules: doc-update is now a standard target; provide a $(MDOC)
33           variable to simplify running the `mdoc` updater program.
34         * executable.make: Add doc-update target support (does nothing).
35         * library.make: Add doc-update target support; runs `mdoc update` on
36           the assembly, updating the documentation within Documentation/en.
37         * Makefile: Add doc-update target support.
38
39 2008-09-14  Zoltan Varga  <vargaz@gmail.com>
40
41         * library.make: Allow FIXTURE make variable to be passed to nunit.
42
43 2008-08-29  Raja R Harinath  <harinath@hurrynot.org>
44
45         * rules.make (do-%): Revert change below.  We need the recursion
46         to ensure ordering of %-local after %-recursive.  IOW, we
47         want to ensure strict linearity even with a 'make -j'.
48
49 2008-08-28  Zoltan Varga  <vargaz@gmail.com>
50
51         * rules.make (Q_MCS): Use 5 spaces instead of -e '\\t'.
52
53         * library.make: Make some command quiet.
54
55         * rules.make: Avoid some needless recursive make invocations.
56         
57         * rules.make: Print the profile in the quiet commands.
58
59         * rules.make: Make the build process quiet similarly to the runtime build
60         process. Use the V=1 argument to make to make it verbose again.
61
62 2008-08-04  Zoltan Varga  <vargaz@gmail.com>
63
64         * rules.make (PROFILE): If no profile is passed on the command line, make
65         net_2_0 the default.
66
67 2008-06-30  Marek Safar  <marek.safar@gmail.com>
68
69         * platforms/linux.make: Enable mcs optimizations.
70
71 2008-06-03  Zoltan Varga  <vargaz@gmail.com>
72
73         * rules.make (PROFILE): Reapply the PROFILE=net_2_0 change. One can still
74         build 1.1 libraries using make PROFILE=default.
75
76 2008-05-27  Raja R Harinath  <harinath@hurrynot.org>
77
78         * executable.make ($(PROGRAM_config)): Depend on directory
79         creation stamp.
80
81 2008-04-09  Gert Driesen  <drieseng@users.sourceforge.net>
82
83         * library.make: hidden -bootstrap option for gacutil is no longer
84         necessary.
85
86 2008-03-24  Zoltan Varga  <vargaz@gmail.com>
87
88         * library.make (check): Add a standard check target and make it the same as
89         run-test.
90
91 2008-03-22  Zoltan Varga  <vargaz@gmail.com>
92
93         * profiles/net_3_5.make (PROFILE_MCS_FLAGS): Get rid of obsolete 
94         -langversion:linq option.
95
96 Fri Mar 14 09:31:59 CET 2008 Paolo Molaro <lupus@ximian.com>
97
98         * rules.make, library.make: move GACUTIL definition into rules.make as
99         it's used also by the tools. Add the hidden -bootstrap option.
100
101 2008-02-18  Raja R Harinath  <harinath@hurrynot.org>
102
103         * rules.make (%/.stamp): Unify all directory creation targets here.
104
105 2008-02-17  Raja R Harinath  <harinath@hurrynot.org>
106
107         * profiles/net_2_1_bootstrap.make: New.
108         * profiles/net_2_1_raw.make: New.  The untuned 2.1 profile.
109         * profiles/net_2_1.make: New.  The tuned 2.1 profile.
110         * Makefile (PROFILES): Update.
111
112 2007-12-06  Atsushi Enomoto  <atsushi@ximian.com>
113
114         * profiles/net_3_5.make : fixed net_2_0 path.
115
116 2007-12-03  Marek Safar  <marek.safar@gmail.com>
117
118         * Makefile.make: Distribute 3.5 profile
119         
120 2007-11-08  Wade Berrier  <wberrier@novell.com>
121
122         * config-default.make: add sysconfdir dir (for mconfig/config.xml)
123
124 2007-11-01  Marek Safar  <marek.safar@gmail.com>
125
126         * corcompare.make: Build corcompare into same directory.
127         
128 2007-10-27  Marek Safar  <marek.safar@gmail.com>
129
130         * profiles/net_2_0_bootstrap.make: Fixed generics compiler name.
131         
132 2007-10-27  Marek Safar  <marek.safar@gmail.com>
133
134         * rules.make: Changed gmcs location.
135         
136 2007-10-27  Marek Safar  <marek.safar@gmail.com>
137
138         * executable.make: Added KEEP_OUTPUT_FILE_COPY to avoid move and copy
139         back compiler executables.
140
141 2007-09-21  Raja R Harinath  <harinath@gmail.com>
142
143         * Makefile (PROFILES): Remove 'atomic' profiles.
144         * profiles/atomic.make, profiles/bootstrap.make: Remove.
145
146 2007-09-04  Wade Berrier  <wberrier@novell.com>
147
148         * library.make: Glob for .sources for all profiles.
149         Use tools/removecomments.sh to account for '#include' and
150         comments, which are only used in the jvm profile at this point
151
152 2007-09-01  Jb Evain  <jbevain@novell.com>
153
154         * Makefile: consider the net_2_1 profile.
155
156 2007-08-12  Marek Safar  <marek.safar@gmail.com>
157
158         * library.make: Includes new `corcompare' target.
159         
160         * corcompare.make: I got tired of hacking corcompare stuff again and
161         again.
162         
163 2007-08-11  Jb Evain  <jbevain@novell.com>
164
165         * profiles/net_2_1: allow 2.1 assemblies in the GAC.
166
167 2007-07-27  Jb Evain  <jbevain@novell.com>
168
169         * profiles/net_2_1: use smcs to compile the .net 2.1 assemblies.
170
171 2007-07-23  Raja R Harinath  <rharinath@novell.com>
172
173         * library.make (install-local) [GAC]: If LIBRARY_PACKAGE is set to
174         'none' don't install a symlink from a package directory into the gac.
175
176 2007-07-11  Jb Evain  <jbevain@novell.com>
177
178         * profiles/net_2_1.make: work on the 2_1 profile.
179
180 2007-06-12  Marek Safar  <marek.safar@gmail.com>
181
182         * rules.make: Added FRAMEWORK_VERSION_MAJOR.
183
184 2007-05-11  Raja R Harinath  <rharinath@novell.com>
185
186         * Makefile (dist-local): Remove special-case code.
187         * rules.make ($(depsdir)): New rule to create the dependencies
188         directory on demand.
189         * library.make, executable.make: Make generated files depend on
190         $(depsdir).
191         * profiles/basic.make: Likewise.
192
193         * profiles/net_2_0_bootstrap.make: Move rules for mcs.exe to
194         mcs/Makefile.
195         * library.make (the_libdir, build_libdir): New.  Create these
196         directories on demand instead of worrying about keeping the list
197         of profiles uptodate.
198         * executable.make (prog_dir): Likewise.
199
200 2007-03-17  Marek Sieradzki  <marek.sieradzki@gmail.com>
201
202         * library.make: Show correct log (TestResult-ondotnet-PROFILE...) for
203         make run-test-ondotnet.
204
205 Fri Nov 24 18:38:31 CET 2006 Paolo Molaro <lupus@ximian.com>
206
207         * library.make: added ability to pass flags to the mono runtime when
208         running the test suite.
209
210 2006-09-06  Kornél Pál  <kornelpal@gmail.com>
211
212         * TestConfiguration.cs: Moved to Npgsql.
213
214 2006-09-05  Kornél Pál  <kornelpal@hotmail.com>
215
216         * config-default.make: Use UTF-8 as the default encoding for compilers.
217
218 2006-09-04  Raja R Harinath  <rharinath@novell.com>
219
220         * library.make (TEST_HARNESS_VERBOSE): New user toggle.  If
221         defined, NUnit will print the names of the unit tests as they are
222         run.  Can be used to narrow down infloops.
223         (TEST_HARNESS_EXCLUDE): Provide a way to override the list of
224         excluded unit test categories.
225
226 2006-04-11  Raja R Harinath  <rharinath@novell.com>
227
228         * profiles/default.make (BOOTSTRAP_PROFILE): Define.
229         * profiles/net_2_0.make (BOOTSTRAP_PROFILE): Define.
230         * rules.make (INTERNAL_RESGEN): Pick from bootstrap profile.
231
232 2006-01-19  Raja R Harinath  <rharinath@novell.com>
233
234         * library.make (test_lib): Don't allow to be overridden.
235         (test_against, test_dep): Remove.
236
237 2006-01-11 Gonzalo Paniagua Javier <gonzalo@ximian.com>
238
239         * executable.make: allow installing a different .config file for
240         executables such as nunit-console.exe that should use a different one
241         depending on the profile.
242
243 2006-01-05  Raja R Harinath  <rharinath@novell.com>
244
245         * library.make (run-test-lib, run-test-ondotnet-lib): Workaround a
246         sed limitation when printing the testsuite log.
247
248 2005-12-22  Raja R Harinath  <rharinath@novell.com>
249
250         * library.make (lib_dir): Define to 'compat' if LIBRARY_COMPAT is
251         defined, 'lib' otherwise.
252         (the_lib): Use it to decide where to place the output library.
253         (LIBRARY_PACKAGE): New define.  Install development symlinks for
254         compat libraries in a different directory.
255
256 2005-12-03  Kornél Pál  <kornelpal@hotmail.com>
257
258         * config-default.make: Corrected default CODEPAGE comment to ISO-8859-1
259           (Latin 1).
260
261 2005-11-22  Vladislav Spivak <spivak@mainsoft.com>
262         * Missed dependency. 
263         <profile>.sources file is supporting #include directive
264         Usually it includes common .sources file.
265         Let's make it dependency of <profile>.sources
266
267 2005-10-03  Raja R Harinath  <rharinath@novell.com>
268
269         * profiles/basic.make (monolite_flag, use_monolite): New.  Used to
270         determine if we need to compile with 'monolite' rather than with
271         an external mcs.
272         (do-profile-check): Simplify.  Remove corlib version testing
273         scripts.  Delegate that work to the mono runtime itself.  Split
274         off 'monolite' handling into ...
275         (do-profile-check-monolite): ... this.
276
277 2005-09-27  Kornél Pál  <kornelpal@hotmail.com>
278
279         * config-default.make: Added CODEPAGE that is the default encoding used by
280           compilers.
281         * rules.make (USE_MCS_FLAGS, USE_MBAS_FLAGS): Added /codepage.
282
283 2005-09-22  Raja R Harinath  <rharinath@novell.com>
284
285         * Makefile (BUILT_FILES): New.
286         (all-local ...): Depend on them.
287         (clean-local): Relete them.
288         (common/Consts.cs): New rule.
289         (COMMON_SRCS): Don't distribute common/Consts.cs.
290
291 2005-09-12  Raja R Harinath  <rharinath@novell.com>
292
293         * profiles/basic.make (do-profile-check): Quote sed expression.
294
295 2005-09-06  Raja R Harinath  <rharinath@novell.com>
296
297         * profiles/net_1_1_bootstrap.make: Remove special-handling on Win32.
298         * profiles/default.make: Likewise.
299
300 2005-08-26  Kornél Pál  <kornelpal@hotmail.com>
301
302         * Makefile: Added Consts.cs.in. Removed MonoVersion.cs.
303
304 2005-08-23  Raja R Harinath  <rharinath@novell.com>
305
306         * profiles/basic.make (do-profile-check): Set MONO_PATH to
307         monolite directory when running disassembler.
308
309 2005-08-22  Raja R Harinath  <rharinath@novell.com>
310
311         * Makefile (DISTFILES): Move files in common/ to ...
312         (COMMON_SRCS): ... this.  Add Consts.cs, MonoVersion.cs and
313         TestConfiguration.cs.
314
315 2005-08-19  Raja R Harinath  <rharinath@novell.com>
316
317         * profiles/basic.make (do-profile-check): Add some debugging output.
318         Handle disassemblers that print corlib version in hex.
319
320 2005-07-26  Raja R Harinath  <rharinath@novell.com>
321
322         * executable.make, library.make: Use unix-style commandline options.
323         * profiles/basic.make (FRAMEWORK_VERSION): Set.
324         * profiles/net_1_1_bootstrap.make (FRAMEWORK_VERSION): Likewise.
325
326 2005-07-22  Raja R Harinath  <rharinath@novell.com>
327
328         * profiles/basic.make (do-profile-check): Make the "silent"
329         compilation check even more silent.  Refuse to use monolite if the
330         corlib version of monolite/mscorlib.dll doesn't match the corlib
331         version of the source.
332
333 2005-06-15  Raja R Harinath  <rharinath@novell.com>
334
335         * executable.make (dist-local): Copy from library.make.
336
337 2005-05-23  Raja R Harinath  <rharinath@novell.com>
338
339         * rules.make (STD_TARGETS): Make them all go through an
340         indirection.
341         (all): Indirect through do-all.
342         (all.real): Remove.
343         (do-%): New pattern fallback.  Performs the standard behaviour:
344         %-recursive, and then %-local.
345         (do-run-test): New.  Make '-k' more useful.
346         Reported by Ritvik Mayank.
347
348 2005-05-10  Raja R Harinath  <rharinath@novell.com>
349
350         * library.make (dist-fixup): Fix typo.
351
352 2005-05-06  Raja R Harinath  <rharinath@novell.com>
353
354         * library.make (LIBRARY_NEEDS_PREPROCESSING): New control.
355         (build_lib): Name of library built.  Default to $(the_lib) unless
356         preprocessing.
357         ($(build_lib)): Rename from '$(the_lib)'.
358         ($(makefrag)): Emit dependencies on $(build_lib).
359
360 2005-05-04  Zoltan Varga  <vargaz@freemail.hu>
361
362         * rules.make config-default.make: Use the install-sh script from the mono
363         directory by default.
364
365 2005-04-29  Ben Maurer  <bmaurer@ximian.com>
366
367         * profiles/basic.make: The test for mcs was broken on jails where
368         we got a warning due to /proc not being mounted. Remove hackish wc
369         usage.
370
371 2005-04-25  Raja R Harinath  <rharinath@novell.com>
372
373         * config-default.make (RUNTIME): Set to 'false'.
374         Reported by Ben Maurer.
375         * profiles/basic.make (MCS): Revert changes below.
376         * platforms/linux.make (ILDISASM): Define.
377         * platforms/win32.make (ILDIsASM): Likewise.
378
379 2005-04-23  Ben Maurer  <bmaurer@ximian.com>
380
381         * profiles/basic.make: Ensure that make dist works even if you
382         only have an old mono rpm installed. Essential for the new build
383         system.
384
385 2005-04-21  Raja R Harinath  <rharinath@novell.com>
386
387         * rules.make (INTERNAL_ILASM): Update.
388
389 2005-04-14  Raja R Harinath  <rharinath@novell.com>
390
391         * library.make (dist-local): Include all ChangeLogs in the tarball.
392
393 2005-04-08  Raja R Harinath  <rharinath@novell.com>
394
395         * profiles/basic.make (do-profile-check): Handle some possible
396         timestamp problems.  Hopefully fix #74280.
397
398 2005-03-30  Zoltan Varga  <vargaz@freemail.hu>
399
400         * rules.make (INSTALL_DATA): Pass -c to install.
401
402 2005-03-18  Raja R Harinath  <rharinath@novell.com>
403
404         * library.make (TEST_FILES, $(test_response), $(btest_response)):
405         Be more robust to empty lines in test sources file.
406
407 2005-03-14  Raja R Harinath  <rharinath@novell.com>
408
409         * executable.make (install-local): Depend on all-local even when
410         NO_INSTALL is defined.
411         * library.make: Minor cleanups to match executable.make.
412         (gacutil): Use net_1_1_bootstrap/gacutil.exe.
413         * profiles/basic.make (no-install): Remove.
414         * profiles/net_1_1_bootstrap.make (no-install): Likewise.
415
416 2005-02-22  Raja R Harinath  <rharinath@novell.com>
417
418         * library.make (BUILT_SOURCES_cmdline): Don't define if
419         BUILT_SOURCES is empty.
420
421 2005-02-21  Michal Moskal  <malekith@pld-linux.org>
422             Raja R Harinath  <rharinath@novell.com>
423
424         * config-default.make (exec_prefix, libdir): New.
425         * library.make (libdir): Remove.
426         * executable.make (PROGRAM_INSTALL_DIR): Define in terms of
427         $(libdir).
428
429 2005-02-15  Raja R Harinath  <rharinath@novell.com>
430
431         * platforms/win32.make (RESGEN): Point to in-tree version of
432         resgen.exe.  The .NET 1.1 SDK doesn't appear to come with one.
433
434 2005-02-10  Raja R Harinath  <rharinath@novell.com>
435
436         * library.make (DISTFILES): Add $(btest_sourcefile).
437
438 2005-02-02  Raja R Harinath  <rharinath@novell.com>
439
440         * library.make (run-test-lib): Use $(LOCAL_TEST_HARNESS_FLAGS).
441         (run-test-ondotnet-lib): Use $(LOCAL_TEST_HARNESS_ONDOTNET_FLAGS).
442
443 2005-02-01  Zoltan Varga  <vargaz@freemail.hu>
444
445         * library.make (run-test-lib): Exclude InetAccess tests.
446
447 2005-02-30  Sebastien Pouliot  <sebastien@ximian.com>
448
449         * library.make: Exclude CAS category from run-test-ondotnet.
450
451 2005-01-31  Sebastien Pouliot  <sebastien@ximian.com>
452
453         * library.make: Exclude CAS category when running unit tests with 
454         Mono (they can be run manually using --security). Added a define
455         for WINDOWS (only on Windows) to be used for declarative security
456         attributes ONLY.
457
458 2005-01-24  Raja R Harinath  <rharinath@novell.com>
459
460         * library.make (run-test-lib, run-test-ondotnet-lib): Print out
461         the log.
462
463 2005-01-16 Nick Drochak  <ndrochak@ieee.org>
464
465         * library.make: /exclude for nunit needs a comma separated list
466
467 2005-01-14  Atsushi Enomoto  <atsushi@ximian.com>
468
469         * library.make : output TestResult-ondotnet-(profile).log instead of
470           TestResult-(profile).log for run-test-ondotnet.
471
472 2005-01-13  Raja R Harinath  <rharinath@novell.com>
473
474         * profiles/default.make (MBAS) [!PLATFORM_MONO_NATIVE]: Use
475         $(EXTERNAL_MBAS).
476         Reported by Nick Drochak.
477
478 2005-01-03  Nick Drochak  <ndrochak@ieee.org>
479
480         * library.make: Ingore tests that are not meant to be run on MS DotNet
481
482 2004-12-14  Raja R Harinath  <rharinath@novell.com>
483
484         * profiles/basic.make (do-profile-check): Rename from
485         'real-profile-check'.  Rewrite slightly to use 'make' to build the
486         sanity check.
487         (clean-profile): Remove the files.
488
489 2004-12-08  Raja R Harinath  <rharinath@novell.com>
490
491         * profiles/basic.make (real-profile-check): Update to new location
492         of secret stash of bootstrap files.
493
494 2004-12-07  Raja R Harinath  <rharinath@novell.com>
495
496         * executable.make (uninstall-local): Remove .config file too.
497         * library.make (uninstall-local): Don't error out if GACUTIL fails.
498
499 2004-12-07  Raja R Harinath  <rharinath@novell.com>
500
501         * library.make (BUILT_SOURCES_cmdline): Use
502         PLATFORM_CHANGE_SEPARATOR_CMD on BUILT_SOURCES too.
503         ($(the_lib)): Use it.
504
505 2004-12-04  Atsushi Enomoto  <atsushi@ximian.com>
506
507         * library.make,
508           profiles/default.make,
509           profiles/basic.make : use PLATFORM_PATH_SEPARATOR.
510
511 2004-12-03  Raja R Harinath  <rharinath@novell.com>
512
513         * profiles/basic.make (MCS): Run the INTERNAL_MCS.
514         (USE_BOOT_COMPILE): Remove.
515
516 2004-12-03  Raja R Harinath  <rharinath@novell.com>
517
518         * library.make (gacdir_flag): New.  Disable /gacdir flag if
519         RUNTIME_HAS_CONSISTENT_GACDIR flag is set.
520         (install-local): Use it.
521
522 2004-11-30  Raja R Harinath  <rharinath@novell.com>
523
524         * executable.make (makefrag): Make profile-specific.
525
526 2004-11-26  Martin Baulig  <martin@ximian.com>
527
528         * library.make (run-test-lib, run-test-ondotnet-lib): Added
529         `/output:TestResult-$(PROFILE).log' argument to NUnit.
530
531 2004-11-26  Raja R Harinath  <rharinath@novell.com>
532
533         * library.make ($(the_lib)): Don't complain if a .mdb file wasn't
534         created (even though it's just a warning).
535         (install-local) [LIBRARY_INSTALL_DIR]: Likewise.
536         (PACKAGE): Remove.
537         (install-local) [!LIBRARY_INSTALL_DIR]: Use $(FRAMEWORK_VERSION).
538         * executable.make ($(PROGRAM)): Likewise.
539         (install-local): Likewise.
540         (PROGRAM_INSTALL_DIR): Define Using $(FRAMEWORK_VERSION).
541
542 2004-11-26  Raja R Harinath  <rharinath@novell.com>
543
544         * profiles/basic.make (real-profile-check): Prepend ./ when
545         executing basic-profile-check.exe.  EXTERNAL_RUNTIME can be empty.
546
547 2004-11-25  Raja R Harinath  <rharinath@novell.com>
548
549         * platforms/linux.make (EXTERNAL_MCS,EXTERNAL_MBAS,EXTERNAL_RUNTIME):
550         New.
551         * platforms/win32.make: Likewise.
552         * profiles/basic.make: Use $(EXTERNAL_MCS).
553         * profiles/net_1_1_bootstrap.make: Likewise.
554         * library.make ($(the_lib)): Add support for BUILT_SOURCES.
555         (run-test-lib): Pass $(TEST_HARNESS_FLAGS) to harness.  Useful to
556         pass, say /labels, to nunit-console.
557
558 2004-11-25  Raja R Harinath  <rharinath@novell.com>
559
560         * library.make ($(gacutil)): Fix path.
561
562 2004-11-23  Raja R Harinath  <rharinath@novell.com>
563
564         * executable.make (NO_INSTALL): New option.  Disables installation.
565         * library.make (NO_INSTALL): Likewise.
566         (install-local) [!NO_INSTALL, !LIBRARY_INSTALL_DIR]: Pass both
567         /gacdir and /root options to gacutil.
568         * platforms/linux.make (platform-check): Print the BOOTSTRAP_MCS
569         command that was tried, in case of failure.     
570         * profiles/basic.make (NO_TEST, NO_INSTALL): Define.
571         * profiles/net_1_1_bootstrap.make: Likewise.
572         * profiles/net_2_0_bootstrap.make: Likewise.
573
574 2004-11-22  Raja R Harinath  <rharinath@novell.com>
575
576         * library.make (SN): New define.  Use the net_1_1_bootstrap sn.exe.
577         (SNFLAGS): New.
578         ($(the_lib)): Use them to sign assemblies as they're built.
579         (the_lib_signature_stamp): Remove.
580
581         * Makefile (DISTFILES): Distribute all the profile make-fragments.
582         (clean-local): Clean up the deps/ directory.
583
584 2004-11-19  Raja R Harinath  <rharinath@novell.com>
585
586         Orchestrate the bootstrap.
587         * rules.make (INTERNAL_MCS): Look for mcs.exe in profile-specific directory.
588         * profiles/net_1_1_bootstrap.make (BOOTSTRAP_MCS): Use mcs.exe from
589         basic profile.  
590         * profiles/default.make (BOOTSTRAP_MCS): Use mcs.exe from the
591         net_1_1_bootstrap profile.
592         * profiles/net_2_0_bootstrap.make (BOOTSTRAP_MCS): Use mcs.exe
593         from default profile.
594         (all-local, clean-local): New.  Copy mcs.exe from default profile,
595         but customize it to work with 2.0.x libraries.
596         * profiles/net_2_0.make (BOOTSTRAP_MCS): Define approprately for
597         building corlib.
598
599         * executable.make (executable_CLEAN_FILES): Clean up more files.
600         ($(PROGRAM)): Move .mdb files too.
601
602 2004-11-18  Atsushi Enomoto  <atsushi@ximian.com>
603
604         * library.make: Reverted the last fix. It broke windows build (that
605           should be fixed though).
606
607 2004-11-18  Atsushi Enomoto  <atsushi@ximian.com>
608
609         * library.make: Some minor fix for PLATFORM_PATH_SEPARATOR.
610
611 2004-11-17  Raja R Harinath  <rharinath@novell.com>
612
613         * executable.make: Improve support for building executable into a
614         different directory.
615
616 2004-11-09  Raja R Harinath  <rharinath@novell.com>
617
618         * profiles/basic.make: New.
619         * profiles/net_2_0.make (PROFILE_MCS_FLAGS): Remove '-2' flag.
620         * profiles/net_1_1_bootstrap.make (NO_SIGN_ASSEMBLY): Set.
621
622 2004-11-04  Raja R Harinath  <rharinath@novell.com>
623
624         * profiles/net_1_1_bootstrap.make: New profile.
625         * profiles/net_2_0_bootstrap.make: Use in-tree mcs for
626         bootstrapping mscorlib.dll.
627         * platforms/linux.make (platform-check): Make more robust.
628         * rules.make (%-recursive): Propagate error exit from sub-makes
629         even if invoked with 'make -k'.
630
631 2004-10-29  Raja R Harinath  <rharinath@novell.com>
632
633         * profiles/net_2_0_bootstrap.make (PROFILE_MCS_FLAGS): Remove
634         -langversion:default flag.
635
636         * rules.make (distdir): Remove.
637         (PROFILE_SUBDIRS): New.  Support profile-specific SUBDIRS.
638         (DIST_SUBDIRS): New.
639         (dist-recursive): Define distdir here.
640
641 2004-10-25  Zoltan Varga  <vargaz@freemail.hu>
642
643         * config-default.make (TEST_RUNTIME): Add TEST_MONO_PATH variable.
644
645 2004-09-27  Raja R Harinath  <rharinath@novell.com>
646
647         * library.make ($(test_nunit_dep)): Make sure NUnit is built for
648         the profile being tested.
649         (nunit-$(PROFILE).stamp): Rename from nunit.stamp.
650         * config-default.make (TEST_HARNESS): Look for 'nunit-console' in
651         profile-specific directory.
652
653 2004-09-21  Raja R Harinath  <rharinath@novell.com>
654
655         * profiles/net_2_0_bootstrap.make: New file.
656
657         * library.make (the_mdb): Fix.
658         (library_CLEAN_FILES): Add the new test results files too.
659
660 2004-09-14  Raja R Harinath  <rharinath@novell.com>
661
662         * library.make (test_lib, btest_lib): Build separate test
663         assemblies for separate profiles.
664         (dist-local): Don't copy files beginning with '../'.
665         (test_sourcefile, btest_sourcefile): Define in terms of
666         $(test_lib) or $(btest_lib) only if they're overriden.
667         (test_response, test_makefrag): Remove redundant $(PROFILE) in name.
668         (run-test-lib, run-btest-lib): Unify.  Give profile-specific name
669         for output XML file.
670         * rules.make (dist-default): Handle any of Makefile, makefile, or
671         GNUmakefile being present.
672         * profiles/net_2_0.make (TEST_RUNTIME): Don't define.
673
674 2004-08-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
675
676         * executable.make:
677         * library.make: install/clean .mdb files.
678
679 2004-07-30  Martin Baulig  <martin@ximian.com>
680
681         * executable.make (EXTRA_SOURCES): New variable to add extra
682         sources to the program.
683
684 2004-07-30  Raja R Harinath  <harinath@blr-harinath.blr.novell.com>
685
686         * executable.make (PROGRAM_config): New auto-detecting define.
687         Defined if $(PROGRAM).config exists.
688         (install-local): Install $(PROGRAM_config) if it exists.
689
690 2004-07-21  Lluis Sanchez Gual  <lluis@novell.com>
691
692         * profiles/default.make, profiles/net_2_0.make, profiles/net_1_0.make:
693           Added FRAMEWORK_VERSION var.
694
695 2004-07-02  Raja R Harinath  <rharinath@novell.com>
696
697         Support for avoiding "sharing violations" while compiling core
698         libraries with an in-tree compiler.
699         * library.make (LIBRARY_USE_INTERMEDIATE_FILE): New toggle.
700         ($(the_lib)): Use it.
701
702 2004-07-02  Raja R Harinath  <rharinath@novell.com>
703
704         * rules.make (OVERRIDE_BARE_TARGETS): Remove.
705         (OVERRIDE_TARGET_ALL): New control for overriding the default all:
706         rule.  If set, 'make all' will run 'all.override' from the client
707         Makefile.
708         (all): Move commands ...
709         (all.real): ... here.  Make ordering assumptions explicit, and
710         parallel-safe.
711         (test,run-test,run-test-ondotnet,clean,install,uninstall):
712         Consolidate into ...
713         (STD_TARGETS): ... this new variable.  Make ordering assumption
714         between -recursive and -local targets explicit.
715         (%-recursive): Handle W32 GNU make that has --unix as the first
716         argument in $(MAKE).
717         * README.makefiles (Special recursion needs): Update to reflect
718         changes.
719         * library.make (all-local): Build $(the_lib_signature_stamp) when
720         NO_SIGN_ASSEMBLY is defined.
721         ($(gacutil),$(sn)): Consolidate rules.
722         (test-local,run-test-local,run-test-ondotnet-local): Likewise.
723
724 2004-07-02  Raja R Harinath  <rharinath@novell.com>
725         
726         * config-default.make (TEST_RUNTIME): Use 'mono' by default.
727         * platforms/win32.make (TEST_RUNTIME): Remove.
728         * profiles/default.make (TEST_RUNTIME): Remove.
729
730 2004-06-28  Raja R Harinath  <rharinath@novell.com>
731
732         * platforms/linux.make (RESGEN): Define using $(INTERNAL_RESGEN).
733
734 2004-06-21  Raja R Harinath  <rharinath@novell.com>
735
736         * executable.make ($(PROGRAM)): Move depend on the makefrags ...
737         (all-local): ... here.
738         * library.make ($(the_lib), $(test_lib), $(btest_lib), all-local):
739         Likewise.
740         (LIBRARY_SNK): New default define.  Allows library to be signed
741         with a key other than mono.snk.
742         ($(the_lib_signature_stamp)): New stamp file created when an
743         assembly is signed.
744         (install-local, uninstall-local, maybe-sign-lib): Set MONO_PATH.
745
746 2004-06-16  Raja R Harinath  <rharinath@novell.com>
747
748         * library.make ($(makefrag),$(test_makefrag),$(btest_makefrag)): 
749         Depend on library.make.
750         * executable.make ($(makefrag)): Depend on executable.make.
751
752 2004-06-16  Atsushi Enomoto  <atsushi@ximian.com>
753
754         * library.make : Added GACDIR. Use cygpath -w on windows.
755
756 2004-06-14  Raja R Harinath  <rharinath@novell.com>
757
758         * platforms/linux.make (PLATFORM_CHANGE_SEPARATOR_CMD): Define to 'cat'.
759         (PLATFORM_TWEAK_CORLIB_SOURCES): Remove.
760         (platform-check): Avoid bash-ism.
761         * library.make: Simplify uses of $(patsubst x,y,$(foo)) to $(foo:x=y).
762         (core_sourcefile): Rename back to ...
763         (sourcefile): ... this.  Remove creation of redundant intermediate file.
764         (response): Change test for optimization, now that
765         PLATFORM_CHANGE_SEPARATOR_CMD is unconditional.  Combine with
766         platform-exclude handling.
767         (library_CLEAN_FILES): New variable to specify clean:-able files
768         close to where they're defined.
769         (test_response, btest_response): Simplify.
770         * executable.make (response): Change test for optimization.
771         (executable_CLEAN_FILES): New define.
772
773 2004-06-14  Raja R Harinath  <rharinath@novell.com>
774
775         * library.make (uninstall-local): Fix typo.
776
777 2004-06-11  Atsushi Enomoto  <atsushi@ximian.com>
778
779         * library.make : HAVE_CS_TESTS fixie.
780
781 2004-06-11  Raja R Harinath  <rharinath@novell.com>
782
783         * library.make (HAVE_CS_TESTS, HAVE_VB_TESTS): Allow to be
784         overriden.  Useful if the tests sourcefile is generated.
785         (TEST_COMPILE, BTEST_COMPILE): Allow these to be customized too.
786
787         * platforms/win32.make (PLATFORM_TWEAK_CORLIB_SOURCES): Remove.
788
789         Support enough features to build mscorlib.dll.
790         * library.make (core_sourcefile): New renamed from $(sourcefile).
791         (PLATFORM_excludes): Auto-detecting define that sees if
792         $(LIBRARY).$(PLATFORM)-excludes file exists.
793         (sourcefile): New.  Possibly-built file that removes
794         PLATFORM_excluded files from core_sourcefile.
795         (test_against, test_dep): New.  Allow the test assembly to be
796         built against a different library.
797         (test_lib): Allow makefile to override the name of the test
798         assembly.
799         (LIBRARY_INSTALL_DIR): If defined, switch to using $(INSTALL_LIB)
800         rather than $(gacutil).
801         (DISTFILES, dist-local): Use core_sourcefile.
802         (clean-local): Remove sourcefile if it was generated.
803         (test_lib, btest_lib): Depend on $(test_dep).
804
805 2004-06-10  Gonzalo Paniagua Javier <gonzalo@ximian.com>
806
807         * library.make: fixed PLATFORM_CHANGE_SEPARATOR_CHAR on windows.
808
809 2004-06-09  Sebastien Pouliot  <sebastien@ximian.com>
810
811         * library.make: Added support to fully sign assemblies when doing a
812         "make install" (thanks to Jackson :-).
813
814 2004-06-09  Raja R Harinath  <rharinath@novell.com>
815
816         Do away with stampfiles.
817         Introduce support for VB test cases.
818         * library.make (HAVE_CS_TESTS, HAVE_VB_TESTS): New auto-detecting
819         defines.
820         (stampfile, test_stampfile): Remove.
821         (clean-local): Don't mention them.
822         (test-local, run-test-local, run-test-ondotnet-local):
823         Make unconditional.
824         ($(makefrag), $(test_makefrag)): Simplify.
825         ($(btest_lib)): New.  Support for VB testcases.
826
827 2004-06-09  Raja R Harinath  <rharinath@novell.com>
828
829         Partial support for writing Visual Basic source files.
830         * rules.make (USE_MBAS_FLAGS,BASCOMPILE,INTERNAL_MBAS): New.
831         * config-default.make (MBAS_FLAGS, DEFAULT_MBAS_FLAGS): New.
832         * profiles/default.make (MBAS): New.
833
834 2004-06-09  Raja R Harinath  <rharinath@novell.com>
835
836         Do away with stampfiles.
837         * executable.make (stampfile): Remove.
838         (clean-local): Remove mention of $(stampfile).
839         (test-local, run-test-local, run-test-ondotnet-local):
840         Make unconditional.  Add dummy rule to prevent other makefiles
841         from defining rules on these.
842         ($(PROGRAM)): Depend directly on $(BUILT_SOURCES).
843         ($(makefrag)): Simplify.
844
845 2004-06-03  Atsushi Enomoto  <atsushi@ximian.com>
846
847         * README.makefiles : added description for run-test-ondotnet.
848
849 2004-06-03  Atsushi Enomoto  <atsushi@ximian.com>
850
851         * Makefile, executable.make, library.make, rules.make :
852           Added new target "run-test-ondotnet" that works what "run-test"
853           used to be on windows (i.e. tests our libs under MS.NET).
854
855 2004-06-01  Atsushi Enomoto  <atsushi@ximian.com>
856
857         * platforms/win32.make : TEST_RUNTIME should be always mono we can't
858           test our libs against MS.NET runtime. Think about internal call).
859
860 2004-05-30  Jackson Harper  <jackson@ximian.com>
861
862         * library.make: Install to 2.0 package if building with the
863         net_2_0 profile.
864         
865 2004-05-26  Gonzalo Paniagua Javier <gonzalo@ximian.com>
866
867         * library.make: reference nunti.core.dll and nunit.util.dll when
868         building tests.
869
870 2004-05-26  Raja R Harinath  <rharinath@novell.com>
871
872         * library.make (clean-local): Add $(CLEAN_FILES) too.
873
874 2004-05-25  Sebastien Pouliot  <sebastien@ximian.com>
875
876         * library.make: changed case on nunit.framework.dll (lowercase)
877
878 2004-05-24  Raja R Harinath  <rharinath@novell.com>
879
880         * library.make (LIBRARY_COMPILE): New define.
881         ($(the_lib)): Use $(LIBRARY_COMPILE) to compile $(the_lib).
882
883         * executable.make (PROGRAM_INSTALL_DIR): Allow makefile to specify
884         a different directory for installation.
885         (install-local, uninstall-local): Use it.
886
887 2004-05-20  Raja R Harinath  <rharinath@novell.com>
888
889         * profiles/default.make (TEST_RUNTIME): Look in class/lib/default
890         for library to be tested.
891         * rules.make (INTERNAL_RESGEN): New Define.
892         * library.make (run-test-local): Move commands to run-test-lib.
893         Preparartion for allowing creation of addition test dll with .vb
894         testcases.
895         * executable.make (PROGRAM_COMPILE): New define.
896         ($(PROGRAM)): Use PROGRAM_COMPILE to compile PROGRAM.
897
898 2004-05-14  Jackson Harper  <jackson@ximian.com>
899
900         * library.make: Install package files. Get params in magical
901         correct order.
902         
903 2004-05-11  Jackson Harper  <jackson@ximian.com>
904
905         * platforms/linux.make:
906         * platforms/win32.make: Define a PLATFORM_PATH_SEPARATOR used for
907         separating paths in env vars. (ie MONO_PATH).
908         * profiles/net_2_0.make: Always use gmcs for building the 2.0
909         libraries. corlib is the first lib built and it will build gmcs.
910         
911 2004-05-11  Jackson Harper  <jackson@ximian.com>
912
913         * library.make: Allow assembly names to be different then their
914         .sources file names.
915         
916 2004-05-08  Gonzalo Paniagua Javier <gonzalo@ximian.com>
917
918         * library.make: build NUnit if we try to run 'make test' and the dll
919         is not found.
920
921 2004-04-29  Jackson Harper  <jackson@ximian.com>
922
923         * library.make: Fix uninstall
924         
925 2004-04-29  Martin Baulig  <martin@ximian.com>
926
927         * rules.make: Added `INTERNAL_ILASM'.
928
929 2004-04-29  Jackson Harper  <jackson@ximian.com>
930
931         * library.make: Use RUNTIME instead of PLATFORM_RUNTIME for the
932         gacutil. gacutil needs to be run on our runtime. Make dependancys
933         more sane.
934         
935 2004-04-28  Jackson Harper  <jackson@ximian.com>
936
937         * library.make: Use the proper runtime, make sure gacutil is
938         built.
939         
940 2004-04-28  Jackson Harper  <jackson@ximian.com>
941
942         * library.make: Install these bad actors to the GAC.
943         
944 2004-04-28  Raja R Harinath  <rharinath@novell.com>
945
946         * library.make (test_flags): NUnit.Framework.dll is now in
947         class/lib/$(PROFILE).
948
949 2004-04-26  Jackson Harper  <jackson@ximian.com>
950
951         * library.make:
952         * profiles/bootstrap.make:
953         * profiles/default.make: profiles are built in their ownb lib
954         directory now.
955         * profiles/net_2_0.make: new .net 2.0 profile.
956         
957 2004-04-22  Martin Baulig  <martin@ximian.com>
958
959         * profiles/net_1_2.make: Removed.
960         * profiles/martin-generics.make: Remove.
961
962 2004-04-19  Raja R Harinath  <rharinath@novell.com>
963
964         * rules.make (%-recursive): Honor 'make -k'.
965
966 2004-02-17  Martin Baulig  <martin@ximian.com>
967
968         * profiles/generics.make: Renamed to `martin-generics.make' and
969         added a comment to the file.  I'll rename this back when it's
970         ready for public use.
971
972 2003-12-17  Jackson Harper <jackson@ximian.com>
973
974         * profiles/default.make:
975         * profiles/net_1_0.make: Add ONLY_1_0 and ONLY_1_1 defines to fix
976         the build
977         
978 2003-12-08  Peter Williams  <peter@newton.cx>
979
980         * config-default.make: Don't check for / define
981         ECHO_ESCAPE: the check isn't smart enough and
982         apparently OS X's shell somehow doesn't support
983         escape characters.
984
985         * library.make: Use embedded tab instead of 
986         $(ECHO_ESCAPE). Fixes OS X build.
987         
988         * executable.make: Same.
989         
990 2003-12-05  Martin Baulig  <martin@ximian.com>
991
992         * profiles/generics.make: Define `GENERICS'.
993
994 2003-12-05  Martin Baulig  <martin@ximian.com>
995
996         * profiles/net_1_2.make: New profile; uses the .NET 1.2 API's, but
997         without generics and with mcs instead of gmcs.
998
999         * profiles/bootstrap.make: New profile; already use the newly
1000         compiled mcs to compile corlib.
1001
1002 2003-12-04  Martin Baulig  <martin@ximian.com>
1003
1004         * profiles/generics.make: Use gmcs.
1005
1006 2003-11-12 Jackson Harper <jackson@ximian.com>
1007
1008         * rules.make: 
1009         * platforms/linux.make: corlib name is now mscorlib.
1010         
1011 2003-11-09 Ben Maurer  <bmaurer@users.sourceforge.net>
1012
1013         * profiles/generics.make: add the -2 flag.
1014
1015 2003-10-28 Jackson Harper <jackson@ximian.com>
1016
1017         * platforms/linux.make: Tell users to read INSTALL.txt not the
1018         non-existant README.building.
1019         
1020 2003-10-22  Dick Porter  <dick@ximian.com>
1021
1022         * platforms/win32.make:
1023         * platforms/linux.make:
1024         * rules.make: Added RESGEN platform-specific tool.
1025
1026 2003-08-03  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1027
1028         * config-default.make: the /nowarn arguments are now set on a per
1029         library basis.
1030
1031 2003-07-29  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1032
1033         * executable.make: install-local depends on the program too.
1034
1035 2003-07-25  Peter Williams <peter@newton.cx>
1036
1037         * rules.make (run-test): Make it depend on 'test-local'
1038         then 'run-test-local' after 'run-test-recursive'. This way,
1039         'make run-test' from the toplevel doesn't recurse through all
1040         the directories doing a make test before we run anything.
1041
1042 2003-07-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1043
1044         * rules.make: run-test depends now on 'test'.
1045
1046 2003-07-24  Gonzalo Paniagua Javier <gonzalo@ximian.com>
1047
1048         * rules.make: set corlib to PLATFORM_CORLIB if this is defined.
1049
1050 2003-07-22  Peter Williams  <peter@newton.cx>
1051
1052         * rules.make (withmcs): Add this developer utility target.
1053
1054 2003-07-20  Peter Williams  <peter@newton.cx>
1055
1056         * README.platforms: Update docs for changes below.
1057
1058         * platforms/win32.make (PLATFORM_CORLIB): Set this variable
1059         to 'mscorlib.dll', instead of $(corlib) which everything links
1060         against. *Almost* everything should link against our corlib --
1061         with the exception of corlib_cmp and corlib_res.
1062
1063         * platforms/linux.make: Same here: corlib.dll
1064
1065         * rules.make: Define $(corlib) here.
1066
1067 2003-07-20  Peter Williams  <peter@newton.cx>
1068
1069         * config-default.make (TEST_RUNTIME): Use the platform runtime
1070         to run tests, by default.
1071
1072         * profiles/default.make (TEST_RUNTIME): If our test runtime is
1073         mono, use the --debug flag.
1074
1075         * executable.make (sourcefile): Add a basename so that we can
1076         find the nunit sources and so we behave a bit more like
1077         library.make
1078
1079         * config-default.make (TEST_HARNESS): Find nunit-console in its
1080         new home.
1081
1082 2003-07-20  Peter Williams  <peter@newton.cx>
1083
1084         * library.make ($(response)): Do a "Creating ..." line here.
1085
1086         * executable.make ($(response)): Same.
1087
1088         * config-default.make: Make warning more forceful.
1089
1090         * rules.make: Define a useful 'PLATFORM_MONO_NATIVE' that is
1091         set if the platform does not have a native runtime (ie, linux).
1092         Also reorder some definitions.
1093
1094 2003-07-20  Peter Williams  <peter@newton.cx>
1095
1096         * Created. See ../ChangeLog for entries earlier than
1097         this.
1098