[Mono-dev] Re: [Mono-patches] r53054 - in trunk/mcs/build: . platforms

Raja R Harinath rharinath at novell.com
Wed Nov 16 01:24:10 EST 2005


Hi,

"Vladislav Spivak <spivak at mainsoft.com>" <mono-patches-list at lists.ximian.com> writes:

> Author: spivak
> Date: 2005-11-15 07:56:51 -0500 (Tue, 15 Nov 2005)
> New Revision: 53054
>
> Modified:
>    trunk/mcs/build/ChangeLog
>    trunk/mcs/build/library.make
>    trunk/mcs/build/platforms/win32.make
> Log:
>
>
> Modified: trunk/mcs/build/ChangeLog
> ===================================================================
> --- trunk/mcs/build/ChangeLog	2005-11-15 12:55:23 UTC (rev 53053)
> +++ trunk/mcs/build/ChangeLog	2005-11-15 12:56:51 UTC (rev 53054)
> @@ -1,3 +1,6 @@
> +2005-11-15 Vlad Spivak <spivak at mainsoft.com>
> +	* net_1_1_java profile related changes
> +

Please get these changes approved on the mailing-lists.  I'll revert
this patch since it's _ugly_.

>  2005-10-03  Raja R Harinath  <rharinath at novell.com>
>  
>  	* profiles/basic.make (monolite_flag, use_monolite): New.  Used to
>
> Modified: trunk/mcs/build/library.make
> ===================================================================
> --- trunk/mcs/build/library.make	2005-11-15 12:55:23 UTC (rev 53053)
> +++ trunk/mcs/build/library.make	2005-11-15 12:56:51 UTC (rev 53054)
> @@ -41,6 +41,7 @@
>  the_lib = $(topdir)/class/lib/$(PROFILE)/$(LIBRARY_NAME)
>  the_pdb = $(the_lib:.dll=.pdb)
>  the_mdb = $(the_lib).mdb
> +the_jar = $(the_lib:.dll=.jar)
>  library_CLEAN_FILES += $(makefrag) $(the_lib) $(the_pdb) $(the_mdb)
>  
>  ifdef LIBRARY_NEEDS_POSTPROCESSING
> @@ -278,14 +279,24 @@
>  $(build_lib): $(response) $(sn) $(BUILT_SOURCES)
>  ifdef LIBRARY_USE_INTERMEDIATE_FILE
>  	$(LIBRARY_COMPILE) $(LIBRARY_FLAGS) $(LIB_MCS_FLAGS) -target:library -out:$(LIBRARY_NAME) $(BUILT_SOURCES_cmdline) @$(response)
> +ifneq (net_1_1_java,$(PROFILE))
>  	$(SN) $(SNFLAGS) $(LIBRARY_NAME) $(LIBRARY_SNK)
> +endif

Yuck !!!

Please put

  NO_SIGN_ASSEMBLIES = yes

in profiles/net_1_1_java.make.

>  	mv $(LIBRARY_NAME) $@
> +ifeq (net_1_1_java,$(PROFILE))
> +	mv $(LIBRARY_NAME:.dll=.pdb) $(the_pdb)
> +endif
>  	test ! -f $(LIBRARY_NAME).mdb || mv $(LIBRARY_NAME).mdb $@.mdb

Yuck again.  Please copy the pattern in the line immediately below.

>  else
>  	$(LIBRARY_COMPILE) $(LIBRARY_FLAGS) $(LIB_MCS_FLAGS) -target:library -out:$@ $(BUILT_SOURCES_cmdline) @$(response)
> +ifneq (net_1_1_java,$(PROFILE))
>  	$(SN) $(SNFLAGS) $@ $(LIBRARY_SNK)
>  endif
> +endif

Likewise.  It'e enough to say

  NO_SIGN_ASSEMBLIES = yes

in profiles/net_1_1_java.make.
  
> +ifeq (net_1_1_java,$(PROFILE))
> +	converter.exe /debug:3 ../../class/lib/$(PROFILE)/$(LIBRARY) /out:$(the_jar) $(KEY) /lib:../../class/lib/net_1_1_java
> +endif

This doesn't seem right.  I guess you can put in

  ifdef LIBRARY_CREATE_JAR
  all-local test-local run-test-local: $(the_jar)
  $(the_jar): $(the_lib)
	converter.exe ... $(the_lib) /out:$(the_jar) ...
  endif

and add the line

  LIBRARY_CREATE_JAR = yes

to profiles/net_1_1_java.make.

On the whole, I'm not too pleased with this line.  I'd rather maintain
it as a local patch in your tree.  It's small and localized enough.  It
doesn't make much sense in the current mono/ tree until we have generic
support for arbitrary IL -> java bytecode converters.

> Modified: trunk/mcs/build/platforms/win32.make
> ===================================================================
> --- trunk/mcs/build/platforms/win32.make	2005-11-15 12:55:23 UTC (rev 53053)
> +++ trunk/mcs/build/platforms/win32.make	2005-11-15 12:56:51 UTC (rev 53054)
> @@ -9,6 +9,11 @@
>  PLATFORM_CORLIB = mscorlib.dll
>  
>  EXTERNAL_MCS = mcs
> +
> +ifeq (net_1_1_java,$(PROFILE))
> +EXTERNAL_MCS = csc.exe
> +endif
> +
>  EXTERNAL_MBAS = vbc.exe
>  EXTERNAL_RUNTIME =

Again, same story.  Just add

  EXTERNAL_MCS = csc.exe

to profile/net_1_1_java.make.

- Hari



More information about the Mono-devel-list mailing list