stubs: Move qemu_timer_notify_cb() and remove qemu_notify_event() stub
[qemu.git] / docs / system / build-platforms.rst
1 .. _Supported-build-platforms:
2
3 Supported build platforms
4 =========================
5
6 QEMU aims to support building and executing on multiple host OS
7 platforms. This appendix outlines which platforms are the major build
8 targets. These platforms are used as the basis for deciding upon the
9 minimum required versions of 3rd party software QEMU depends on. The
10 supported platforms are the targets for automated testing performed by
11 the project when patches are submitted for review, and tested before and
12 after merge.
13
14 If a platform is not listed here, it does not imply that QEMU won't
15 work. If an unlisted platform has comparable software versions to a
16 listed platform, there is every expectation that it will work. Bug
17 reports are welcome for problems encountered on unlisted platforms
18 unless they are clearly older vintage than what is described here.
19
20 Note that when considering software versions shipped in distros as
21 support targets, QEMU considers only the version number, and assumes the
22 features in that distro match the upstream release with the same
23 version. In other words, if a distro backports extra features to the
24 software in their distro, QEMU upstream code will not add explicit
25 support for those backports, unless the feature is auto-detectable in a
26 manner that works for the upstream releases too.
27
28 The Repology site https://repology.org is a useful resource to identify
29 currently shipped versions of software in various operating systems,
30 though it does not cover all distros listed below.
31
32 Linux OS
33 --------
34
35 For distributions with frequent, short-lifetime releases, the project
36 will aim to support all versions that are not end of life by their
37 respective vendors. For the purposes of identifying supported software
38 versions, the project will look at Fedora, Ubuntu, and openSUSE distros.
39 Other short- lifetime distros will be assumed to ship similar software
40 versions.
41
42 For distributions with long-lifetime releases, the project will aim to
43 support the most recent major version at all times. Support for the
44 previous major version will be dropped 2 years after the new major
45 version is released, or when it reaches "end of life". For the purposes
46 of identifying supported software versions, the project will look at
47 RHEL, Debian, Ubuntu LTS, and SLES distros. Other long-lifetime distros
48 will be assumed to ship similar software versions.
49
50 Windows
51 -------
52
53 The project supports building with current versions of the MinGW
54 toolchain, hosted on Linux.
55
56 macOS
57 -----
58
59 The project supports building with the two most recent versions of
60 macOS, with the current Homebrew package set available.
61
62 FreeBSD
63 -------
64
65 The project aims to support all versions which are not end of
66 life.
67
68 NetBSD
69 ------
70
71 The project aims to support the most recent major version at all times.
72 Support for the previous major version will be dropped 2 years after the
73 new major version is released.
74
75 OpenBSD
76 -------
77
78 The project aims to support all versions which are not end of
79 life.