1 2004-12-14 Raja R Harinath <rharinath@novell.com>
3 * profiles/basic.make (do-profile-check): Rename from
4 'real-profile-check'. Rewrite slightly to use 'make' to build the
6 (clean-profile): Remove the files.
8 2004-12-08 Raja R Harinath <rharinath@novell.com>
10 * profiles/basic.make (real-profile-check): Update to new location
11 of secret stash of bootstrap files.
13 2004-12-07 Raja R Harinath <rharinath@novell.com>
15 * executable.make (uninstall-local): Remove .config file too.
16 * library.make (uninstall-local): Don't error out if GACUTIL fails.
18 2004-12-07 Raja R Harinath <rharinath@novell.com>
20 * library.make (BUILT_SOURCES_cmdline): Use
21 PLATFORM_CHANGE_SEPARATOR_CMD on BUILT_SOURCES too.
24 2004-12-04 Atsushi Enomoto <atsushi@ximian.com>
27 profiles/default.make,
28 profiles/basic.make : use PLATFORM_PATH_SEPARATOR.
30 2004-12-03 Raja R Harinath <rharinath@novell.com>
32 * profiles/basic.make (MCS): Run the INTERNAL_MCS.
33 (USE_BOOT_COMPILE): Remove.
35 2004-12-03 Raja R Harinath <rharinath@novell.com>
37 * library.make (gacdir_flag): New. Disable /gacdir flag if
38 RUNTIME_HAS_CONSISTENT_GACDIR flag is set.
39 (install-local): Use it.
41 2004-11-30 Raja R Harinath <rharinath@novell.com>
43 * executable.make (makefrag): Make profile-specific.
45 2004-11-26 Martin Baulig <martin@ximian.com>
47 * library.make (run-test-lib, run-test-ondotnet-lib): Added
48 `/output:TestResult-$(PROFILE).log' argument to NUnit.
50 2004-11-26 Raja R Harinath <rharinath@novell.com>
52 * library.make ($(the_lib)): Don't complain if a .mdb file wasn't
53 created (even though it's just a warning).
54 (install-local) [LIBRARY_INSTALL_DIR]: Likewise.
56 (install-local) [!LIBRARY_INSTALL_DIR]: Use $(FRAMEWORK_VERSION).
57 * executable.make ($(PROGRAM)): Likewise.
58 (install-local): Likewise.
59 (PROGRAM_INSTALL_DIR): Define Using $(FRAMEWORK_VERSION).
61 2004-11-26 Raja R Harinath <rharinath@novell.com>
63 * profiles/basic.make (real-profile-check): Prepend ./ when
64 executing basic-profile-check.exe. EXTERNAL_RUNTIME can be empty.
66 2004-11-25 Raja R Harinath <rharinath@novell.com>
68 * platforms/linux.make (EXTERNAL_MCS,EXTERNAL_MBAS,EXTERNAL_RUNTIME):
70 * platforms/win32.make: Likewise.
71 * profiles/basic.make: Use $(EXTERNAL_MCS).
72 * profiles/net_1_1_bootstrap.make: Likewise.
73 * library.make ($(the_lib)): Add support for BUILT_SOURCES.
74 (run-test-lib): Pass $(TEST_HARNESS_FLAGS) to harness. Useful to
75 pass, say /labels, to nunit-console.
77 2004-11-25 Raja R Harinath <rharinath@novell.com>
79 * library.make ($(gacutil)): Fix path.
81 2004-11-23 Raja R Harinath <rharinath@novell.com>
83 * executable.make (NO_INSTALL): New option. Disables installation.
84 * library.make (NO_INSTALL): Likewise.
85 (install-local) [!NO_INSTALL, !LIBRARY_INSTALL_DIR]: Pass both
86 /gacdir and /root options to gacutil.
87 * platforms/linux.make (platform-check): Print the BOOTSTRAP_MCS
88 command that was tried, in case of failure.
89 * profiles/basic.make (NO_TEST, NO_INSTALL): Define.
90 * profiles/net_1_1_bootstrap.make: Likewise.
91 * profiles/net_2_0_bootstrap.make: Likewise.
93 2004-11-22 Raja R Harinath <rharinath@novell.com>
95 * library.make (SN): New define. Use the net_1_1_bootstrap sn.exe.
97 ($(the_lib)): Use them to sign assemblies as they're built.
98 (the_lib_signature_stamp): Remove.
100 * Makefile (DISTFILES): Distribute all the profile make-fragments.
101 (clean-local): Clean up the deps/ directory.
103 2004-11-19 Raja R Harinath <rharinath@novell.com>
105 Orchestrate the bootstrap.
106 * rules.make (INTERNAL_MCS): Look for mcs.exe in profile-specific directory.
107 * profiles/net_1_1_bootstrap.make (BOOTSTRAP_MCS): Use mcs.exe from
109 * profiles/default.make (BOOTSTRAP_MCS): Use mcs.exe from the
110 net_1_1_bootstrap profile.
111 * profiles/net_2_0_bootstrap.make (BOOTSTRAP_MCS): Use mcs.exe
112 from default profile.
113 (all-local, clean-local): New. Copy mcs.exe from default profile,
114 but customize it to work with 2.0.x libraries.
115 * profiles/net_2_0.make (BOOTSTRAP_MCS): Define approprately for
118 * executable.make (executable_CLEAN_FILES): Clean up more files.
119 ($(PROGRAM)): Move .mdb files too.
121 2004-11-18 Atsushi Enomoto <atsushi@ximian.com>
123 * library.make: Reverted the last fix. It broke windows build (that
124 should be fixed though).
126 2004-11-18 Atsushi Enomoto <atsushi@ximian.com>
128 * library.make: Some minor fix for PLATFORM_PATH_SEPARATOR.
130 2004-11-17 Raja R Harinath <rharinath@novell.com>
132 * executable.make: Improve support for building executable into a
135 2004-11-09 Raja R Harinath <rharinath@novell.com>
137 * profiles/basic.make: New.
138 * profiles/net_2_0.make (PROFILE_MCS_FLAGS): Remove '-2' flag.
139 * profiles/net_1_1_bootstrap.make (NO_SIGN_ASSEMBLY): Set.
141 2004-11-04 Raja R Harinath <rharinath@novell.com>
143 * profiles/net_1_1_bootstrap.make: New profile.
144 * profiles/net_2_0_bootstrap.make: Use in-tree mcs for
145 bootstrapping mscorlib.dll.
146 * platforms/linux.make (platform-check): Make more robust.
147 * rules.make (%-recursive): Propagate error exit from sub-makes
148 even if invoked with 'make -k'.
150 2004-10-29 Raja R Harinath <rharinath@novell.com>
152 * profiles/net_2_0_bootstrap.make (PROFILE_MCS_FLAGS): Remove
153 -langversion:default flag.
155 * rules.make (distdir): Remove.
156 (PROFILE_SUBDIRS): New. Support profile-specific SUBDIRS.
158 (dist-recursive): Define distdir here.
160 2004-10-25 Zoltan Varga <vargaz@freemail.hu>
162 * config-default.make (TEST_RUNTIME): Add TEST_MONO_PATH variable.
164 2004-09-27 Raja R Harinath <rharinath@novell.com>
166 * library.make ($(test_nunit_dep)): Make sure NUnit is built for
167 the profile being tested.
168 (nunit-$(PROFILE).stamp): Rename from nunit.stamp.
169 * config-default.make (TEST_HARNESS): Look for 'nunit-console' in
170 profile-specific directory.
172 2004-09-21 Raja R Harinath <rharinath@novell.com>
174 * profiles/net_2_0_bootstrap.make: New file.
176 * library.make (the_mdb): Fix.
177 (library_CLEAN_FILES): Add the new test results files too.
179 2004-09-14 Raja R Harinath <rharinath@novell.com>
181 * library.make (test_lib, btest_lib): Build separate test
182 assemblies for separate profiles.
183 (dist-local): Don't copy files beginning with '../'.
184 (test_sourcefile, btest_sourcefile): Define in terms of
185 $(test_lib) or $(btest_lib) only if they're overriden.
186 (test_response, test_makefrag): Remove redundant $(PROFILE) in name.
187 (run-test-lib, run-btest-lib): Unify. Give profile-specific name
189 * rules.make (dist-default): Handle any of Makefile, makefile, or
190 GNUmakefile being present.
191 * profiles/net_2_0.make (TEST_RUNTIME): Don't define.
193 2004-08-06 Gonzalo Paniagua Javier <gonzalo@ximian.com>
196 * library.make: install/clean .mdb files.
198 2004-07-30 Martin Baulig <martin@ximian.com>
200 * executable.make (EXTRA_SOURCES): New variable to add extra
201 sources to the program.
203 2004-07-30 Raja R Harinath <harinath@blr-harinath.blr.novell.com>
205 * executable.make (PROGRAM_config): New auto-detecting define.
206 Defined if $(PROGRAM).config exists.
207 (install-local): Install $(PROGRAM_config) if it exists.
209 2004-07-21 Lluis Sanchez Gual <lluis@novell.com>
211 * profiles/default.make, profiles/net_2_0.make, profiles/net_1_0.make:
212 Added FRAMEWORK_VERSION var.
214 2004-07-02 Raja R Harinath <rharinath@novell.com>
216 Support for avoiding "sharing violations" while compiling core
217 libraries with an in-tree compiler.
218 * library.make (LIBRARY_USE_INTERMEDIATE_FILE): New toggle.
219 ($(the_lib)): Use it.
221 2004-07-02 Raja R Harinath <rharinath@novell.com>
223 * rules.make (OVERRIDE_BARE_TARGETS): Remove.
224 (OVERRIDE_TARGET_ALL): New control for overriding the default all:
225 rule. If set, 'make all' will run 'all.override' from the client
227 (all): Move commands ...
228 (all.real): ... here. Make ordering assumptions explicit, and
230 (test,run-test,run-test-ondotnet,clean,install,uninstall):
232 (STD_TARGETS): ... this new variable. Make ordering assumption
233 between -recursive and -local targets explicit.
234 (%-recursive): Handle W32 GNU make that has --unix as the first
236 * README.makefiles (Special recursion needs): Update to reflect
238 * library.make (all-local): Build $(the_lib_signature_stamp) when
239 NO_SIGN_ASSEMBLY is defined.
240 ($(gacutil),$(sn)): Consolidate rules.
241 (test-local,run-test-local,run-test-ondotnet-local): Likewise.
243 2004-07-02 Raja R Harinath <rharinath@novell.com>
245 * config-default.make (TEST_RUNTIME): Use 'mono' by default.
246 * platforms/win32.make (TEST_RUNTIME): Remove.
247 * profiles/default.make (TEST_RUNTIME): Remove.
249 2004-06-28 Raja R Harinath <rharinath@novell.com>
251 * platforms/linux.make (RESGEN): Define using $(INTERNAL_RESGEN).
253 2004-06-21 Raja R Harinath <rharinath@novell.com>
255 * executable.make ($(PROGRAM)): Move depend on the makefrags ...
256 (all-local): ... here.
257 * library.make ($(the_lib), $(test_lib), $(btest_lib), all-local):
259 (LIBRARY_SNK): New default define. Allows library to be signed
260 with a key other than mono.snk.
261 ($(the_lib_signature_stamp)): New stamp file created when an
263 (install-local, uninstall-local, maybe-sign-lib): Set MONO_PATH.
265 2004-06-16 Raja R Harinath <rharinath@novell.com>
267 * library.make ($(makefrag),$(test_makefrag),$(btest_makefrag)):
268 Depend on library.make.
269 * executable.make ($(makefrag)): Depend on executable.make.
271 2004-06-16 Atsushi Enomoto <atsushi@ximian.com>
273 * library.make : Added GACDIR. Use cygpath -w on windows.
275 2004-06-14 Raja R Harinath <rharinath@novell.com>
277 * platforms/linux.make (PLATFORM_CHANGE_SEPARATOR_CMD): Define to 'cat'.
278 (PLATFORM_TWEAK_CORLIB_SOURCES): Remove.
279 (platform-check): Avoid bash-ism.
280 * library.make: Simplify uses of $(patsubst x,y,$(foo)) to $(foo:x=y).
281 (core_sourcefile): Rename back to ...
282 (sourcefile): ... this. Remove creation of redundant intermediate file.
283 (response): Change test for optimization, now that
284 PLATFORM_CHANGE_SEPARATOR_CMD is unconditional. Combine with
285 platform-exclude handling.
286 (library_CLEAN_FILES): New variable to specify clean:-able files
287 close to where they're defined.
288 (test_response, btest_response): Simplify.
289 * executable.make (response): Change test for optimization.
290 (executable_CLEAN_FILES): New define.
292 2004-06-14 Raja R Harinath <rharinath@novell.com>
294 * library.make (uninstall-local): Fix typo.
296 2004-06-11 Atsushi Enomoto <atsushi@ximian.com>
298 * library.make : HAVE_CS_TESTS fixie.
300 2004-06-11 Raja R Harinath <rharinath@novell.com>
302 * library.make (HAVE_CS_TESTS, HAVE_VB_TESTS): Allow to be
303 overriden. Useful if the tests sourcefile is generated.
304 (TEST_COMPILE, BTEST_COMPILE): Allow these to be customized too.
306 * platforms/win32.make (PLATFORM_TWEAK_CORLIB_SOURCES): Remove.
308 Support enough features to build mscorlib.dll.
309 * library.make (core_sourcefile): New renamed from $(sourcefile).
310 (PLATFORM_excludes): Auto-detecting define that sees if
311 $(LIBRARY).$(PLATFORM)-excludes file exists.
312 (sourcefile): New. Possibly-built file that removes
313 PLATFORM_excluded files from core_sourcefile.
314 (test_against, test_dep): New. Allow the test assembly to be
315 built against a different library.
316 (test_lib): Allow makefile to override the name of the test
318 (LIBRARY_INSTALL_DIR): If defined, switch to using $(INSTALL_LIB)
319 rather than $(gacutil).
320 (DISTFILES, dist-local): Use core_sourcefile.
321 (clean-local): Remove sourcefile if it was generated.
322 (test_lib, btest_lib): Depend on $(test_dep).
324 2004-06-10 Gonzalo Paniagua Javier <gonzalo@ximian.com>
326 * library.make: fixed PLATFORM_CHANGE_SEPARATOR_CHAR on windows.
328 2004-06-09 Sebastien Pouliot <sebastien@ximian.com>
330 * library.make: Added support to fully sign assemblies when doing a
331 "make install" (thanks to Jackson :-).
333 2004-06-09 Raja R Harinath <rharinath@novell.com>
335 Do away with stampfiles.
336 Introduce support for VB test cases.
337 * library.make (HAVE_CS_TESTS, HAVE_VB_TESTS): New auto-detecting
339 (stampfile, test_stampfile): Remove.
340 (clean-local): Don't mention them.
341 (test-local, run-test-local, run-test-ondotnet-local):
343 ($(makefrag), $(test_makefrag)): Simplify.
344 ($(btest_lib)): New. Support for VB testcases.
346 2004-06-09 Raja R Harinath <rharinath@novell.com>
348 Partial support for writing Visual Basic source files.
349 * rules.make (USE_MBAS_FLAGS,BASCOMPILE,INTERNAL_MBAS): New.
350 * config-default.make (MBAS_FLAGS, DEFAULT_MBAS_FLAGS): New.
351 * profiles/default.make (MBAS): New.
353 2004-06-09 Raja R Harinath <rharinath@novell.com>
355 Do away with stampfiles.
356 * executable.make (stampfile): Remove.
357 (clean-local): Remove mention of $(stampfile).
358 (test-local, run-test-local, run-test-ondotnet-local):
359 Make unconditional. Add dummy rule to prevent other makefiles
360 from defining rules on these.
361 ($(PROGRAM)): Depend directly on $(BUILT_SOURCES).
362 ($(makefrag)): Simplify.
364 2004-06-03 Atsushi Enomoto <atsushi@ximian.com>
366 * README.makefiles : added description for run-test-ondotnet.
368 2004-06-03 Atsushi Enomoto <atsushi@ximian.com>
370 * Makefile, executable.make, library.make, rules.make :
371 Added new target "run-test-ondotnet" that works what "run-test"
372 used to be on windows (i.e. tests our libs under MS.NET).
374 2004-06-01 Atsushi Enomoto <atsushi@ximian.com>
376 * platforms/win32.make : TEST_RUNTIME should be always mono we can't
377 test our libs against MS.NET runtime. Think about internal call).
379 2004-05-30 Jackson Harper <jackson@ximian.com>
381 * library.make: Install to 2.0 package if building with the
384 2004-05-26 Gonzalo Paniagua Javier <gonzalo@ximian.com>
386 * library.make: reference nunti.core.dll and nunit.util.dll when
389 2004-05-26 Raja R Harinath <rharinath@novell.com>
391 * library.make (clean-local): Add $(CLEAN_FILES) too.
393 2004-05-25 Sebastien Pouliot <sebastien@ximian.com>
395 * library.make: changed case on nunit.framework.dll (lowercase)
397 2004-05-24 Raja R Harinath <rharinath@novell.com>
399 * library.make (LIBRARY_COMPILE): New define.
400 ($(the_lib)): Use $(LIBRARY_COMPILE) to compile $(the_lib).
402 * executable.make (PROGRAM_INSTALL_DIR): Allow makefile to specify
403 a different directory for installation.
404 (install-local, uninstall-local): Use it.
406 2004-05-20 Raja R Harinath <rharinath@novell.com>
408 * profiles/default.make (TEST_RUNTIME): Look in class/lib/default
409 for library to be tested.
410 * rules.make (INTERNAL_RESGEN): New Define.
411 * library.make (run-test-local): Move commands to run-test-lib.
412 Preparartion for allowing creation of addition test dll with .vb
414 * executable.make (PROGRAM_COMPILE): New define.
415 ($(PROGRAM)): Use PROGRAM_COMPILE to compile PROGRAM.
417 2004-05-14 Jackson Harper <jackson@ximian.com>
419 * library.make: Install package files. Get params in magical
422 2004-05-11 Jackson Harper <jackson@ximian.com>
424 * platforms/linux.make:
425 * platforms/win32.make: Define a PLATFORM_PATH_SEPARATOR used for
426 separating paths in env vars. (ie MONO_PATH).
427 * profiles/net_2_0.make: Always use gmcs for building the 2.0
428 libraries. corlib is the first lib built and it will build gmcs.
430 2004-05-11 Jackson Harper <jackson@ximian.com>
432 * library.make: Allow assembly names to be different then their
435 2004-05-08 Gonzalo Paniagua Javier <gonzalo@ximian.com>
437 * library.make: build NUnit if we try to run 'make test' and the dll
440 2004-04-29 Jackson Harper <jackson@ximian.com>
442 * library.make: Fix uninstall
444 2004-04-29 Martin Baulig <martin@ximian.com>
446 * rules.make: Added `INTERNAL_ILASM'.
448 2004-04-29 Jackson Harper <jackson@ximian.com>
450 * library.make: Use RUNTIME instead of PLATFORM_RUNTIME for the
451 gacutil. gacutil needs to be run on our runtime. Make dependancys
454 2004-04-28 Jackson Harper <jackson@ximian.com>
456 * library.make: Use the proper runtime, make sure gacutil is
459 2004-04-28 Jackson Harper <jackson@ximian.com>
461 * library.make: Install these bad actors to the GAC.
463 2004-04-28 Raja R Harinath <rharinath@novell.com>
465 * library.make (test_flags): NUnit.Framework.dll is now in
466 class/lib/$(PROFILE).
468 2004-04-26 Jackson Harper <jackson@ximian.com>
471 * profiles/bootstrap.make:
472 * profiles/default.make: profiles are built in their ownb lib
474 * profiles/net_2_0.make: new .net 2.0 profile.
476 2004-04-22 Martin Baulig <martin@ximian.com>
478 * profiles/net_1_2.make: Removed.
479 * profiles/martin-generics.make: Remove.
481 2004-04-19 Raja R Harinath <rharinath@novell.com>
483 * rules.make (%-recursive): Honor 'make -k'.
485 2004-02-17 Martin Baulig <martin@ximian.com>
487 * profiles/generics.make: Renamed to `martin-generics.make' and
488 added a comment to the file. I'll rename this back when it's
489 ready for public use.
491 2003-12-17 Jackson Harper <jackson@ximian.com>
493 * profiles/default.make:
494 * profiles/net_1_0.make: Add ONLY_1_0 and ONLY_1_1 defines to fix
497 2003-12-08 Peter Williams <peter@newton.cx>
499 * config-default.make: Don't check for / define
500 ECHO_ESCAPE: the check isn't smart enough and
501 apparently OS X's shell somehow doesn't support
504 * library.make: Use embedded tab instead of
505 $(ECHO_ESCAPE). Fixes OS X build.
507 * executable.make: Same.
509 2003-12-05 Martin Baulig <martin@ximian.com>
511 * profiles/generics.make: Define `GENERICS'.
513 2003-12-05 Martin Baulig <martin@ximian.com>
515 * profiles/net_1_2.make: New profile; uses the .NET 1.2 API's, but
516 without generics and with mcs instead of gmcs.
518 * profiles/bootstrap.make: New profile; already use the newly
519 compiled mcs to compile corlib.
521 2003-12-04 Martin Baulig <martin@ximian.com>
523 * profiles/generics.make: Use gmcs.
525 2003-11-12 Jackson Harper <jackson@ximian.com>
528 * platforms/linux.make: corlib name is now mscorlib.
530 2003-11-09 Ben Maurer <bmaurer@users.sourceforge.net>
532 * profiles/generics.make: add the -2 flag.
534 2003-10-28 Jackson Harper <jackson@ximian.com>
536 * platforms/linux.make: Tell users to read INSTALL.txt not the
537 non-existant README.building.
539 2003-10-22 Dick Porter <dick@ximian.com>
541 * platforms/win32.make:
542 * platforms/linux.make:
543 * rules.make: Added RESGEN platform-specific tool.
545 2003-08-03 Gonzalo Paniagua Javier <gonzalo@ximian.com>
547 * config-default.make: the /nowarn arguments are now set on a per
550 2003-07-29 Gonzalo Paniagua Javier <gonzalo@ximian.com>
552 * executable.make: install-local depends on the program too.
554 2003-07-25 Peter Williams <peter@newton.cx>
556 * rules.make (run-test): Make it depend on 'test-local'
557 then 'run-test-local' after 'run-test-recursive'. This way,
558 'make run-test' from the toplevel doesn't recurse through all
559 the directories doing a make test before we run anything.
561 2003-07-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
563 * rules.make: run-test depends now on 'test'.
565 2003-07-24 Gonzalo Paniagua Javier <gonzalo@ximian.com>
567 * rules.make: set corlib to PLATFORM_CORLIB if this is defined.
569 2003-07-22 Peter Williams <peter@newton.cx>
571 * rules.make (withmcs): Add this developer utility target.
573 2003-07-20 Peter Williams <peter@newton.cx>
575 * README.platforms: Update docs for changes below.
577 * platforms/win32.make (PLATFORM_CORLIB): Set this variable
578 to 'mscorlib.dll', instead of $(corlib) which everything links
579 against. *Almost* everything should link against our corlib --
580 with the exception of corlib_cmp and corlib_res.
582 * platforms/linux.make: Same here: corlib.dll
584 * rules.make: Define $(corlib) here.
586 2003-07-20 Peter Williams <peter@newton.cx>
588 * config-default.make (TEST_RUNTIME): Use the platform runtime
589 to run tests, by default.
591 * profiles/default.make (TEST_RUNTIME): If our test runtime is
592 mono, use the --debug flag.
594 * executable.make (sourcefile): Add a basename so that we can
595 find the nunit sources and so we behave a bit more like
598 * config-default.make (TEST_HARNESS): Find nunit-console in its
601 2003-07-20 Peter Williams <peter@newton.cx>
603 * library.make ($(response)): Do a "Creating ..." line here.
605 * executable.make ($(response)): Same.
607 * config-default.make: Make warning more forceful.
609 * rules.make: Define a useful 'PLATFORM_MONO_NATIVE' that is
610 set if the platform does not have a native runtime (ie, linux).
611 Also reorder some definitions.
613 2003-07-20 Peter Williams <peter@newton.cx>
615 * Created. See ../ChangeLog for entries earlier than