Commit graph

376 commits

Author SHA1 Message Date
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
Ivan Tan 584e6fb548 aarch64: support building Redox for different motherboard. 2023-12-14 12:29:20 +00:00
Jeremy Soller fb1478d9bf
Replace rebuild-recipe with make cr.recipe and make ucr.recipe 2023-12-13 14:41:38 -07:00
Jeremy Soller 7bec121856
Fix clean prefix build 2023-12-13 12:10:42 -07:00
Jeremy Soller 89749d3722
Copy relibc source to prefix to prevent problems when running multiple arch builds at once 2023-12-12 13:49:45 -07:00
Jeremy Soller 71406afe4f
Adjust i686 qemu parameters and allow kvm to be specified 2023-12-12 08:06:12 -07:00
Jeremy Soller fc90fb9e0d Merge branch 'ivan/raspi3bp' into 'master'
add command to support qemu-arm64 and qemu-raspi3b

See merge request redox-os/redox!1385
2023-12-11 16:08:52 +00:00
Ivan Tan 636df55a51 add command to support qemu-arm64 and qemu-raspi3b 2023-12-08 23:51:12 +08:00
mattmadeofpasta b86622d73b
Add just to the build dependencies 2023-11-23 21:40:00 +00:00
Ron Williams 5ad0f9900a Update config.mk to support changed option name for REPO_BINARY=1 2023-11-05 12:56:28 +00:00
bjorn3 3bea19f266 Switch qemu sound device from hda-duplex to hda-output
hda-duplex allows recording too. At least for XFCE this results in a
scary mic recording icon even when nothing inside the VM is actually
recording anything.
2023-10-18 22:51:41 +02:00
bjorn3 84bccb1d60 Build redoxfs and redoxfs-mkfs at the same time
This should be a bit faster.
2023-10-03 16:07:03 +02:00
Jeremy Soller 69183b3bd8
Clean relibc before build 2023-09-11 12:44:10 -06:00
Jeremy Soller 984823d22c
Change d.recipe to u.recipe 2023-09-11 11:22:27 -06:00
Jeremy Soller 4400396b09
Add d.package target for unfetching, update cookbook 2023-09-09 09:15:55 -06:00
Jeremy Soller 498deea753
Fix name of binutils tarball 2023-09-08 14:18:17 -06:00
Jeremy Soller 6f171b0ac0
Update binutils and gcc 2023-09-08 13:23:41 -06:00
Jeremy Soller 3a1b960bd4
Add option for virtio networking 2023-07-07 09:23:52 -06:00
Jeremy Soller 5e89a28c5a
Add vga=virtio qemu option 2023-07-07 08:47:44 -06:00
Jeremy Soller 287df06afe
Add QEMU option for rtl8139 2023-07-07 08:21:57 -06:00
uuuvn 5554ba3cd6
Allow KVM if host architecture is the same as a guest's one 2023-06-07 11:28:15 +00:00