Ticket #29704 (closed defect: fixed)
go portfile creates bad symlinks
| Reported by: | cgilmour@… | Owned by: | singingwolfboy@… |
|---|---|---|---|
| Priority: | Normal | Milestone: | |
| Component: | ports | Version: | 1.9.2 |
| Keywords: | haspatch | Cc: | ryandesign@… |
| Port: | go |
Description
Hi,
Installing "go" creates a symbolic link /src/Make.*, instead of a separate link for each individual make file.
116 # gomake command required makefiles
117 ln -s ${prefix}/src/${name}/${name}-${version}/src/Make.* ${destroot}${prefix}/src
Seems to be related to changes from Ticket #29321
I can't find an example in other Portfiles that tries to make symlinks like this, so I don't have a fix/patch.
(I changed mine to use xinstall instead of making symbolic links, plus other changes to install without root privileges. I think the package maintainer might do it a different way instead)
Thanks Caleb
Attachments
Change History
comment:1 Changed 2 years ago by ryandesign@…
- Owner changed from macports-tickets@… to singingwolfboy@…
- Cc ryandesign@… added
- Port set to go
comment:3 Changed 2 years ago by ryandesign@…
- Keywords haspatch added
Or neither of those. ("eval ... [glob ...]" would work if MacPorts' ln supported creating multiple links at once, like the shell's ln does, but it doesn't seem to.) The attached patch uses a "foreach ... [glob ...]" and seems to work. Perhaps this should be committed together with the fix in #29706.
comment:4 Changed 2 years ago by ryandesign@…
No wait, this patch is wrong, needs to glob the files in the destroot...


The fix is to use an "eval glob" construct.