Re: Building frameworks in Eclipse vs. Xcode

From: Chuck Hill (chil..lobal-village.net)
Date: Tue Jun 19 2007 - 19:55:45 EDT

  • Next message: Jonathan Miller: "Re: stable build"

    That is the correct build.xml. Dropping anything in Resources/
    should result in it getting into the .framework/Resources folder of
    the built product.

    Chuck

    On Jun 19, 2007, at 4:50 PM, Joshua Archer wrote:

    > I'm using version 3.2.2 for eclipse, and if I create a new WOnder
    > framework project, here's my build.xml:
    >
    > <Picture 1.png>
    > <Picture 2.png>
    >
    > <project name="AssetDBSupport" default="build" basedir=".">
    >
    > <!-- main targets -->
    > <!-- add optional targets to depends list if needed -->
    > <target name="build"
    > depends="setProps,init.build,build.woframework"/>
    >
    > <target name="compileAndBuild"
    > depends="setProps,init.build,compile,build.woframework" />
    >
    > <target name="install"
    > depends="setProps,init.install,build.woframework"/>
    >
    > <target name="clean" depends="setProps">
    > <delete dir="dist"/>
    > </target>
    >
    > <!-- property determination -->
    > <target name="setProps">
    > <property file="${user.home}${file.separator}build.properties"/>
    > <property file="build.properties"/>
    > <property file="${user.home}${file.separator}Library$
    > {file.separator}wobuild.properties"/>
    > <condition property="wo.properties.check.failed">
    > <not>
    > <and>
    > <isset property="wo.wosystemroot"/>
    > <isset property="wo.wolocalroot"/>
    > </and>
    > </not>
    > </condition>
    > <fail message="Could not find ${user.home}${file.separator}
    > Library${file.separator}wobuild.properties."
    > if="wo.properties.check.failed"/>
    > <property name="install.dir" value="${wo.wolocalroot}/Library/
    > Frameworks"/>
    > </target>
    >
    > <!-- basic initializations -->
    > <target name="init.install">
    > <tstamp/>
    > <property name="dest.dir" value="${install.dir}"/>
    > </target>
    >
    > <target name="init.build">
    > <tstamp/>
    > <property name="dest.dir" value="dist"/>
    > </target>
    >
    > <!-- woproject tasks -->
    > <target name="build.woframework">
    >
    > <taskdef name="woframework"
    > classname="org.objectstyle.woproject.ant.WOFramework">
    > </taskdef>
    >
    > <woframework name="${framework.name}" destDir="${dest.dir}"
    > customInfoPListContent="${customInfoPListContent}" principalClass="$
    > {principalClass}" eoAdaptorClassName="${eoAdaptorClassName}">
    > <classes dir="${classes.dir}">
    > <patternset>
    > <includesfile name="woproject/classes.include.patternset"/>
    > <excludesfile name="woproject/classes.exclude.patternset"/>
    > </patternset>
    > </classes>
    > <wsresources dir="WebServerResources">
    > <patternset>
    > <include name="**/*"/>
    > <exclude name="CVS"/>
    > <exclude name=".svn"/>
    > <excludesfile name="woproject/wsresources.exclude.patternset"/>
    > </patternset>
    > </wsresources>
    > <resources dir="Resources">
    > <patternset>
    > <include name="**/*"/>
    > <exclude name="CVS"/>
    > <exclude name=".svn"/>
    > <excludesfile name="woproject/resources.exclude.patternset"/>
    > </patternset>
    > </resources>
    > <resources dir="Components">
    > <patternset>
    > <include name="**/*"/>
    > <exclude name="CVS"/>
    > <exclude name=".svn"/>
    > <excludesfile name="woproject/resources.exclude.patternset"/>
    > </patternset>
    > </resources>
    > <lib dir="Libraries">
    > <include name="*.jar"/>
    > <exclude name="**/*.framework/**"/>
    > </lib>
    > </woframework>
    > </target>
    >
    > <target name = "compile" depends = "setProps,init.build" >
    > <mkdir dir = "bin"/>
    > <javac srcdir = "Sources" destdir = "bin">
    > <classpath>
    > <fileset dir="${wo.dir.user.home.library.frameworks}"
    > includesfile = "woproject/ant.frameworks.user.home">
    > <include name = "**/*.jar"/>
    > </fileset>
    > <fileset dir="${wo.wolocalroot}" includesfile = "woproject/
    > ant.frameworks.wo.wolocalroot">
    > <include name = "**/*.jar"/>
    > </fileset>
    > <fileset dir="${wo.wosystemroot}" includesfile = "woproject/
    > ant.frameworks.wo.wosystemroot">
    > <include name = "**/*.jar"/>
    > </fileset>
    > </classpath>
    > </javac>
    > </target>
    > </project>
    >
    > On Jun 19, 2007, at 4:34 PM, Chuck Hill wrote:
    >
    >>
    >> On Jun 19, 2007, at 4:20 PM, Joshua Archer wrote:
    >>
    >>> Hello Chuck et al,
    >>>
    >>> So, I installed the latest nightly, and created a WOnderFramework
    >>> project, and ended up with a build.xml file that looked like the
    >>> one I previously described.
    >>
    >> I just did that with same version that you claim to be using and I
    >> get this:
    >>
    >> <project name="WOnderFramework" default="build" basedir=".">
    >>
    >> <!-- main targets -->
    >> <!-- add optional targets to depends list if needed -->
    >> <target name="build"
    >> depends="setProps,init.build,build.woframework"/>
    >>
    >> <target name="compileAndBuild"
    >> depends="setProps,init.build,compile,build.woframework" />
    >>
    >> <target name="install"
    >> depends="setProps,init.install,build.woframework"/>
    >>
    >> <target name="clean" depends="setProps">
    >> <delete dir="dist"/>
    >> </target>
    >>
    >> <!-- property determination -->
    >> <target name="setProps">
    >> <property file="${user.home}${file.separator}build.properties"/>
    >> <property file="build.properties"/>
    >> <property file="${user.home}${file.separator}Library$
    >> {file.separator}wobuild.properties"/>
    >> <condition property="wo.properties.check.failed">
    >> <not>
    >> <and>
    >> <isset property="wo.wosystemroot"/>
    >> <isset property="wo.wolocalroot"/>
    >> </and>
    >> </not>
    >> </condition>
    >> <fail message="Could not find ${user.home}${file.separator}
    >> Library${file.separator}wobuild.properties."
    >> if="wo.properties.check.failed"/>
    >> <property name="install.dir" value="${wo.wolocalroot}/Library/
    >> Frameworks"/>
    >> </target>
    >>
    >> <!-- basic initializations -->
    >> <target name="init.install">
    >> <tstamp/>
    >> <property name="dest.dir" value="${install.dir}"/>
    >> </target>
    >>
    >> <target name="init.build">
    >> <tstamp/>
    >> <property name="dest.dir" value="dist"/>
    >> </target>
    >>
    >> <!-- woproject tasks -->
    >> <target name="build.woframework">
    >>
    >> <taskdef name="woframework"
    >> classname="org.objectstyle.woproject.ant.WOFramework">
    >> </taskdef>
    >>
    >> <woframework name="${framework.name}" destDir="${dest.dir}"
    >> customInfoPListContent="${customInfoPListContent}"
    >> principalClass="${principalClass}" eoAdaptorClassName="$
    >> {eoAdaptorClassName}">
    >> <classes dir="${classes.dir}">
    >> <patternset>
    >> <includesfile name="woproject/classes.include.patternset"/>
    >> <excludesfile name="woproject/classes.exclude.patternset"/>
    >> </patternset>
    >> </classes>
    >> <wsresources dir="WebServerResources">
    >> <patternset>
    >> <include name="**/*"/>
    >> <exclude name="CVS"/>
    >> <exclude name=".svn"/>
    >> <excludesfile name="woproject/wsresources.exclude.patternset"/>
    >> </patternset>
    >> </wsresources>
    >> <resources dir="Resources">
    >> <patternset>
    >> <include name="**/*"/>
    >> <exclude name="CVS"/>
    >> <exclude name=".svn"/>
    >> <excludesfile name="woproject/resources.exclude.patternset"/>
    >> </patternset>
    >> </resources>
    >> <resources dir="Components">
    >> <patternset>
    >> <include name="**/*"/>
    >> <exclude name="CVS"/>
    >> <exclude name=".svn"/>
    >> <excludesfile name="woproject/resources.exclude.patternset"/>
    >> </patternset>
    >> </resources>
    >> <lib dir="Libraries">
    >> <include name="*.jar"/>
    >> <exclude name="**/*.framework/**"/>
    >> </lib>
    >> </woframework>
    >> </target>
    >>
    >> <target name = "compile" depends = "setProps,init.build" >
    >> <mkdir dir = "bin"/>
    >> <javac srcdir = "Sources" destdir = "bin">
    >> <classpath>
    >> <fileset dir="${wo.dir.user.home.library.frameworks}"
    >> includesfile = "woproject/ant.frameworks.user.home">
    >> <include name = "**/*.jar"/>
    >> </fileset>
    >> <fileset dir="${wo.wolocalroot}" includesfile = "woproject/
    >> ant.frameworks.wo.wolocalroot">
    >> <include name = "**/*.jar"/>
    >> </fileset>
    >> <fileset dir="${wo.wosystemroot}" includesfile =
    >> "woproject/ant.frameworks.wo.wosystemroot">
    >> <include name = "**/*.jar"/>
    >> </fileset>
    >> </classpath>
    >> </javac>
    >> </target>
    >> </project>
    >>
    >>
    >>
    >> Does that look the same as yours?
    >>
    >>
    >>> Did I do something incorrect? Should I use WOFramework instead of
    >>> WOnderFramework?
    >>
    >> The WOnder versions are much easier to work with.
    >>
    >>
    >>> Do I have the wrong nightly build? It seems copying over the
    >>> build.xml will not solve my problem in this case.
    >>
    >> Did you update to Eclipse 3.2.2?
    >>
    >>
    >> Chuck
    >>
    >>
    >>>
    >>> Joshua
    >>>
    >>>> On Jun 18, 2007, at 3:58 PM, Chuck Hill wrote:
    >>>>
    >>>>> What are you describing is
    >>>>>
    >>>>> 4. Really, deeply broken Wonder.
    >>>>>
    >>>>> You, sir, are using an archaic version of WOLips. Things get
    >>>>> added and fixed frequency. Hie thee to http://
    >>>>> webobjects.mdimension.com/wolips/nightly/ and install something
    >>>>> modern. You _will_ need to recreate the project or at least
    >>>>> create a project of the same name and move build.xml and
    >>>>> woproject/ into this project.
    >>>>>
    >>>>>
    >>>>> Chuck
    >>>>>
    >>>>>
    >>>>>
    >>>>> On Jun 18, 2007, at 3:49 PM, Joshua Archer wrote:
    >>>>>
    >>>>>> mine looks *almost* like that, but it had a section for
    >>>>>> 'Components' and 'Libraries', which forced me to create some
    >>>>>> empty directories in the process or it would fail.
    >>>>>>
    >>>>>> On Jun 18, 2007, at 3:42 PM, Chuck Hill wrote:
    >>>>>>
    >>>>>>> The first thing to figure out is which project format you are
    >>>>>>> using:
    >>>>>>>
    >>>>>>> 1. WOLips standard
    >>>>>>> 2. Broken Wonder
    >>>>>>> 3. Fixed Wonder
    >>>>>>>
    >>>>>>> Look in the build.xml for <woframework...
    >>>>>>>
    >>>>>>> Does it look like this?
    >>>>>>>
    >>>>>>> <woframework name="${framework.name}" destDir="${dest.dir}"
    >>>>>>> customInfoPListContent="${customInfoPListContent}"
    >>>>>>> principalClass="${principalClass}" eoAdaptorClassName="$
    >>>>>>> {eoAdaptorClassName}">
    >>>>>>> <classes dir="${classes.dir}">
    >>>>>>> <patternset>
    >>>>>>> <includesfile name="woproject/
    >>>>>>> classes.include.patternset"/>
    >>>>>>> <excludesfile name="woproject/classes.exclude.patternset"/>
    >>>>>>> </patternset>
    >>>>>>> </classes>
    >>>>>>> <wsresources dir="WebServerResources">
    >>>>>>> <patternset>
    >>>>>>> <include name="**/*"/>
    >>>>>>> <exclude name="CVS"/>
    >>>>>>> <exclude name=".svn"/>
    >>>>>>> <excludesfile name="woproject/
    >>>>>>> wsresources.exclude.patternset"/>
    >>>>>>> </patternset>
    >>>>>>> </wsresources>
    >>>>>>> <resources dir="Resources">
    >>>>>>> <patternset>
    >>>>>>> <include name="**/*"/>
    >>>>>>> <exclude name="CVS"/>
    >>>>>>> <exclude name=".svn"/>
    >>>>>>> <excludesfile name="woproject/
    >>>>>>> resources.exclude.patternset"/>
    >>>>>>> </patternset>
    >>>>>>> </resources>
    >>>>>>>
    >>>>>>>
    >>>>>>>
    >>>>>>>
    >>>>>>> On Jun 18, 2007, at 3:21 PM, Joshua Archer wrote:
    >>>>>>>
    >>>>>>>> I've checked, and the only thing in there is Info.plist and
    >>>>>>>> the Java dir. I've got several other files that need to make
    >>>>>>>> it into Resources/, what do I edit to get them in? I'm by no
    >>>>>>>> means an ant build expert (really just starting out). I
    >>>>>>>> suspect I need to add something in there to copy the files
    >>>>>>>> at build, yes?
    >>>>>>>>
    >>>>>>>> On Jun 18, 2007, at 2:46 PM, Chuck Hill wrote:
    >>>>>>>>
    >>>>>>>>>
    >>>>>>>>>> and in /Library/Frameworks I got the framework to build
    >>>>>>>>>> with the jar. I have associated plist files etc. -- did
    >>>>>>>>>> those get into the jar, or do I need to modify my ant
    >>>>>>>>>> script to copy those into the framework?
    >>>>>>>>>
    >>>>>>>>> They _should_ get copied. Check in the .framework/
    >>>>>>>>> Resources directory to verify. If not, you will need to do
    >>>>>>>>> something.
    >>>>>>>>
    >>>>>>>> ---------------------------------------------------------------
    >>>>>>>> --------------
    >>>>>>>> Joshua Archer
    >>>>>>>> Software Engineer, CSU - Center for Distributed Learning
    >>>>>>>> Phone: 707.664.2085, Fax: 707.664.4350
    >>>>>>>> ---------------------------------------------------------------
    >>>>>>>> --------------
    >>>>>>>>
    >>>>>>>>
    >>>>>>>>
    >>>>>>>>
    >>>>>>>
    >>>>>>> --
    >>>>>>>
    >>>>>>> Practical WebObjects - for developers who want to increase
    >>>>>>> their overall knowledge of WebObjects or who are trying to
    >>>>>>> solve specific problems.
    >>>>>>> http://www.global-village.net/products/practical_webobjects
    >>>>>>>
    >>>>>>>
    >>>>>>>
    >>>>>>>
    >>>>>>>
    >>>>>>>
    >>>>>>
    >>>>>> -----------------------------------------------------------------
    >>>>>> ------------
    >>>>>> Joshua Archer
    >>>>>> Software Engineer, CSU - Center for Distributed Learning
    >>>>>> Phone: 707.664.2085, Fax: 707.664.4350
    >>>>>> -----------------------------------------------------------------
    >>>>>> ------------
    >>>>>>
    >>>>>>
    >>>>>>
    >>>>>>
    >>>>>
    >>>>> --
    >>>>>
    >>>>> Practical WebObjects - for developers who want to increase
    >>>>> their overall knowledge of WebObjects or who are trying to
    >>>>> solve specific problems.
    >>>>> http://www.global-village.net/products/practical_webobjects
    >>>>>
    >>>>>
    >>>>>
    >>>>>
    >>>>>
    >>>>>
    >>>>
    >>>> -------------------------------------------------------------------
    >>>> ----------
    >>>> Joshua Archer
    >>>> Software Engineer, CSU - Center for Distributed Learning
    >>>> Phone: 707.664.2085, Fax: 707.664.4350
    >>>> -------------------------------------------------------------------
    >>>> ----------
    >>>>
    >>>>
    >>>>
    >>>>
    >>>
    >>> --------------------------------------------------------------------
    >>> ---------
    >>> Joshua Archer
    >>> Software Engineer, CSU - Center for Distributed Learning
    >>> Phone: 707.664.2085, Fax: 707.664.4350
    >>> --------------------------------------------------------------------
    >>> ---------
    >>>
    >>>
    >>>
    >>>
    >>
    >> --
    >>
    >> Practical WebObjects - for developers who want to increase their
    >> overall knowledge of WebObjects or who are trying to solve
    >> specific problems.
    >> http://www.global-village.net/products/practical_webobjects
    >>
    >>
    >>
    >>
    >>
    >>
    >
    > ----------------------------------------------------------------------
    > -------
    > Joshua Archer
    > Software Engineer, CSU - Center for Distributed Learning
    > Phone: 707.664.2085, Fax: 707.664.4350
    > ----------------------------------------------------------------------
    > -------
    >
    >
    >

    -- 
    

    Practical WebObjects - for developers who want to increase their overall knowledge of WebObjects or who are trying to solve specific problems. http://www.global-village.net/products/practical_webobjects



    This archive was generated by hypermail 2.0.0 : Tue Jun 19 2007 - 19:56:43 EDT