Commit graph

396 commits

Author SHA1 Message Date
Anhad Singh
34153db14d
fix(prefix.mk): gcc-freestanding
Build libgcc (relibc needs it) and disable shared.

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2024-12-27 23:23:31 +11:00
Jeremy Soller
b812780a54 Merge branch 'dynamic_linking' into 'master'
fix(mk/prefix.mk): fix libtool build

See merge request redox-os/redox!1531
2024-12-22 02:21:36 +00:00
Anhad Singh
a7c06e9b72
fix(mk/prefix.mk): fix libtool build
Worked for me before as I had the old sources. Now the ltversion should
be correct and libtool should be correctly built.

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2024-12-21 20:28:11 +11:00
Jeremy Soller
0be6bddbb8 Merge branch 'dynamic_linking' into 'master'
fix(libtool): correct ltversion

See merge request redox-os/redox!1530
2024-12-20 14:25:52 +00:00
Anhad Singh
f8d2c7ed4b
fix(mk/prefix.mk): correct ltversion
The script `build-aux/git-version-gen` needs sufficient depth to
correctly determine the version. Also it has to be in tree, otherwise
the version is reported as 'UNKNOWN', breaking some packages.

Signed-off-by: Anhad Singh <andypython@protonmail.com>
2024-12-21 01:09:52 +11:00
Jeremy Soller
01737d8537 Merge branch 'qemu-rasp' into 'master'
Fix make qemu rasperry pi 3b emulation

See merge request redox-os/redox!1528
2024-12-18 18:19:07 +00:00
Andrey Turkin
6205eafd4c Fix make qemu rasperry pi 3b emulation 2024-12-16 06:50:21 +03:00
Anhad Singh
6450defff0
fix(repo.mk): set COOKBOOK_HOST_SYSROOT
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2024-12-12 00:13:27 +11:00
Anhad Singh
008160036d
feat(prefix): libtool
Signed-off-by: Anhad Singh <andypython@protonmail.com>
2024-12-02 22:21:45 +11:00
Ron Williams
e9628b64d8 Fix CI, add packages to ci.toml so desktop can build from binaries 2024-11-21 15:06:54 +00:00
Jeremy Soller
9d789178be
Make it possible to set qemu machine for aarch64 2024-10-29 08:52:10 -06:00
Jeremy Soller
ac8efee64a Build docgen and pkgar as part of fstools 2024-10-19 16:53:33 -06:00
Jeremy Soller
d79cc14f6a
Generate appstream data when building repo via CI 2024-10-15 21:14:30 -06:00
Andrey Turkin
03633046cc Riscv64gc support in the build scripts
This architecture is different from x86/aarch because its rust triplet (riscv64gc-...) differs from gcc/llvm/binutils triplet (more general riscv64-...). Therefore the build scripts have to bridge that mismatch.

This introduces new build-time environment variable GNU_TARGET which corresponds to a target used by C world utilities whereas existing TARGET now describes rust target.
2024-09-30 10:28:37 +03:00
Ribbon
56b3efa7b6 Enable Podman by default 2024-09-20 21:00:16 +00:00
IncompententPirate
ad7733c7a1 Clarify error message by adding double quotes around 'just' to reduce confusion in mk/depends.mk 2024-09-06 09:40:41 +00:00
Ron Williams
fd40776d35 Fix CI to avoid RedoxFS/FUSE/tar problems 2024-08-28 12:55:25 -07:00
Ron Williams
f51dee2ea1 Make installer compile on host, list_packages compile in Podman when PODMAN_BUILD=1 2024-08-17 23:59:37 +00:00
Ron Williams
c0ccfc1572 Don't run fetch if rebuildinga 2024-08-05 11:46:18 -07:00
Ribbon
8cd0b1af0f Rename two make options to a correct name 2024-07-20 00:47:36 +00:00
Ribbon
49102f6332 Add explanation comments on the build system files 2024-07-09 12:58:07 +00:00
Jeremy Soller
db2da8206e
Clarify qemu argument for ata disk 2024-06-14 08:59:39 -06:00
bjorn3
1448667c3d Replace separate targets for each disk kind with a make flag
A command like `make qemu_nvme` will become `make qemu disk=nvme` with
this change.

Also add support for selecting a virtio-blk disk and remove the
*_no_build targets as they didn't do anything different from the regular
targets anyway.
2024-06-13 17:17:57 +02:00
Jeremy Soller
50c9d3d2ce
Use separate copy of relibc for freestanding 2024-05-11 15:42:00 -06:00
Jeremy Soller
f9823473e2
Use target-specific folder for relibc source for freestanding build 2024-05-11 14:37:47 -06:00
Jeremy Soller
a393103334
use usb-tablet instead of usb-mouse for qemu aarch64 2024-05-08 13:08:54 -06:00
Jeremy Soller
f474b4cfb9
Disable binary prefix when not building on x86_64 Linux 2024-05-06 11:35:23 -06:00
Ron Williams
b5f22bd20f Make QEMU smp and mem options configurable 2024-04-04 13:08:10 +00:00
Jeremy Soller
ff74ae6681
Use qemu-xhci for usb on aarch64 2024-03-25 14:29:10 -06:00
bjorn3
40305c7980 Use U-Boot with QEMU again if efi=no is used
Also add a nicer error message when the firmware package is not
installed.
2024-03-20 15:43:53 +01:00
Jeremy Soller
0e892b725f
Use AAVMF for qemu virt 2024-03-19 20:28:48 -06:00
bjorn3
7043e9e932 Prevent the build cache for the installer getting clobbered
Previously it was getting built by two different toolchains (nightly
from rustup and the relibc prefix) Also some env vars differed between
both invocations causing blake3 and sodiumoxide to get rebuilt.
2024-03-17 18:54:24 +01:00
Jeremy Soller
c959953e0a Use REPO_NONSTOP in ci.mk 2024-01-28 16:17:07 +00:00
bjorn3
69364ba176 Only enable -d cpu_reset for qemu when debugging
It is only useful when debugging and otherwise just throws a whole bunch
of logs on every boot.
2024-01-25 15:22:03 +01:00
Jeremy Soller
33769cd851 Allow any just version 2024-01-12 13:04:29 -07:00
bjorn3
aa7edc6ef1 Zstd compress all images
I tried gzip, bzip2, xz and xzstd. Xz 22s for a 128MB disk image. Out of
all other options zstd was both the fastest to compress (<1s) and
produced the smallest file (28MB).
2024-01-11 21:18:21 +01:00
Jeremy Soller
dac858b84e
Default to using kvm when arch is i686 and host is x86_64 2024-01-11 09:55:54 -07:00
Jeremy Soller
17e3c17c73
Do not use prefix rustc to determine host target 2024-01-10 11:08:31 -07:00
Jeremy Soller
7de457e022
Ensure lib/rustlib/HOST_TARGET/lib exists in prefix tarballs 2024-01-10 09:53:13 -07:00
bjorn3
34acc9cb04 Don't checkout rust submodule by default
It is no longer necessary for regular builds as of the previous commit.
This will drastically improve the time it takes to do the initial clone
of redox.
2024-01-10 15:19:06 +01:00
bjorn3
da380dd368 Don't rebuild lib/rustlib/src in the rust sysroot
The prebuilt tarball already contains it now
2024-01-09 11:05:06 +01:00
bjorn3
5ce30e6da6 Somewhat simplify config.mk
* nproc exists on FreeBSD too
* REDOX_MAKE is generally make, so use that as default with per-OS
  override if necessary.
* HOST_TARGET can be fetched directly from rustc.
2024-01-08 19:24:14 +01:00
bjorn3
cf04f50d86 Use sparse files for the generated disk images on all OSes
Rather than just on macOS. This can save quite a bit of space depending
on the amount of free space on the root filesystem of the disk image.
2024-01-08 19:09:51 +01:00
Jeremy Soller
0427420717
Use installer to resolve filesystem size 2024-01-04 12:22:43 -07:00
Jeremy Soller
27c3d69aed Merge branch 'sparse_extra' into 'master'
Use sparse allocation of extra.img on Linux too

See merge request redox-os/redox!1391
2024-01-03 19:23:46 +00:00
Ron Williams
6258becc3c add nonstop, uc and ucf to build, plus scripts include-recipes.sh and show-package.sh 2024-01-03 19:15:30 +00:00
bjorn3
ffd64a8703 Use sparse allocation of extra.img on Linux too
fallocate immediately allocates the full size of the file, even though
it likely won't end up being used.
2023-12-17 12:44:32 +01:00
Ivan Tan
097c6876bf add raspi3b config 2023-12-17 10:16:42 +08:00
Jeremy Soller
1afef4aef0 Merge branch 'ivan/board_var' into 'master'
aarch64: support building Redox for different motherboard.

See merge request redox-os/redox!1388
2023-12-15 23:18:38 +00:00
4lDO2
e3013ac40b
Add checks and install cbindgen in bootstrap.sh. 2023-12-14 15:32:54 +01:00