Roel Janssen <r...@gnu.org> writes:

> I would like to add the older versions as packages as well, and my
> current approach is to inherit most of the 1.60.0 package:
>
> (define boost-1.57.0
>   (package (inherit boost)
>     (name "boost")
>     (version "1.57.0")
>     (source (origin
>               (method url-fetch)
>               (uri (string-append
>                     "mirror://sourceforge/boost/boost_"
>                     (string-map (lambda (x) (if (eq? x #\.) #\_ x)) version)
>                     ".tar.bz2"))
>               (sha256
>                (base32
>                 "0rs94vdmg34bwwj23fllva6mhrml2i7mvmlb11zyrk1k5818q34i"))))))
>
>
> Is this a workable approach?  If not, how could I go about adding
> multiple versions?

In principle this should be enough, but having packaged older versions
of boost myself I know that it’s not enough in reality.  Previous
versions of boost often have different directory names, so patches and
substitutions in build phases in our new boost package don’t apply
cleanly to older boost sources.  On Monday I could share one of my boost
variant packages.

> My other questions:
> - What is the convention with the Scheme variable name for the package?
> - Should I distinguish the package name in its version?

I don’t think there’s a convention.  Sometimes a different version is
needed for one package only, so we name it something like
“guile-for-guile-emacs” or “armadillo-for-rcpparmadillo”.  Then some
other times we just append a part of the version number to the variable
name.

~~ Ricardo

Reply via email to