Commit Graph

609 Commits

Author SHA1 Message Date
Gabriel Wicki 65c7d78620 fix mescc alias in mes.kaem script
delete --no-auto-compile : useless in this case (MES doesn't compile)
delete -- : this starts an interactive scheme session (which is not the case here)
2021-12-22 17:14:51 +01:00
Andrius Štikonas 60eece8856 Update stage0-posix. 2021-12-04 20:06:54 +00:00
Andrius Štikonas cd93a07481 Update mes-m2 and stage0-posix. 2021-11-06 00:07:13 +00:00
Andrius Štikonas 12f3cc3138 Update stage0-posix. 2021-10-31 22:37:10 +00:00
Andrius Štikonas 32ec57d62d Unhardcode x86 from initial steps. 2021-10-20 21:16:05 +01:00
Andrius Štikonas 5148a8e0da Start using kaem aliases to build mes. 2021-10-20 21:15:50 +01:00
Andrius Štikonas 9acf482527 Update stage-posix. 2021-10-20 21:15:16 +01:00
Andrius Štikonas e46eb5ad9c Move stage0-posix match binary into /usr/bin. 2021-10-14 20:44:32 +01:00
fosslinux 5dbf82e8e4 A couple of fixes wrt bootstrap.cfg
Correctly source. export so that scripts can access.
2021-10-14 21:31:45 +11:00
Andrius Štikonas 04c3dc60a5 Update stage0-posix to newer version. 2021-10-14 01:26:11 +01:00
fosslinux 98ea0a4c2e Don't use deblob-check
Generally, this is bad, because reduces featureset of kernel.
However, we don't use any blobbed features anyway.

1. This allows much lower RAM usage.
2. Speeds up deblobbing from hours -> seconds.

This nukes blobbed files instead of replacing blobs.
2021-10-13 17:57:50 +01:00
fosslinux f12897265c Shuffle around the creation of sysb
For further RAM savings, we want to create sysb -without- having linux
tarball extracted at the same time. To accomplish this, we move the
gen_init_cpio + related script out of the tree and create it afterward.

Also use hard links to free up some more space.
2021-10-13 17:57:50 +01:00
fosslinux 732af79cdd A small RAM saving in initramfs
Before compiling the large Linux kernel, free up RAM space by removing
old build dirs.
2021-10-13 17:57:50 +01:00
fosslinux 306dac7ba6 Add prompts when particular options are not given in config files 2021-10-13 00:42:21 +01:00
Andrius Štikonas c6c8a1eb7f Move chroot transition script inside bootstrap. 2021-10-10 16:38:52 +01:00
Andrius Štikonas 35a7df58b7 Build chroot in coreutils-5.0 step. 2021-10-10 12:18:08 +01:00
Andrius Štikonas dceede45db Use exec when kaem finishes and runs bash. 2021-10-08 20:55:06 +01:00
Andrius Štikonas e3d0191949 Update stage0-posix. 2021-10-08 20:55:06 +01:00
fosslinux 04180f5672 Various fixes + cleanup.
- Add parts.rst documentation for Linux kernel.
- Completely fix problems caused by new bootstrap, update checksums for
  /usr.
- Globalise populate_device_nodes.
- Enable deblobbing.
2021-09-14 14:59:08 +10:00
fosslinux d429c48d76 Update the linux kernel for sysb/c to 4.9.10.
- We do not use latest 4.9.x because it relies on a new version of
  binutils, while older versions do not. (Note: we should be able to go
  a bit newer but I didn't bother testing >50 versions to figure this
  out).
- We do not use newer kernel versions because they require one or more
  of (new perl, new binutils, new make, new gcc, new bison, new tar).
- sysb and sysc are updated to use the SATA (libata) subsystem (aka sda)
  instead of IDE-emulating SATA subsystem (aka hda) which is now
  available to us.
- While theoretically according to docs 4.9 should work OOTB with our
  version of binutils this is not the case, so we have to do a bit of
  (interesting) patching. But this does not break anything.
- Thankfully serial support in 4.9 is not screwed over like it is in 2.6
  so we can revert to that.
- 4.9 has the linux-libre project at our disposal, instead of gNewSense.
  So we use this. Unfortunatley that takes forever because we have to
  use sed because our version of gawk is too old/buggy. :( I plan to
  introduce very shortly 1. parallelism 2. 'sysc snapshot' which will
  start from sysc to avoid this. I do not want to use linux-libre
  tarballs because they make modificiations directly from this script
  (aka not easily verifiable, use the source!) and this script allows
  for much greater flexibility.
- We compile the initramfs ahead-of-build using the in-tree cpio
  generator instead of also building cpio to use less packages. We do
  NOT build the initramfs into the kernel like 2.6 (unsupported).
- Oh and fix a kexec-tools checksum.
2021-09-13 13:43:36 +10:00
fosslinux e225435983 Clear up storage space in linux-headers-5.10.41
Special case to free up space in the initramfs (linux tarball +
unpacked is MASSIVE)
2021-08-27 14:54:08 +10:00
fosslinux 1e19193408 Add make 3.82 (sysa) 2021-08-27 14:54:08 +10:00
fosslinux b93a931a53 Move to /usr prefix.
- This is much more standard and replaces /image in sysa and is the
  standard in sysc (avoids many issues).
- GCC needs to have a file created for some unknown reason.
- Checksums updated.
2021-08-27 14:54:08 +10:00
fosslinux ddd4f1bc81 Add kbd-1.15.
This also requires a patch to linux-headers; while we are at it, make
linux-headers PREFIX agnostic.
2021-08-27 14:54:08 +10:00
fosslinux 5c88f1c87f Add sysb and sysc scaffolding.
Now that we have the Linux Kernel built, we move to a full-disk (rather
than initramfs) setup in sysc. However, we cannot assume the seed kernel
has support for mounting hard drives. So, first we need to kexec into
sysb, which is used as a jumping off point to create the hard drive for
sysc.

Additionally, since 2.6.16 does not have support for on-demand initramfs
(initramfs must be built into kernel), we will have to rebuild the linux
kernel within sysb without the initramfs.

All of this process is not performed for chroot mode. Instead, we skip
sysb and jump straight to sysc, copying over appropriate data.

The python scripts have been changed slightly. Each sys* inherits
SysGeneral, which contains various functions which are not specific to
any sys* and simplifies those files. rootfs now also handles sysb and
sysc.

bootstrap.cfg also gives an indication whether we are running in a
chroot to avoid attempting to kexec/mount within a chroot.
2021-08-27 14:54:08 +10:00
fosslinux 925ce198c1 Add linux kernel 2.6.16.62. 2021-08-27 14:54:08 +10:00
fosslinux 950f339272 Add util-linux 2.19.1. 2021-08-27 14:54:08 +10:00
fosslinux bfe7a67acf Add kexec-tools 2.0.22. 2021-08-27 14:54:08 +10:00
fosslinux c41d2817e8 Add linux headers 5.10.41.
Needed for kexec-tools.

Not equivalent to kernel version; kernel API is stable and does not
change. Therefore we can use any (latest) version.
2021-08-27 14:54:07 +10:00
fosslinux 4c6e7afa42 Remove build directory
This extremely conserves storage space. Needed for larger packages to
fit within 4GB RAM limit of i386 no-PAE.
2021-08-27 14:54:07 +10:00
Andrius Štikonas 8f78796087 Add a trap. 2021-07-17 19:39:07 +01:00
Andrius Štikonas 63d2bc7a1b Fix typos. 2021-07-15 17:59:11 +01:00
Andrius Štikonas 3d64db72dc gperf 3.1 2021-07-15 17:57:45 +01:00
Andrius Štikonas 4cd5b9dfbb Unfuzzy bison patch. 2021-07-15 17:57:45 +01:00
Andrius Štikonas effa9ba93a Build g++. 2021-07-15 17:57:45 +01:00
Andrius Štikonas 3835f1e1aa Switch toolchain triplet to i386-unknown-linux-musl 2021-07-15 17:57:45 +01:00
Andrius Štikonas e94e078a1f Fix libunistring.
It seems that there is some instability of git snapshot packages.
I think newer version of git on the remote server packages them
in a different directory layout.
2021-07-15 17:57:45 +01:00
Andrius Štikonas 2b69b2dca2 GCC 4.7.4 2021-07-15 17:57:45 +01:00
Andrius Štikonas 740fa5635b zlib-1.2.11. 2021-07-07 20:16:31 +01:00
Andrius Štikonas d6b032501a Do not build broken shared libraries. 2021-07-05 20:05:11 +01:00
Andrius Štikonas 4b3d36afb8 Downgrade autoconf to 2.64. 2021-07-05 19:12:19 +01:00
Andrius Štikonas 4cf20d19ae pkg-config-0.29.2 2021-07-02 22:27:39 +01:00
Andrius Štikonas f9ca617923 libunistring 0.9.10 2021-06-29 17:49:34 +01:00
Andrius Štikonas c8784cbcd3 Split installed files out of /after into /image. 2021-06-29 17:49:34 +01:00
Andrius Štikonas 6655de9e03 Switch to compressed gzip tarball. 2021-06-21 23:04:52 +01:00
Andrius Štikonas 826ff62300 Remove mes-libc submodule. 2021-06-21 22:40:48 +01:00
Andrius Štikonas ff6d9e5c08 Get rid of mkbuild. 2021-06-20 23:58:04 +01:00
Andrius Štikonas 987113f0a6 Build patched tcc-0.9.26 from tarball 2021-06-20 22:23:51 +01:00
Andrius Štikonas 40f40ea850 Switch to using mes/nyacc tar packages. 2021-06-20 13:24:35 +01:00
Andrius Štikonas b885cb5727 Update to stage0-posix 1.3. 2021-06-16 21:24:48 +01:00
Andrius Štikonas c7a716d661 Texinfo 6.7 2021-05-29 10:49:34 +01:00
Andrius Štikonas 1857439ddd GNU gettext 0.21 2021-05-29 10:49:34 +01:00
Andrius Štikonas 32358fd94f GNU Patch 2.7.6 2021-05-29 10:49:34 +01:00
Andrius Štikonas 22a435ba95 GNU Automake 1.16.3 2021-05-29 10:49:34 +01:00
fosslinux 121fe88c70
Merge pull request #120 from stikonas/coreutils
Coreutils: misc adjustments
2021-05-29 11:03:15 +10:00
Andrius Štikonas 4527ed8f56 Unify coreutils patches. 2021-05-25 23:05:04 +01:00
Andrius Štikonas 952ae49590 Fix DESTDIR variable. 2021-05-25 23:05:04 +01:00
Andrius Štikonas a4889dfb9e coreutils: various fixes.
* Properly define coreutils versions, so that it is available in --version
* Move after tar. Later we can move this after gettext/texinfo too.
* There are no prebuilt files in git archive, remove function to delete info files.
2021-05-25 23:05:02 +01:00
Andrius Štikonas 4f687f7ca0 Remove amhello-1.0.tar.gz. 2021-05-25 23:02:53 +01:00
Andrius Štikonas f9f951f3a9 automake-1.15: do not try to build amhello with tcc
Fixes: #112
2021-05-25 23:02:53 +01:00
fosslinux d623b018e4 Add perl 5.32.1. 2021-05-26 07:27:22 +10:00
fosslinux a392b7bac9 Add bison 3.4.2. 2021-05-26 07:27:22 +10:00
fosslinux 96c935456c coreutils-5.0: create /bin/pwd.
This is required for perl.
2021-05-26 07:27:22 +10:00
fosslinux 170718c823 Add make 4.2.1 2021-05-26 07:27:22 +10:00
fosslinux e773e65f1c Add dist 3.5-236
This is the metaconfig script and co. for perl.
2021-05-26 07:27:22 +10:00
fosslinux c3c031fc51 run.sh: replace default arguments written out with ''
'' matches as an empty string which bash evaluates to be nothing,
tricking it into using the alternative text.
2021-05-26 07:27:22 +10:00
fosslinux c05c16e12c helpers.sh: add 5th argument, directory to cd into 2021-05-26 07:27:22 +10:00
fosslinux cd361e63f7 Add perl 5.10.1
Used as an intermediate before perl 5.32.
2021-05-26 07:27:22 +10:00
fosslinux d943b37962 Add bison 2.3
This is required for perl 5.10.1.
2021-05-26 07:27:22 +10:00
fosslinux 8d57161613 Add flex 2.5.33 2021-05-26 07:27:22 +10:00
fosslinux 338c85c8b8 Use absolute instead of relative paths in helpers.sh 2021-05-26 07:27:22 +10:00
fosslinux 981c4857fd run2: Add shellcheck source for helpers.sh 2021-05-26 07:27:22 +10:00
fosslinux c168a3bd4c
Merge pull request #115 from melg8/master
Add coreutils 8.32 and fix creation dates
2021-05-24 07:34:23 +10:00
Melg Eight cf4ce56603
Add config file and force timestamp conditional option 2021-05-20 02:04:39 +03:00
Melg Eight fefb33a870
Add coreutils 8.32 2021-05-20 02:04:39 +03:00
Andrius Štikonas 875d13fb0d Remove some unused pregen-files in coreutils 6. 2021-05-17 23:27:56 +01:00
Andrius Štikonas cd3fb17aa6 Unpack tarballs with --no-same-owner. 2021-05-08 13:53:42 +01:00
Andrius Štikonas a2c5745da4 helpers.sh: Add a helper function to call appropriate default stage function. 2021-05-03 23:48:06 +01:00
Andrius Štikonas 3ddf5d096a Fix indentation. 2021-04-20 23:57:00 +01:00
Andrius Štikonas 7cd79d1c72 Remove remaining texinfo files.
Fixes: #86
2021-04-19 00:46:38 +01:00
Andrius Štikonas a301e6fe86 Add bash symlink to /after/bin/sh
Fixes: #101
2021-04-19 00:32:00 +01:00
Andrius Štikonas 6ea1ff2e54 GNU MPC 1.2.1 2021-04-19 00:32:00 +01:00
Andrius Štikonas 2e5ccce9be GNU MPFR 4.1.0 2021-04-18 13:13:44 +01:00
Andrius Štikonas 41d8cc2825 Fix path to libdir when building xz. 2021-04-18 13:13:44 +01:00
Andrius Štikonas 8b884b2cf1 GNU Autoconf Archive 2021.02.19 2021-04-18 13:13:44 +01:00
Andrius Štikonas 113a3b6fff Use provided bootstrap script to build automake 1.10.3. 2021-04-18 13:13:44 +01:00
Andrius Štikonas 6e2f42c6a4 Remove automake 1.12 and 1.13.
automake 1.15 needs autoconf 2.69, which needs automake 1.11 but
we can skip intermediate versions.

Fixes: #93
Fixes: #100
2021-04-18 13:13:44 +01:00
Andrius Štikonas 3dfe3dc0f0 Split mes libc into a separate source package.
Drop one of the mes git submodules.
2021-04-18 13:13:44 +01:00
Andrius Štikonas 419cd74d92 Move tcc 0.9.27 after bzip2.
This also allows to merge two builds of tcc 0.9.27.
Drop tcc 0.9.27 git submodule.
2021-04-17 01:29:31 +01:00
Andrius Štikonas f030a3a74e Add untar.c 2021-04-17 01:29:31 +01:00
Andrius Štikonas 0d64413670 Properly rebuild libtcc1.a. 2021-04-16 14:12:05 +01:00
Andrius Štikonas 255b783b97 parts: We no longer rebuild mes. 2021-04-16 14:12:05 +01:00
Bastian Bittorf 50417514de fixes bash build.
fixes: https://github.com/fosslinux/live-bootstrap/issues/99

in my usecase (qemu, kernel 3.18.140) around 50% of
all builds are failing with a wrong binary hash.
the culprit is a varying generation of 'pipesize.h' during:

```
/bin/sh ./psize.sh > pipesize.h
```

normally generated 'pipesize.h' looks like:
```
/*
* pipesize.h
*
* This file is automatically generated by psize.sh
* Do not edit!
*/

 #define PIPESIZE 65536
```

in the error case the last line has 512 instead of 65536.
With this change we use a fixed output of the large PIPESIZE.
2021-04-16 05:50:47 +00:00
fosslinux a6630ffb67
Merge pull request #98 from stikonas/mes
Do not rebuild mes.
2021-04-14 10:24:07 +10:00
Andrius Štikonas ddf05018a9 Remove pre-generated info files.
Fixes: #86
2021-04-13 00:48:28 +01:00
Andrius Štikonas 7cefcc1d5c Do not rebuild mes. 2021-04-13 00:08:58 +01:00
Andrius Štikonas 23b30d34d2 Recreate autoconf.in file from autoconf.as
Fixes: #92
2021-04-12 18:07:57 +01:00
Andrius Štikonas 713fd9143f Port rootfs.sh to Python 2021-04-11 00:06:24 +01:00
Andrius Štikonas 4dbc9618a2 findutils: import gnulib
Fixes: #88
2021-04-11 00:03:07 +01:00
Andrius Štikonas 54b7970bf3 GNU Tar 1.34 2021-04-06 18:00:37 +01:00
fosslinux 54234a5683 Add multiple tarball support, named args in rootfs.sh
1. Add named args to make this more clear and avoid unnessecarily
   setting default values for certain values ot set others positioned
   later.
2. Add support for multiple tarballs in rootfs.sh.
3. Add support for extracting multiple tarballs (name dosen't matter
   anymore) in helpers.sh.
4. Add comment for 4th arg to build.
2021-04-06 08:59:37 +10:00
Andrius Štikonas f5b914bb9f GMP 6.2.1 2021-04-03 22:58:44 +01:00
Andrius Štikonas 70d1fc4163 Add support for DESTDIR variable in make install. 2021-04-02 12:24:40 +01:00
fosslinux dcec416d0f
Merge pull request #83 from stikonas/binutils
binutils: remove autogen'ed files
2021-04-02 12:38:22 +11:00
Paul Dersey 544a197ef3 Fix perl warning due to uninitialized variables
Use of uninitialized value in concatenation (.) or string at
/after/lib/perl5/5.6.2/Errno.pm line 11.
2021-04-01 19:12:06 -04:00
Andrius Štikonas 9d4b489b11 binutils: remove autogen'ed files
Fixes #82
2021-04-01 23:52:03 +01:00
Andrius Štikonas dd77379dbd GNU Automake 1.15.1 2021-04-01 00:46:37 +01:00
Andrius Štikonas 9de12bf4b7 GNU Automake 1.13.4 2021-03-31 19:10:50 +01:00
Andrius Štikonas 5692032996 GNU Automake 1.12.6 2021-03-31 19:06:53 +01:00
Andrius Štikonas e2af1a44f5 GNU Autoconf 2.69 2021-03-31 18:19:19 +01:00
Andrius Štikonas 838a1bfb90 GNU Automake 1.11.2. 2021-03-31 18:19:19 +01:00
Andrius Štikonas c345001ee8 XZ Utils 5.0.5 2021-03-31 18:14:01 +01:00
Andrius Štikonas f59909142d Fix gcc not to use pregen files.
Fixes #78
2021-03-31 18:14:01 +01:00
Andrius Štikonas a185b83f80 Try to fix intermittent error while building automake 1.10. 2021-03-31 18:14:01 +01:00
Andrius Štikonas 1df73da7fa coreutils-6.10: catm->touch 2021-03-31 18:14:01 +01:00
Andrius Štikonas aa31fbc95b Patch tcc to ignore static inside array. 2021-03-31 18:14:01 +01:00
Andrius Štikonas 246cc10ab5 GNU Autoconf 2.65 2021-03-31 18:14:01 +01:00
Andrius Štikonas 20a4d3af9e GNU Automake 1.10.3 2021-03-31 18:14:01 +01:00
Andrius Štikonas a63a01c56b GNU Libtool 2.2.4 2021-03-31 18:14:01 +01:00
Andrius Štikonas 28779bc9ba GNU findutils 4.2.33 2021-03-31 18:14:01 +01:00
bauen1 3d1a7b6580
Make usage of /dev more failure proof
/dev/console is not needed / used.
2021-03-30 23:43:40 +02:00
Andrius Štikonas cb52876ba8 Add a comment explaining bash workaround. 2021-03-24 22:09:23 +00:00
Andrius Štikonas e30b56cb3e Merge remote-tracking branch 'pder/coreutils' into gcc 2021-03-24 19:37:17 +00:00
Andrius Štikonas 634cae7b68 Build bash 5.1 only after GCC. 2021-03-24 19:37:12 +00:00
Paul Dersey 366dc2eac5 Replace coreutils-6.3 with coreutils-6.10
Build only date, mktemp, and sha256sum
2021-03-24 15:30:37 -04:00
Paul Dersey 19c113127b coreutils-5.0: build sync in pass2 2021-03-24 15:29:55 -04:00
Andrius Štikonas 0572ff41ef Rebuild GCC against musl 1.2.2. 2021-03-23 18:03:21 +00:00
Andrius Štikonas 8cd8c0fe31 Rebuild bash 5.1 with gcc. 2021-03-23 18:02:14 +00:00
Andrius Štikonas fbaa01d84c musl 1.2.2 2021-03-23 18:02:14 +00:00
Andrius Štikonas f5c262e370 GNU GCC 4.0.4 2021-03-23 18:02:14 +00:00
Andrius Štikonas 30ebe8ccba Install musl headers directly into /after/include. 2021-03-20 23:29:51 +00:00
Andrius Štikonas 1aeb4c11f7 Get rid of tcc-mes. 2021-03-20 23:20:25 +00:00
fosslinux 6791064571
Merge pull request #74 from stikonas/bash
Bump bash to 5.1.
2021-03-21 10:18:22 +11:00
Andrius Štikonas 7162bd8f2b Bump bash to 5.1. 2021-03-20 12:36:07 +00:00
Andrius Štikonas 705ebf471e autotools: add MAKEFINFO=true fix to all autotools. 2021-03-20 00:34:46 +00:00
Andrius Štikonas 2527d948a2 GNU Automake 1.9.6 2021-03-19 21:40:26 +00:00
Andrius Štikonas 7364615a86 GNU Autoconf 2.61 2021-03-19 21:40:26 +00:00
Andrius Štikonas ce77c561db help2man-1.36.4 2021-03-19 19:57:59 +00:00
Andrius Štikonas 65a2e3e33d autotools: Run make install with MAKEINFO=true to avoid intermittent build failures. 2021-03-19 15:39:42 +00:00
Andrius Štikonas 8bc3f32d53 Fix intermittent error when building automake-1.4. 2021-03-19 12:15:51 +00:00
Andrius Štikonas 107aef4b57 Use newer autoconf for bash to avoid warnings.
We can use either 2.55 or 2.57, so use the newer.
2021-03-19 12:15:51 +00:00
Andrius Štikonas 7fdb12f08d Automake 1.8.5. 2021-03-19 12:15:51 +00:00
Andrius Štikonas eb4b623de9 Autoconf 2.59. 2021-03-19 12:15:51 +00:00
Andrius Štikonas abf09359c3 Autoconf 2.57. 2021-03-19 09:46:00 +00:00
Andrius Štikonas 16dba20254 Automake 1.7.8. 2021-03-18 20:03:23 +00:00
Andrius Štikonas d1d5ab1a20 GNU Autoconf 2.55. 2021-03-18 19:19:05 +00:00
Andrius Štikonas 5ecd548945 Automake 1.7 and Autoconf 2.54 2021-03-18 17:44:01 +00:00
Andrius Štikonas 2fb08b9cd3 Autoconf 2.53. 2021-03-17 23:46:23 +00:00
Paul Dersey 8565d26fef Update initial build of sed from version 4.0.7 to 4.0.9 2021-03-17 17:11:16 -04:00
Paul Dersey 6a5e57c2f8 helpers.sh: update default_src_unpack to support uncompressed tar files 2021-03-17 17:11:16 -04:00
fosslinux 0456b48038 Fix indentation in binutils-2.14 2021-03-18 07:22:10 +11:00
Andrius Štikonas 52cdbad405 Bootstrap aclocal. 2021-03-17 17:43:42 +00:00
Andrius Štikonas bb4d24509e Fix occasional flakiness in autoconf 2.12 build. 2021-03-16 09:07:10 +00:00
Andrius Štikonas 9fb1287f13 Replace automake 1.5 with automake 1.6.3 2021-03-16 00:29:06 +00:00
Paul Dersey 46b0d547a3 Move sed build to after tar and gzip 2021-03-15 17:18:51 -04:00
Paul Dersey 4ae5115d89 Remove sed submodule and update scripts to download sed tarball 2021-03-15 17:18:49 -04:00
Paul Dersey f2651ed9d6 tar: remove build dependency on sed 2021-03-15 17:15:03 -04:00
Paul Dersey 83cbe6731c gzip: remove build dependency on sed 2021-03-15 17:14:58 -04:00
Andrius Štikonas 7581244583 binutils-2.14: rebuild first half of intl/aclocal.m4.
Fixes: #65
2021-03-14 23:54:34 +00:00
Andrius Štikonas 281d5ed124 Add PS1 to interactive bash. 2021-03-14 23:27:51 +00:00
Andrius Štikonas fcc3a2ee74 Regenerate more autotools files in binutils 2.14. 2021-03-14 20:32:45 +00:00
Andrius Štikonas 69228987f5 Also bootstrap aclocal-1.4. 2021-03-14 20:32:45 +00:00
Andrius Štikonas 76d4e4ce94 Add automake 1.5. 2021-03-14 20:32:45 +00:00
Andrius Štikonas 0d14e34172 Launch interactive bash at the end of bootstrap. 2021-03-14 10:01:41 +00:00
Andrius Štikonas fe26bc4c8c Do not use pre-generated getdate.c 2021-03-13 21:31:27 +00:00
Andrius Štikonas 0b85b35da6 Rebuild libtool. 2021-03-13 00:01:30 +00:00
Andrius Štikonas 4463eedc03 Rebuild libtool files in binutils.
Fixes #58
2021-03-13 00:01:30 +00:00
Andrius Štikonas 2927547595 Add libtool 1.4. 2021-03-13 00:01:30 +00:00
Andrius Štikonas 3518f7cec0 Buil sed 4.0.9 with musl. 2021-03-13 00:01:30 +00:00
Andrius Štikonas 07dcb910b9 Fix occasional autoconf build failures. 2021-03-11 17:34:42 +00:00
Andrius Štikonas 55e2af0b22 Add dirname and env. 2021-03-10 18:53:18 +00:00
Andrius Štikonas f67ec28ed8 Perl needs fcntl to be able to run autoconf. 2021-03-09 22:58:40 +00:00
Andrius Štikonas 3969b281d6 Build perl with some modules. 2021-03-07 22:12:19 +00:00
Andrius Štikonas 8548c128b4 Simplify bash AR rule. 2021-03-06 00:07:02 +00:00
Paul Dersey cd0019e239 After building bash, call exec bash for new run2.sh script 2021-03-05 16:57:20 -05:00
Paul Dersey c0fedeba61 bash-3.2.57: Build new package to replace bash 2.05b
Resulting build now works interactively
2021-03-05 09:11:59 -05:00
Andrius Štikonas 7a4ca8e634 Rebuild tcc against new musl. 2021-03-03 20:36:12 +00:00
Andrius Štikonas f3cea25b87 Rebuild musl with fewer patches. 2021-03-03 20:36:12 +00:00
Andrius Štikonas ed0f613621 Add a patch to produce deterministic binutils archives. 2021-03-02 23:28:09 +00:00
Andrius Štikonas ecb6e4868a Be a bit more verbose when applying patches. 2021-03-02 22:02:07 +00:00
Andrius Štikonas 329f5ac73e Regenerate bfd header files. 2021-03-01 23:32:04 +00:00
Andrius Štikonas 1412fb99ec Remove flex generated files from binutils. 2021-02-28 22:32:37 +00:00
Andrius Štikonas 0be033fada Do remove empty checksum files. GNU sha256sum does not accept them. 2021-02-28 22:07:55 +00:00
Andrius Štikonas a27e7b99a7 Build sha256sum from coreutils 6.3. 2021-02-28 20:53:20 +00:00
Andrius Štikonas cb78359878 Fix libdir location. 2021-02-28 12:52:50 +00:00
Andrius Štikonas f70815aef4 Add binutils checksums 2021-02-28 12:52:33 +00:00
Andrius Štikonas 9122b5e2e0 Add description of binutils. 2021-02-28 12:52:19 +00:00
Andrius Štikonas cf9d0d1f3c Regenerate binutils bison files, autoconf and automake files. 2021-02-28 01:15:20 +00:00
Paul Dersey 21096f6ff2 start binutils 2021-02-28 01:08:00 +00:00
Andrius Štikonas 67cdd9124c Autoconf 2.12. 2021-02-27 23:51:06 +00:00
Andrius Štikonas 607991542d Add autoconf 2.13. 2021-02-27 23:51:06 +00:00
Andrius Štikonas 5be7064d5f Rebuild autoconf 2.52. 2021-02-27 23:38:21 +00:00
Andrius Štikonas b15a829675 Add automake-1.4-p6. 2021-02-27 23:38:21 +00:00
Andrius Štikonas c88e4c1ab7 Install autoconf 2.52. 2021-02-27 23:35:33 +00:00
Andrius Štikonas d7794f8f15 Create device nodes. 2021-02-27 21:06:29 +00:00
fosslinux 9f92dd2fb1
Merge pull request #51 from fosslinux/part-numbering
Change the part numbering system
2021-02-28 08:05:51 +11:00
fosslinux 8eec63e1b7 Change the part numbering system + Move to .rst
Parts have been split out into seperate file from README. Convert
README to .rst; remove part numbers from scripts.
2021-02-28 08:04:28 +11:00
Andrius Štikonas 2594242817 Install bzip2 symlinks. 2021-02-26 19:41:40 +00:00
fosslinux 40bdcee0ac
Merge pull request #50 from fosslinux/remove-blynn
Remove blynn-compiler
2021-02-26 10:13:48 +11:00
fosslinux 116cc15086 Remove blynn-compiler
(at least for now)

Reasons:

1. It takes quite a long time to build.
2. It does not currently provide any value to the bootstrap.
2021-02-26 08:53:14 +11:00
Andrius Štikonas 5626e0e976 Add Perl 5.6.2. 2021-02-25 17:41:09 +00:00
Paul Dersey a6bc93b059 helpers.sh: fix default_src_unpack for tar 1.12
tar 1.12 does not support j for bzip2 or J for xz.
Instead use --use-compress-program
2021-02-24 16:02:53 -05:00
Paul Dersey a3ec56297f Rebuild bzip2 after building tcc and musl
The tcc-mes build of bzip2 was unable to open files from stdin.
2021-02-24 16:02:47 -05:00
Andrius Štikonas 9b314af3f0 Resync part numbers between README, after.kaem.run and run.sh. 2021-02-21 16:53:19 +00:00
Andrius Štikonas d5c8698964 Reduce number of places where perl version is hardcoded. 2021-02-21 16:53:19 +00:00
Andrius Štikonas 4276dfee1d Perl 5.005_03 2021-02-21 15:45:15 +00:00
Andrius Štikonas 7e9054570e Add cp to coreutils checksums and use cp to unpack tcc sources. 2021-02-21 12:24:05 +00:00
Paul Dersey 7803089a6b Build and install cp from coreutils to replace our minimal cp
Also update tcc-musl.sh to take advantage that cp can now copy
recursively
2021-02-21 12:24:05 +00:00
Paul Dersey 756ba1702b Rebuild musl libc after building tcc-musl, and then rebuild tcc-musl
This fixes an issue with printf not printing doubles or floats
correctly, and probably other subtle issues.

tcc-musl also uses floats extensively, so rebuild it as well, to fix
some other potential issues.

Update checksums for all resulting binaries which have now changed.

Co-authored-by: fosslinux <fosslinux@aussies.space>
2021-02-21 22:25:41 +11:00
Andrius Štikonas 58fb72be92 Fix some typos. 2021-02-21 22:25:30 +11:00
Andrius Štikonas 35e68bf298 Cleanup after configure. 2021-02-21 22:25:30 +11:00
fosslinux 87b303f455 Add perl checksums
And the gawk change, fix checksums for that as well

For commit e2796e8.
2021-02-20 10:52:54 +11:00
fosslinux 77ccf06efc Implement sha256summing in bash build harness
1. Adds sha256sum stage to the bash build harness.
2. Adds a third argument to build(), the checksum file name. This is
   used where there is more than one checksum file, most notably
   in multi-stage compilations.
3. Adds checksum files to all remaining programs.
4. Adds appropriate 3rd argument where needed (coreutils, tcc-musl,
   bison).
2021-02-20 10:52:54 +11:00
fosslinux 8724c94d20 Implement sha256summing for all remaining kaem scripts 2021-02-20 10:52:54 +11:00
fosslinux d6780c9947 Recheck all of the fletcher16 using sha-2
Ensure validity at a higher bit depth
2021-02-20 10:52:54 +11:00
fosslinux 92cb05442e Add sha-2 (commit 61155d)
Unfortunatley the sha2 project does not have versioned releases so we
use the latest commit.

We have also manually added a frontend to sha-2 to allow us to invoke
it from the command line, thanks bittrof for the help!
2021-02-20 10:52:54 +11:00
fosslinux 372e08e4f9 Implement fletcher16 checksumming up to path
Uses fletcher16 from previous commits.
Next we will use sha-2 to do checksumming.
2021-02-20 10:52:54 +11:00
fosslinux 71505bc8b9 Add fletcher16 impl to mescc-tools-extra 2021-02-20 10:52:54 +11:00
Andrius Štikonas d4ddf4b79b Build Perl 5.4.50. 2021-02-18 00:04:20 +00:00
Andrius Štikonas 621b099a57 Switch to perl tarballs generated from archiving git tags. 2021-02-17 20:23:50 +00:00
Andrius Štikonas e9455c8463 Install perl 5.003 library files. 2021-02-17 00:20:51 +00:00
Andrius Štikonas 7bace0cc99 Build perl 5.003. 2021-02-16 23:49:02 +00:00
Andrius Štikonas 221b1d07ad Add perl 5.000. 2021-02-16 20:25:25 +00:00
Andrius Štikonas aa11513fdd gawk: enable bit operations. 2021-02-16 17:48:00 +00:00
fosslinux 574cba3bcb
Merge pull request #41 from pder/stdio-flush-on-exit
Flush stdio buffers on exit
2021-02-16 16:33:10 +11:00
Paul Dersey edf8a802bc Flush stdio buffers on exit
Make sure real __stdio_exit() is called on exit and not the dummy noop
versions.  This fixes the issue of truncated output when redirecting
output to a file or pipe.  It also fixes truncated output on programs
that forget to call fclose()
2021-02-15 10:09:22 -05:00
Paul Dersey 6dadfad9b8 Fix segfault in gawk due to some missing Makefile preprocessor defines 2021-02-15 10:03:21 -05:00
fosslinux ae680b79e5
Merge branch 'master' into coreutils2 2021-02-12 17:47:43 +11:00
fosslinux b7400923b6
Merge pull request #37 from stikonas/gawk
Add gawk-3.0.4.
2021-02-12 17:42:13 +11:00
Paul Dersey c2e5a1c01a musl: Force line buffering when writing to stdout
This is a workaround for an issue in which binaries compiled with our
tcc+musl toolchain can fail to write complete output when stdout is
redirected to a file or pipe.
2021-02-11 18:37:03 -05:00
Paul Dersey d5a9f4c9ea Rebuild coreutils-5.0 with tcc+musl and more utilities
Add comm, expr, date, dd, sort, uname, uniq
2021-02-11 18:35:28 -05:00
Andrius Štikonas abcc904d9d Add gawk-3.0.4. 2021-02-11 21:36:59 +00:00
Andrius Štikonas 1a93f19e9c Add bison 3.4.1. 2021-02-10 22:47:20 +00:00
fosslinux 72b1b30c9b Comply with REUSE 3.0 2021-02-08 20:00:10 +11:00
Andrius Štikonas c9a390d67c Update m4 to 1.4.7 2021-02-07 17:33:09 +00:00
Andrius Štikonas e20ce6fdca Move diffutils after musl. 2021-02-06 00:16:32 +00:00
Andrius Štikonas ec06f1363f Remove yacc, we won't need it anymore. 2021-02-05 22:57:25 +00:00
Andrius Štikonas 13b030e1ed Move grep after musl. 2021-02-05 22:57:24 +00:00
Andrius Štikonas 3e7b17c03e Update m4 from 1.4 to 1.4.4. 2021-02-05 22:56:59 +00:00
Andrius Štikonas fb522be854 Add flex 2.6.4. 2021-02-05 22:56:56 +00:00
fosslinux e9c8313458
Merge pull request #26 from stikonas/musl
Musl
2021-02-04 21:40:08 +11:00
Andrius Štikonas e0fba919a2 Build tcc-musl. 2021-02-04 08:35:50 +00:00
fosslinux f7ea086630 Add patch headers
Also cleanup the flex patch a bit
2021-02-04 16:43:20 +11:00
Andrius Štikonas 9ddc0bcee6 Add musl 1.1.24. 2021-02-03 22:09:30 +00:00
Andrius Štikonas 9d5519ad79 Unset overridden functions at the end of build function. 2021-02-03 22:09:30 +00:00
Andrius Štikonas 066d32933d Fix src_unpack not being sourced. 2021-02-03 21:30:12 +00:00
Paul Dersey b929dc84b4 Fix mes-libc crt1 to allow commands with greater than 255 arguments to run
Also reverse order of tcc-patched and mes-libc-patched stages.
2021-02-03 13:40:56 -05:00
fosslinux 9961c4b75f Remove sources/ directory 2021-01-31 21:12:53 +11:00
Andrius Štikonas d6269e2563 Build sleep and yes from coreutils. 2021-01-31 00:34:19 +00:00
Andrius Štikonas 2b8394e1f5 Build flex 2.5.14. 2021-01-30 19:47:48 +00:00
Andrius Štikonas de9548dbff Build flex 2.5.11. 2021-01-30 19:27:02 +00:00
Andrius Štikonas 707328a15c Add bash based build harness. 2021-01-30 17:56:51 +00:00
Paul Dersey 12617feabd Fix numbering of steps and update documentation 2021-01-29 16:43:10 -05:00
Paul Dersey fef663a46b coreutils: Fix build of ls 2021-01-29 16:43:05 -05:00
Paul Dersey 7c90d5bf4c Add new step mes-libc-patched 2021-01-29 16:43:01 -05:00
Paul Dersey 85ead5582e tcc-0.9.27: move code to compile libc into separate kaem script 2021-01-29 16:37:01 -05:00
Andrius Štikonas 596af33507 Rebuild bash parser. 2021-01-29 00:12:15 +00:00
Andrius Štikonas c951d76a8a Add heirloom lex. 2021-01-27 23:34:55 +00:00
Andrius Štikonas 89ca88eaea Add heirloom yacc. 2021-01-26 22:19:53 +00:00
Andrius Štikonas 3839961f78 coreutils: Also build mknod, test and true. 2021-01-21 22:55:25 +00:00
Andrius Štikonas a833a051ae Start using available coreutils. 2021-01-21 01:28:41 +00:00
Andrius Štikonas d26463ffa2 Build most utils from coreutils-5.0. 2021-01-21 01:28:41 +00:00
Andrius Štikonas e0335ce910 Install bunzip2. 2021-01-21 01:28:41 +00:00
Andrius Štikonas 089b6d6020 Build grep-2.4. 2021-01-21 01:28:41 +00:00
Andrius Štikonas 996e6f7c10 Simplify some make recipes. 2021-01-21 01:18:22 +00:00
fosslinux 329afda94d
Merge pull request #18 from pder/bash-fix-segfault
bash: fix segfault due to missing define
2021-01-20 17:14:30 +11:00
Paul Dersey 5a724fc40e bash: fix segfault due to missing define 2021-01-20 00:44:09 -05:00
fosslinux 97fd39feb2 Add cirrus CI 2021-01-20 15:30:14 +11:00
fosslinux 5a369dc783 Restructure 2021-01-20 15:24:37 +11:00
fosslinux c1454a5db6 Add bash 2.05b 2021-01-16 15:04:48 +11:00
Andrius Štikonas 86ce25478a Fix tar not to depend on bison. 2021-01-15 21:18:54 +00:00
Andrius Štikonas cf85eeae81 Remove stray definition. 2021-01-15 19:04:09 +00:00
Andrius Štikonas 54a39c2e33 Build m4-1.4. 2021-01-15 01:24:27 +00:00
Andrius Štikonas e8f545612d Add bzip2 1.0.8. 2021-01-14 23:31:26 +00:00
fosslinux a9d894317d Add make 3.80 2021-01-14 21:47:08 +11:00
fosslinux d62ed4c55a Add patched tcc
Forces static link.
2021-01-14 21:45:36 +11:00
fosslinux 1b7cb3a96d Add patch 2.5.9 2021-01-14 08:21:25 +11:00
fosslinux 612c33bcca Test sed 2021-01-13 21:38:58 +11:00
fosslinux 866909fbf7 Create empty files for tcc inside chroot 2021-01-13 21:38:34 +11:00
fosslinux f3ad93a1ae Test diffutils 2021-01-13 21:38:02 +11:00
fosslinux 98058e6b70 tcc build fix :| 2021-01-12 21:25:14 +11:00
fosslinux 0d02332b2b Couple of fixes.
- Add some commenting to rootfs.sh
- Fix the build
2021-01-12 21:21:03 +11:00
fosslinux 04ce8ebaef Use more variables 2021-01-12 16:07:29 +11:00
Andrius Štikonas 1f0d7d2f78 Add function to download source files. 2021-01-12 00:30:02 +00:00
Andrius Štikonas c4528a0dac Build diffutils 2.7. 2021-01-12 00:02:39 +00:00
Andrius Štikonas 238e9359b0 Build gzip 1.2.4. 2021-01-12 00:02:38 +00:00
Andrius Štikonas 3405518e2e Build tar 1.12. 2021-01-12 00:01:48 +00:00
Andrius Štikonas 58b85adbf9 Update sed to 4.0.7. 2021-01-11 22:00:17 +00:00
fosslinux 4b88b5a6f0 Do a bit of renaming so things are versioned 2021-01-11 17:47:13 +11:00
Andrius Štikonas d59f0f3495 Build sed 1.18. 2021-01-11 12:21:10 +11:00
fosslinux 90cd17e453 Revert "Revert "Add tcc 0.9.27""
This reverts commit 238bd677d7.

We can just specifiy -static manually.
2021-01-11 10:40:25 +11:00
fosslinux 238bd677d7 Revert "Add tcc 0.9.27"
This reverts commit 1ebbd69c79.

This requruies sed first to make a modification.
2021-01-11 10:33:09 +11:00
fosslinux ce24c8cf3c Fix (hopefully) libtcc1.a 2021-01-11 08:38:30 +11:00
Andrius Štikonas 0ee6017471 Build blynn-compiler all the way to precisely. 2021-01-10 21:55:16 +11:00
fosslinux bce6fb1e4e I dislike submodules... blynn-compiler fix 2021-01-10 21:22:57 +11:00
fosslinux 8afd19cbea Revert bad submodule change to blynn-compiler 2021-01-10 21:22:00 +11:00
fosslinux 1ebbd69c79 Add tcc 0.9.27
This is the final tcc.
2021-01-10 19:42:58 +11:00
fosslinux a527dae4bd Fix kaem patch 2021-01-10 16:02:38 +11:00
fosslinux 39e0a366be Add tcc 0.9.26
This is the first tcc, which will be used to build 0.9.26p1.

Instructions taken from bootstrap.sh in tcc-0.9.26p1. p1 denotes it has
been patched.
2021-01-10 13:21:32 +11:00
Andrius Štikonas 690bddf795 Build mes-m2. 2021-01-06 22:42:05 +00:00
Andrius Štikonas f8b283f86f Add nyacc submodule 2021-01-04 21:44:35 +00:00
Andrius Štikonas c685ec98bb Add janeke's mes (mes-m2 branch) 2021-01-04 21:43:59 +00:00
Andrius Štikonas 75fcc5d49b Bootstrap marginally in blynn-compiler. 2021-01-04 00:27:27 +00:00
Andrius Štikonas 08b7f58c54 Update mescc-tools-seed ot the latest. 2021-01-04 00:09:39 +00:00
Andrius Štikonas 8334118db5 Update blynn-compiler to latest 2021-01-03 23:51:29 +00:00
fosslinux 649d7b68dc Add mes and mescc-tools-extra
mescc-tools-extra contains two important tools:
- cp
- chmod

mes first builds itself from a mes 0.21 seed as used by guix, and then
builds a mes 0.22 and then mes 0.22 using that created mes 0.22.

It does /not/ use bootstrap.sh as we don't have a proper shell at this
point, it has been manually adapted for kaem.
2020-12-25 18:40:14 +11:00
fosslinux 2706e07556 Update blynn-compiler to latest 2020-12-24 16:00:42 +11:00
fosslinux c97ad0212f Make structure of sysa/ a bit cleaner 2020-12-23 17:02:57 +11:00
fosslinux 19b41d22f4 Move everything into sysa 2020-12-17 11:25:36 +11:00