- 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).
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.
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.
When running git-version.sh, unconditionally add a $INITSYS
argument, which is needed for the new condxml, and
is harmless if this argument is not needed.
Using version from the ENTITY version line in gneral.ent is not
good anymore, since version is in version.ent for the dev book.
But it _is_ in general.ent for releases...
Use a different approach: take the profiled .xml, and use the
version in lsb-release.
In func_wrt_makefile, the two functions LUSER_wrt_unpack and
CHROOT_Unpack use the version variable without setting it.
This leads to the global version variable being used, which
writes garbage into the Makefile. Fix: just define version locally.
This bug does not occur often because those functions are only
used when using custom scripts for versioned packages (if building LFS).
It has been found by William Harrington.
The command for unmounting the kernel vfs is now
umount -Rv $LFS
So we have first to use that command in teardown (change in
kernfs.xsl). Second, since the command tries to umount
$LFS, but the Makefile is on $LFS, it fails. Ignore the
error in the Makefile (change in master.sh)
- major number can be on 4 digits, so use it in packInstall
- minor number (for package manager) can be greater than 10
- code on 2 digits
- change various files accordingly
- Prefer SysV over Sys V in Config.in
- do not generate the package list for lfs, it is not needed anymore
- prevent an (ignored) error in LFS/master.sh
- log new files under the scriptlet name (allows to log files for the same
package from different builds)
- keep the full name in log_new_file functions (fix a undetected bug in
CLFS/HLFS)
If we stop a build before the "do-housekeeping" target is executed, there
may be symlinks of the type /tools->/mnt/lfs/tools. If we want to restart,
for example after fixing something else, and we run the "creatingtoolsdir"
target (or similar one in CLFS) again, it will fail. It's better to clean
those symlinks when cleaning the build directory.
Most books have something like "exec /bin/bash" in .bash_profile for the
building user. This results in stopping and waiting for commands when
running a a login shell. The current jhalfs way of removing .bash_profile is
suboptimal, since a user may want to login as $(LUSER) and expect that the
environment is set (without having to source .bashrc). So remove the
"-i" flag in "sudo -u $(LUSER) ..."
In create-sbu_du.sh, we use "du -s" for getting the size of the installed
files at the end of the build, and we compare to the "KB" from the previous
package to get the Installed size of the last package. But the du command
excludes an absolute dir, while it should be relative. This lead to bogus
stats.