| Summary: | Can not launch starter kit on Mac | ||
|---|---|---|---|
| Product: | [Eclipse Project] Platform | Reporter: | David Williams <david_williams> |
| Component: | Releng | Assignee: | David Williams <david_williams> |
| Status: | VERIFIED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | CC: | jan.sievers, tjwatson |
| Version: | 4.3 | ||
| Target Milestone: | 4.3.2 | ||
| Hardware: | PC | ||
| OS: | Mac OS X | ||
| URL: | http://jira.codehaus.org/browse/PLXCOMP-117 | ||
| Whiteboard: | |||
|
Description
David Williams
The reason is because the rt in the root of the product is not linked to the real one under the rt.app folder. This is identical to the bug 402052 for the Mac SDK downloads. I'm marking this for "SR1", mostly because I think we might want to fix bug 402052 in a slightly better way, at the same time. We currently do it in our "production scripts". So, anyone doing a "local CBI build" still won't have the link. Adding Jan to CC since in bug 402052 comment 4 there was mention of a plexus archiver bug which, if gets fixed, and into Tycho 0.19? (or what ever) that means we'd get the fix for free and could back out our quick and dirty work around in bug 402052. Reading bug http://jira.codehaus.org/browse/PLXCOMP-117 it sounds like a fix is "at hand" ... even if it depends on "running build with Java 7 on Linux" we'd be happy (since that's what we do anyway). (In reply to comment #2) > Reading bug > http://jira.codehaus.org/browse/PLXCOMP-117 > it sounds like a fix is "at hand" ... even if it depends on "running build > with Java 7 on Linux" we'd be happy (since that's what we do anyway). I wouldn't say the fix is "at hand". There is a non-trivial (44 kB) patch proposal pending since 2011 and it will take work to review and apply it. There's a couple of things needed to fix this and know at least one of them have been in Luna (and the other not yet fixed has been fixed for SDK, so its well understood). So, should back port those to Kepler SR2, as well. Here is part of the fix, needed on 'master' http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git/commit/?id=518a85e00660ca7dc30de4ba0f529f3423e2ab89 and on 'R4_3_maintenance': http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git/commit/?id=518a85e00660ca7dc30de4ba0f529f3423e2ab89&h=R4_3_maintenance This fix is to use 'tar' directory on build machine, instead of using the archive from Tycho, since it does not maintain symbolic links, but 'tar' does. This is same fix made for platform, and SDK, in bug 402052, see example there at http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git/tree/production/build-functions.shsource#n766 For "starter kit", we do it a little later in the process (during "publish") instead of "right after" the build. So, I will want to do a test build and make sure all the same variables/patterns still hold, before adding second part of the fix. Second part of the fix has to do with letting Tycho create the Info.plist, instead of us copying a "template" for Tycho to fill in. That was fixed in master, for platform binary, and starter kit, but not back ported. See bug 419092. (In reply to David Williams from comment #5) > > Second part of the fix has to do with letting Tycho create the Info.plist, > instead of us copying a "template" for Tycho to fill in. That was fixed in > master, for platform binary, and starter kit, but not back ported. See bug > 419092. Test build worked as expected, creating link in expanded archive ... rt -> rt.app/Contents/MacOS/rt ... so I'll start on second part now, which is a little larger change. (but luckily is mostly "copying" what's already in master). (In reply to David Williams from comment #6) > (In reply to David Williams from comment #5) > > > > > Second part of the fix has to do with letting Tycho create the Info.plist, > > instead of us copying a "template" for Tycho to fill in. That was fixed in > > master, for platform binary, and starter kit, but not back ported. See bug > > 419092. > > Test build worked as expected, creating link in expanded archive ... > rt -> rt.app/Contents/MacOS/rt > Actually, the previous fix broke the "starter kit" in the I-build. The reason is because the fix assumed the "root directory" was "eclipse", which it still is in maintenance, but in luna, as part of "correct product building" the root directory becomes 'rt'. So, will adjust the manual "tar" command to tar up 'rt' instead of 'eclipse'. I've applied the 'restructure' commit to tychobuilder now. The main commit ... the one to revert if things go horribly wrong is: http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git/commit/?h=R4_3_maintenance&id=78ead860045a5829228aadebb5da3a41dd304608 There were 6 others I annotated with '[minor]': Bug 407956 - [minor] Can not launch starter kit on Mac These were all ones that were, ugh, minor changes to make the maintenance stream and master more similar ... which I think important to include since a) makes it easier to see the "real" differences between the two streams before making the big change, and 2) will make long term support easier. This included things like updating license files, using the correct "{tychoextras}" variable, etc. The "big change" involves copying "up" some icons, changing names of .product files (so they all have different names) and ... the main thing ... excluding our copy of Info.plist. All changes in ... including the change for 'rt' root folder, in master and maintenance, such as http://git.eclipse.org/c/platform/eclipse.platform.releng.aggregator.git/commit/?id=ea491d7366db9724ac2aa776c7a424059057686f But, I still need to do test builds for both M and I to make sure it holds together. I'll do I-build first, since product I-build scheduled first. Both the I and M test builds completed fine, and on the surface looked correct. The "verification" will need to be done on signed versions. Should also check if that "release versions", etc., are all still correct. The observant might notice there is still some difference between "starter kit" in maintenance vs. Luna, namely, the maintenance version has some extra (not functional) "Eclipse.app" in addition to the (functional) rt.app. This is because in Luna, we are "removing the "configuration feature" from the Starter Kit. See bug 420725. But will will also remove the "32 bit" version of the Mac Starter Kit, so I wanted to leave that in for Kepler, for consistency to previous releases of Kepler. Apologies for the late, large change. If there is any regressions, I'm confident they can be easily fixed (i.e. result of typo, or something, nothing fundamentally incorrect about the fix). I've done quite a bit of "verifying" with M20140122-1000 build and seems like starter kit ('rt') (and the platform binary, and the sdk) are all fine after this fix. All signed and executable ... run with/without Java 6 installed on the Mac, etc.
The rt icon is even correct ... I think there is another bug on that?
The only oddity I saw what that executing the "rt.app" (say, from finder) does not "bring up console" as I thought it should (and as it does on Windows). Instead the "side bar" icon says "not responding" and you have to force it closed. Not sure if that ever worked, or if it is is supposed to ... but does not seem like a primary use-case, so I won't even open a bug for it, unless someone corrects me and says it is important (And ... I know it would be "nice" to work that way, for users just exploring, if nothing else ... just not sure it is worth more effort).
|