Changes between Initial Version and Version 1 of Ticket #60139, comment 6


Ignore:
Timestamp:
Apr 27, 2021, 2:17:59 PM (3 years ago)
Author:
szhorvat (Szabolcs Horvát)
Comment:

Legend:

Unmodified
Added
Removed
Modified
  • Ticket #60139, comment 6

    initial v1  
    33Several of the current ports do not work with guile 3.0. In many cases, the first problem is that their build system looks specifically for version 2.2. Therefore, it would make sense to provide three versions concurrently: `guile18` (existing) `guile22` (current version should be renamed) and `guile` 3.0. Guile supports parallel installations: https://www.gnu.org/software/guile/manual/html_node/Parallel-Installations.html
    44
    5 The `--program-suffix` option can be used to add `22` to the end of all executable names. It will rename most, but not all things that may conflict. The `guile18` port does not use this mechanism, I do not know why. Perhaps guile's configure script didn't support it at that time. But it can be used for version 2.2.  Note that not everything will be renamed accordingly. Notably, the texinfo documentation pages and `guile.m4` need to be renamed manually or deleted (see how `guile18` does this).
     5The `--program-suffix=22` configure script option can be used to add `22` to the end of all executable names. It will rename most, but not all things that may conflict. The `guile18` port does not use this mechanism, I do not know why. Perhaps guile's configure script didn't support it at that time. But it can be used for version 2.2.  Note that not everything will be renamed accordingly. Notably, the texinfo documentation pages and `guile.m4` need to be renamed manually or deleted (see how `guile18` does this).
    66
    77After this is done, not everything will be working as it should when version 3.0 and 2.2 are installed concurrently. Some dependent ports will detect the `guile-2.2` _libraries_, but will pick up the `guile` (i.e. version 3.0) executable instead of `guile22` and throw an error due to the version mismatch. This is possibly because of the installed `guile.m4` file, which provides information to the configure script. I don't have enough knowledge about autoconf to be able to patch this, but I note that `guile18` patches it extensively.