Commit graph

217 commits

Author SHA1 Message Date
Pierre Labastie
49e2745200 Further fix user creation (or no) 2020-04-02 11:54:50 +00:00
Pierre Labastie
dd7e0f6793 Fix LUSER creation (or no creation). 2020-04-02 11:46:36 +00:00
Pierre Labastie
7b7b5e9624 Various fixes for ICA 2020-04-02 09:56:51 +00:00
Pierre Labastie
0a577f5575 typo forgotten \ 2020-04-01 09:14:14 +00:00
Pierre Labastie
0835a1065f Two fixes:"
- use /etc/passwd to check whether LUSER exists
- use sudo -H -u $(LUSER) to be sure that HOME is set (depends on distro)
2020-04-01 09:11:32 +00:00
Pierre Labastie
a73ed74337 Fix the SHELL for CHROOT target for LFS
We use the filter builtin function of make to retrieve the right
shell to use during the CHROOT phase, which is the same as the
one in CHROOT1.
Also do not assume envars exist when removing it at the beginning
of the SUDO phase.
2020-03-31 08:47:52 +00:00
Pierre Labastie
a2b56892e4 Fix a forgotten new IDREF 2020-03-29 20:35:52 +00:00
Pierre Labastie
3261fe76c8 Adapt master.sh to new book, staying compatible
This involves changing the way make targets are built. Specially
the make target is changed when encountering a specific file
(for example the make target becomes sudo when rencountering kernfs)
This allows more flexibility.
2020-03-29 17:16:09 +00:00
Pierre Labastie
4762fb9900 Set the correct #! executable in creat* scriptlets
Those scriptlets need to use a temporary bash, which is in /tools/bin
for current LFS. But if we use a new method (cross-compiling + sysroot)
it ends into /bin. So we have to set the correct `#!' header
in both cases.
We rely on the pesence of a "creatingtoolsdir" sect1 to know that
bash is in /tools
2020-03-29 15:13:15 +00:00
Pierre Labastie
903eefd093 Adapt LFS/master.sh to use chap4 scriptlets
- take targets from scriptlet names
    - neutralize some commands or bash builtins so that they are not
      used even if they are in the scriptlets, if not needed
    - do not set PREV in chapter 5 anymore
    - Improve save and restore user, so that if the LUSER exists,
      its home is saved while building temporary tools, and restored
      afterwards
2020-03-29 14:06:41 +00:00
Pierre Labastie
123105f683 Do not rely on /tools for setting ROOT (again)
Using the chapter ancestor is not enough. It's better to use the sect1 id
and test that it starts with ch-tools: package-manager does not have this
ancestor. Also the virtual kernel filesystems are done before chroot,
so directly test this one.

This works for the current lfs book. We'll need something new if we
change the order of pages.
2020-03-29 13:42:43 +00:00
Pierre Labastie
1dce18968f Don't use /tools for setting the ROOT variable
In the generated scriptlets, we need to know if we are on host
or chrooted. Presently, we
rely on /tools being a symlink or not. But we may want to remove this
ugly symlink in future versions of LFS, so anticipate and use the
chapter ancestor.
2020-03-29 13:24:48 +00:00
Pierre Labastie
a131250b6f Generate chapter 4 scriptlets
This is a major change for LFS. We won't be using the makefile for
the final preparations, but we'll extract the book instructions and
use them (the "use part not in this commit).
Since getting figures for those scriptlets is not important, and we
cannot use start and end scripts, which need already set up user and
dirs, do not use them
2020-03-29 13:17:38 +00:00
Pierre Labastie
2a9b0c3181 Remove envars before the SUDO phase
This is to allow root to execute ": > envars". On a non empty envars
owned by lfs, in a directory world writable with sticky bit and not owned
by lfs, this may be forbiden by the fs/protected_regular sysctl.
See https://www.kernel.org/doc/Documentation/sysctl/fs.txt
2020-03-15 17:15:28 +00:00
Pierre Labastie
94fc75e616 Remain compatible with older versions of lfs 2020-02-11 13:55:28 +00:00
Pierre Labastie
c035132e2a Fix jhalfs for new idrefs in lfs svn 2020-02-11 13:25:03 +00:00
Pierre Labastie
9a61eadbbf attr does not install man pages in man2 and man5 anymore, so no need
for removing them. This fixes a stupid bug, that removed all man-pages
    man2 pages when porg was used!
2019-12-22 09:53:30 +00:00
Pierre Labastie
085435e66f Remove the obsolete vim-lang instructions and variable, and add non-wide-
charater ncurses library
2019-09-05 17:22:04 +00:00
Pierre Labastie
5451eaeb9e Fix generation of the SBU-DU stats:
The "create-sbu_du.sh" script expects all the logs containing
"Totalseconds" also contains two lines starting with "KB:" with disk usage
stats. Generates those lines for all the logs. Hopefully, the stats are
fairly accurate now...
2019-07-15 20:06:35 +00:00
Pierre Labastie
2758d9421e Use sect1info for getting informations on LFS packages:
- add sect1info sections to packagemanager.xml.xxx + various fixes
- add templates in LFS/lfs.xsl for script start and script end:
  - script start: define variables containing package information
                  print disk usage
                  unpack and change dir
  - script end: print disk usage
                remove build dir
- remove the corresponding operations from master.sh
2019-04-11 07:40:50 +00:00
Pierre Labastie
adbd09b06c LFS/lfs.xsl: Update directory layout of PKG_DEST
- Do not symlink /{usr/,}lib64->lib
    - Do not symlink /usr/{man,info}->share
    - Create /lib64 on x86_64
    - Create /usr/lib/pkgconfig
    - do not create /usr/lib/rpcsvc
    - check that a directory exists before testing its emptyness
      (for example, attr removes empty manx dirs)
2019-04-08 10:03:26 +00:00
Pierre Labastie
3142368d67 I cannot read: variable in /etc/sysconfig/console is LOGLEVEL, not LOG_LEVEL! 2019-03-15 16:18:48 +00:00
Pierre Labastie
c6506aea23 Remove sudo from commands run as root (and some DEBUG lines) 2019-03-15 08:55:01 +00:00
Pierre Labastie
a659e46082 Hopefully get the devices: target Ok now 2019-03-14 21:02:58 +00:00
Pierre Labastie
13c475babc Get virtual kernel filesystem commands from the book, and really add
/run/systemd/resolve/resolv.conf after creating the kernel FS in chapter 6
2019-03-13 06:31:55 +00:00
Pierre Labastie
f5e658dc6c Fix filename extension in /etc/sysconfig/ifconfig.xxx so that it matches
the IFACE value. Works only with revision 11556 or later of LFS book.
2019-03-10 09:15:10 +00:00
Pierre Labastie
426c618053 Stupid typo 2019-03-09 20:27:44 +00:00
Pierre Labastie
3b43e17bda Generate console files:
- add variables LOCAL (y is hw clock set to local time) and LOG_LEVEL (sysv)
- generate /etc/sysconfig/console (sysv) or /etc/vconsole.conf (systemd)
- generate /etc/adjtime (only systemd)
- remove UNICODE and FONTMAP variables (jhalfs makes unicode default)
2019-03-09 08:11:37 +00:00
Pierre Labastie
5af9ab4b8c In the systemd book, the network card is designed as
"<network-device-name>", not "eth0".
2019-03-09 07:18:52 +00:00
Pierre Labastie
d39252b7ca LFS: Copy /etc/resolv.conf to where it should be during chroot, for
systemd: this allows using the network in chroot.
Also add a chroot1 target, and update the teardown target to what is
in the book.
2019-03-09 07:15:41 +00:00
Pierre Labastie
7bc70cd968 Allow DESTDIR to work for libelf, now that it is in LFS 2018-02-05 21:46:36 +00:00
Pierre Labastie
ad747edfb0 Move the linefeed. Sometimes, several attempts are needed to make things
rignt, sorry
2018-02-05 14:56:54 +00:00
Pierre Labastie
6613034d13 Move a misplaced linefeed in LFS/lfs.xsl:outputpkgdest 2018-02-05 10:45:29 +00:00
Pierre Labastie
1cb4c7662c Only output DESTDIR when the command is "ninja install" 2018-02-05 10:30:01 +00:00
Pierre Labastie
4696ddd406 Add DESTDIR instructions when the command is "ninja install" (in LFS/lfs.xsl) 2018-02-05 09:54:15 +00:00
Pierre Labastie
764a5d712c Do not add >> $TESTLOG to lines ending with "\" 2018-01-14 20:19:14 +00:00
Pierre Labastie
84a3fda1c3 Do not optimize binutils-pass1 in order to measure the SBU:
- introduce REALSBU variable if Config.in and jhalfs, and display it
- Adpat LFS/master.sh
2018-01-14 10:26:43 +00:00
Pierre Labastie
2e1c1c3c16 Remove spaces at the end of lines 2018-01-13 09:08:56 +00:00
Pierre Labastie
dc7fd7b7ba Add .la file removal to LFS and BLFS scripts 2018-01-12 19:04:19 +00:00
Pierre Labastie
5a8939e7f9 Really comment out test instructions+always define TESTLOG since the user
may "uncomment" some tests
2018-01-12 09:40:59 +00:00
Pierre Labastie
1d5f3e309f Always generate test instructions, and comment unwanted ones out.
Fixes ticket #1695
2018-01-07 20:20:12 +00:00
Pierre Labastie
9bbb9c83f3 Package management: compute times and sizes without packing times and sizes 2017-07-04 12:19:46 +00:00
Pierre Labastie
c57747dba5 Make the date of the SBU_DU file the same as the one reported at the end of
the jhalfs run. Note that date is the one when the run is started
2017-06-29 16:45:31 +00:00
Pierre Labastie
945ccaa75e Merge the new_features branch (manully, thanks to svn) 2017-04-09 10:29:32 +00:00
Pierre Labastie
1814367e83 Fix the case of the "symlinks.xml" file, which has revision attributes in sect2, which defeats a filter
based solely on screen and sect1 attributes.
2017-03-27 16:14:49 +00:00
Pierre Labastie
0ad3a337f1 When choosing the LFS book, we should not depend on docbook-xml. This is achieved by directly treating the revision attribute in lfs.xsl, instead of using profiling from docbook-xsl. 2017-03-27 09:40:41 +00:00
Pierre Labastie
d601cfcc47 Fix logic for copying fstab. That stupid bug wanted to copy fstab when
FSTAB was empty!
2017-03-10 20:23:57 +00:00
Pierre Labastie
85506da325 Merge new_features branch at r3901; Fixes:
when the user fstab and/or kernel config are the same as the ones in
$BUILDDIR/sources: avoid to cp on itself
- set SRC_ARCHIVE=/dev/null in BLFS tools download script if SRC_ARCHIVE is
empty
2017-03-05 08:38:09 +00:00
Pierre Labastie
df97e687b5 Merge "new_features" branch r3898:
output /etc/os-release when the init system is systemd
2017-03-03 21:16:40 +00:00
Pierre Labastie
00313ddaf2 Remove man pages in section 5 for attr, since they are already
installed by man-pages
2015-11-30 09:09:19 +00:00
Pierre Labastie
f2e80acf4c The systemd tests have to be run after install 2015-02-07 21:43:13 +00:00
Pierre Labastie
b1f4a8d941 Fix installation of iproute2 when pkgmngt=y 2014-12-22 21:02:30 +00:00
Pierre Labastie
56d842655b Fix 2 minor bugs:
- the tzdata DESTDIR should not be tzdata, because some package managers use
$PACKAGE as their working directory, and this may conflicts with this one.
tzdata DESTDIR is now 001-tzdata
- when reading md5sums, the current code assumes that there is only one
<para><literal> node reachable from ../.. (relative to <ulink>). This is true
for the "official" book, but not necessarily for the snippets written for
package management. The following change only assumes that the md5sum
<para><literal> for a given <ulink> is the first one after <para><ulink>,
which does not change anything for the book, and is better for user
written snippets.
2014-12-21 11:25:47 +00:00
Pierre Labastie
57ef0c1425 Package tzdata separately when using package management 2014-12-09 21:01:16 +00:00
Pierre Labastie
a9832566c9 Remove nologin from shadow package when using package management 2014-11-29 21:17:49 +00:00
Pierre Labastie
e6e0c85db7 Fix a long standing bug in lfs.xsl, which tried to use packageManager.xml
when Package management was not in use, resulting in errors in
000-masterscript.log
Also correct a typo
2014-11-29 20:43:35 +00:00
Pierre Labastie
abc8b27cb4 Change the command to create the CHROOT$i variables so that it looks better.
Thanks to "amakarov" for the patch.
2014-08-29 16:43:10 +00:00
Pierre Labastie
5f6a6b496f Typo 2014-01-28 13:29:06 +00:00
Pierre Labastie
d954e9c82a Adapt the umounting of kernel virtual filesystems to new instructions
in the LFS book
2014-01-23 09:15:05 +00:00
Pierre Labastie
d68eb1b205 Major change to th scripts layout:
- Do not put the chroot commands in $PROGNAME-commands, but rather
  in a separate directory chroot-scripts
- Use the commands in the chroot-scripts directory to generate the CHROOT
  variables in Makefile
- The commands are extracted to $PROGNAME-commands only if they do not
  have role="nodump attribute and they do not begin with "chroot" (for
  compatibility with previous books where chroot commands did not have
  the role="nodump" attribute.
2014-01-12 21:40:20 +00:00
Pierre Labastie
532ede6912 Add network-scripts case in chapter 7 for systemd branch 2013-12-22 08:04:06 +00:00
Pierre Labastie
f60a8b73b3 Some updates and remove a long standing useless reference to
a $(LFS) variable in LFS Makefile "chroot" target.
2013-11-12 13:57:09 +00:00
Pierre Labastie
ef32ce5ea5 Getting mad because you cannot interrupt the build once started?
The present set of commands seems to allow interrupting during the chapter
5 phase. No changes to chroot phase yet.
2013-11-01 14:15:43 +00:00
Pierre Labastie
3cb4ef5b5a Add versions to file names in logs and test-logs: use it for the SBY report 2013-10-05 17:45:52 +00:00
Pierre Labastie
de84c00168 download and builds the test programs, even if tests are disabled 2013-09-19 15:44:49 +00:00
Pierre Labastie
8099885218 adaptations to recent modifications in the systemd book and
merging of a change (rev 3750) in the ablfs branch
2013-05-21 20:20:24 +00:00
Pierre Labastie
18499359b0 Retry failed commit r3686: LFS/master.sh:
- Ignore error when useradd does not support "-k /dev/null" (happens at
least on Suse)
- strip "-libstdc++" from the script name to allow building gcc-libstdc++
with package gcc
2013-03-27 14:50:42 +00:00
Pierre Labastie
560bef155a Fix package management instructions for attr.
Add attr to blacklist in opt_config.
2013-03-13 16:43:37 +00:00
Pierre Labastie
eed0929b01 Treat the XML::Parser case for package management 2013-03-04 16:44:16 +00:00
Pierre Labastie
90f304c8ae Corrects a problem with package management arising from the recent changes 2013-03-02 19:31:26 +00:00
Pierre Labastie
f0a31dea50 Add a sect2 template to lfs.xsl, so that it is possible to build
several packages on the same page
2013-03-02 14:10:45 +00:00
Pierre Labastie
e40a68e701 Fix the procps-ng check instructions so that the result is logged into
$TEST_LOG
2013-02-20 08:26:35 +00:00
Pierre Labastie
72f2f82889 Cleanly umount the kernel files, following the new way of mounting /dev/shm 2012-12-30 16:30:44 +00:00
Pierre Labastie
e1fc8553f6 Adapted master.sh so that the Makefile contains instructions
to create /etc/lsb-release
2012-05-13 09:18:19 +00:00
Pierre Labastie
909685338b Change owner of lfs-release to root 2012-05-12 20:51:34 +00:00
Pierre Labastie
ac9bdc7c8e LFS/master.sh: add sudo to the create-sbu_du-report.sh command, so that
it can read all the directories for computing the size
2012-03-24 10:52:07 +00:00
Pierre Labastie
575bcf3c88 Modifies package manager scriptlet generation so that it is possible to
install several packages instead of only one (needed for pacman)
2012-02-12 18:33:40 +00:00
Pierre Labastie
f663589856 Uses PIPESTATUS to test
the exit of make check during gmp tests
2012-02-10 11:20:51 +00:00
Pierre Labastie
b339c942c1 Add a choice between installing the full set of supported locales
and installing just the minimal set for tests, after glibc build.
If the second option is chosen, the locale specified in LANG is also
installed, if not in the minimal set.
2012-02-10 09:43:23 +00:00
Pierre Labastie
7831c7980b Added check to the list
of packages which are not built if testsuites are not run
2012-02-09 13:45:22 +00:00
Matthew Burgess
93fd2d011e Fix ICA build and a couple of other miscellaneous issues. Patch courtesy of Pierre Labastie. 2012-02-07 22:30:26 +00:00
Thomas Pegg
b515be7b2c Commit fix for glibc localedata installation regression. 2012-02-07 02:20:05 +00:00
Thomas Pegg
2c9a16bcca Fix for glibc test, forgot to add this in previous commit. 2012-02-01 23:36:34 +00:00
Thomas Pegg
7072e1faf4 Commit Pierre Labastie's patch for including package management support in jhalfs. NOTE: Package management is by default disabled. 2012-02-01 23:29:37 +00:00
Thomas Pegg
4b54394ca1 Add handling for the different name of the xz-utils tarball 2011-01-08 00:17:08 +00:00
George Boudreau
0850553edb LFS has new build method. Added new vars to LFS/master.sh (JHuntwork) 2008-12-06 15:05:59 +00:00
George Boudreau
bcfb3bfdb5 LFS changed to linux headers install, change xsl to handle. 6.3 and svn only 2008-10-28 13:58:19 +00:00
George Boudreau
7c170663ed LFS only:: Added ability to enter chroot using makefile. (code:Bruce Dubbs) 2008-10-21 21:29:13 +00:00
Manuel Canales Esparcia
81a7fb83ac Fix to track last book tagging change. 2007-09-21 18:08:16 +00:00
Manuel Canales Esparcia
4afcedbec9 LFS: Qick fix to handle current SVN book. 2007-09-18 21:14:16 +00:00
Manuel Canales Esparcia
68713c9186 Dump build time using Bash $SECONDS internal variable instead of using date calls + Perl-based calculations. 2007-08-17 16:24:47 +00:00
Manuel Canales Esparcia
2c2d830859 LFS: Fixed a bug when running Bash testsuite. 2007-08-01 18:09:08 +00:00
Manuel Canales Esparcia
81fca3136b On iterative builds, log installed files only for the first build. 2007-05-26 10:55:46 +00:00
Manuel Canales Esparcia
38d2de6098 Typo fix. 2007-04-28 15:49:34 +00:00
Manuel Canales Esparcia
93346ee11d LFS: Added support for installed files logs.
Should be ported to other books when verified that works as expected.
2007-04-28 15:24:20 +00:00
Manuel Canales Esparcia
962793a098 Added support for host that place home dirs under a directory othen than /home.
Request and partial patch from Mario Lang.
2007-04-13 20:40:38 +00:00
Manuel Canales Esparcia
49d4af4657 LFS: Fixed Bash testsuite run. 2007-04-13 17:31:41 +00:00
Jeremy Huntwork
b11c10be50 Minor formatting changes for consistency and a typo fix in the README. 2007-03-21 02:34:14 +00:00
Manuel Canales Esparcia
dbcdfd7f69 Reimplemented support for partial builds. 2007-03-18 10:14:04 +00:00
Manuel Canales Esparcia
3bc607816b Unified mk_CUSTOM_TOOLS and mk_BLFS_TOOL targets. 2007-03-03 12:18:07 +00:00