On 2013-05-22 06:20, David Holmes wrote:
On 21/05/2013 9:50 PM, Erik Joelsson wrote:
Looks good to me.

So has a bug been filed yet? :)

I think some further investigation is still needed because gensrc_jobjc is being used in some places and not others and I'd want to verify they are all supposed to be the same thing.

I was too fast looking at this. After more careful investigation, this is what happens. The source generator for jobjc classes is directed to generate the sources to a separate directory (gensrc_jobjc/src) and the files are then copied into the general gensrc directory. The reason for this is that the generator does a full delete of all files in the target directory before generating sources.

If you point the SetupJavaCompilation macro to gensrc_jobjc/src and skip the other changes, it will all work out fine. The copy of the generated sources will not be needed but I would rather keep it for now until we clear up the whole mess.

/Erik
David

/Erik

On 2013-05-21 13:30, Alan Bateman wrote:
On 21/05/2013 10:53, Erik Joelsson wrote:
In the old build, JObjC.jar was built completely differently from all
other java classes, by an ant script. We kept the source/target 1.5
when converting to the new build to keep the builds equal. I very
much doubt there is a reason for it now though. It looks like left
over legacy to me.

The simplest fix for you would be to change the outputdir of the
generated sources for jobjc to something like gensrc_jobjc.

I would really like to see the whole special handling of jobjc
compilation removed.

/Erik
It would be good to get this cleaned up or removed.

For now I'm using the attached patch to ensure that the classes are
generated to gensrc_jobjc.

-Alan.


diff -r b9b26b424bfc makefiles/CompileJavaClasses.gmk
--- a/makefiles/CompileJavaClasses.gmk Sat May 18 18:55:56 2013 -0700 +++ b/makefiles/CompileJavaClasses.gmk Tue May 21 12:05:43 2013 +0100
@@ -342,7 +342,7 @@
         DISABLE_SJAVAC:=true,\
         SRC:=$(JDK_TOPDIR)/src/macosx/native/jobjc/src/core/java \
$(JDK_TOPDIR)/src/macosx/native/jobjc/src/runtime-additions/java \
-             $(JDK_OUTPUTDIR)/gensrc, \
+             $(JDK_OUTPUTDIR)/gensrc_jobjc, \
         INCLUDES := com/apple/jobjc,\
                 EXCLUDES := tests/java/com/apple/jobjc,\
         BIN:=$(JDK_OUTPUTDIR)/jobjc_classes,\
@@ -355,7 +355,7 @@
         SETUP:=GENERATE_JDKBYTECODE,\
         SRC:=$(JDK_TOPDIR)/src/macosx/native/jobjc/src/core/java \
$(JDK_TOPDIR)/src/macosx/native/jobjc/src/runtime-additions/java \
-             $(JDK_OUTPUTDIR)/gensrc, \
+             $(JDK_OUTPUTDIR)/gensrc_jobjc, \
         INCLUDES := com/apple/jobjc,\
                 EXCLUDES := tests/java/com/apple/jobjc,\
         BIN:=$(JDK_OUTPUTDIR)/jobjc_classes_headers,\
dhcp-uk-twvpn-2-vpnpool-10-175-60-135:makefiles ab23780$
dhcp-uk-twvpn-2-vpnpool-10-175-60-135:makefiles ab23780$
dhcp-uk-twvpn-2-vpnpool-10-175-60-135:makefiles ab23780$ hg diff GensrcJ
GensrcJDWP.gmk   GensrcJObjC.gmk
dhcp-uk-twvpn-2-vpnpool-10-175-60-135:makefiles ab23780$ hg diff
GensrcJObjC.gmk
diff -r b9b26b424bfc makefiles/GensrcJObjC.gmk
--- a/makefiles/GensrcJObjC.gmk    Sat May 18 18:55:56 2013 -0700
+++ b/makefiles/GensrcJObjC.gmk    Tue May 21 12:05:52 2013 +0100
@@ -104,9 +104,9 @@

 # The generator delets all files in the target dir so it has to work
in its
 # own dir and have the files copied over to gensrc aftewards.
-$(JDK_OUTPUTDIR)/gensrc/_the.jobjc.files : $(JOBJC_TMP)/_the.generator
+$(JDK_OUTPUTDIR)/gensrc_jobjc/_the.jobjc.files :
$(JOBJC_TMP)/_the.generator
     $(MKDIR) -p $(@D)
     $(CP) -rp $(JOBJC_DST)/* $(@D)
     $(TOUCH) $@

-GENSRC_JOBJC += $(JDK_OUTPUTDIR)/gensrc/_the.jobjc.files
+GENSRC_JOBJC += $(JDK_OUTPUTDIR)/gensrc_jobjc/_the.jobjc.files

Reply via email to