[arch-general] Makepkg $(srcdir) detection and false-positives
I'm not sure if this is the correct ML or not but whatever I'll post here anyway. I was just reading the ML where the quest? to finding why makepkg warns about $srcdir was brought up and a simple grep -R... seemed to be the method of detection. Anyway it reminded me of another message on the topic last week i think where someone said that it would warn on files with debugging symbols... TL;DR makepkg does a grep -q to decide if a package contains files that reference $(srcdir), this is inadequate as it causes a false-positive on files that contain debugging symbols. This can be eliminated by specifying the option `-I` a.k.a `--binary-files=without-match` to grep which makes prevents grep from matching binary files. Rationale: the only paths that binary files should contain based on buildtime setting are path such as '/usr/share/xyz'. If the pkgbuild *accidentally* uses a variable that resolves with $srcdir in it then I'd argue that the pkgbuild is broken and will most likely break the application in other ways and will be caught before sharing the pkgbuild. I can't be the only one that tests their packages before uploading to the AUR right? On another note, shouldn't there also be a check for $pkgdir. The only cases of this that I've ran into myself have been a reference to $pkgdir causing all sorts of nonsense such as broken symlinks and incorrect resource paths.
participants (1)
-
Nathan Wayde