Closed Bug 461322 Opened 16 years ago Closed 16 years ago

Executable permissions for data files (png, xpm, txt)

Categories

(Firefox Build System :: General, defect)

x86
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
mozilla1.9.1b3

People

(Reporter: jhorak, Assigned: philor)

References

Details

(Keywords: fixed1.9.1)

Attachments

(1 file, 1 obsolete file)

User-Agent:       Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.0.2) Gecko/2008102014 Fedora/3.0.2-1.fc9 Firefox/3.0.2
Build Identifier: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.0.2) Gecko/2008102014 Fedora/3.0.2-1.fc9 Firefox/3.0.2

Executable flag for particular data files.

Reproducible: Always

Steps to Reproduce:
1. ls -l dist/bin/icons
   ls -l layout/generic/folder.png
   ls -l dist/bin/chrome/icons/default
   ls -l dist/bin/LICENSE dist/bin/README.txt
2.
3.
Attached patch Fix for data files installation (obsolete) — Splinter Review
Fix changes Makefile.in to use SYSINSTALL and IFLAGS1 variables for installing affected data files.
Attachment #344456 - Flags: review?
Status: UNCONFIRMED → RESOLVED
Closed: 16 years ago
Resolution: --- → DUPLICATE
Severity: enhancement → normal
Status: RESOLVED → UNCONFIRMED
Component: General → Build Config
Product: Firefox → Core
QA Contact: general → build-config
Resolution: DUPLICATE → ---
Attachment #344456 - Flags: review? → review?(ted.mielczarek)
Assignee: nobody → jhorak
Status: UNCONFIRMED → NEW
Ever confirmed: true
Blocks: 361423
Comment on attachment 344456 [details] [diff] [review]
Fix for data files installation

I confess to not being knowledgeable of the difference between $(INSTALL) and $(SYSINSTALL), but I trust you've done your homework. (Also, you're just installing icons and other non-code files, so differences shouldn't matter all that much.)
Attachment #344456 - Flags: review?(ted.mielczarek) → review+
Attachment #344456 - Flags: approval1.9.1b2?
Attachment #344456 - Flags: approval1.9.1?
Why are you fixing it this way, instead of changing the permissions in the hg repository?

ted, the major difference between INSTALL and SYSINSTALL is that INSTALL will symlink-by-default, while SYSINSTALL always copies.
Comment on attachment 344456 [details] [diff] [review]
Fix for data files installation

Let's play with this after the beta
Attachment #344456 - Flags: approval1.9.1b2? → approval1.9.1b2-
The (partial, incomplete) answer to bsmedberg's question in comment 4 is "because the perms in the repo aren't broken."

The app/Makefile.ins both set NSDISTMODE = copy, which is a subtle way of saying "$(INSTALL) will be $(SYSINSTALL) from now on" and unless you pass mode flags, $(SYSINSTALL) gives you 755. Whether we do it straight up, with $(SYSINSTALL) $(IFLAGS1), or with a twist with $(INSTALL) $(IFLAGS1), everything in an app/Makefile.in that shouldn't be 755 (including all the things not covered here, but mentioned in various of the bugs this is a duplicate of, including blocklist.xml and defaults/profile/prefs.js) needs to say it doesn't want to be.

The folder.png bit, though, I don't get: I don't see any reason why it would get bogus perms, and at least for me (building non-XULRunner Fx), it doesn't, it winds up 644. Were it me, I'd want an explanation of that bit before taking it.
Attached patch Fix v.2Splinter Review
Stealing; the first patch was an awesome prod for me to learn how nsinstall actually works, but it's missing some things, doing others in a suboptimal way, and has one bogus bit.

This patch drops the hunk about folder.png, which is (for some reason) 755 in CVS, but 644 and not a problem in mozilla-central.

It also uses $(INSTALL) rather than $(SYSINSTALL) for libs::, because we don't actually *want* to copy these things so much as just want to deal with it happening as a result of whatever caused someone to use that NSDISTMODE. If that goes away, or if someone copy-pastes them out to some other makefile, they ought to revert to symlinks rather than staying copied.

Doing so reverts bug 418601, which is fine, since there's no way that actually worked.
Assignee: jhorak → philringnalda
Attachment #344456 - Attachment is obsolete: true
Status: NEW → ASSIGNED
Attachment #348918 - Flags: review?(ted.mielczarek)
Attachment #344456 - Flags: approval1.9.1?
Attachment #348918 - Flags: review?(ted.mielczarek) → review+
http://hg.mozilla.org/mozilla-central/rev/0e4e8ee0391b
Status: ASSIGNED → RESOLVED
Closed: 16 years ago16 years ago
Resolution: --- → FIXED
Version: unspecified → Trunk
http://hg.mozilla.org/releases/mozilla-1.9.1/rev/26e80196f90f
Keywords: fixed1.9.1
Target Milestone: --- → mozilla1.9.1b3
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.

Attachment

General

Created:
Updated:
Size: