Commit Graph

587 Commits

Author SHA1 Message Date
Andrius Štikonas aae7c4a672 Update stage0-posix to 1.6.0 2023-11-12 20:31:17 +00:00
Seppo Yli-Olli f9ed2d7a42 Fix Python 2.5.6 for parallel pgen invocation
Backported from 9828b56347.patch
2023-11-07 09:08:34 +02:00
Paul Dersey 184535e2df gcc 13.1.0: don't enable default ssp or pie and remove libssp_nonshared.patch 2023-07-24 10:08:26 -04:00
fosslinux 46d80b8605
Merge pull request #313 from stikonas/meslibc+tcc
Build libc+tcc with mes rather than mes-m2.
2023-07-24 06:29:36 +00:00
Andrius Štikonas 10fd92f9c7 Build libc+tcc with mes rather than mes-m2. 2023-07-23 17:03:32 +01:00
Dor Askayo 2227a2053a Mount a few missing device nodes in chroot bootstrap modes
The gap between the chroot and non-chroot bootstrap modes started in,
7ecad37 because BuildStream's sandbox was missing some device nodes.

With the latest version of buildbox-run-bubblewrap, a few of the
missing devices were made available to BuildStream's sandbox and
there is no longer a need to keep this gap. In fact, compatibilty
with newer BuildStream versions now requires these devices to be
present.

This change also partially reverts d0a5221, which had to remove
/dev/ptmx as a consequence of the aforementioned gap.
2023-07-16 01:41:01 +03:00
Dor Askayo 6276da59cd Avoid exporting base_dir in linux-headers-5.10.41
It's not expected to be used by child processes.
2023-07-14 09:57:18 +03:00
rick-masters 5e5f309db7 Update Fiwix to v1.4.0-lb3 to pull in timestamp improvements and other fixes. 2023-07-06 23:29:37 +00:00
Paul Dersey 5b9fd08dc0 Don't use serial console with bare metal option and user provided kernel 2023-06-19 09:24:55 -04:00
Paul Dersey c61b4afd8a Boot Fiwix and Linux without serial console on bare metal 2023-06-15 11:18:51 -04:00
Andrius Štikonas 914b84377a Update to musl 1.2.4. 2023-06-12 19:31:30 +01:00
Andrius Štikonas f531e1cc5f Remove -nostdlib when linking mes. 2023-06-09 23:22:30 +01:00
Paul Dersey 247b2a2a89 gzip: Regenerate crc table in util.c using makecrc 2023-06-05 10:50:57 -04:00
Paul Dersey 87601931b2 Write simple-patch binary to ${bindir} and remove hard coded paths 2023-06-05 10:50:57 -04:00
Emily Trau a8752029f6 Backport `uniq` fopen patch 2023-05-22 21:30:22 +10:00
rick-masters ef08891401 Convert file size to 32-bit type before writing. 2023-05-21 00:11:37 +00:00
rick-masters 1603b81602 Fix printf calls and use puts when possible. 2023-05-20 15:20:01 +00:00
rick-masters 0d4394aa0d Build kexec-linux later as a package for musl lib calls instead of asm. 2023-05-20 15:16:27 +00:00
rick-masters 8604871997 Pull builder-hex0-x86-stage1 from updated stage0-posix and lint fixes. 2023-05-18 10:59:46 +00:00
rick-masters a2fcf1ced9 Complete the kernel bootstrap by adding kexec of Linux from Fiwix.
A tiny bootloader bootstrap has been added to compile the builder-hex0 kernel from hex0 source.
The boot compiler is builder-hex0-x86-stage1.hex0 and builder-hex0-x86-stage1.bin.
The builder-hex0 kernel is now named builder-hex0-x86-stage2.hex0.
The inclusion of a binary seed resolves the problem with the previous strategy which used an
architecture-specific hex0 compiler.

If sysb detects a full disk (i.e. DISK=sda) it now partitions the disk unconditionally because
previously fdisk was reporting existing but empty partitions which resulted in no
parititions being created.

e2fsprogs is now built with --disable-tls because musl was built on Fiwix without full threading
support and mkfs.ext4 was crashing without disabling thread local storage.

kexec-linux writes the linux kernel and initramfs to a RAM drive on Fiwix which ensure
a pre-allocated contiguous memory block. The following is written to the ram drive:
a 32-bit number which is the size of the kernel in bytes, a 32-bit number which is the size
of the initramfs in bytes, followed by the Linux kernel image, followed by the initramfs.

kexec-fiwix invokes a sync syscall to ensure all writes are flushed to
the ram drive and then initiates the kexec by shutting down Fiwix with a reboot syscall.
Fiwix knows whether and how to perform the kexec based on kernel parameters passed to it.
2023-05-10 14:33:42 +00:00
fosslinux 724c6cca13
Merge pull request #293 from fosslinux/gcc-13
GCC 13
2023-05-10 07:30:40 +00:00
fosslinux aa2d6c4137 Update to GCC 13
The latest version of GCC.

Luckily this allows for a bunch of patches to be dropped - apart from
that, no significant change.
2023-05-09 22:41:45 +10:00
Emily Trau 7a13158e79 Enable additional tools in coreutils-5.0 phase 1
These utilities can be enabled with only a small amount of additional
patches. In particular sort, expr, uniq,and hostname are used by some
./configure.sh scripts.
2023-05-02 23:21:46 +10:00
Andrius Štikonas 7d2a3137dd Use relative paths and variables instead of hardcoding absolute path. 2023-05-01 22:01:13 +01:00
fosslinux d918b984ad
Merge pull request #287 from emilytrau/heirloom-devtools-snprintf
Fix segfault in yacc
2023-05-01 11:35:57 +00:00
Emily Trau 2c0a1d39d9 Fix segfault in yacc
The patch to heirloom-devtool's yacc used sprintf instead of snprintf.
This incompatibility causes a segfault when those code paths are hit.
Fixing this allows yacc to compile more grammars, and may allow some
packages to drop dependency on bison in favor of yacc.
2023-05-01 21:33:15 +10:00
Andrius Štikonas 725522b901 Make sure we pass MES_ARCH and not ARCH to mes. 2023-05-01 11:23:22 +01:00
Andrius Štikonas bd7ad7e8ae Update stage0-posix to pull in newer M2-Planet. 2023-04-30 23:58:31 +01:00
Andrius Štikonas eae8107607 Fix MES_ARCH vs ARCH mixup. 2023-04-30 19:29:58 +01:00
Andrius Štikonas dbc6a25be1 Move checksum transcriber checksum to x86 specific name. 2023-04-30 18:45:41 +01:00
Andrius Štikonas 07b11120b2 Make mes build script more multiarch friendly. 2023-04-30 01:23:57 +01:00
Andrius Štikonas 1259e3fa28
Merge pull request #284 from fosslinux/gcc-12
GCC12
2023-04-30 00:05:46 +01:00
Andrius Štikonas 3197781127 Do not hardcode mes version in kaem scripts. 2023-04-29 19:44:19 +01:00
fosslinux 6835ebfaf8 Disable binutils' manpages
I have no idea where this unreproducibility is coming from and I'm not
really bothered to spend more time on it right now :)
2023-04-29 23:41:15 +10:00
fosslinux c063a86bb4 Fix binutils manpage deletion
binutils manpages were, incorrectly, not deleted - this causes issues
with reproducibility in pass2
2023-04-28 21:50:54 +10:00
fosslinux 99bad05173 Update dhcpcd to 10.0.1
There was a bit of churn with the tarballs - hopefully this doesn't
happen again.
2023-04-27 17:36:18 +10:00
fosslinux 6fb676c8c2 Add GCC 12
The latest version of GCC.
And with this, the glibc-musl-gcc toolchain is complete.

A variety of modern features (default PIE SSP) are enabled.
2023-04-27 17:25:51 +10:00
fosslinux ac4685e886 Rebuild Binutils 2.38 using all modern features
- Rather than using part-by-part build of Binutils, use autogen and full
  ./configure, make build.
- Enable some other modern features, including the gold linker, threaded
  linking and 64-bit linking.
- This allows GCC 12 to build unhindered by binutils.
2023-04-27 17:25:51 +10:00
fosslinux 8ae911162a Move libssp into musl out of GCC
The motivations for this are complicated, but on musl systems, musl
will use its own libssp implementation, so GCC's libssp is not required.

Not to mention that GCC's libssp implementation is questionable at best.

This is the approach taken by the two major musl distributions - Alpine
Linux and Void Linux.
2023-04-25 14:04:42 +10:00
Andrius Štikonas 906b6b8f19 Update stage0-posix. 2023-04-23 17:26:26 +01:00
Eduardo Sánchez Muñoz d11ee97452 Regenerate SHA256SUMS.pkgs so it matches the file produced with `--update-checksums`
No checksum is actually changed, they are simply sorted.
2023-04-16 12:13:20 +02:00
Eduardo Sánchez Muñoz 929eb69d03 Add checksums for kexec-fiwix and lwext4 2023-04-16 12:13:20 +02:00
Eduardo Sánchez Muñoz dd8ce0e516 Add option to build kernels and related tools during chroot and bwrap builds
The main motivations to have this are:
* Detect checksum changes with chroot/bwrap builds
* Avoid removing checksums from `SHA256SUMS.pkgs` when unsing `--update-checksums`
* Find crashes that would otherwise be missed in `builder-hex0`
2023-04-16 12:13:20 +02:00
Eduardo Sánchez Muñoz d3477570b8 Explicitly specify i686-pc-linux-gnu build/host/target for kexec-tools
Fixes building in chroot/bwrap. Checksum is not affected.
2023-04-15 13:20:59 +02:00
Eduardo Sánchez Muñoz 86c0be5b67 Fix tcc crash when building lwext4 in chroot/bwrap
Fixes https://github.com/fosslinux/live-bootstrap/issues/281.

This is adding a null pointer check to `fill_local_got_entries` in tcc 0.9.27. This is rather a workaround because I am not sure if it is legit for that pointer to be null.
2023-04-15 13:19:29 +02:00
fosslinux d98f97e214 Introduce parallelism
By using --cores argument to rootfs.py, JOBS= is set in the
live-bootstrap environment, and -j${JOBS} is used on builds. This speeds
larger packages up significantly.

A fair number of packages do not build properly with parallelism. Most
of these, at least for now, are disabled with -j1.
2023-04-13 17:13:53 +10:00
fosslinux f2a0d74bfb Update to Guile 3.0.9
This is achieved by transplanting 3.0.7's psyntax-pp.scm into 3.0.9
which works flawlessly.

This is required for parallelism, since <3.0.8 is irreproducible when
-jN is used.
2023-04-13 17:13:51 +10:00
Andrius Štikonas 343843dfdd Fix whitespace. 2023-04-12 23:25:08 +01:00
Andrius Štikonas b6fe5bc499
Merge pull request #276 from eduardosm/update-dhcpcd
Update dhcpcd to version 9.5.0
2023-04-12 23:24:39 +01:00
rick-masters 6b2d04d00e Always regenerate help2man man pages. 2023-04-12 11:27:55 +00:00