[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Listing the tools required for Xen development/testing on x86 and Arm by the community





On Fri, Jun 2, 2023 at 1:49 AM Ayan Kumar Halder <ayankuma@xxxxxxx> wrote:
Hi Xen developers,

We are trying to better document xen project development processes and
related tools. At present, we are targeting **x86 and Arm** only.

These tools range from bug/change request tracking means, compilers,
infra, editors, code-review tools, etc which is connected in some way to
the Xen development and is being currently used by xen-devel community.

I appreciate if you can let me know anything I missed or mistaken and
the version currently being used (for some of the tools).


The Xen git tree contains a README file with some of the information that you are looking for. This link is to that file for the 4.17 release:

The README specifies specific minimum compiler versions for that Xen release.
 


1. Code management portal - xenbits (https://xenbits.xenproject.org),
gitlab (https://gitlab.com/xen-project/xen)

 

2. Project description - wiki.xenproject.org

3. Project management - gitlab

4. Code review - text based email clients (mutt, thunderbird), git-email, b4

5. Text Editors such as vim, emacs

6. Code review history - xen-devel mail archives

7. Code revision management - git

8. Xen coding language - C89, C99, Kconfig

The Xen community also has tools written in Python, OCaml, Go, and Rust.
 

9. Testing tools for Arm64 in gitlab CI

compiler - gcc-9.3.0 (Alpine 3.12)) (most commonly used version)

binutils - GNU Binutils for Debian) 2.38.9

emulator/hw - qemu-system-aarch64-6.0.0, qemuarm64 6.2.0 (From yocto,
poky disto - 4.0.5), zcu102 (**need the uboot, TF-A versions **)

dom0/domU kernel - kernel-5.19.0

rootfs - alpine-3.12-arm64-rootfs

firmware - U-Boot 2022.10

10. Testing tools for Arm in gitlab CI

compiler - arm-poky-linux-gnueabi-gcc (GCC) 11.3.0,
arm-linux-gnueabihf-gcc (Debian 12.2.0-14) 12.2.0 (most commonly used
versions)

emulator/hw - qemu-system-arm 6.2.0 (From yocto, poky disto - 4.0.5)

dom0/domU kernel - kernel-5.15.72 (from Yocto), Kernel-5.10.0-22 (from
Debian)

rootfs - alpine-minirootfs-3.15.1-armhf.tar.gz

firmware - U-Boot 2022.10

11. Testing tools for x86

compiler - gcc-9.3.0 (Alpine Linux 9.3.0), gcc (Debian 12.2.0-14)
12.2.0, clang (from Debian) (most commonly used version)

binutils - GNU ld (GNU Binutils for Debian) 2.40)

emulator/hardware - Qubes HW (**need details regarding machine,
firmware, etc**) , qemu 6.2.0 (From yocto, poky distro - 4.0.5)

dom0/domU kernel - kernel 6.1.19

rootfs - alpine-3.12-rootfs

firmware - BIOS Dasharo (coreboot+UEFI) v1.1.1 02/22/2023 , EFI v2.70 by
EDK II , SMBIOS 3.3.0 , SeaBIOS (version rel-1.16.2-0-gea1b7a0-Xen),
GRUB 2.06~rc1

12. Debugger - gdb

 There is a tools/debugger directory in the Xen git tree that contains:
 gdbsx, a gdb server for Xen, and kdd, a tool for debugging Xen with the windows kernel debugger.


13. Xen code building infra - make

14. Testing OS - CentOS 7, Ubuntu, OpenSuse, Arch Linux, Alpine 3.12.12,
Debian 10 (Buster), Fedora

( **I could not get the version info for some of these ^^^**)

Yocto and OpenEmbedded releases contain support for building Xen guest OS images suitable for testing.

Devuan, FreeBSD and OpenBSD.
 

15. Testing Infra - Gitlab runner, Docker

16. Testing tools common to all architectures - All the host OS packages

dtc, build-essential, zlib1g-dev, libncurses5-dev, libssl-dev,
python-dev, python3-dev, xorg-dev, uuid-dev, libyajl-dev, libaio-dev,
libglib2.0-dev, libpixman-1-dev, pkg-config, flex, bison, gettext,
acpica-tools, bin86, bcc, liblzma-dev, libc6-dev-i386, libnl-3-dev,
ocaml-nox, libfindlib-ocaml-dev, markdown, transfig, pandoc,
checkpolicy, wget, nasm, mkimage, uboot-tools

17. Documentation related tools - doxygen, rst.

Possibly: Sphinx
 


Did I miss anything ?

I think you have a good start!

best,
Christopher

 

Kind regards,

Ayan





 


Rackspace

Lists.xenproject.org is hosted with RackSpace, monitoring our
servers 24x7x365 and backed by RackSpace's Fanatical Support®.