[Scons-users] Packaging SCons tools
Matthias-Christian Ott
ott at mirix.org
Thu Mar 13 15:47:40 EDT 2014
On 01/26/14 10:44, Dirk Bächle wrote:
> Hi Matthias,
Hi Dirk,
> On 26.01.2014 01:01, Matthias-Christian Ott wrote:
>> It seems all external SCons tools do not have an automated installation
>> mechanism (some copy their files to the user's site_scons directory via
>> Install) and with several tools it soon becomes tedious to setup, manage
>> and replicate the site_scons directory, especially for new developers
>> who join a team. On operating systems and distributions with proper
>> package management software this is not a problem, you simply create a
>> package repository and a meta-package and the installation and automatic
>> updates become just some clicks or a single command line. On Microsoft
>> Windows I think it would be strange to have a separate installer for
>> each tool and without Active Directory, SCCM or similar software you
>> have do manual updates.
>>
>> I thought that it would make sense to package SCons tools with
>> distutils. Since SCons doesn't Python standard paths, one would have to
>> generate a system specific setup.cfg or something like this to change
>> the paths before installation [1]. I'm not sure if this is compatible
>> with distutil's portability goals. Another option would be to abuse
>> package_data [2].
>>
>> What do you think about this? Do you have better ideas?
>
> my idea about this is, that I would like to have a single scons_contrib
> package. It contains all the Tools, additional configure stuff and more
> in its latest stable version each. So, when a user isn't interested in a
> single special Tool, he can download and install the whole bunch at once
> via easy_install or pypy. This installation should follow the same setup
> regarding paths as the SCons install. It would be good if the
> "scons_contrib" stuff could be handled as a kind of plugin folder to a
> normal install, and that SCons would be aware of it.
> For example, on calling "scons --version" you should see an additional
> line like "scons_contrib package in version 2.35". This is especially
> important for things like debugging and general support.
> We have started to discuss some changes to the current concept of Tools
> and toolchains in SCons. Read more about this at:
>
> http://www.scons.org/wiki/RevampToolsSubsystem
>
> However, this would need someone to maintain it...or we have to add some
> more restrictions about how the external Tools have to be organized
> internally, such that collecting and packaging can be automated (scripted).
I think we don't need another package manager. Nowadays, it seems that
every programming language and large software framework has its own
package manager, just because Microsoft Windows and OS X have no
system-wide package manager. However, it seems that PyPI would be the
lowest common denominator for all operating systems. So SCons would just
have load the tools that have been installed via easy_install or similar
software. Why not use established mechanisms such as entry points?
Regards,
Matthias-Christian
More information about the Scons-users
mailing list