- do not try to copy downloaded files to $SRC_ARCHIVE: they may
belong to another user, and so be non writable.
- trunk/BOOK is not used anymore in BLFS/Makefile
- do not make update a second time
- If MISSING_FILES.DMP is left from a preceding attempt, it may
generate a false warning a bout missing files even if they could
all be downloaded.
- do not try to copy a modified file to SRC_ARCHIVE if it already
exists: it may belong to another user...
Use the variable COMMIT instead of BRANCH_ID.
Also fix various typos, CLFS/HLFS reference, help strings, etc.
For the moment, the selections for the BLFS tools are unchanged.
- Check that there is enough material to calculate a SBU (!)
- Prevent an error if REALSBU does not occur in jhalfs.config
- Remove double square bracket: they change semantics and
I cannot memorize what the change is (but e.g. file* is not
expanded even if there is some filexxx in the dir).
The tracking file is needed for gen_pkg_book.sh as a first argument.
Since it is called to generate the initial scriptlets, it needs
to be passed the full path of the tracking file, including
$BUILD_DIR. The $TOPDIR is now the second argument (and still
needs to be passed too).
With the way we manage "first" deps, it may happen that no node
unreference the pass2 node. In that case, we add it to root.
Add some documentation for what we do for those deps, too.
Better document the $seen global variable used in path_to,
also at places where "path_to" is called.
Document p and b flags in the loop over "after" deps.
Document lr variable in the loop over "first" deps.
Now gen_pkf_book.sh depends on trackfile. This can be passed
as an argument, but to ease calling it standalone, we need to
set the default to the actual file used.
With the new way of treating dependencies, we need to properly
manage -pass1 packages: For that we need the installed version of
-pass1 packages. But it is recorded nowhere. packages.xml shouldn't
be used for that, because it is directly built from the book
dependencies: adding -pass1 packages would just duplicate the
dependency information. So the version has to be recorded in
the tracking file. This involves changing bump.xsl (this commit),
and passing the tracking file to gen_pkg_book (next commit).
This is an oversight of when we moved to profiling and when we
removed the docbook xsl stylesheets from the LFS directory.
Docbook XML DTD and XSL stylesheets are needed, so test them
at start. This has the effect of removing the need for check_blfs_tools.
With the new xsl/dependencies.xsl, the full dependency list is generated.
We compare the version and installed version gotten from packages.xml
using xsl/get_version.xsl and only install if the installed version is
lower than the available version. Since the installed version returned
by get_version.xsl for a non installed package is 0, that version is
always lower than the available version and the package is installed.
Note that if a package does not exist, both versions are empty, and
they compare as equal with our method. So they are never installed...
This .xsl, applied to packages.ent, takes the package name as
a string param, then returns:
"version"<nl>"installed version" if both versions are known
"version"<nl>0 if the package is known but not installed
nothing if the package does not exist (case of the groupxx ones)
In Xorg pages where there are several packages, the .xsl for
separating packages assumed that the package names ended in
tar.bz2 and selected the substring before ".tar.bz2" to extract
the packagedir. This has changed recently for libX11, which is a
.tar.xz package: the fix is to just select the substring before
".tar." for the packagedir.