Add xteink fork dev tooling (native flake devShell + README)
build / Vars (push) Successful in 2s
build / Build (aarch64-apple-darwin, ./.github/workflows/scripts/configure-macos.sh, ./.github/workflows/scripts/prerequisites-macos.sh, macos-14-xlarge, bash -e {0}, riscv32-softmmu) (push) Has been cancelled
build / Build (aarch64-apple-darwin, ./.github/workflows/scripts/configure-macos.sh, ./.github/workflows/scripts/prerequisites-macos.sh, macos-14-xlarge, bash -e {0}, xtensa-softmmu) (push) Has been cancelled
build / Build (debian:11.11, aarch64-linux-gnu, ./.github/workflows/scripts/configure-cross-linux-arm64.sh, ./.github/workflows/scripts/prerequisites-cross-linux-arm64.sh, ubuntu-22.04, bash -e {0}, riscv32-softmmu) (push) Has been cancelled
build / Build (debian:11.11, aarch64-linux-gnu, ./.github/workflows/scripts/configure-cross-linux-arm64.sh, ./.github/workflows/scripts/prerequisites-cross-linux-arm64.sh, ubuntu-22.04, bash -e {0}, xtensa-softmmu) (push) Has been cancelled
build / Build (debian:11.11, x86_64-linux-gnu, ./.github/workflows/scripts/configure-native.sh, ./.github/workflows/scripts/prerequisites-native.sh, ubuntu-22.04, bash -e {0}, riscv32-softmmu) (push) Has been cancelled
build / Build (debian:11.11, x86_64-linux-gnu, ./.github/workflows/scripts/configure-native.sh, ./.github/workflows/scripts/prerequisites-native.sh, ubuntu-22.04, bash -e {0}, xtensa-softmmu) (push) Has been cancelled
build / Build (x86_64-apple-darwin, ./.github/workflows/scripts/configure-macos.sh, ./.github/workflows/scripts/prerequisites-macos.sh, macos-14, bash -e {0}, riscv32-softmmu) (push) Has been cancelled
build / Build (x86_64-apple-darwin, ./.github/workflows/scripts/configure-macos.sh, ./.github/workflows/scripts/prerequisites-macos.sh, macos-14, bash -e {0}, xtensa-softmmu) (push) Has been cancelled
build / Build (x86_64-w64-mingw32, ./.github/workflows/scripts/configure-win.sh, windows-2022, msys2 {0}, riscv32-softmmu) (push) Has been cancelled
build / Build (x86_64-w64-mingw32, ./.github/workflows/scripts/configure-win.sh, windows-2022, msys2 {0}, xtensa-softmmu) (push) Has been cancelled
build / Upload (push) Has been cancelled
build / Vars (push) Successful in 2s
build / Build (aarch64-apple-darwin, ./.github/workflows/scripts/configure-macos.sh, ./.github/workflows/scripts/prerequisites-macos.sh, macos-14-xlarge, bash -e {0}, riscv32-softmmu) (push) Has been cancelled
build / Build (aarch64-apple-darwin, ./.github/workflows/scripts/configure-macos.sh, ./.github/workflows/scripts/prerequisites-macos.sh, macos-14-xlarge, bash -e {0}, xtensa-softmmu) (push) Has been cancelled
build / Build (debian:11.11, aarch64-linux-gnu, ./.github/workflows/scripts/configure-cross-linux-arm64.sh, ./.github/workflows/scripts/prerequisites-cross-linux-arm64.sh, ubuntu-22.04, bash -e {0}, riscv32-softmmu) (push) Has been cancelled
build / Build (debian:11.11, aarch64-linux-gnu, ./.github/workflows/scripts/configure-cross-linux-arm64.sh, ./.github/workflows/scripts/prerequisites-cross-linux-arm64.sh, ubuntu-22.04, bash -e {0}, xtensa-softmmu) (push) Has been cancelled
build / Build (debian:11.11, x86_64-linux-gnu, ./.github/workflows/scripts/configure-native.sh, ./.github/workflows/scripts/prerequisites-native.sh, ubuntu-22.04, bash -e {0}, riscv32-softmmu) (push) Has been cancelled
build / Build (debian:11.11, x86_64-linux-gnu, ./.github/workflows/scripts/configure-native.sh, ./.github/workflows/scripts/prerequisites-native.sh, ubuntu-22.04, bash -e {0}, xtensa-softmmu) (push) Has been cancelled
build / Build (x86_64-apple-darwin, ./.github/workflows/scripts/configure-macos.sh, ./.github/workflows/scripts/prerequisites-macos.sh, macos-14, bash -e {0}, riscv32-softmmu) (push) Has been cancelled
build / Build (x86_64-apple-darwin, ./.github/workflows/scripts/configure-macos.sh, ./.github/workflows/scripts/prerequisites-macos.sh, macos-14, bash -e {0}, xtensa-softmmu) (push) Has been cancelled
build / Build (x86_64-w64-mingw32, ./.github/workflows/scripts/configure-win.sh, windows-2022, msys2 {0}, riscv32-softmmu) (push) Has been cancelled
build / Build (x86_64-w64-mingw32, ./.github/workflows/scripts/configure-win.sh, windows-2022, msys2 {0}, xtensa-softmmu) (push) Has been cancelled
build / Upload (push) Has been cancelled
This commit is contained in:
@@ -0,0 +1,39 @@
|
|||||||
|
# xteink QEMU fork
|
||||||
|
|
||||||
|
Espressif's QEMU fork carrying the xteink X3/X4 (ESP32-C3) machine model and a
|
||||||
|
wasm32 TCG backend (ported from [ktock/qemu-wasm](https://github.com/ktock/qemu-wasm)),
|
||||||
|
used by [xteink-web-emulator](../xteink-web-emulator) to run CrossPoint firmware
|
||||||
|
in the browser.
|
||||||
|
|
||||||
|
## Branch
|
||||||
|
|
||||||
|
- `main` — the working branch. Base is Espressif's `esp-develop-9.2.2-20260417`
|
||||||
|
(`40edccac`).
|
||||||
|
|
||||||
|
## Remotes
|
||||||
|
|
||||||
|
- `origin` — https://ssh.gitea.va.reichard.io/evan/qemu-xteink
|
||||||
|
- `upstream` — https://github.com/espressif/qemu
|
||||||
|
- `qemu-wasm` — https://github.com/ktock/qemu-wasm (source of the wasm32 backend)
|
||||||
|
|
||||||
|
## Building
|
||||||
|
|
||||||
|
### Native (parity check — authoritative)
|
||||||
|
|
||||||
|
```sh
|
||||||
|
nix develop
|
||||||
|
./configure --target-list=riscv32-softmmu --with-devices-riscv32=xteink --enable-gcrypt
|
||||||
|
ninja -C build qemu-system-riscv32
|
||||||
|
```
|
||||||
|
|
||||||
|
### WebAssembly
|
||||||
|
|
||||||
|
Driven by the parent repo, not here:
|
||||||
|
|
||||||
|
```sh
|
||||||
|
cd ../xteink-web-emulator
|
||||||
|
make web-dev # incremental build straight from this tree
|
||||||
|
```
|
||||||
|
|
||||||
|
The parent's `scripts/build-qemu-wasm.sh` compiles this checkout inside the
|
||||||
|
emsdk Docker image defined in `xteink-web-emulator/qemu/wasm/Dockerfile`.
|
||||||
@@ -0,0 +1,40 @@
|
|||||||
|
{
|
||||||
|
description = "Espressif QEMU fork with the xteink X3/X4 (ESP32-C3) machine and a wasm32 TCG backend";
|
||||||
|
|
||||||
|
inputs = {
|
||||||
|
nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
|
||||||
|
flake-utils.url = "github:numtide/flake-utils";
|
||||||
|
};
|
||||||
|
|
||||||
|
outputs =
|
||||||
|
{ self, nixpkgs, flake-utils }:
|
||||||
|
flake-utils.lib.eachDefaultSystem (
|
||||||
|
system:
|
||||||
|
let
|
||||||
|
pkgs = nixpkgs.legacyPackages.${system};
|
||||||
|
in
|
||||||
|
{
|
||||||
|
# Native build/test shell. The wasm target is built by the parent
|
||||||
|
# xteink-web-emulator repo via its emsdk Docker toolchain, not here.
|
||||||
|
#
|
||||||
|
# nix develop
|
||||||
|
# ./configure --target-list=riscv32-softmmu --with-devices-riscv32=xteink \
|
||||||
|
# --enable-gcrypt && ninja -C build qemu-system-riscv32
|
||||||
|
devShells.default = pkgs.mkShell {
|
||||||
|
inputsFrom = [ pkgs.qemu ];
|
||||||
|
packages = with pkgs; [
|
||||||
|
gnumake
|
||||||
|
git
|
||||||
|
ninja
|
||||||
|
meson
|
||||||
|
pkg-config
|
||||||
|
libgcrypt
|
||||||
|
libslirp
|
||||||
|
pixman
|
||||||
|
dosfstools
|
||||||
|
mtools
|
||||||
|
];
|
||||||
|
};
|
||||||
|
}
|
||||||
|
);
|
||||||
|
}
|
||||||
Reference in New Issue
Block a user