Skip to content

Commit b54839a

Browse files
committed
qemu: add old version to support nios/leon2
Keep using 0.7.0 for nios2 and leon2. Signed-off-by: Anas Nashif <[email protected]>
1 parent 4e09650 commit b54839a

File tree

3 files changed

+248
-0
lines changed

3 files changed

+248
-0
lines changed
Lines changed: 30 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,30 @@
1+
We need to be able to trigger configure's cross code but we don't want
2+
to set cross_prefix as it does other things we don't want. Patch things
3+
so we can do what we need in the target config case.
4+
5+
Upstream-Status: Inappropriate [may be rewritten in a way upstream may accept?]
6+
Signed-off-by: Richard Purdie <[email protected]>
7+
8+
9+
Index: qemu/configure
10+
===================================================================
11+
--- a/configure
12+
+++ b/configure
13+
@@ -3932,7 +3932,6 @@ if test "$skip_meson" = no; then
14+
fi
15+
echo "strip = [$(meson_quote $strip)]" >> $cross
16+
echo "windres = [$(meson_quote $windres)]" >> $cross
17+
- if test "$cross_compile" = "yes"; then
18+
cross_arg="--cross-file config-meson.cross"
19+
echo "[host_machine]" >> $cross
20+
if test "$mingw32" = "yes" ; then
21+
@@ -3964,9 +3963,6 @@ if test "$skip_meson" = no; then
22+
else
23+
echo "endian = 'little'" >> $cross
24+
fi
25+
- else
26+
- cross_arg="--native-file config-meson.cross"
27+
- fi
28+
mv $cross config-meson.cross
29+
30+
rm -rf meson-private meson-info meson-logs
Lines changed: 217 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,217 @@
1+
2+
DEPENDS = "glib-2.0 zlib pixman gnutls libtasn1 dtc ninja-native meson-native"
3+
LICENSE = "GPLv2"
4+
FILESEXTRAPATHS_prepend := "${THISDIR}/files:"
5+
LIC_FILES_CHKSUM = "file://COPYING;md5=441c28d2cf86e15a37fa47e15a72fbac \
6+
file://COPYING.LIB;endline=24;md5=8c5efda6cf1e1b03dcfd0e6c0d271c7f"
7+
8+
SRCREV = "06740e68dcb2c2ae168875a730f233f5661eb8b6"
9+
SRC_URI = "git://github.com/zephyrproject-rtos/qemu.git;protocol=https;nobranch=1 \
10+
file://cross.patch \
11+
"
12+
13+
BBCLASSEXTEND = "native nativesdk"
14+
INHIBIT_PACKAGE_DEBUG_SPLIT = "1"
15+
INHIBIT_PACKAGE_STRIP = "1"
16+
17+
S = "${WORKDIR}/git"
18+
19+
inherit autotools pkgconfig
20+
21+
# Standard options:
22+
# --prefix=PREFIX install in PREFIX [$prefix]
23+
# --interp-prefix=PREFIX where to find shared libraries, etc.
24+
# use %M for cpu name [$interp_prefix]
25+
# --target-list=LIST set target list (default: build everything)
26+
# $(echo Available targets: $default_target_list | \
27+
# fold -s -w 53 | sed -e 's/^/ /')
28+
#
29+
# Advanced options (experts only):
30+
# --source-path=PATH path of source code [$source_path]
31+
# --cross-prefix=PREFIX use PREFIX for compile tools [$cross_prefix]
32+
# --cc=CC use C compiler CC [$cc]
33+
# --iasl=IASL use ACPI compiler IASL [$iasl]
34+
# --host-cc=CC use C compiler CC [$host_cc] for code run at
35+
# build time
36+
# --cxx=CXX use C++ compiler CXX [$cxx]
37+
# --objcc=OBJCC use Objective-C compiler OBJCC [$objcc]
38+
# --extra-cflags=CFLAGS append extra C compiler flags QEMU_CFLAGS
39+
# --extra-ldflags=LDFLAGS append extra linker flags LDFLAGS
40+
# --make=MAKE use specified make [$make]
41+
# --install=INSTALL use specified install [$install]
42+
# --python=PYTHON use specified python [$python]
43+
# --smbd=SMBD use specified smbd [$smbd]
44+
# --static enable static build [$static]
45+
# --mandir=PATH install man pages in PATH
46+
# --datadir=PATH install firmware in PATH$confsuffix
47+
# --docdir=PATH install documentation in PATH$confsuffix
48+
# --bindir=PATH install binaries in PATH
49+
# --libdir=PATH install libraries in PATH
50+
# --sysconfdir=PATH install config in PATH$confsuffix
51+
# --localstatedir=PATH install local state in PATH (set at runtime on win32)
52+
# --with-confsuffix=SUFFIX suffix for QEMU data inside datadir/libdir/sysconfdir [$confsuffix]
53+
# --enable-modules enable modules support
54+
# --enable-debug-tcg enable TCG debugging
55+
# --disable-debug-tcg disable TCG debugging (default)
56+
# --enable-debug-info enable debugging information (default)
57+
# --disable-debug-info disable debugging information
58+
# --enable-debug enable common debug build options
59+
# --enable-sparse enable sparse checker
60+
# --disable-sparse disable sparse checker (default)
61+
# --disable-strip disable stripping binaries
62+
# --disable-werror disable compilation abort on warning
63+
# --disable-stack-protector disable compiler-provided stack protection
64+
# --disable-sdl disable SDL
65+
# --enable-sdl enable SDL
66+
# --with-sdlabi select preferred SDL ABI 1.2 or 2.0
67+
# --disable-gtk disable gtk UI
68+
# --enable-gtk enable gtk UI
69+
# --with-gtkabi select preferred GTK ABI 2.0 or 3.0
70+
# --disable-virtfs disable VirtFS
71+
# --enable-virtfs enable VirtFS
72+
# --disable-vnc disable VNC
73+
# --enable-vnc enable VNC
74+
# --disable-cocoa disable Cocoa (Mac OS X only)
75+
# --enable-cocoa enable Cocoa (default on Mac OS X)
76+
# --audio-drv-list=LIST set audio drivers list:
77+
# Available drivers: $audio_possible_drivers
78+
# --block-drv-whitelist=L Same as --block-drv-rw-whitelist=L
79+
# --block-drv-rw-whitelist=L
80+
# set block driver read-write whitelist
81+
# (affects only QEMU, not qemu-img)
82+
# --block-drv-ro-whitelist=L
83+
# set block driver read-only whitelist
84+
# (affects only QEMU, not qemu-img)
85+
# --disable-xen disable xen backend driver support
86+
# --enable-xen enable xen backend driver support
87+
# --disable-xen-pci-passthrough
88+
# --enable-xen-pci-passthrough
89+
# --disable-brlapi disable BrlAPI
90+
# --enable-brlapi enable BrlAPI
91+
# --disable-vnc-tls disable TLS encryption for VNC server
92+
# --enable-vnc-tls enable TLS encryption for VNC server
93+
# --disable-vnc-sasl disable SASL encryption for VNC server
94+
# --enable-vnc-sasl enable SASL encryption for VNC server
95+
# --disable-vnc-jpeg disable JPEG lossy compression for VNC server
96+
# --enable-vnc-jpeg enable JPEG lossy compression for VNC server
97+
# --disable-vnc-png disable PNG compression for VNC server (default)
98+
# --enable-vnc-png enable PNG compression for VNC server
99+
# --disable-vnc-ws disable Websockets support for VNC server
100+
# --enable-vnc-ws enable Websockets support for VNC server
101+
# --disable-curses disable curses output
102+
# --enable-curses enable curses output
103+
# --disable-curl disable curl connectivity
104+
# --enable-curl enable curl connectivity
105+
# --disable-fdt disable fdt device tree
106+
# --enable-fdt enable fdt device tree
107+
# --disable-bluez disable bluez stack connectivity
108+
# --enable-bluez enable bluez stack connectivity
109+
# --disable-slirp disable SLIRP userspace network connectivity
110+
# --disable-kvm disable KVM acceleration support
111+
# --enable-kvm enable KVM acceleration support
112+
# --disable-rdma disable RDMA-based migration support
113+
# --enable-rdma enable RDMA-based migration support
114+
# --enable-tcg-interpreter enable TCG with bytecode interpreter (TCI)
115+
# --enable-system enable all system emulation targets
116+
# --disable-system disable all system emulation targets
117+
# --enable-user enable supported user emulation targets
118+
# --disable-user disable all user emulation targets
119+
# --enable-linux-user enable all linux usermode emulation targets
120+
# --disable-linux-user disable all linux usermode emulation targets
121+
# --enable-bsd-user enable all BSD usermode emulation targets
122+
# --disable-bsd-user disable all BSD usermode emulation targets
123+
# --enable-guest-base enable GUEST_BASE support for usermode
124+
# emulation targets
125+
# --disable-guest-base disable GUEST_BASE support
126+
# --enable-pie build Position Independent Executables
127+
# --disable-pie do not build Position Independent Executables
128+
# --fmod-lib path to FMOD library
129+
# --fmod-inc path to FMOD includes
130+
# --oss-lib path to OSS library
131+
# --cpu=CPU Build for host CPU [$cpu]
132+
# --enable-uuid enable uuid support
133+
# --disable-vde disable support for vde network
134+
# --enable-vde enable support for vde network
135+
# --disable-netmap disable support for netmap network
136+
# --enable-netmap enable support for netmap network
137+
# --disable-linux-aio disable Linux AIO support
138+
# --enable-linux-aio enable Linux AIO support
139+
# --disable-cap-ng disable libcap-ng support
140+
# --enable-cap-ng enable libcap-ng support
141+
# --disable-attr disables attr and xattr support
142+
# --enable-attr enable attr and xattr support
143+
# --disable-blobs disable installing provided firmware blobs
144+
# --enable-docs enable documentation build
145+
# --disable-docs disable documentation build
146+
# --disable-vhost-net disable vhost-net acceleration support
147+
# --enable-vhost-net enable vhost-net acceleration support
148+
# --enable-trace-backends=B Set trace backend
149+
# Available backends: $($python $source_path/scripts/tracetool.py --list-backends)
150+
# --with-trace-file=NAME Full PATH,NAME of file to store traces
151+
# Default:trace-<pid>
152+
# --disable-spice disable spice
153+
# --enable-spice enable spice
154+
# --enable-rbd enable building the rados block device (rbd)
155+
# --disable-libiscsi disable iscsi support
156+
# --enable-libiscsi enable iscsi support
157+
# --disable-libnfs disable nfs support
158+
# --enable-libnfs enable nfs support
159+
# --disable-smartcard-nss disable smartcard nss support
160+
# --enable-smartcard-nss enable smartcard nss support
161+
# --disable-libusb disable libusb (for usb passthrough)
162+
# --enable-libusb enable libusb (for usb passthrough)
163+
# --disable-usb-redir disable usb network redirection support
164+
# --enable-usb-redir enable usb network redirection support
165+
# --enable-lzo enable the support of lzo compression library
166+
# --enable-snappy enable the support of snappy compression library
167+
# --disable-guest-agent disable building of the QEMU Guest Agent
168+
# --enable-guest-agent enable building of the QEMU Guest Agent
169+
# --with-vss-sdk=SDK-path enable Windows VSS support in QEMU Guest Agent
170+
# --with-win-sdk=SDK-path path to Windows Platform SDK (to build VSS .tlb)
171+
# --disable-seccomp disable seccomp support
172+
# --enable-seccomp enables seccomp support
173+
# --with-coroutine=BACKEND coroutine backend. Supported options:
174+
# gthread, ucontext, sigaltstack, windows
175+
# --disable-coroutine-pool disable coroutine freelist (worse performance)
176+
# --enable-coroutine-pool enable coroutine freelist (better performance)
177+
# --enable-glusterfs enable GlusterFS backend
178+
# --disable-glusterfs disable GlusterFS backend
179+
# --enable-gcov enable test coverage analysis with gcov
180+
# --gcov=GCOV use specified gcov [$gcov_tool]
181+
# --disable-tpm disable TPM support
182+
# --enable-tpm enable TPM support
183+
# --disable-libssh2 disable ssh block device support
184+
# --enable-libssh2 enable ssh block device support
185+
# --disable-vhdx disables support for the Microsoft VHDX image format
186+
# --enable-vhdx enable support for the Microsoft VHDX image format
187+
# --disable-quorum disable quorum block filter support
188+
# --enable-quorum enable quorum block filter support
189+
# --disable-numa disable libnuma support
190+
# --enable-numa enable libnuma support
191+
192+
193+
#--disable-blobs : BIOS needed for x86
194+
#--disable-fdt: Cannot use if supporting ARM
195+
#--disable-kvm: AArch64 has a QEMU/KVM board
196+
197+
QEMUS_BUILT = "nios2-softmmu sparc-softmmu"
198+
QEMU_FLAGS = "--disable-docs --disable-sdl --disable-debug-info --disable-cap-ng \
199+
--disable-libnfs --disable-libusb --disable-libiscsi --disable-usb-redir --disable-linux-aio\
200+
--disable-guest-agent --disable-libssh --disable-vnc-png --disable-seccomp \
201+
--disable-tpm --disable-numa --disable-glusterfs \
202+
--disable-virtfs --disable-xen --disable-curl --disable-attr --disable-curses --disable-iconv \
203+
--disable-parallels --disable-replication \
204+
--disable-live-block-migration --disable-dmg \
205+
"
206+
207+
do_configure() {
208+
${S}/configure ${QEMU_FLAGS} --target-list="${QEMUS_BUILT}" --prefix=${prefix} \
209+
--sysconfdir=${sysconfdir} --libexecdir=${libexecdir} --localstatedir=${localstatedir} \
210+
--meson=meson
211+
}
212+
213+
FILES_${PN} = " \
214+
/opt/zephyr-sdk \
215+
"
216+
217+
INSANE_SKIP_${PN} = "already-stripped"

meta-zephyr-sdk/recipes-hosttools/hosttools/hosttools-tarball.bb

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -7,6 +7,7 @@ TOOLCHAIN_TARGET_TASK ?= ""
77

88
TOOLCHAIN_HOST_TASK ?= "\
99
nativesdk-arc-qemu \
10+
nativesdk-legacy-qemu \
1011
nativesdk-zephyr-qemu \
1112
nativesdk-xilinx-qemu \
1213
nativesdk-openocd \

0 commit comments

Comments
 (0)