If that's all we need the tuscany_sca_config.h file for then, yes this just got a whole lot easier. We can do the following on the Tuscany-BaseCompiler
<condition property="mac" value="true"> <os family="mac"/> </condition> <compiler id="Tuscany-BaseCompiler" multithreaded="true" exceptions="true" rtti="true"> <defineset if="windows" define="WIN32,_CRT_SECURE_NO_DEPRECATE,SCA_EXPORTS"/> <defineset if="mac" define="IS_DARWIN"/> <includepath path="${sdo.include.dir}"/> <includepath path="${tuscanySCA.root.dir}"/> <!-- tuscany_sca_config.h --> <includepath path="${tuscanySCA.root.src.dir}"/> <includepath path="${tuscanySCA.root.src.dir}/core/src"/> </compiler> -------------------- Brady Johnson Lead Software Developer - HydraSCA Rogue Wave Software - [EMAIL PROTECTED] -----Original Message----- From: Pete Robbins [mailto:[EMAIL PROTECTED] Sent: Wednesday, July 18, 2007 3:41 PM To: tuscany-dev@ws.apache.org Subject: Re: [SCA Native] preliminary ant build On 18/07/07, Brady Johnson <[EMAIL PROTECTED]> wrote: > > I uploaded a patch on top of what you submit to svn. > > Here is a description of what I changed: > > - Changed the name of compilers.xml to system.xml. > > - This update has better support for a platform.properties file that > is completely empty. > That is, all of the platform dependent items are figured out by ant. > If they are set in > the platform.properties file then they override the ant determination. > > - Better directory path management has been added to the root > build.xml and runtime/core/src/build.xml files. > > - The install and clean targets in runtime/core/src have been completed. > > > With respect to your latest post regarding "tuscany-sca-config.h": > I knew this was a problem on clean systems and had envisioned either > running a script or using a slimmed down automake/configure to setup > this file and any platform specific parameters. That's certainly > something we'll have to address, what do you think? > The only reason we use this automake generated file is to set the IS_DARWIN compiler flag for running on Mac OS X. I expect we can use a different technique in ant to set this flag. Is there a "family=mac" or somesuch in ant? The automake simply runs a 'uname -s' command to figure it out. I think a goal for this shoul be that I can do a clean extract from svn and type "ant" in the top level directory and it will build with everything defaulted. We need various pre-reqs defined (SDO loccation, + other pre-reqs) but we should try to make this as simple as possible. Cheers, > > -------------------- > Brady Johnson > Lead Software Developer - HydraSCA > Rogue Wave Software - [EMAIL PROTECTED] > > > -----Original Message----- > From: Pete Robbins [mailto:[EMAIL PROTECTED] > Sent: Wednesday, July 18, 2007 9:22 AM > To: tuscany-dev@ws.apache.org > Subject: Re: [SCA Native] preliminary ant build > > the install dir defaults to sca/deploy so I think we don't need any > properties other than overrides. > > I'll check in what I have. so youi can see. > > Cheers, > > On 18/07/07, Brady Johnson <[EMAIL PROTECTED]> wrote: > > > > Pete, > > > > That's a good idea. Then the only thing that really need to be set > > in platform.properties file would be: > > tuscanySCA.install.dir > > and any possible overides > > > > I'll put that together real quick and upload it. > > > > Thanks > > > > -------------------- > > Brady Johnson > > Lead Software Developer - HydraSCA > > Rogue Wave Software - [EMAIL PROTECTED] > > > > > > -----Original Message----- > > From: Pete Robbins [mailto:[EMAIL PROTECTED] > > Sent: Wednesday, July 18, 2007 9:00 AM > > To: tuscany-dev@ws.apache.org > > Subject: Re: [SCA Native] preliminary ant build > > > > On 18/07/07, Pete Robbins <[EMAIL PROTECTED]> wrote: > > > On 18/07/07, Brady Johnson <[EMAIL PROTECTED]> wrote: > > > > > > > > Pete, > > > > > > > > Thanks for trying out the ant build scripts. > > > > > > > > Regarding core.dir, you're right, the name will need to change. > > > > I can do that no problem. > > > > > > > > As for the "tuscanySCA.root.dir" : Your suggestion will work if > > > > you only execute ant from the root directory, but not if you > > > > execute ant > > > > > > from the runtime/core/src directory. That's why I put it in the > > > > platform.properties, which is accessed by all build.xml's. Its > > > > better ant coding style to have anything that needs to be > > > > configured > > > > > > in a properties file, not in an ant build.xml file. > > > > > > > > > > Yes... I realized that would limit you to running ant from the top > > > level. So, as most of the info in platform.properties can be > > > deduced > > > > would a better solution be to have a top level (or in antscripts > > > dir) platform-properties.xml that > > > a) imports platform.properties for any overrides > > > b) sets the properties conditional on the platform. > > > > > > e.g. > > > <condition property="lib.ext" value='.so' '> > > > <os family='linux'/> > > > </condition> > > > <condition property="lib.ext" value='.dll' '> > > > <os family='windows'/> > > > </condition> > > > <condition property="lib.ext" value='.dylib '> > > > <os family='MacOSX?????'/> > > > </condition> > > > > > > > the build.xml files would all import this top level file: > > > > > > > > As for the platform.properties file for windows: > > > > The property platform can/should be removed, its not necessary. > > > > If > > > > > the property "platform.compiler-definition" is set, then that > > > > value will be used for the compiler selection, else it will get > > > > set to msvc for windows as can be seen on line 18 of > compilers.xml. > > > > > > > > I think the way this should ship is to have several > > > > platform.properties files for the different platform: > > > > platform.properties.linux > > > > platform.properties.windows > > > > platform.properties.mac > > > > Which will each have values pre configured for the corresponding > > > > platform. Then with either configure or a shell script, the > > > > platform > > > > > > file wil be copied to platform.properties and the directory > > > > properties will be set accordingly. > > > > > > > > -------------------- > > > > Brady Johnson > > > > Lead Software Developer - HydraSCA Rogue Wave Software - > > > > [EMAIL PROTECTED] > > > > > > > > > > > > -----Original Message----- > > > > From: Pete Robbins [mailto:[EMAIL PROTECTED] > > > > Sent: Wednesday, July 18, 2007 7:08 AM > > > > To: tuscany-dev@ws.apache.org > > > > Subject: Re: [SCA Native] preliminary ant build > > > > > > > > I ran into a couple of issues tryingt o run this ant build. > > > > Firstly I got an error with a path > > > > xxxxx/cpp/sca/runtime/core/src/runtime/core/src. I trcked this > > > > down to the fact that the property core.dir is set in the top > > > > level build.xml to "runtime/core/src" and in the > > > > runtime/core/src/build.xml the same property name is used and > > > > set tu > > > > > > "tuscany/sca/core". It looks to me like the second defintion of > > > > core.dir is being ignored. I'm not an ant expert ... do > > > > properties > > get propagated from higher level build files? > > > > I got around this by changing the name of core.dir to src.dir in > > > > one > > > > > > of the files. > > > > > > > > Rather than specifying the paths to the source code etc in the > > > > platform.properties I would prefer to set these automatically so > > > > in the top level build.xml I added: > > > > > > > > <property name="tuscanySCA.root.dir" location="$env.PWD}" /> > > > > > > > > and then based other properties from this. It seemed to work! > > > > > > > > Do these changes make sense? > > > > > > > > Cheers, > > > > > > > > > > > > On 18/07/07, Pete Robbins <[EMAIL PROTECTED]> wrote: > > > > > I'd like some info on what I need to edit in the > > platform.properties. > > > > > Particularly: > > > > > > > > > > platform.compiler-definition=g++m32 > > > > > platform=rhas4u4_gcc346 > > > > > > > > > > One good thing about automake is that it detects your > > > > > platform/compiler etc automatically. > > > > > > > > > > Cheers, > > > > > > > > > > > > > > > On 17/07/07, Brady Johnson <[EMAIL PROTECTED]> wrote: > > > > > > > > > > > > Pete, > > > > > > > > > > > > I put together some documentation for using ant with > > > > > > TuscanySCA > > > > Native. > > > > > > > > > > > > How's this? > > > > > > > > > > > > -------------------- > > > > > > Brady Johnson > > > > > > Lead Software Developer - HydraSCA Rogue Wave Software - > > > > > > [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > Using ant to build TuscanySCA Native > > > > > > > > > > > > > > > > > > > > > > > > 1. Required Software to build TuscanySCA Native with ant: > > > > > > > > > > > > Ant: > > > > > > Ant comes installed with almost all Linux distributions > > > > > > version 1.6 or later > > > > > > Download: http://ant.apache.org/ > > > > > > > > > > > > antcontrib: > > > > > > version 1.0b3 or later > > > > > > Download: http://ant-contrib.sourceforge.net/ > > > > > > > > > > > > antcontrib cpptasks.jar > > > > > > version 1.0b4 or later > > > > > > Download: http://ant-contrib.sourceforge.net/ > > > > > > Information: > > > > > > http://ant-contrib.sourceforge.net/cc.html > > > > > > > > > > > > > > > > > > 2. Installation Instructions: > > > > > > > > > > > > Linux > > > > > > ----- > > > > > > > > > > > > Make sure JAVA_HOME is set before starting. > > > > > > > > > > > > Install ant according to > > http://ant.apache.org/manual/index.html. > > > > > > > > > > > > Set the ANT_HOME variable to the directory where you install > > ant. > > > > > > export ANT_HOME="/home/you/ant" > > > > > > > > > > > > Add $ANT_HOME/bin to your path. > > > > > > export PATH="${PATH}:${ANT_HOME}/bin" > > > > > > > > > > > > Optional ant tasks, such as antcontrib and cpptasks, should > > > > > > be > > > > > > > installed in $ANT_HOME/lib So place the antcontrib and > > > > > > cpptasks jars > > > > > > > > > > there. > > > > > > > > > > > > If you dont have write access to $ANT_HOME/lib, do the > > following: > > > > > > - create ${user.home}/.ant/lib > > > > > > - place the jars here > > > > > > > > > > > > Avoid adding optional ant tasks to your classpath, this is > > > > problematic. > > > > > > > > > > > > Windows > > > > > > ------- > > > > > > > > > > > > Make sure JAVA_HOME is set before starting. > > > > > > > > > > > > Install ant according to > > http://ant.apache.org/manual/index.html. > > > > > > > > > > > > Set the ANT_HOME variable to the directory where you install > > ant. > > > > > > set ANT_HOME=c:\ant > > > > > > > > > > > > Add %ANT_HOME%\bin to your path. > > > > > > set PATH=%PATH%;%ANT_HOME%\bin > > > > > > > > > > > > Optional ant tasks, such as antcontrib and cpptasks, should > > > > > > be > > > > > > > installed in %ANT_HOME%\lib So place the antcontrib and > > > > > > cpptasks > > > > > > > > jars there. > > > > > > > > > > > > If you dont have write access to %ANT_HOME%\lib, do the > > following: > > > > > > - create ${user.home}\.ant\lib > > > > > > - place the jars here > > > > > > > > > > > > Avoid adding optional ant tasks to your classpath, this is > > > > problematic. > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -----Original Message----- > > > > > > From: Pete Robbins [mailto:[EMAIL PROTECTED] > > > > > > Sent: Tuesday, July 17, 2007 1:24 AM > > > > > > To: tuscany-dev@ws.apache.org > > > > > > Subject: Re: [SCA Native] preliminary ant build > > > > > > > > > > > > Thanks Brady. I'll take a look at this. We will need doc as > > > > > > to > > > > > > > what the dependencies are (cpptasks etc) and any > > > > > > configuration > > > > > > > that is > > > > needed. > > > > > > > > > > > > Cheers, > > > > > > > > > > > > On 16/07/07, Brady Johnson <[EMAIL PROTECTED]> wrote: > > > > > > > > > > > > > > For anyone interested, I uploaded another patch for this > > > > > > > JIRA that > > > > > > > > > > > makes it work better for windows. > > > > > > > > > > > > > > tuscanySCAnative_ant_update1.tar.gz > > > > > > > > > > > > > > -------------------- > > > > > > > Brady Johnson > > > > > > > Lead Software Developer - HydraSCA Rogue Wave Software - > > > > > > > [EMAIL PROTECTED] > > > > > > > <mailto:[EMAIL PROTECTED]> > > > > > > > > > > > > > > > > > > > > > > > > > > > > -----Original Message----- > > > > > > > From: Brady Johnson [mailto:[EMAIL PROTECTED] > > > > > > > Sent: Monday, July 16, 2007 10:46 AM > > > > > > > To: tuscany-dev@ws.apache.org > > > > > > > Subject: [SCA Native] preliminary ant build > > > > > > > > > > > > > > Hello, > > > > > > > > > > > > > > This may be the second time you receive this email, the > > > > > > > first time > > > > > > > > > > > I sent it with an attachment, which I later realized that > > > > > > > this > > > > > > > > > dist list > > > > > > > > > > > > > may reject. So here it is again, w/o the attachment. I > > > > > > > created > > > > > > > > > a JIRA and put the attachment there: > > > > > > > > > > > > > > https://issues.apache.org/jira/browse/TUSCANY-1438 > > > > > > > > > > > > > > According to a previous thread titled "[SCA Native] next > > > > > > > release content > > > > > > > [was: Tuscany roadmap]" (I didnt want to add another "was" > > > > > > > redirection > > > > > > > ;) ), I have prepared ant build scripts for > > cpp/sca/runtime/core. > > > > > > > > > > > > > > The tar.gz file attached to the jira should just "overlay" > > > > > > > onto the tuscany SCA cpp source code directory structure. > > > > > > > It > > > > > > > > consists of the following files: > > > > > > > > > > > > > > <tuscanySca Native Src dir>/ > > > > > > > | > > > > > > > |---- build.xml > > > > > > > | > > > > > > > |---- antscripts/ > > > > > > > | | > > > > > > > | |---- compilers.xml > > > > > > > | |---- compile-targets.xml > > > > > > > | |---- platform.properties > > > > > > > | > > > > > > > |---- runtime/core/src/build.xml > > > > > > > > > > > > > > In order to use it, you will need to modify the > > > > > > > platform.properties file. This will later be taken care of > > > > > > > by either configure, or maybe just an install script. > > > > > > > > > > > > > > Currently it compiles and links > > > > > > > runtime/core/src/tuscany/sca > > > > > > > > {core, extension, model, util} and creates > libtuscany_sca.so. > > > > > > > The install target installs the lib and the headers from > > > > > > > those > > > > > > > > > src directories to the install directory specified in > > > > platform.properties. > > > > > > > > > > > > > > Give it a spin and let me know what you think. It shouldnt > > > > > > > take much to finish it for the rest of tuscany cpp. > > > > > > > > > > > > > > If it works out, we can then discuss how to configure > > > > > > > platform.properties. > > > > > > > > > > > > > > -------------------- > > > > > > > Brady Johnson > > > > > > > Lead Software Developer - HydraSCA Rogue Wave Software - > > > > > > > [EMAIL PROTECTED] > > > > > > > <mailto:[EMAIL PROTECTED]> > > > > > > > > > > > > > > ---------------------------------------------------------- > > > > > > > -- > > > > > > > -- > > > > > > > ---- > > > > > > > --- To unsubscribe, e-mail: > > > > > > > [EMAIL PROTECTED] > > > > > > > For additional commands, e-mail: > > > > > > > [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > > Pete > > > > > > > > > > > > ------------------------------------------------------------ > > > > > > -- > > > > > > -- > > > > > > ---- > > > > > > - To unsubscribe, e-mail: > > > > > > [EMAIL PROTECTED] > > > > > > For additional commands, e-mail: > > > > > > [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > ------------------------------------------------------------ > > > > > > -- > > > > > > -- > > > > > > ---- > > > > > > - To unsubscribe, e-mail: > > > > > > [EMAIL PROTECTED] > > > > > > For additional commands, e-mail: > > > > > > [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > > > > > > > > > > > -- > > > > > Pete > > > > > > > > > > > > > > > > > -- > > > > Pete > > > > > > > > ---------------------------------------------------------------- > > > > -- > > > > -- > > > > - To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > ---------------------------------------------------------------- > > > > -- > > > > -- > > > > - To unsubscribe, e-mail: [EMAIL PROTECTED] > > > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > > > > > > > > > > > -- > > > Pete > > > > > > > > > -- > > Pete > > > > -------------------------------------------------------------------- > > - To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > -------------------------------------------------------------------- > > - To unsubscribe, e-mail: [EMAIL PROTECTED] > > For additional commands, e-mail: [EMAIL PROTECTED] > > > > > > > -- > Pete > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > > --------------------------------------------------------------------- > To unsubscribe, e-mail: [EMAIL PROTECTED] > For additional commands, e-mail: [EMAIL PROTECTED] > > -- Pete --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED] --------------------------------------------------------------------- To unsubscribe, e-mail: [EMAIL PROTECTED] For additional commands, e-mail: [EMAIL PROTECTED]