... is called download_external_libraries.pl.

It is a rewrite in Perl with the following improvements:

- There can be an arbitrary number of download sites. In fact, I have added all original download sites that I could find (24 of the 38 category-A files, but only 4 of the 14 category-B files).

- There can be several download sites per file. If one does not work the next is tried. This allows the use of ooo-extras.apache-extras.org.codespot.com as fallback for the original site and the SVN repository as a second fallback.

- Each external library can be included or excluded conditionally. For example the category-B libraries are now loaded only when category-B is enabled. I used this for one other library, seamonkey. Now it is loaded only when it is later built (in the moz module).

- On Windows it is much faster when all tar-balls are already present eg when you just re-run configure with a different set of flags. On my machine it runs in under 1 second instead of the 5 seconds of fetch_tarballs.sh: Perl can do most things in process for which fetch_tarballs.sh had to run external programs. These additional processes are apparently quite expensive.


Some details:

The download script is main/solenv/bin/download_external_libraries.pl. You will find it (I hope) well documented.

The data file has a new format and I took the opportunity to rename it to main/external_libs.lst. It is also documented and should not be too hard to figure out.



Now the important part:
It did not yet make it the default. The changes are substantial and at a very central place. In order to activate it just set the environment variable USE_NEW_EXTLIB_DOWNLOAD to something, before bootstrap is called:
    export USE_NEW_EXTLIB_DOWNLOAD=t

I tested it on Windows, Linux, and Mac but there are so many combinations of configure switches that I may have missed one that does not yet work with the new download script.



Please try it and tell me about any errors.

I hope this helps in our quest to solve the category-B questions.
    Andre

Reply via email to