Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.
Bug 402343 - [CBI] Delta pack missing required build.properties and build.xml
Summary: [CBI] Delta pack missing required build.properties and build.xml
Status: RESOLVED FIXED
Alias: None
Product: Equinox
Classification: Eclipse Project
Component: Framework (show other bugs)
Version: 3.9.0 Kepler   Edit
Hardware: PC Windows 7
: P3 major (vote)
Target Milestone: Kepler M7   Edit
Assignee: Thomas Watson CLA
QA Contact:
URL:
Whiteboard:
Keywords:
: 403607 406690 (view as bug list)
Depends on:
Blocks: 394216 401572
  Show dependency tree
 
Reported: 2013-03-04 10:22 EST by Curtis Windatt CLA
Modified: 2013-04-26 13:14 EDT (History)
7 users (show)

See Also:


Attachments
Copy in the 2 files as resources. (20.55 KB, patch)
2013-03-06 15:01 EST, Paul Webster CLA
no flags Details | Diff
debug.log (334.28 KB, application/octet-stream)
2013-03-06 16:55 EST, Thanh Ha CLA
no flags Details
antrun plugin (1.51 KB, patch)
2013-03-23 16:35 EDT, Paul Webster CLA
no flags Details | Diff
antrun plugin (21.29 KB, patch)
2013-03-24 14:54 EDT, Paul Webster CLA
no flags Details | Diff
Add parameters for mac launcher (953 bytes, patch)
2013-03-26 19:13 EDT, Paul Webster CLA
no flags Details | Diff
Change the paramter for the mac launcher (2.07 KB, patch)
2013-04-01 10:04 EDT, Paul Webster CLA
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Curtis Windatt CLA 2013-03-04 10:22:44 EST
Finally figured out the cause of Bug 401572 - Broken PDE Build tests.  The delta pack is missing the build.properties and build.xml files in the launcher feature.  Sorry this took a while to track down as I was comparing the content of the plug-ins which don't contain a build.properties.

Marked as major as this causes problems anytime you use PDE Build to export to a different platform.

The build.properties file has custom=true, so the build.xml is used to build the feature, but there are required properties in it.  Both files need to be available in the delta pack.

C:\Eclipse\Delta Pack I20120130\features\org.eclipse.equinox.executable_3.6.0\build.xml
C:\Eclipse\Delta Pack I20120130\features\org.eclipse.equinox.executable_3.6.0\build.properties
Comment 1 Paul Webster CLA 2013-03-05 08:06:05 EST
In the CBI build we now use http://git.eclipse.org/c/equinox/rt.equinox.framework.git/tree/features/org.eclipse.equinox.executable.feature to build the executable feature.

Is http://git.eclipse.org/c/equinox/rt.equinox.framework.git/tree/features/org.eclipse.equinox.executable.feature/build.properties the build.properties that you need in the feature.jar?  I can resurrect build.xml

PW
Comment 2 Curtis Windatt CLA 2013-03-05 10:04:53 EST
(In reply to comment #1)
> Is
> http://git.eclipse.org/c/equinox/rt.equinox.framework.git/tree/features/org.
> eclipse.equinox.executable.feature/build.properties the build.properties
> that you need in the feature.jar?  I can resurrect build.xml
> 
> PW

That build.properties has been modified from the original.  custom=true should not be commented out so build.xml is run for building.  Also, root.permissions should be uncommented.  The bin.includes isn't necessary once custom is turned on.
Comment 3 Paul Webster CLA 2013-03-06 15:01:47 EST
Created attachment 228025 [details]
Copy in the 2 files as resources.

Thanh, does this look reasonable?

I've set up the 2 files as we want them in <proj>/resources, and I expect the maven resources section to simply copy those into the root of the jar.

PW
Comment 4 Thanh Ha CLA 2013-03-06 15:24:20 EST
(In reply to comment #3)
> Created attachment 228025 [details]
> Copy in the 2 files as resources.
> 
> Thanh, does this look reasonable?
> 
> I've set up the 2 files as we want them in <proj>/resources, and I expect
> the maven resources section to simply copy those into the root of the jar.
> 

maven-resources-plugin will copy your resources to ${project.build.outputDirectory} by default. According to Maven docs [1] this is "target/classes" by default. I can't recall exactly where it includes the resource in your jar though.

I'm about to run a build at the moment so I can include your patch in my build and find out.

[1] http://docs.codehaus.org/display/MAVENUSER/MavenPropertiesGuide
Comment 5 Thanh Ha CLA 2013-03-06 16:54:59 EST
(In reply to comment #4)
> (In reply to comment #3)
> > Created attachment 228025 [details]
> > Copy in the 2 files as resources.
> > 
> > Thanh, does this look reasonable?
> > 
> > I've set up the 2 files as we want them in <proj>/resources, and I expect
> > the maven resources section to simply copy those into the root of the jar.
> > 
> 
> maven-resources-plugin will copy your resources to
> ${project.build.outputDirectory} by default. According to Maven docs [1]
> this is "target/classes" by default. I can't recall exactly where it
> includes the resource in your jar though.
> 
> I'm about to run a build at the moment so I can include your patch in my
> build and find out.
> 
> [1] http://docs.codehaus.org/display/MAVENUSER/MavenPropertiesGuide

My build just finished and it doesn't look like the 2 files were copied anywhere. Not even into the /target directory. Looking at debug logs, it doesn't look like Maven picked up the <proj>/resources directory and files anywhere. Perhaps we are missing some configuration?
Comment 6 Thanh Ha CLA 2013-03-06 16:55:56 EST
Created attachment 228029 [details]
debug.log

DEBUG logs from my build.
Comment 7 Paul Webster CLA 2013-03-06 19:01:38 EST
I was following http://maven.apache.org/plugins/maven-resources-plugin/examples/resource-directory.html but I don't see it picked up in your log.

Maybe the profile overrides it (although I thought it was added together)

PW
Comment 8 Paul Webster CLA 2013-03-07 14:55:57 EST
Maybe we can't use the default because the feature doesn't have a compile phase?

PW
Comment 9 Curtis Windatt CLA 2013-03-18 10:19:09 EDT
*** Bug 403607 has been marked as a duplicate of this bug. ***
Comment 10 Paul Webster CLA 2013-03-23 15:47:19 EDT
The patch contains the resources in a o.e.equinox.executable.feature/resources.  But so far I haven't been able to convince maven/tycho to include them in the feature.jar that's generated.

PW
Comment 11 Paul Webster CLA 2013-03-23 16:35:28 EDT
Created attachment 228964 [details]
antrun plugin

antrun plugin to unzip the feature jar, add the 2 files, and then zip them back up.

I'd like for this to run after the jar is created but before it is signed.  I'm not sure that's been captured.

PW
Comment 12 Paul Webster CLA 2013-03-23 16:39:50 EDT
OK, looks like signing is in the verify phase, so we should be good.

PW
Comment 13 Paul Webster CLA 2013-03-24 14:54:55 EDT
Created attachment 228973 [details]
antrun plugin

patch the feature jar immediately after it is created.

PW
Comment 14 Paul Webster CLA 2013-03-25 06:17:30 EDT
(In reply to comment #13)
> Created attachment 228973 [details]
> antrun plugin

OK, this makes it into the build repo.  Tom, could you please apply this patch?

PW
Comment 15 Thomas Watson CLA 2013-03-25 10:43:40 EDT
(In reply to comment #14)
> (In reply to comment #13)
> > Created attachment 228973 [details]
> > antrun plugin
> 
> OK, this makes it into the build repo.  Tom, could you please apply this
> patch?
> 
> PW

Done with commit:

http://git.eclipse.org/c/equinox/rt.equinox.framework.git/commit/?id=878a62e15fa0ba0800cbfda11892b75e4122826d

Thanks!
Comment 16 Curtis Windatt CLA 2013-03-26 17:33:12 EDT
Most of the PDE Build tests now pass with the build.properties and build.xml included again.  However, the contents of the files has changed causing new failures when exporting a product on MacOSX

View the equinox executable feature's build.properties.  On the macosx entries, the launcher name is hard coded to Eclipse.app rather than launcher name.  This is important because the launcher is renamed when building the product.

For example:
root.macosx.cocoa.x86.permissions.755=Eclipse.app/Contents/MacOS/launcher
should be:
root.macosx.cocoa.x86.permissions.755=${launcherName}.app/Contents/MacOS/${launcherName}
Comment 17 Paul Webster CLA 2013-03-26 18:10:14 EDT
OK, but that should be easy to fix now, we just need to update the contents.

PW
Comment 18 Paul Webster CLA 2013-03-26 19:13:06 EDT
Created attachment 229071 [details]
Add parameters for mac launcher

Tom, could you please apply this to the o.e.equinox.executable in features/ ?

PW
Comment 19 Thomas Watson CLA 2013-03-27 07:54:47 EDT
(In reply to comment #18)
> Created attachment 229071 [details]
> Add parameters for mac launcher
> 
> Tom, could you please apply this to the o.e.equinox.executable in features/ ?
> 
> PW

Thanks Paul.  Commit:

http://git.eclipse.org/c/equinox/rt.equinox.framework.git/commit/?id=7f2a6a87ae21c4a562d836d969207c2177c24368
Comment 20 Curtis Windatt CLA 2013-04-01 09:51:51 EDT
(In reply to comment #19)
> Thanks Paul.  Commit:
> 
> http://git.eclipse.org/c/equinox/rt.equinox.framework.git/commit/
> ?id=7f2a6a87ae21c4a562d836d969207c2177c24368

Reopening.  In N20130330-1500 the delta pack has not been updated.

http://www.eclipse.org/downloads/download.php?file=/eclipse/downloads/drops4/N20130330-1500/eclipse-N20130330-1500-delta-pack.zip
Comment 21 Paul Webster CLA 2013-04-01 10:04:30 EDT
Created attachment 229204 [details]
Change the paramter for the mac launcher

OK, I added it to the wrong build.properties, it needed to go into resources/build.properties.

I've put back the root one and added the changes to resources/build.properties

PW
Comment 22 Thomas Watson CLA 2013-04-02 09:02:50 EDT
(In reply to comment #21)
> Created attachment 229204 [details]
> Change the paramter for the mac launcher
> 
> OK, I added it to the wrong build.properties, it needed to go into
> resources/build.properties.
> 
> I've put back the root one and added the changes to
> resources/build.properties
> 
> PW

Done.  Thanks Paul:

http://git.eclipse.org/c/equinox/rt.equinox.framework.git/commit/?id=7cbc26f36dbb6afb6747e81579ac6f9d7c3ce522
Comment 23 Paul Webster CLA 2013-04-04 08:07:17 EDT
Curtis, is this in better shape now?  http://download.eclipse.org/eclipse/downloads/drops4/N20130403-2000/testResults.php says the PDE build tests all passed.

PW
Comment 24 Curtis Windatt CLA 2013-04-04 10:19:23 EDT
(In reply to comment #23)
> Curtis, is this in better shape now? 
> http://download.eclipse.org/eclipse/downloads/drops4/N20130403-2000/
> testResults.php says the PDE build tests all passed.
> 
> PW

Yes, I just closed the PDE bug.  Thanks a lot Paul!
Comment 25 Gunnar Wagenknecht CLA 2013-04-05 15:27:08 EDT
FWIW, the fix for this bug seems to have brought the executable back into my build output.
Comment 26 Curtis Windatt CLA 2013-04-26 13:14:20 EDT
*** Bug 406690 has been marked as a duplicate of this bug. ***