Skip to main content

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index] [List Home]
Re: [cbi-dev] CBI "clean" build and SWT

Andrey,

The CBI based SWT built does nothing more complicated than the regular
build - it just calls proper build.xml script to get everything created.

The observations you have (especially that the first build is correct)
indicate rather that mvn clean does not clean as many things as you'd
like.

You may want to run git clean -d -F in affected repositories to get rid
off all untracked files. 

On Fri, 2012-09-07 at 12:52 +0200, Andrey Loskutov wrote:
> Hi,
> 
> while trying to understand why my SWT source changes are not reflected in  
> the CBI build, I think I found a problem with the "clean" build.
> 
> In my expectation (I'm not maven user at all) if I say "mvn clean install"  
> it should do the "clean" build in the sense that all previously generated  
> build artifacts are first deleted, and then the full source build starts  
>  from scratch.
> 
> At least for SWT build it seems to be not true.
> 
> SWT builds different Linux platform flavors from the generated java code,  
> which uses same source files as common origin. SWT build do some  
> pre-processing and generates plattform specific sources before starting  
> compiler. This way SWT can build x86 and x86_64 java code from "same"  
> original java file.
> 
> So if I understood how CBI build works, it takes SWT "origin" from
> 
> /eclipse.platform.swt/bundles/org.eclipse.swt/Eclipse SWT/gtk
> 
> and generates two "children":
> 
> /eclipse.platform.swt.binaries/bundles/org.eclipse.swt.gtk.linux.x86/src
> /eclipse.platform.swt.binaries/bundles/org.eclipse.swt.gtk.linux.x86_64/src
> 
>  from which is then generates .class and .jar artifacts.
> 
> So my naive approach to patch some SWT code was to change files located  
> under the "origin" path and expectation was that the modified code will be  
> properly re-generated to the "children" directories.
> 
> This works only the first time I'm starting the CBI build.
> 
> Each consequent CBI build (which calls "mvn clean install") seem to ignore  
> any changes on "origin" files and generates binaries from the out-of-date  
> "children" directories.
> 
> I'm using the original CBI wiki build commands to run the build with  
> binary pieces, no extras at all except modified SWT code.
> 
> Can you confirm my observations?
> Do I miss some extra steps for "maven clean build" executed second time?
> Can it be that maven is not aware of that extra SWT generated source  
> folders, so it doesn't properly perform cleanup? Should I report a bug for  
> that then?
> 
> Thank you!
> 

-- 
Krzysztof Daniel <kdaniel@xxxxxxxxxx>
Red Hat



Back to the top