For normal files, shebang check is ignored if they are not executable, but for symlinks this is not the case. This is a prerequisite of an upcoming sysutils/ansible fix.
Details
Details
- Reviewers
mat antoine - Group Reviewers
O5: Ports Framework (Owns No Changed Paths) portmgr
Diff Detail
Diff Detail
- Repository
- rP FreeBSD ports repository
- Lint
No Lint Coverage - Unit
No Test Coverage - Build Status
Buildable 11750 Build 12094: arc lint + arc unit
Event Timeline
Comment Actions
I'm not sure why we check symlinks, but exclusion of executable files pointed to by symlinks doesn't work without this check.
Comment Actions
Ok, so, the history is:
- check every executable files
- check only executable files in bin/sbin/libexec/www, but also check symlinks
- check every executable files, and symlinks
It seems that the second step should have been removed in rP438168 when we went back to all executable files.
I'd vote for removing all the symlink checks.
Comment Actions
Can I commit this fix as-is for now so that I can commit a fix for sysutils/ansible please?
Comment Actions
It was for the case of /usr/local/bin/foo ->/usr/local/obscuredirectory/foo
But now that we check more than files/links in $PATH , it may no longer be needed
Comment Actions
The above check would have caught /usr/local/obscuredirectory/foo without a symlink to it.
$(find ${STAGEDIR}${PREFIX} \ -type f -perm +111 2>/dev/null)