Bob notes that dist-dev doesn't need (and thus shouldn't have) its
dependency on tools.  I take that as tacit agreement that dist-dev can be
the "minimally build everything for test execution" name.


On Mon, Jun 15, 2009 at 11:53 AM, Freeland Abbott <fabb...@google.com>wrote:

> Bob, John, can you review?  This doesn't address the "buildonly or dist-dev
> as precursor to user/test" question, but I think addresses Thomas' and Bob's
> other issue.
>
>
>
>
> On Mon, Jun 15, 2009 at 11:47 AM, Freeland Abbott <fabb...@google.com>wrote:
>
>> +GWTC
>>
>> With regard to the Mac looking for gwt-dev-linux, since I don't literally
>> see a build-dev target, what's the chain above the line you cited?  I
>> thought my fixes to <property.ensure> in e.g. user/build.xml line 47
>> addressed that, and I see I missed some (in doc, samples, and soyc-vis...
>> only the last of which is likely to be stopping you, though).
>>
>>
>> With regard to using buildonly as precursor to tests, I think you want to
>> the target dist-dev, though I'm open to suggestions for how this "should"
>> work.  It used to be that:
>>
>>    1. we had both "build" and "dist," as separate targets (unchanged),
>>    2. tests effectively require a distribution to run in (unchanged),
>>    3. we had "buildonly," but did not have "dist-dev," so the two were
>>    blurred explicitly (changed),
>>    4. "build" depended, by way of "-do," on "dist," which I found
>>    confusingly backwards (changed),
>>    5. top-level "test" depended on "build", which depended on "dist" as
>>    above (changed to depend on "dist-one," but should probably be dist-dev
>>    instead now that it exists),
>>    6. "build" was the default target, which as above worked because it
>>    ran "dist" as a dependency (changed; "dist" is project default target, and
>>    depends on build).
>>
>> Solutions:
>>
>>    1. Do we want buildonly to imply dist-dev?  Do we want build to imply
>>    dist?  My intuition is no, that if separate, build builds and dist 
>> packages
>>    and dist needs build (but not vice-versa).  That is semantic a change from
>>    before, though.
>>    2. If not, then we want to retrain ourselves to use dist-dev at least
>>    once, to get the distro set, even if you then use buildonly after that to
>>    refresh sources?
>>
>>
>>
>>
>> On Mon, Jun 15, 2009 at 11:10 AM, Freeland Abbott <fabb...@google.com>wrote:
>>
>>> Thanks, I'll revisit.
>>>
>>>
>>>
>>> On Mon, Jun 15, 2009 at 10:43 AM, BobV <b...@google.com> wrote:
>>>
>>>>
>>>> This no longer correctly works on mac platform.
>>>>
>>>> ant buildonly && cd user && ant test
>>>> /Users/bob/gwt/trunk/common.ant.xml:299: GWT must be built before
>>>> performing any tests.  This can be fixed by running ant in the
>>>> /Users/bob/gwt/trunk directory.
>>>>
>>>>
>>>> also, the ant build-dev target fails:
>>>> /Users/bob/gwt/trunk/common.ant.xml:299: Cannot find dependency
>>>> /Users/bob/gwt/trunk/build/lib/gwt-dev-linux.jar
>>>>
>>>>
>>>> --
>>>> Bob Vawter
>>>> Google Web Toolkit Team
>>>>
>>>
>>>
>>
>

--~--~---------~--~----~------------~-------~--~----~
http://groups.google.com/group/Google-Web-Toolkit-Contributors
-~----------~----~----~----~------~----~------~--~---

Index: build-tools/ant-gwt/src/com/google/gwt/ant/taskdefs/LatestTimeJar.java
===================================================================
--- build-tools/ant-gwt/src/com/google/gwt/ant/taskdefs/LatestTimeJar.java	(revision 5558)
+++ build-tools/ant-gwt/src/com/google/gwt/ant/taskdefs/LatestTimeJar.java	(working copy)
@@ -116,8 +116,12 @@
     @Override
     public void addToZip(ZipOutputStream out, String path) throws IOException {
       FileInputStream inStream = new FileInputStream(tmpFile);
-      doZipFile(inStream, out, path, timestamp, archive, mode);
-      tmpFile.delete();
+      try {
+        doZipFile(inStream, out, path, timestamp, archive, mode);
+        tmpFile.delete();
+      } finally {
+        inStream.close();
+      }
     }
   }
 
Index: build.xml
===================================================================
--- build.xml	(revision 5558)
+++ build.xml	(working copy)
@@ -35,7 +35,7 @@
     <gwt.ant dir="distro-source" target="${build.host.platform}" />
   </target>
 
-  <target name="dist-dev" depends="buildonly, tools" description="Make this platform's distribution, minus doc and samples">
+  <target name="dist-dev" depends="buildonly" description="Make this platform's distribution, minus doc and samples">
     <gwt.ant dir="distro-source" target="${build.host.platform}" />
   </target>
 
@@ -93,7 +93,7 @@
     <call-subproject subproject="samples" subtarget="checkstyle" />
   </target>
 
-  <target name="test" depends="dist-one" description="Runs all the GWT tests">
+  <target name="test" depends="dist-dev" description="Runs all the GWT tests">
     <call-subproject subproject="buildtools" subtarget="test" />
     <call-subproject subproject="dev" subtarget="test" />
     <call-subproject subproject="user" subtarget="test" />
Index: tools/api-checker/build.xml
===================================================================
--- tools/api-checker/build.xml	(revision 5558)
+++ tools/api-checker/build.xml	(working copy)
@@ -7,7 +7,7 @@
         <property name="tools.build" value="${gwt.build.out}/${project.tail}" />
 
   <!-- Platform shouldn't matter here, just picking one -->
-  <property.ensure name="gwt.dev.jar" location="${gwt.build.lib}/gwt-dev-linux.jar" />
+  <property.ensure name="gwt.dev.jar" location="${gwt.build.lib}/gwt-dev-${build.host.platform}.jar" />
   <property.ensure name="gwt.user.jar" location="${gwt.build.lib}/gwt-user.jar" />
 
   <target name="compile" description="Compile all class files">
Index: tools/soyc-vis/build.xml
===================================================================
--- tools/soyc-vis/build.xml	(revision 5558)
+++ tools/soyc-vis/build.xml	(working copy)
@@ -7,7 +7,7 @@
   <import file="${gwt.root}/common.ant.xml" />
   
   <!-- Platform shouldn't matter here, just picking one -->
-  <property.ensure name="gwt.dev.jar" location="${gwt.build.lib}/gwt-dev-linux.jar" />
+  <property.ensure name="gwt.dev.jar" location="${gwt.build.lib}/gwt-dev-${build.host.platform}.jar" />
 
   <target name="clean">
     <delete dir="build"/>
@@ -41,4 +41,4 @@
 
   <target name="checkstyle"/>
 
-</project>
\ No newline at end of file
+</project>
Index: samples/common.ant.xml
===================================================================
--- samples/common.ant.xml	(revision 5558)
+++ samples/common.ant.xml	(working copy)
@@ -16,7 +16,7 @@
 
   <property.ensure name="gwt.user.jar" location="${gwt.build.lib}/gwt-user.jar" />
   <!-- Platform shouldn't matter here, just picking one -->
-  <property.ensure name="gwt.dev.jar" location="${gwt.build.lib}/gwt-dev-linux.jar" />
+  <property.ensure name="gwt.dev.jar" location="${gwt.build.lib}/gwt-dev-${build.host.platform}.jar" />
 
   <!-- Mirror directory for scripts; makes building distro easier -->
   <property name="samples.scripts" value="${gwt.build.out}/samples-scripts" />
Index: doc/build.xml
===================================================================
--- doc/build.xml	(revision 5558)
+++ doc/build.xml	(working copy)
@@ -7,7 +7,7 @@
 
   <property.ensure name="gwt.user.jar" location="${gwt.build.lib}/gwt-user.jar" />
   <!-- Platform shouldn't matter here, just picking one -->
-  <property.ensure name="gwt.dev.jar" location="${gwt.build.lib}/gwt-dev-linux.jar" />
+  <property.ensure name="gwt.dev.jar" location="${gwt.build.lib}/gwt-dev-${build.host.platform}.jar" />
 
   <property name="USER_PKGS"
           value="com.google.gwt.animation.client;com.google.gwt.benchmarks.client;com.google.gwt.core.client;com.google.gwt.core.ext;com.google.gwt.core.ext.soyc;com.google.gwt.core.ext.linker;com.google.gwt.core.ext.typeinfo;com.google.gwt.debug.client;com.google.gwt.dom.client;com.google.gwt.event.dom.client;com.google.gwt.event.logical.shared;com.google.gwt.event.shared;com.google.gwt.http.client;com.google.gwt.i18n.client;com.google.gwt.i18n.client.constants;com.google.gwt.i18n.rebind.format;com.google.gwt.i18n.rebind.keygen;com.google.gwt.json.client;com.google.gwt.junit.client;com.google.gwt.benchmarks.client;com.google.gwt.user.client;com.google.gwt.user.client.rpc;com.google.gwt.user.client.ui;com.google.gwt.user.datepicker.client;com.google.gwt.user.server.rpc;com.google.gwt.xml.client"/>

Reply via email to