Hi, On Wed, Mar 13, 2013 at 6:55 PM, Weyert de Boer <wey...@gmail.com> wrote: > Now if I run this script I am having a few problems. First of all my > generate_configuration_class gets run too early in the process and > just before compilation time. Next, it also only executes the the last > compile definition in my project definition. Can I also define > projects and use a different project location? E.g. have a client1 > project which has its sources in a totally different location? If so I > could define multiple projects and hard-code the source code to main > source directory of the application. Or are there better approaches?
>From what I understand you are trying to build three different artifacts, one customized for each client. We do this quite a bit with java code but have never done it with flash (?) or whatever code type you are using. There is a couple of strategies we have used in the past. I don't know enough about flash to know if any of them are appropriate. * Extract out the common code into a different project and then have a project per client. Each client-specific project includes the shared project and adds customisation for the client. ie pseudo code is project 'foo' do project 'common' do package :jar end project 'client-1' do compile.with project('common') package(:jar).merge(project('common')) end project 'client-2' do compile.with project('common') package(:jar).merge(project('common')) end end * The other possibility is that you place all the code in one project but produce multiple packages, each with other client code stripped out. i.e. project 'foo' do package(:jar, :classifier=>'client-1').exclude('/client-2/*) package(:jar, :classifier=>'client-2').exclude('/client-1/*) end * The other is to define multiple projects that share overlapping source/resources. project 'foo' do project 'client-1' do compile.from _('../common/src') package(:jar) end project 'client-2' do compile.from _('../common/src') package(:jar) end end HTH, Peter Donald