Closed Bug 245623 Opened 21 years ago Closed 20 years ago

xslt.properties breaks camino objdir builds

Categories

(Camino Graveyard :: General, defect)

PowerPC
macOS
defect
Not set
major

Tracking

(Not tracked)

RESOLVED FIXED
Camino1.0

People

(Reporter: timeless, Assigned: sfraser_bugs)

References

()

Details

(Keywords: regression)

Attachments

(6 obsolete files)

2004-05-25 05:09:33.210 xcodebuild[8367] warning: work queue node <node:0x13ef990:'/Users/timeless/obj-powerpc-apple-darwin7.3.1-camino/widget/src/cocoa/cursors/arrowN.tiff'[2]:Missing:0> wants neither an invocation nor a subprocess -- ignoring it PBXCp build/Camino.app/Contents/Resources/arrowN.tiff /Users/timeless/obj-powerpc-apple-darwin7.3.1-camino/widget/src/cocoa/cursors/arrowN.tiff cd /Users/timeless/obj-powerpc-apple-darwin7.3.1-camino/camino /Developer/Tools/pbxcp -exclude .DS_Store -exclude CVS -strip-debug-symbols -resolve-src-symlinks /Users/timeless/obj-powerpc-apple-darwin7.3.1-camino/widget/src/cocoa/cursors/arrowN.tiff /Users/timeless/obj-powerpc-apple-darwin7.3.1-camino/camino/build/Camino.app/Contents/Resources /Users/timeless/obj-powerpc-apple-darwin7.3.1-camino/widget/src/cocoa/cursors: No such file or directory ** BUILD FAILED ** This code is not objdir safe. my brand new build on my brand new mac is unhappy. You probably want to have a Makefile.in in the cursors directory which symlinks the files to the objdir when there's an objdir.sl
Attached patch install files in objdir (obsolete) — Splinter Review
Attachment #150057 - Flags: review?(lordpixel)
Hrm, syntactically this new Makefile.in looks fine, but I must admit I'm not really sure what its meant to achieve. An objdir build is a way of building multiple binary versions of mozilla in the same tree, correct? I know the cursors are picked up by the Camino.xcode project and included. This is done using a relative path to widget/src/cocoa/cursor. So what exactly does this Makefile.in do? Clearly it installs the cursors somewhere... so is the idea to move the cursors to a known location for the objdir build, and then the Camino.xcode project will pick them up from there? If not, and this Makefile.in is intended to install the cursors to their final build location, do you not also need to patch Camino.xcode to remove its file include step?
Summary: New Cursors broke camino objdir → New Cursors broke camino objdir
the problem is that the xcode project is copied to the objdir, so it looks for the resources in $(OBJDIR)/widget/src/cocoa/cursors and they aren't there.
Attached patch alternate patch (obsolete) — Splinter Review
Attachment #150583 - Flags: review?(lordpixel)
Comment on attachment 150583 [details] [diff] [review] alternate patch >Index: Makefile.in >=================================================================== >RCS file: /cvsroot//cvsroot/mozilla/widget/src/cocoa/Makefile.in,v this confuses patch and I get : bleu:~/Documents/sources/mozilla.org/xslt/mozilla ludo$ patch <../245623.asc patching file Makefile.in Hunk #1 FAILED at 143. 1 out of 1 hunk FAILED -- saving rejects to file Makefile.in.rej bleu:~/Documents/sources/mozilla.org/xslt/mozilla ludo$ once properly applied camino does not build : /Users/ludo/Documents/sources/mozilla.org/xslt/mozilla/config/nsinstall -L /Users/ludo/Documents/sources/mozilla.org/xslt/mozilla/widget/src/cocoa ./cursors . /Users/ludo/Documents/sources/mozilla.org/xslt/mozilla/config/nsinstall: cannot make symbolic link /Users/ludo/Documents/sources/mozilla.org/xslt/mozilla/widget/src/cocoa/cursors : File exists make[6]: *** [export] Error 1 make[5]: *** [export] Error 2 make[4]: *** [export] Error 2 make[3]: *** [tier_9] Error 2 make[2]: *** [default] Error 2 make[1]: *** [build] Error 2 make: *** [build] Error 2
Attachment #150583 - Flags: review?(lordpixel) → review-
timeless, sorry, my Internet connection was down all week. Which patch do you want to move forward with?
Attachment #150583 - Attachment is obsolete: true
nominating for 0.9 Lordpixel try both patches. I could not use second patch. I did not work.
Target Milestone: --- → Camino0.9
Perhaps an exercise in stating the obvious, but the reason the second patch doesn't work is that it tries to link /cursors back over itself when you are NOT building in objdir mode. It probably works fine when you are building in objdir mode, but I didn't try that just yet. I'll see if I can think of a way around this, as the second patch requires less ongoing maintaince. Timeless, can you fix this problem?
Fixes timeless' second patch to test for existence of "cursors" directory before trying to link it. I've tried this in a regular source tree build, now I'll try objdir and report back.
Attachment #150057 - Attachment is obsolete: true
Ok, so this is where my objdir style build died: === BUILDING BUNDLE TARGET Default Plugin USING BUILD STYLE Deployment === /Developer/Private/jam -d2 -j1 JAMBASE=/Developer/Makefiles/pbx_jamfiles/ProjectBuilderJambase JAMFILE=- build ACTION=build _DEFAULT_GCC_VERSION=3.3 BUILD_STYLE=Deployment "CPP_HEADERMAP_FILE=/Volumes/Mesa/Development/src_camino/objdir_test/modules/plugin/samples/default/mac/build/DefaultPlugin.build/Default Plugin.build/Default Plugin.hmap" SRCROOT=/Volumes/Mesa/Development/src_camino/objdir_test/modules/plugin/samples/default/mac OBJROOT=/Volumes/Mesa/Development/src_camino/objdir_test/modules/plugin/samples/default/mac/build SYMROOT=/Volumes/Mesa/Development/src_camino/objdir_test/modules/plugin/samples/default/mac/build DSTROOT=/tmp/DefaultPlugin.dst Missing file or directory: _NullPlugin.rsrc ** BUILD FAILED ** make[5]: *** [build-plugin] Error 1 make[4]: *** [libs] Error 2 make[3]: *** [tier_9] Error 2 make[2]: *** [default] Error 2 make[1]: *** [build] Error 2 make: *** [build] Error 2 Anyone know this one?
Attached patch Next version ... fully tested (obsolete) — Splinter Review
Ok, so here's another version. I build this objdir, checked the build launched, 'make distclean', and then built in the source tree. Seems to work fine.
Attachment #154427 - Attachment is obsolete: true
I pulled the tree today and by objdir build failed in transformix. The additional change in the new patch fixes the problem.
Attachment #154614 - Attachment is obsolete: true
Attachment #154894 - Flags: review?(timeless)
Attachment #154894 - Flags: review?(timeless) → review?(timeless)
Attachment #154894 - Flags: review?(timeless) → review+
Attachment #154894 - Flags: superreview?(pinkerton)
Can somebody on the review list look at this?
Peter is Xslt objdir broken ?
No, it isn't, but the way you include it from the Project Builder project doesn't work in an objdir build. I'd rather not export the file like that. Can't we do something similar to what is done for history.properties?
(In reply to comment #15) > No, it isn't, but the way you include it from the Project Builder project > doesn't work in an objdir build. I'd rather not export the file like that. Can't > we do something similar to what is done for history.properties? I just did something that worked for me and got the project to compile. If you have something in mind that works better and fits in with the way you want the module to be built, then please do modify the patch.
if peterv doesn't like the patch, i probably shouldn't sr. besides, i'm not an sr for mozilla anyway.
Comment on attachment 154894 [details] [diff] [review] Fix another objdir problem with xslt i can't sr. simon?
Attachment #154894 - Flags: superreview?(pinkerton) → superreview?(sfraser)
peterv?
Comment on attachment 154894 [details] [diff] [review] Fix another objdir problem with xslt peterv says no, sr-
Attachment #154894 - Flags: superreview?(sfraser_bugs) → superreview-
Hrm, my objdir build just went all the way through to camino (no problems in widget or xslt).
I checked in fixes for the _NullPlugin.rsrc and widget/src/cocoa/cursors problems. I'm not sure what the best solution is for the xslt issue. Suggestion coming.
Should we do this, like we do for the other objdir issues?
Attachment #154894 - Attachment is obsolete: true
Comment on attachment 171433 [details] [diff] [review] symlink xslt.properties in objdir builds pinging peterv by asking for a review of this patch - seems like he would be a good reviewer
Attachment #171433 - Flags: review?(peterv)
Assignee: timeless → peterv
Summary: New Cursors broke camino objdir → xslt.properties breaks camino objdir builds
Huh, why is this assigned to me? I didn't break this and I've proposed a different approach in comment 5. Is there something wrong with it? I don't really see why we need to symlink a properties file in the objdir.
Assignee: peterv → nobody
peterv: which jar file should we stuff xslt.properties into? (Note that camino doesn't really need history.properties any more, so it's a poor model.)
Assignee: nobody → sfraser_bugs
Normally embed.jar. But could you verify that it's not there already? Afaict we package locale/XXXX/communicator/layout in embed.jar (looking at http://lxr.mozilla.org/seamonkey/source/embedding/config/embed-jar.mn#47), and xslt.properties should be at locale/en-US/communicator/layout/xslt.properties.
I see that xslt.properties now moved into DOM, which might make this easier.
Status: NEW → ASSIGNED
Target Milestone: Camino0.9 → Camino1.0
Attachment #171433 - Attachment is obsolete: true
Attachment #171433 - Flags: review?(peterv)
Not a problem any more.
Status: ASSIGNED → RESOLVED
Closed: 20 years ago
Resolution: --- → FIXED
Comment on attachment 150057 [details] [diff] [review] install files in objdir Clearing obsolete review flag on a fixed but; apologies for the bugspam.
Attachment #150057 - Flags: review?(lordpixel)
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Creator:
Created:
Updated:
Size: