[Scons-dev] SCons doesn't bootstrap without libxml2

anatoly techtonik techtonik at gmail.com
Tue Feb 18 06:12:03 EST 2014


On Tue, Feb 18, 2014 at 11:31 AM, Dirk Bächle <tshortik at gmx.de> wrote:

> On 18.02.2014 05:46, anatoly techtonik wrote:

>>

>> Why SCons bootstrap became dependent on external libraries?

>> I find it a major usability regression. Can this be fixed?

>

> it didn't suddenly become dependent, it always was.


There is a mistake. The bootstrap process never require documentation tools
to be present.


> hg up 2.3.0

> bootstrap.py

C:\Python27\python.exe R:\scons\bootstrap\src\script\scons.py
scons: Reading SConscript files ...
doc: jw not found, skipping building User Guide.
doc: WARNING: no groff, skipping text and PostScript versions of man pages
...

The bootstrap.py "is a minimal build of SCons to bootstrap the full build of all
the packages, as specified in our local SConstruct file."


> We're now using DocBook,

> so we need to process and transform XML...that's the single dependency to

> either libxml2 or lxml. And it's not a dependency for the regular user, but

> the role of the developer...


Although that's not relevant. I think that we need to summarize Sphinx vs
Docbook vs Semantic MediaWiki page at some place as well as previous
workflow. We've already got a lot of info, but it is not compressed for public
consumption. I feel that Sphinx is not ideal for our workflow, but I also feel
that it is easier to augment Sphinx with our specific markup than to maintain
Docbook toolchain. This needs to be more than just a feeling.


> Before that we required the full list of required tools as given at the

> bottom of http://www.scons.org/wiki/DeveloperGuide/Documentation . If you'd

> switch to another tool like e.g. Sphinx, as you suggested under

> http://www.scons.org/wiki/DeveloperGuide/Documentation/Discussion, then that

> would be the new dependency. It's just switching names, so I don't see how

> this is any better...

>

> So,

>

> - the external dependencies have actually been reduced, and

> - no, I don't think it can't be "fixed". ;)


Sphinx is pure Python dependency, but the point is that documentation
dependencies for the bootstrap script should remain optional as it already
was before, so that SCons was self-sufficient to build itself and run from
checkout.


More information about the Scons-dev mailing list