[Bug 259259] Mk/Uses/emacs.mk: Remove Emacs major version from EMACS_PKGNAMESUFFIX

From: <bugzilla-noreply_at_freebsd.org>
Date: Tue, 19 Oct 2021 08:12:03 UTC
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=259259

--- Comment #1 from Yasuhiro Kimura <yasu@freebsd.org> ---
Let me note one thing about the value of EMACS_PKGNAMESUFFIX. You may think
that including 'emacs' in EMACS_PKGNAMESUFFIX is needless and simpler values
such as following are better.

----------------------------------------------------------------------
Flavor          EMACS_PKGNAMESUFFIX
----------------------------------------------------------------------
full            "" (empty string)
canna           "-canna"
nox             "-nox"
devel_full      "-devel"
devel_nox       "-devel-nox"
----------------------------------------------------------------------

I also thought so at first but I noticed it may cause problem.

As is often the case with actively developing software, there are some cases
that both release and development version are in the ports tree. And under such
situation, the former is created as 'category/foo' and the latter is often
created as 'category/foo-devel'.  And the problem happens when there are such
ports and they depends on Emacs.

Now let me select 'devel/magit' and 'devel/magit-devel' as example of such
ones. If we adopt EMACS_PKGNAMESUFFIX above then packages name of each flavor
of these ports are as following.

----------------------------------------------------------------------
Flavor of port                  package name
----------------------------------------------------------------------
devel/magit@full                magit-3.3.0
devel/magit@canna               magit-canna-3.3.0
devel/magit@nox                 magit-nox-3.3.0
devel/magit@devel_full          magit-devel-3.3.0
devel/magit@devel_nox           magit-devel-nox-3.3.0
devel/magit-devel@full          magit-devel-3.2.1.76
devel/magit-devel@canna         magit-devel-canna-3.2.1.76
devel/magit-devel@nox           magit-devel-nox-3.2.1.76
devel/magit-devel@devel_full    magit-devel-devel-3.2.1.76
devel/magit-devel@devel_nox     magit-devel-devel-nox-3.2.1.76
----------------------------------------------------------------------

Then please keep your eyes to the package names of following 2 cases.

* 'devel/magit@devel_full' and 'devel/magit-devel@full'
* 'devel/magit@devel_nox' and 'devel/magit-devel@nox'

In both case the difference is only version number. Though I haven't actually
found it yet, it is quite possible that it causes malfunction of some tools
doing something with ports/packages.

And there is worse case. When it is just after the release of new version, it
is possible that both release and development version is exactly same one. And
under such situation package name are exactly same including version number
with these 2 cases. This definitely causes disaster.  So we need to add
something extra to EMACS_PKGNAMESUFFIX in order to prevent such problem.

-- 
You are receiving this mail because:
You are on the CC list for the bug.