[isabelle-dev] Future and maintainance of ~isabelle/contrib_devel at TUM NFS
krauss at in.tum.de
Sat Jun 16 14:37:24 CEST 2012
On 06/16/2012 02:11 PM, Jasmin Christian Blanchette wrote:
>>> a) Subdirectories for each platform
>>> Then, the universal component packages must be copied, symlinked or
>>> b) Different packages for different platforms, roughly as it is now...
>>> Then we need a /Admin/contributed_components file for each
>>> platform, which lists the components relevant for that platform.
>> I would prefer both indeed:
>> a) architecture-sensitive organisation, but with universal components
>> directly under contrib (as is the case now)
>> b) separate component files for different platforms
> I'm a bit puzzled here. What does "preferring both" means exactly?
> And why does point (a) talk about universal components, when you
> wrote that the time of platform-universal components is gone? What
> are the precise implications for the (universal) components I'm
> packaging (Kodkodi, CVC3, E, SPASS, Z3)?
"the time is gone" just means that we can no longer assume that every
component is platform-universal. You can continue building universal
components, and I would say this is still the preferred way wherever it
can be done with reasonable effort.
@Florian: so your suggestion would be that there are several components
files in Admin, say "Admin/contributed_components_x86-linux" containing
Then the extra path component is redundant, and I think I would rather
go without it, since the risk of confusion is high, since the invariant
is easy to violate. The directories-for-platforms convention also breaks
down when, say, some component is universal accross linux and macos, but
needs a special case for cygwin. Where would you put this then?
I now realized that having separate component files has the advantage
that you can easily make a single installation can be used from
different platform without changing symlinks. I think this is important
enough to not consider variant a) further.
So I think I now prefer a flat directory as component repository, and a
component file for each platform.
More information about the isabelle-dev