When using GH_TAGNAME the DISTNAME would have GH_PROJECT and GH_ACCOUNT in
it. When not using GH_TAGNAME it would not have this. Now both cases
will add in the GH_PROJECT and GH_ACCOUNT.
Add special care to ensure that the DISTVERSION is not added in twice. If
a port does GH_TAGNAME=v${PORTVERSION} it will be added in twice though. For
that case DISTVERSIONPREFIX=v should be set and no GH_TAGNAME should be used.
empty() is used rather than (!defined || !${}) to support fmake.
The purpose of setting DISTNAME at all in these cases is to make it more clear
that the distfile is from *GITHUB* and to avoid collisions if a project were
to be renamed or moved. Without adding in GH_PROJECT and GH_ACCOUNT then there
are real risks that collisions on filenames would happen on renamed or moved
projects, which is fairly common. A GITHUB-generated file may not match
a custom-rolled or git-archive-rolled distfile.
PR: 199069
With hat: portmgr
Testing done: All USE_GITHUB ports without GH_COMMIT were checksum/fetch/extract/WRKSRC tested.
GH_TAGNAME is defaulted to the new DISTVERSIONPREFIX/DISTVERSION/DISTVERSIONSUFFIX
change in r381689.
This actually fixes the build for sysutils/zfstools, broken in r381704.
With hat: portmgr
r381648 which were expecting DISTVERSIONPREFIX/SUFFIX to be used in the
tag fetched from github by defaulting GH_TAGNAME to the same value
as DISTVERSION would get by only when GH_COMMIT is not set (when using the
new scheme).
With hat: portmgr
The new GITHUB MASTER_SITE from r381618 now supports not setting GH_COMMIT and
only having GH_TAGNAME default to DISTVERSION.
All of these ports as-is.
With hat: portmgr