Ravenports generated: 17 Jun 2023 22:17
[ravenports.git] / bucket_A9 / qemu
1 # Buildsheet autogenerated by ravenadm tool -- Do not edit.
2
3 NAMEBASE=               qemu
4 VERSION=                8.0.2
5 KEYWORDS=               emulators
6 VARIANTS=               standard
7 SDESC[standard]=        Fast CPU emulator and virtualizer for x86 platform
8 HOMEPAGE=               https://www.qemu.org/
9 CONTACT=                nobody
10
11 DOWNLOAD_GROUPS=        main
12 SITES[main]=            https://download.qemu.org/
13 DISTFILE[1]=            qemu-8.0.2.tar.xz:main
14 DF_INDEX=               1
15 SPKGS[standard]=        complete
16                         primary
17                         docs
18                         nls
19                         man
20
21 OPTIONS_AVAILABLE=      none
22 OPTIONS_STANDARD=       none
23
24 BUILD_DEPENDS=          gnutls:dev:standard
25                         harfbuzz:dev:standard
26                         libepoxy:dev:standard
27                         nettle:dev:standard
28                         python-Sphinx:single:python_used
29                         python-sphinx-rtd-theme:single:python_used
30                         snappy:dev:standard
31                         texi2html:primary:standard
32 BUILDRUN_DEPENDS=       cyrus-sasl:primary:standard
33                         gnutls:primary:standard
34                         libepoxy:primary:standard
35                         nettle:primary:standard
36                         snappy:primary:standard
37                         vde2:single:standard
38
39 USES=                   cpe gmake pkgconfig bison perl:build python:build
40                         jpeg png mesa ncurses makeinfo ninja curl fontconfig
41                         zstd lzo
42 GNOME_COMPONENTS=       gdkpixbuf gtk2 vte
43 SDL_COMPONENTS=         sdl2 image2
44 XORG_COMPONENTS=        x11 xext
45
46 LICENSE=                GPLv2:primary
47 LICENSE_TERMS=          primary:{{WRKSRC}}/LICENSE
48 LICENSE_FILE=           GPLv2:{{WRKSRC}}/COPYING
49 LICENSE_SCHEME=         solo
50
51 FPC_EQUIVALENT=         emulators/qemu
52
53 MUST_CONFIGURE=         yes
54 CONFIGURE_ARGS=         --disable-usb-redir
55                         --disable-stack-protector
56                         --disable-kvm
57                         --disable-xen
58                         --disable-vde
59                         --enable-docs
60                         --enable-nettle
61                         --enable-profiler
62                         --enable-curses
63                         --prefix={{PREFIX}}
64                         --cc={{CC}}
65                         --python={{PYTHON_CMD}}
66                         --localstatedir=/var
67
68 BUILD_WRKSRC=           {{WRKSRC}}/build
69 MAKE_ENV=               BSD_MAKE="{{MAKE}}"
70                         V=1
71
72 INSTALL_WRKSRC=         {{WRKSRC}}/build
73 PLIST_SUB=              JQUERY=3.6.0
74                         UNDERSCORE=1.13.1
75
76 CFLAGS=                 -I{{NCURSESBASE}}/include/ncursesw
77 VAR_OPSYS[freebsd]=     CONFIGURE_ARGS=--enable-netmap
78                         CONFIGURE_ARGS=--disable-linux-user
79                         CONFIGURE_ARGS=--disable-linux-aio
80 VAR_OPSYS[linux]=       CONFIGURE_ARGS=--disable-netmap
81                         CONFIGURE_ARGS=--disable-linux-user
82 VAR_OPSYS[dragonfly]=   CONFIGURE_ARGS=--disable-netmap
83                         CONFIGURE_ARGS=--disable-linux-user
84                         CONFIGURE_ARGS=--disable-linux-aio
85 VAR_OPSYS[midnightbsd]= CONFIGURE_ARGS=--enable-netmap
86                         CONFIGURE_ARGS=--disable-linux-user
87                         CONFIGURE_ARGS=--disable-linux-aio
88                         CONFIGURE_ARGS=--extra-ldflags=-lutil
89
90 post-patch:
91         # silence some include warnings
92         ${MKDIR} ${WRKSRC}/bsd-user/dragonfly
93         # support midnight
94         ${CP} -a ${WRKSRC}/bsd-user/freebsd ${WRKSRC}/bsd-user/midnightbsd
95
96 post-install:
97         ${INSTALL_SCRIPT} ${FILESDIR}/qemu-ifup.sample \
98                 ${STAGEDIR}${PREFIX}/etc
99         ${INSTALL_SCRIPT} ${FILESDIR}/qemu-ifdown.sample \
100                 ${STAGEDIR}${PREFIX}/etc
101         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/qemu-*
102         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/bin/elf2dmp
103         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/share/qemu/palcode-clipper
104         ${STRIP_CMD} ${STAGEDIR}${PREFIX}/share/qemu/hppa-firmware.img
105         (cd ${WRKSRC} && ${COPYTREE_SHARE} docs ${STAGEDIR}${STD_DOCDIR}/)
106         # remove sphinx leftovers
107         ${RM} -r ${STAGEDIR}${STD_DOCDIR}/docs/sphinx
108         # remove empty directories
109         ${RM} -r ${STAGEDIR}/var
110
111 pre-configure-dragonfly:
112         # On dragonfly, userland programs can't include <sys/disk.h>
113         ${REINPLACE_CMD} -e 's|sys/disk\.h|sys/skipdisk.h|' \
114                 ${WRKSRC}/meson.build
115
116 [FILE:782:descriptions/desc.primary]
117 QEMU is a fast processor emulator using dynamic translation to achieve
118 good emulation speed.  QEMU has two operating modes:
119
120  * Full system emulation. In this mode, QEMU emulates a full system (for
121    example a PC), including a processor and various peripherials.  It can
122    be used to launch different Operating Systems without rebooting the PC
123    or to debug system code.
124  * User mode emulation (Linux host only). In this mode, QEMU can launch
125    Linux processes compiled for one CPU on another CPU. It can be used to
126    launch the Wine Windows API emulator or to ease cross-compilation and
127    cross-debugging.
128
129 As QEMU requires no host kernel patches to run, it is safe and easy to use.
130
131 See also the preconfigured system images on http://oszoo.org/
132 Many live cd isos also work.
133
134
135 [FILE:96:distinfo]
136 f060abd435fbe6794125e2c398568ffc3cfa540042596907a8b18edca34cf6a5    126707132 qemu-8.0.2.tar.xz
137
138
139 [FILE:2936:manifests/plist.primary]
140 @sample etc/qemu-ifdown.sample
141 @sample etc/qemu-ifup.sample
142 %%ONLY-FREEBSD%%bin/
143  qemu-arm
144  qemu-ga
145  qemu-i386
146  qemu-x86_64
147 %%ONLY-LINUX%%bin/
148  qemu-ga
149  qemu-pr-helper
150 %%ONLY-LINUX%%libexec/qemu-bridge-helper
151 %%ONLY-MIDNIGHTBSD%%bin/
152  qemu-arm
153  qemu-i386
154  qemu-x86_64
155 bin/
156  elf2dmp
157  qemu-edid
158  qemu-img
159  qemu-io
160  qemu-nbd
161  qemu-storage-daemon
162  qemu-system-aarch64
163  qemu-system-alpha
164  qemu-system-arm
165  qemu-system-avr
166  qemu-system-cris
167  qemu-system-hppa
168  qemu-system-i386
169  qemu-system-loongarch64
170  qemu-system-m68k
171  qemu-system-microblaze
172  qemu-system-microblazeel
173  qemu-system-mips
174  qemu-system-mips64
175  qemu-system-mips64el
176  qemu-system-mipsel
177  qemu-system-nios2
178  qemu-system-or1k
179  qemu-system-ppc
180  qemu-system-ppc64
181  qemu-system-riscv32
182  qemu-system-riscv64
183  qemu-system-rx
184  qemu-system-s390x
185  qemu-system-sh4
186  qemu-system-sh4eb
187  qemu-system-sparc
188  qemu-system-sparc64
189  qemu-system-tricore
190  qemu-system-x86_64
191  qemu-system-xtensa
192  qemu-system-xtensaeb
193 include/qemu-plugin.h
194 share/applications/qemu.desktop
195 share/icons/hicolor/128x128/apps/qemu.png
196 share/icons/hicolor/16x16/apps/qemu.png
197 share/icons/hicolor/24x24/apps/qemu.png
198 share/icons/hicolor/256x256/apps/qemu.png
199 share/icons/hicolor/32x32/apps/
200  qemu.bmp
201  qemu.png
202 share/icons/hicolor/48x48/apps/qemu.png
203 share/icons/hicolor/512x512/apps/qemu.png
204 share/icons/hicolor/64x64/apps/qemu.png
205 share/icons/hicolor/scalable/apps/qemu.svg
206 share/qemu/
207  QEMU,cgthree.bin
208  QEMU,tcx.bin
209  bamboo.dtb
210  bios-256k.bin
211  bios-microvm.bin
212  bios.bin
213  canyonlands.dtb
214  edk2-aarch64-code.fd
215  edk2-arm-code.fd
216  edk2-arm-vars.fd
217  edk2-i386-code.fd
218  edk2-i386-secure-code.fd
219  edk2-i386-vars.fd
220  edk2-licenses.txt
221  edk2-x86_64-code.fd
222  edk2-x86_64-secure-code.fd
223  efi-e1000.rom
224  efi-e1000e.rom
225  efi-eepro100.rom
226  efi-ne2k_pci.rom
227  efi-pcnet.rom
228  efi-rtl8139.rom
229  efi-virtio.rom
230  efi-vmxnet3.rom
231  hppa-firmware.img
232  kvmvapic.bin
233  linuxboot.bin
234  linuxboot_dma.bin
235  multiboot.bin
236  multiboot_dma.bin
237  npcm7xx_bootrom.bin
238  openbios-ppc
239  openbios-sparc32
240  openbios-sparc64
241  opensbi-riscv32-generic-fw_dynamic.bin
242  opensbi-riscv64-generic-fw_dynamic.bin
243  palcode-clipper
244  petalogix-ml605.dtb
245  petalogix-s3adsp1800.dtb
246  pvh.bin
247  pxe-e1000.rom
248  pxe-eepro100.rom
249  pxe-ne2k_pci.rom
250  pxe-pcnet.rom
251  pxe-rtl8139.rom
252  pxe-virtio.rom
253  qboot.rom
254  qemu-nsis.bmp
255  qemu_vga.ndrv
256  s390-ccw.img
257  s390-netboot.img
258  skiboot.lid
259  slof.bin
260  trace-events-all
261  u-boot-sam460-20100605.bin
262  u-boot.e500
263  vgabios-ati.bin
264  vgabios-bochs-display.bin
265  vgabios-cirrus.bin
266  vgabios-qxl.bin
267  vgabios-ramfb.bin
268  vgabios-stdvga.bin
269  vgabios-virtio.bin
270  vgabios-vmware.bin
271  vgabios.bin
272  vof-nvram.bin
273  vof.bin
274 share/qemu/firmware/
275  50-edk2-i386-secure.json
276  50-edk2-x86_64-secure.json
277  60-edk2-aarch64.json
278  60-edk2-arm.json
279  60-edk2-i386.json
280  60-edk2-x86_64.json
281 share/qemu/keymaps/
282  ar
283  bepo
284  cz
285  da
286  de
287  de-ch
288  en-gb
289  en-us
290  es
291  et
292  fi
293  fo
294  fr
295  fr-be
296  fr-ca
297  fr-ch
298  hr
299  hu
300  is
301  it
302  ja
303  lt
304  lv
305  mk
306  nl
307  no
308  pl
309  pt
310  pt-br
311  ru
312  sl
313  sv
314  th
315  tr
316
317
318 [FILE:10515:manifests/plist.docs]
319 share/doc/qemu/
320  .buildinfo
321  dbus-dbusindex.html
322  genindex.html
323  index.html
324  objects.inv
325  search.html
326  searchindex.js
327 share/doc/qemu/_static/
328  _sphinx_javascript_frameworks_compat.js
329  basic.css
330  custom.js
331  doctools.js
332  documentation_options.js
333  file.png
334  jquery.js
335  language_data.js
336  minus.png
337  plus.png
338  pygments.css
339  qemu_128x128.png
340  qemu_32x32.png
341  searchtools.js
342  sphinx_highlight.js
343  theme_overrides.css
344 share/doc/qemu/_static/css/
345  badge_only.css
346  theme.css
347 share/doc/qemu/_static/css/fonts/
348  Roboto-Slab-Bold.woff
349  Roboto-Slab-Bold.woff2
350  Roboto-Slab-Regular.woff
351  Roboto-Slab-Regular.woff2
352  fontawesome-webfont.eot
353  fontawesome-webfont.svg
354  fontawesome-webfont.ttf
355  fontawesome-webfont.woff
356  fontawesome-webfont.woff2
357  lato-bold-italic.woff
358  lato-bold-italic.woff2
359  lato-bold.woff
360  lato-bold.woff2
361  lato-normal-italic.woff
362  lato-normal-italic.woff2
363  lato-normal.woff
364  lato-normal.woff2
365 share/doc/qemu/_static/js/
366  badge_only.js
367  html5shiv-printshiv.min.js
368  html5shiv.min.js
369  theme.js
370 share/doc/qemu/about/
371  build-platforms.html
372  deprecated.html
373  emulation.html
374  index.html
375  license.html
376  removed-features.html
377 share/doc/qemu/devel/
378  acpi-bits.html
379  atomics.html
380  bitops.html
381  block-coroutine-wrapper.html
382  build-system.html
383  ci.html
384  clocks.html
385  code-of-conduct.html
386  conflict-resolution.html
387  control-flow-integrity.html
388  decodetree.html
389  ebpf_rss.html
390  fuzzing.html
391  index-api.html
392  index-build.html
393  index-internals.html
394  index-process.html
395  index-tcg.html
396  index.html
397  kconfig.html
398  loads-stores.html
399  maintainers.html
400  memory.html
401  migration.html
402  modules.html
403  multi-process.html
404  multi-thread-tcg.html
405  qapi-code-gen.html
406  qgraph.html
407  qom.html
408  qtest.html
409  replay.html
410  reset.html
411  s390-dasd-ipl.html
412  secure-coding-practices.html
413  stable-process.html
414  style.html
415  submitting-a-patch.html
416  submitting-a-pull-request.html
417  tcg-icount.html
418  tcg-ops.html
419  tcg-plugins.html
420  tcg.html
421  testing.html
422  tracing.html
423  trivial-patches.html
424  ui.html
425  vfio-migration.html
426  virtio-backends.html
427  writing-monitor-commands.html
428 share/doc/qemu/docs/
429  COLO-FT.txt
430  block-replication.txt
431  bypass-iommu.txt
432  colo-proxy.txt
433  conf.py
434  defs.rst.inc
435  igd-assign.txt
436  image-fuzzer.txt
437  index.rst
438  memory-hotplug.txt
439  meson.build
440  multi-thread-compression.txt
441  multiseat.txt
442  nvdimm.txt
443  pci_expander_bridge.txt
444  pcie.txt
445  pcie_pci_bridge.txt
446  pcie_sriov.txt
447  pvrdma.txt
448  qcow2-cache.txt
449  qdev-device-use.txt
450  qemu-option-trace.rst.inc
451  qemupciserial.inf
452  rdma.txt
453  spice-port-fqdn.txt
454  throttle.txt
455  u2f.txt
456  xbzrle.txt
457  xen-save-devices-state.txt
458 share/doc/qemu/docs/_templates/footer.html
459 share/doc/qemu/docs/about/
460  build-platforms.rst
461  deprecated.rst
462  emulation.rst
463  index.rst
464  license.rst
465  removed-features.rst
466 share/doc/qemu/docs/config/
467  ich9-ehci-uhci.cfg
468  mach-virt-graphical.cfg
469  mach-virt-serial.cfg
470  q35-emulated.cfg
471  q35-virtio-graphical.cfg
472  q35-virtio-serial.cfg
473 share/doc/qemu/docs/devel/
474  acpi-bits.rst
475  atomics.rst
476  bitops.rst
477  blkdebug.txt
478  blkverify.txt
479  block-coroutine-wrapper.rst
480  build-system.rst
481  ci-definitions.rst.inc
482  ci-jobs.rst.inc
483  ci-runners.rst.inc
484  ci.rst
485  clocks.rst
486  code-of-conduct.rst
487  conflict-resolution.rst
488  control-flow-integrity.rst
489  decodetree.rst
490  ebpf_rss.rst
491  fuzzing.rst
492  index-api.rst
493  index-build.rst
494  index-internals.rst
495  index-process.rst
496  index-tcg.rst
497  index.rst
498  kconfig.rst
499  loads-stores.rst
500  lockcnt.txt
501  maintainers.rst
502  memory.rst
503  migration.rst
504  modules.rst
505  multi-process.rst
506  multi-thread-tcg.rst
507  multiple-iothreads.txt
508  qapi-code-gen.rst
509  qgraph.rst
510  qom.rst
511  qtest.rst
512  rcu.txt
513  replay.rst
514  reset.rst
515  s390-dasd-ipl.rst
516  secure-coding-practices.rst
517  stable-process.rst
518  style.rst
519  submitting-a-patch.rst
520  submitting-a-pull-request.rst
521  tcg-icount.rst
522  tcg-ops.rst
523  tcg-plugins.rst
524  tcg.rst
525  testing.rst
526  tracing.rst
527  trivial-patches.rst
528  ui.rst
529  vfio-migration.rst
530  virtio-backends.rst
531  virtio-migration.txt
532  writing-monitor-commands.rst
533 share/doc/qemu/docs/interop/
534  barrier.rst
535  bitmaps.rst
536  dbus-display.rst
537  dbus-vmstate.rst
538  dbus.rst
539  firmware.json
540  index.rst
541  live-block-operations.rst
542  nbd.txt
543  parallels.txt
544  pr-helper.rst
545  prl-xml.txt
546  qcow2.txt
547  qed_spec.txt
548  qemu-ga-ref.rst
549  qemu-ga.rst
550  qemu-qmp-ref.rst
551  qemu-storage-daemon-qmp-ref.rst
552  qmp-intro.txt
553  qmp-spec.txt
554  vhost-user-gpu.rst
555  vhost-user.json
556  vhost-user.rst
557  vhost-vdpa.rst
558  virtio-balloon-stats.rst
559  vnc-ledstate-pseudo-encoding.rst
560 share/doc/qemu/docs/specs/
561  acpi_cpu_hotplug.rst
562  acpi_erst.rst
563  acpi_hest_ghes.rst
564  acpi_hw_reduced_hotplug.rst
565  acpi_mem_hotplug.rst
566  acpi_nvdimm.rst
567  acpi_pci_hotplug.rst
568  edu.txt
569  fw_cfg.rst
570  index.rst
571  ivshmem-spec.txt
572  pci-ids.txt
573  pci-serial.txt
574  pci-testdev.txt
575  ppc-spapr-hcalls.rst
576  ppc-spapr-hotplug.rst
577  ppc-spapr-numa.rst
578  ppc-spapr-uv-hcalls.rst
579  ppc-spapr-xive.rst
580  ppc-xive.rst
581  pvpanic.txt
582  rocker.txt
583  sev-guest-firmware.rst
584  standard-vga.txt
585  tpm.rst
586  virt-ctlr.txt
587  vmcoreinfo.txt
588  vmgenid.txt
589  vmw_pvscsi-spec.txt
590 share/doc/qemu/docs/sphinx-static/
591  custom.js
592  theme_overrides.css
593 share/doc/qemu/docs/spin/
594  aio_notify.promela
595  aio_notify_accept.promela
596  aio_notify_bug.promela
597  tcg-exclusive.promela
598  win32-qemu-event.promela
599 share/doc/qemu/docs/system/
600  authz.rst
601  barrier.rst
602  bootindex.rst
603  confidential-guest-support.rst
604  cpu-hotplug.rst
605  cpu-models-mips.rst.inc
606  cpu-models-x86-abi.csv
607  cpu-models-x86.rst.inc
608  device-emulation.rst
609  device-url-syntax.rst.inc
610  gdb.rst
611  generic-loader.rst
612  guest-loader.rst
613  images.rst
614  index.rst
615  introduction.rst
616  invocation.rst
617  keys.rst
618  keys.rst.inc
619  linuxboot.rst
620  managed-startup.rst
621  monitor.rst
622  multi-process.rst
623  mux-chardev.rst
624  mux-chardev.rst.inc
625  pr-manager.rst
626  qemu-block-drivers.rst
627  qemu-block-drivers.rst.inc
628  qemu-cpu-models.rst
629  qemu-manpage.rst
630  replay.rst
631  secrets.rst
632  security.rst
633  target-arm.rst
634  target-avr.rst
635  target-i386-desc.rst.inc
636  target-i386.rst
637  target-m68k.rst
638  target-mips.rst
639  target-openrisc.rst
640  target-ppc.rst
641  target-riscv.rst
642  target-rx.rst
643  target-s390x.rst
644  target-sparc.rst
645  target-sparc64.rst
646  target-xtensa.rst
647  targets.rst
648  tls.rst
649  virtio-net-failover.rst
650  vnc-security.rst
651 share/doc/qemu/docs/system/arm/
652  aspeed.rst
653  collie.rst
654  cpu-features.rst
655  cubieboard.rst
656  digic.rst
657  emcraft-sf2.rst
658  emulation.rst
659  gumstix.rst
660  highbank.rst
661  imx25-pdk.rst
662  integratorcp.rst
663  kzm.rst
664  mainstone.rst
665  mps2.rst
666  musca.rst
667  musicpal.rst
668  nrf.rst
669  nseries.rst
670  nuvoton.rst
671  orangepi.rst
672  palm.rst
673  raspi.rst
674  realview.rst
675  sabrelite.rst
676  sbsa.rst
677  stellaris.rst
678  stm32.rst
679  sx1.rst
680  versatile.rst
681  vexpress.rst
682  virt.rst
683  xlnx-versal-virt.rst
684  xscale.rst
685 share/doc/qemu/docs/system/devices/
686  can.rst
687  canokey.rst
688  ccid.rst
689  cxl.rst
690  igb.rst
691  ivshmem.rst
692  net.rst
693  nvme.rst
694  usb.rst
695  vhost-user-rng.rst
696  vhost-user.rst
697  virtio-pmem.rst
698 share/doc/qemu/docs/system/i386/
699  amd-memory-encryption.rst
700  cpu.rst
701  hyperv.rst
702  kvm-pv.rst
703  microvm.rst
704  pc.rst
705  sgx.rst
706  xen.rst
707 share/doc/qemu/docs/system/loongarch/virt.rst
708 share/doc/qemu/docs/system/openrisc/
709  cpu-features.rst
710  emulation.rst
711  or1k-sim.rst
712  virt.rst
713 share/doc/qemu/docs/system/ppc/
714  embedded.rst
715  powermac.rst
716  powernv.rst
717  ppce500.rst
718  prep.rst
719  pseries.rst
720 share/doc/qemu/docs/system/riscv/
721  microchip-icicle-kit.rst
722  shakti-c.rst
723  sifive_u.rst
724  virt.rst
725 share/doc/qemu/docs/system/s390x/
726  3270.rst
727  bootdevices.rst
728  css.rst
729  pcidevices.rst
730  protvirt.rst
731  vfio-ap.rst
732  vfio-ccw.rst
733 share/doc/qemu/docs/tools/
734  index.rst
735  qemu-img.rst
736  qemu-nbd.rst
737  qemu-pr-helper.rst
738  qemu-storage-daemon.rst
739  qemu-trace-stap.rst
740  virtfs-proxy-helper.rst
741 share/doc/qemu/docs/user/
742  index.rst
743  main.rst
744 share/doc/qemu/interop/
745  barrier.html
746  bitmaps.html
747  dbus-display.html
748  dbus-vmstate.html
749  dbus.html
750  index.html
751  live-block-operations.html
752  pr-helper.html
753  qemu-ga-ref.html
754  qemu-ga.html
755  qemu-qmp-ref.html
756  qemu-storage-daemon-qmp-ref.html
757  vhost-user-gpu.html
758  vhost-user.html
759  vhost-vdpa.html
760  virtio-balloon-stats.html
761  vnc-ledstate-pseudo-encoding.html
762 share/doc/qemu/specs/
763  acpi_cpu_hotplug.html
764  acpi_erst.html
765  acpi_hest_ghes.html
766  acpi_hw_reduced_hotplug.html
767  acpi_mem_hotplug.html
768  acpi_nvdimm.html
769  acpi_pci_hotplug.html
770  fw_cfg.html
771  index.html
772  ppc-spapr-hcalls.html
773  ppc-spapr-hotplug.html
774  ppc-spapr-numa.html
775  ppc-spapr-uv-hcalls.html
776  ppc-spapr-xive.html
777  ppc-xive.html
778  sev-guest-firmware.html
779  tpm.html
780 share/doc/qemu/system/
781  authz.html
782  barrier.html
783  bootindex.html
784  confidential-guest-support.html
785  cpu-hotplug.html
786  device-emulation.html
787  gdb.html
788  generic-loader.html
789  guest-loader.html
790  images.html
791  index.html
792  introduction.html
793  invocation.html
794  keys.html
795  linuxboot.html
796  managed-startup.html
797  monitor.html
798  multi-process.html
799  mux-chardev.html
800  pr-manager.html
801  qemu-block-drivers.html
802  qemu-cpu-models.html
803  qemu-manpage.html
804  replay.html
805  secrets.html
806  security.html
807  target-arm.html
808  target-avr.html
809  target-i386.html
810  target-m68k.html
811  target-mips.html
812  target-openrisc.html
813  target-ppc.html
814  target-riscv.html
815  target-rx.html
816  target-s390x.html
817  target-sparc.html
818  target-sparc64.html
819  target-xtensa.html
820  targets.html
821  tls.html
822  virtio-net-failover.html
823  vnc-security.html
824 share/doc/qemu/system/arm/
825  aspeed.html
826  collie.html
827  cpu-features.html
828  cubieboard.html
829  digic.html
830  emcraft-sf2.html
831  emulation.html
832  gumstix.html
833  highbank.html
834  imx25-pdk.html
835  integratorcp.html
836  kzm.html
837  mainstone.html
838  mps2.html
839  musca.html
840  musicpal.html
841  nrf.html
842  nseries.html
843  nuvoton.html
844  orangepi.html
845  palm.html
846  raspi.html
847  realview.html
848  sabrelite.html
849  sbsa.html
850  stellaris.html
851  stm32.html
852  sx1.html
853  versatile.html
854  vexpress.html
855  virt.html
856  xlnx-versal-virt.html
857  xscale.html
858 share/doc/qemu/system/devices/
859  can.html
860  canokey.html
861  ccid.html
862  cxl.html
863  igb.html
864  ivshmem.html
865  net.html
866  nvme.html
867  usb.html
868  vhost-user-rng.html
869  vhost-user.html
870  virtio-pmem.html
871 share/doc/qemu/system/i386/
872  amd-memory-encryption.html
873  cpu.html
874  hyperv.html
875  kvm-pv.html
876  microvm.html
877  pc.html
878  sgx.html
879  xen.html
880 share/doc/qemu/system/loongarch/virt.html
881 share/doc/qemu/system/openrisc/
882  cpu-features.html
883  emulation.html
884  or1k-sim.html
885  virt.html
886 share/doc/qemu/system/ppc/
887  embedded.html
888  powermac.html
889  powernv.html
890  ppce500.html
891  prep.html
892  pseries.html
893 share/doc/qemu/system/riscv/
894  microchip-icicle-kit.html
895  shakti-c.html
896  sifive_u.html
897  virt.html
898 share/doc/qemu/system/s390x/
899  3270.html
900  bootdevices.html
901  css.html
902  pcidevices.html
903  protvirt.html
904  vfio-ap.html
905  vfio-ccw.html
906 share/doc/qemu/tools/
907  index.html
908  qemu-img.html
909  qemu-nbd.html
910  qemu-pr-helper.html
911  qemu-storage-daemon.html
912  qemu-trace-stap.html
913  virtfs-proxy-helper.html
914 share/doc/qemu/user/
915  index.html
916  main.html
917
918
919 [FILE:333:manifests/plist.nls]
920 share/locale/bg/LC_MESSAGES/qemu.mo
921 share/locale/de_DE/LC_MESSAGES/qemu.mo
922 share/locale/fr_FR/LC_MESSAGES/qemu.mo
923 share/locale/hu/LC_MESSAGES/qemu.mo
924 share/locale/it/LC_MESSAGES/qemu.mo
925 share/locale/sv/LC_MESSAGES/qemu.mo
926 share/locale/tr/LC_MESSAGES/qemu.mo
927 share/locale/uk/LC_MESSAGES/qemu.mo
928 share/locale/zh_CN/LC_MESSAGES/qemu.mo
929
930
931 [FILE:416:manifests/plist.man]
932 %%ONLY-FREEBSD%%share/man/man7/qemu-ga-ref.7.gz
933 %%ONLY-FREEBSD%%share/man/man8/qemu-ga.8.gz
934 %%ONLY-LINUX%%share/man/man7/qemu-ga-ref.7.gz
935 %%ONLY-LINUX%%share/man/man8/qemu-ga.8.gz
936 share/man/man1/
937  qemu-img.1.gz
938  qemu-storage-daemon.1.gz
939  qemu.1.gz
940 share/man/man7/
941  qemu-block-drivers.7.gz
942  qemu-cpu-models.7.gz
943  qemu-qmp-ref.7.gz
944  qemu-storage-daemon-qmp-ref.7.gz
945 share/man/man8/
946  qemu-nbd.8.gz
947  qemu-pr-helper.8.gz
948
949
950 [FILE:414:patches/patch-accel_tcg_translate-all.c]
951 --- accel/tcg/translate-all.c.orig      2023-05-31 01:02:04 UTC
952 +++ accel/tcg/translate-all.c
953 @@ -28,7 +28,7 @@
954  #include "qemu.h"
955  #if defined(__FreeBSD__) || defined(__FreeBSD_kernel__)
956  #include <sys/param.h>
957 -#if __FreeBSD_version >= 700104
958 +#if defined(__MidnightBSD__) || __FreeBSD_version >= 700104
959  #define HAVE_KINFO_GETVMMAP
960  #define sigqueue sigqueue_freebsd  /* avoid redefinition */
961  #include <sys/proc.h>
962
963
964 [FILE:831:patches/patch-bsd-user_freebsd_os-sys.c]
965 --- bsd-user/freebsd/os-sys.c.orig      2023-05-31 01:02:04 UTC
966 +++ bsd-user/freebsd/os-sys.c
967 @@ -426,7 +426,9 @@ static abi_long do_freebsd_sysctl_oid(CP
968              switch (snamep[1]) {
969              case CTL_SYSCTL_NEXT:
970              case CTL_SYSCTL_NAME2OID:
971 +#ifdef CTL_SYSCTL_NEXTNOSKIP
972              case CTL_SYSCTL_NEXTNOSKIP:
973 +#endif
974                  /*
975                   * All of these return an OID array, so we need to convert to
976                   * target.
977 @@ -439,7 +441,9 @@ static abi_long do_freebsd_sysctl_oid(CP
978                  sysctl_oidfmt(holdp);
979                  break;
980              case CTL_SYSCTL_OIDDESCR:
981 +#ifdef CTL_SYSCTL_OIDLABEL
982              case CTL_SYSCTL_OIDLABEL:
983 +#endif
984              default:
985                  /* Handle it based on the type */
986                  h2g_old_sysctl(holdp, &holdlen, kind);
987
988
989 [FILE:546:patches/patch-configure]
990 --- configure.orig      2023-05-31 01:02:04 UTC
991 +++ configure
992 @@ -429,6 +429,8 @@ elif check_define __sun__ ; then
993    targetos=sunos
994  elif check_define __HAIKU__ ; then
995    targetos=haiku
996 +elif check_define __MidnightBSD__ ; then
997 +  targetos=freebsd
998  elif check_define __FreeBSD__ ; then
999    targetos=freebsd
1000  elif check_define __FreeBSD_kernel__ && check_define __GLIBC__; then
1001 @@ -470,6 +472,10 @@ dragonfly)
1002    bsd="yes"
1003    make="${MAKE-gmake}"
1004  ;;
1005 +midnightbsd)
1006 +  bsd="yes"
1007 +  make="${MAKE-gmake}"
1008 +;;
1009  netbsd)
1010    bsd="yes"
1011    make="${MAKE-gmake}"
1012
1013
1014 [FILE:2507:patches/patch-meson.build]
1015 --- meson.build.orig    2023-05-31 01:02:04 UTC
1016 +++ meson.build
1017 @@ -58,8 +58,8 @@ config_host_data = configuration_data()
1018  genh = []
1019  qapi_trace_events = []
1020  
1021 -bsd_oses = ['gnu/kfreebsd', 'freebsd', 'netbsd', 'openbsd', 'dragonfly', 'darwin']
1022 -supported_oses = ['windows', 'freebsd', 'netbsd', 'openbsd', 'darwin', 'sunos', 'linux']
1023 +bsd_oses = ['midnightbsd', 'freebsd', 'netbsd', 'openbsd', 'dragonfly', 'darwin']
1024 +supported_oses = ['windows', 'freebsd', 'netbsd', 'openbsd', 'darwin', 'sunos', 'linux', 'dragonfly', 'midnightbsd']
1025  supported_cpus = ['ppc', 'ppc64', 's390x', 'riscv', 'x86', 'x86_64',
1026    'arm', 'aarch64', 'loongarch64', 'mips', 'mips64', 'sparc64']
1027  
1028 @@ -441,7 +441,7 @@ if get_option('hax').allowed()
1029      accelerators += 'CONFIG_HAX'
1030    endif
1031  endif
1032 -if targetos == 'netbsd'
1033 +if targetos in [ 'netbsd', 'dragonfly' ]
1034    nvmm = cc.find_library('nvmm', required: get_option('nvmm'))
1035    if nvmm.found()
1036      accelerators += 'CONFIG_NVMM'
1037 @@ -889,7 +889,7 @@ if have_system and get_option('curses').
1038        return 0;
1039      }'''
1040  
1041 -  curses_dep_list = targetos == 'windows' ? ['ncurses', 'ncursesw'] : ['ncursesw']
1042 +  curses_dep_list = targetos == 'windows' ? ['ncurses', 'ncursesw'] : ['ncurses']
1043    curses = dependency(curses_dep_list,
1044                        required: false,
1045                        method: 'pkg-config',
1046 @@ -912,15 +912,16 @@ if have_system and get_option('curses').
1047        has_curses_h = cc.has_header('curses.h', args: curses_compile_args)
1048      endif
1049      if has_curses_h
1050 -      curses_libname_list = (targetos == 'windows' ? ['pdcurses'] : ['ncursesw', 'cursesw'])
1051 +      libtinfo = cc.find_library('tinfo', required: false, static: enable_static)
1052 +      curses_libname_list = (targetos == 'windows' ? ['pdcurses'] : ['ncurses'])
1053        foreach curses_libname : curses_libname_list
1054          libcurses = cc.find_library(curses_libname,
1055                                      required: false,
1056                                      kwargs: static_kwargs)
1057          if libcurses.found()
1058 -          if cc.links(curses_test, args: curses_compile_args, dependencies: libcurses)
1059 +          if cc.links(curses_test, args: curses_compile_args, dependencies: [libncurses,libtinfo])
1060              curses = declare_dependency(compile_args: curses_compile_args,
1061 -                                        dependencies: [libcurses])
1062 +                                        dependencies: [libncurses, libtinfo])
1063              break
1064            else
1065              msg = 'curses library not usable'
1066
1067
1068 [FILE:385:patches/patch-meson_mesonbuild_mesonlib_universal.py]
1069 --- meson/mesonbuild/mesonlib/universal.py.orig 2023-05-31 01:02:48 UTC
1070 +++ meson/mesonbuild/mesonlib/universal.py
1071 @@ -658,7 +658,7 @@ def is_netbsd() -> bool:
1072  
1073  
1074  def is_freebsd() -> bool:
1075 -    return platform.system().lower() == 'freebsd'
1076 +    return platform.system().lower() in ('freebsd', 'midnightbsd')
1077  
1078  def is_irix() -> bool:
1079      return platform.system().startswith('irix')
1080
1081
1082 [FILE:454:patches/patch-net_tap-bsd.c]
1083 --- net/tap-bsd.c.orig  2023-05-31 01:02:04 UTC
1084 +++ net/tap-bsd.c
1085 @@ -30,9 +30,16 @@
1086  
1087  #if defined(__NetBSD__) || defined(__FreeBSD__)
1088  #include <sys/ioctl.h>
1089 +#include <sys/socket.h>
1090  #include <net/if.h>
1091  #include <net/if_tap.h>
1092  #endif
1093 +#if defined(__DragonFly)
1094 +#include <sys/ioctl.h>
1095 +#include <sys/socket.h>
1096 +#include <net/if.h>
1097 +#include <net/tap/if_tap.h>
1098 +#endif
1099  
1100  #ifndef __FreeBSD__
1101  int tap_open(char *ifname, int ifname_size, int *vnet_hdr,
1102
1103
1104 [FILE:828:patches/patch-roms_u-boot_include_compiler.h]
1105 --- roms/u-boot/include/compiler.h.orig 2023-05-31 01:02:50 UTC
1106 +++ roms/u-boot/include/compiler.h
1107 @@ -14,6 +14,7 @@
1108      defined(__NetBSD__)  || \
1109      defined(__FreeBSD__) || \
1110      defined(__sun__)    || \
1111 +    defined(__DragonFly__) || \
1112      defined(__APPLE__)
1113  # include <inttypes.h>
1114  #elif defined(__linux__) || defined(__WIN32__) || defined(__MINGW32__) || defined(__OpenBSD__)
1115 @@ -45,10 +46,10 @@
1116  #ifdef __linux__
1117  # include <endian.h>
1118  # include <byteswap.h>
1119 -#elif defined(__MACH__) || defined(__FreeBSD__)
1120 +#elif defined(__MACH__) || defined(__FreeBSD__) || defined(__DragonFly__)
1121  # include <machine/endian.h>
1122  #endif
1123 -#ifdef __FreeBSD__
1124 +#if defined(__FreeBSD__) || defined(__DragonFly__)
1125  # include <sys/endian.h> /* htole32 and friends */
1126  # define __BYTE_ORDER BYTE_ORDER
1127  # define __LITTLE_ENDIAN LITTLE_ENDIAN
1128
1129
1130 [FILE:311:patches/patch-roms_u-boot_lib_bch.c]
1131 --- roms/u-boot/lib/bch.c.orig  2023-05-31 01:02:50 UTC
1132 +++ roms/u-boot/lib/bch.c
1133 @@ -63,7 +63,7 @@
1134  #include <linux/bitops.h>
1135  #else
1136  #include <errno.h>
1137 -#if defined(__FreeBSD__)
1138 +#if defined(__FreeBSD__) || defined(__DragonFly__)
1139  #include <sys/endian.h>
1140  #elif defined(__APPLE__)
1141  #include <machine/endian.h>
1142
1143
1144 [FILE:344:patches/patch-util_getauxval.c]
1145 --- util/getauxval.c.orig       2023-05-31 01:02:03 UTC
1146 +++ util/getauxval.c
1147 @@ -98,7 +98,7 @@ unsigned long qemu_getauxval(unsigned lo
1148      return 0;
1149  }
1150  
1151 -#elif defined(__FreeBSD__)
1152 +#elif defined(__MidnightBSD__) || (defined(__FreeBSD__) && __FreeBSD_version__ > 1200001)
1153  #include <sys/auxv.h>
1154  
1155  unsigned long qemu_getauxval(unsigned long type)
1156
1157
1158 [FILE:7685:files/pkg-message-single]
1159 FreeBSD host notes
1160 ==================
1161
1162 - Needs to set net.link.tap.user_open sysctl in order to use /dev/tap*
1163   networking as non-root.  Don't forget to adjust device node permissions in
1164   /etc/devfs.rules.
1165
1166 - slirp (usermode networking) is fixed now in cvs, on FreeSBIE 1.0 guests you
1167   still have to manually do: echo nameserver 10.0.2.3 >/etc/resolv.conf but
1168   i've been told that that's normal.  (fixed on FreeSBIE 1.1.) And you have
1169   to wait a bit for dhclient to do its thing; traffic to address 10.0.2.2 is
1170   routed to 127.1 on the host.
1171
1172 - Expect timer problems when guest kernel HZ is > hosts, for example time
1173   sleep 1 takes 49 seconds and booting sleeps for minutes at the acd0 probe
1174   with a FreeSBIE 1.0 guest, thats because its kernel is built with HZ=5000,
1175   and FreeBSD's default is 100...  (no longer a problem with FreeSBIE 1.1.)
1176   The linux 2.6 kernel uses 1000 by default btw.  (changed to 250 later, and
1177   recent linux kernels now no longer have a fixed HZ, aka `tickless
1178   kernel'...)  Enabling /dev/rtc doesn't seem to help either (not included
1179   since it needs a patch to emulators/rtc.)
1180
1181 - Update: the above problem has gotten worse with FreeBSD guests
1182   somewhere before 8.0, mainly since the kernel now usually wants
1183   double or even quadruple number of timer irqs compared to HZ if
1184   it detects an apic (and at least early versions of FreeBSD 8 had
1185   a bug that essentially halved qemu's clock rate too); the only
1186   reason you usually don't see symptoms of this with FreeBSD 8
1187   guests is they automatically reduce their HZ to 100 when running
1188   in a VM while the default for the host kernel is still HZ=1000.
1189   Workaround: you can disable the apic clock in the guest by setting
1190
1191     hint.apic.0.clock="0"
1192
1193   in loader.conf(5) (or manually at the loader prompt), if that
1194   doesn't work the only things you can do is either reduce the
1195   guest's HZ to, say, 100 by setting e.g.
1196
1197     kern.hz="100"
1198
1199   from the loader as above (which usually is a good idea in a VM
1200   anyway and FreeBSD 8 now does by itself as mentioned), or otherwise
1201   increase the host's HZ to 2000 or even 4000 from the loader in
1202   the same way.
1203
1204 - The -smb option (smb-export local dir to guest using the default
1205   slirp networking) needs the samba port/package installed
1206   in addition to qemu. (SAMBA knob.)
1207
1208 - If you want to use usb devices connected to the host in the guest
1209   yot need either recent 10-current (not tested yet much) or you can
1210   use usbredir over the network (see below); also unless you are
1211   running qemu as root you then need to fix permissions for /dev/ugen*
1212   device nodes: if you are on 5.x or later (devfs) put a rule in
1213   /etc/devfs.rules, activate it in /etc/rc.conf and run /etc/rc.d/devfs
1214   restart.  Example devfs.rules:
1215
1216     [ugen_ruleset=20]
1217     add path 'ugen*' mode 660 group operator
1218
1219   corresponding rc.conf line:
1220
1221     devfs_system_ruleset="ugen_ruleset"
1222
1223 - If you want to test the new (in 0.15.0) usb network redirection (USBREDIR
1224   option) see this thread by Hans de Goede <hdegoede <at> redhat.com>:
1225
1226     http://thread.gmane.org/gmane.comp.emulators.qemu/110176/focus=110183
1227
1228   Quote:
1229
1230   Example usage:
1231
1232   1) Start usbredirserver for a usb device:
1233   sudo usbredirserver 045e:0772
1234   2) Start qemu with usb2 support + a chardev talking to usbredirserver +
1235      a usb-redir device using this chardev:
1236   qemu -usb \
1237     -readconfig docs/ich9-ehci-uhci.cfg \
1238     -chardev socket,id=usbredirchardev,host=localhost,port=4000 \
1239     -device usb-redir,chardev=usbredirchardev,id=usbredirdev ...
1240
1241   [you would replace docs/ich9-ehci-uhci.cfg with e.g.
1242   /raven/share/doc/qemu/docs/ich9-ehci-uhci.cfg, but turns out
1243   ehci was broken for me here with FreeBSD guests and the previous
1244   qemu version at least, I got:
1245
1246     FETCHENTRY: entry at 22C5484 is of type 2 which is not supported yet processing error - resetting ehci HC
1247     Assertion failed: (0), function ehci_advance_state, file /data/ports/emulators/qemu-devel/work/qemu-0.15.0/hw/usb-ehci.c, line 2045.
1248
1249   The new qemu version works better tho.]
1250
1251 - Still usb: since the hub is no longer attached to the uchi controller and
1252   the wakeup mechanism, resume interrupt is not implemented yet linux guests
1253   will suspend the bus, i.e. they wont see devices usb_add'ed after its
1254   (linux') uhci module got loaded.  Workaround: either add devices before
1255   linux loads the module or rmmod and modprobe it afterwards.  [Not sure
1256   if this still applies to the new libusb host code used on recent
1257   10-current.]
1258
1259 - If you build qemu wihout SDL and then get crashes running it try passing it
1260   -nographic.  This should probably be default in that case...
1261
1262 - qemu's network boot roms (-boot n) have a bug when bootfiles sizes are a
1263   multiple of blksize, if this affects you (like with FreeBSD's /boot/pxeboot)
1264   you can do like
1265
1266     cp /boot/pxeboot pxeboot-qemu && chmod +w pxeboot-qemu && echo >>pxeboot-qemu
1267
1268   and then use pxeboot-qemu.  Actually you need recent btx code
1269   (from after 7.0 was released) because of the real mode boot
1270   problem, so use at least pxeboot from there.  And I just did that
1271   for the pxeboot extracted out of
1272
1273     ftp://ftp.freebsd.org/pub/FreeBSD/snapshots/200805/7.0-STABLE-200805-i386-bootonly.iso
1274
1275   and placed it here:
1276
1277     http://people.freebsd.org/~nox/qemu/pxeboot-qemu
1278
1279 - If you use slirp (usernet, the default) and want to mount nfs into the guest
1280   and you are not running qemu as root, then mountd(8) on the exporting box
1281   needs to be run with -n in order to accept requests from ports >= 1024.
1282
1283 - (not FreeBSD-specific:) There have been reports of qcow2 corruption with (at
1284   least) win2k guests on recent kvm (which uses similar qcow2 code than qemu
1285   now, see this thread:
1286
1287     http://lists.gnu.org/archive/html/qemu-devel/2009-02/msg00713.html -
1288
1289   the consensus on that thread seems to be that qcow(2) code has always been
1290   experimental and you should use raw images if you want reliability; raw is
1291   also usually faster.)  You should be able to migrate existing images to raw
1292   using qemu-img(1)'s convert function; raw doesn't support advanced features
1293   like snapshots tho.  [a few important qcow2 bugfixed have been committed in
1294   the meantime so this _might_ be less of an issue now; and meanwhile there
1295   also is the new qed format - I don't know how stable that one is.]
1296
1297 - (also not FreeBSD-specific:)  It is recommended to pass raw images using the
1298   new -drive syntax, specifying format=raw explicitly in order to avoid
1299   malicious guests being able to exploit the format autodetection thats
1300   otherwise getting used.  (Not that you should run malicious guests anyway,
1301   but this eleminates at least a known attack vector.)
1302
1303 - qemu now has improved physical cdrom support, but still there is at
1304   least one known problem: you need to have the guest eject the disc if you
1305   want to change it/take it out, or otherwise the guest may continue using
1306   state (like size) of the old disc.  (You can also do like `change ide1-cd0
1307   /dev/acd0' in the monitor after taking out the disc if a guest cannot eject
1308   it itself.)
1309
1310 - The default configuration location (qemu-ifup script etc.) has been changed
1311   from /etc to PREFIX/etc (usually /raven/etc).  Move your files accordingly.
1312
1313 - The pcap code (-net nic... -net pcap,ifname=...) should work properly now,
1314   with only one exception:  Advanced features like TSO used on the host
1315   interface can cause oversize packets which now do get truncated to avoid
1316   confusing/panicing guests but of course still will cause retransmissions.
1317   So if you see slow throughput and `pcap_send: packet size > ..., truncating'
1318   messages on qemu's tty try disabling TSO etc on the host interface at least
1319   while using pcap.
1320
1321
1322 [FILE:20:files/qemu-ifdown.sample]
1323 #!/bin/sh
1324 exec true
1325
1326
1327 [FILE:20:files/qemu-ifup.sample]
1328 #!/bin/sh
1329 exec true
1330
1331
1332 [FILE:323:dragonfly/patch-hw-ppc_newworld.c]
1333 --- hw/ppc/mac_newworld.c.orig  2023-05-31 01:02:04 UTC
1334 +++ hw/ppc/mac_newworld.c
1335 @@ -75,6 +75,11 @@
1336  #include "hw/sysbus.h"
1337  #include "trace.h"
1338  
1339 +/* FreeBSD headers define this */
1340 +#ifdef round_page
1341 +#undef round_page
1342 +#endif
1343 +
1344  #define MAX_IDE_BUS 2
1345  #define CFG_ADDR 0xf0000510
1346  #define TBFREQ (100UL * 1000UL * 1000UL)
1347
1348
1349 [FILE:334:dragonfly/patch-hw_ppc_mac__oldworld.c]
1350 --- hw/ppc/mac_oldworld.c.orig  2023-05-31 01:02:04 UTC
1351 +++ hw/ppc/mac_oldworld.c
1352 @@ -66,6 +66,11 @@
1353  
1354  #define GRACKLE_BASE 0xfec00000
1355  
1356 +/* FreeBSD headers define this */
1357 +#ifdef round_page
1358 +#undef round_page
1359 +#endif
1360 +
1361  static void fw_cfg_boot_set(void *opaque, const char *boot_device,
1362                              Error **errp)
1363  {
1364
1365
1366 [FILE:906:dragonfly/patch-util_coroutine-ucontext.c]
1367 --- util/coroutine-ucontext.c.orig      2023-05-31 01:02:03 UTC
1368 +++ util/coroutine-ucontext.c
1369 @@ -225,7 +225,15 @@ Coroutine *qemu_coroutine_new(void)
1370                  2, arg.i[0], arg.i[1]);
1371  
1372      /* swapcontext() in, siglongjmp() back out */
1373 -    if (!sigsetjmp(old_env, 0)) {
1374 +    /* Save signal mask in this sigsetjmp, because makecontext on DragonFly
1375 +     * leaves all signals blocked when entering the new context with
1376 +     * swapcontext.
1377 +     * Workaround this, by just having the signal mask restored by the
1378 +     * siglongjmp that brings us back from qemu_coroutine_new().
1379 +     * XXX Remove this workaround when the makecontext behaviour is fixed
1380 +     *     on DragonFly.
1381 +     */
1382 +    if (!sigsetjmp(old_env, 1)) {
1383          start_switch_fiber_asan(COROUTINE_YIELD, &fake_stack_save, co->stack,
1384                                  co->stack_size);
1385          start_switch_fiber_tsan(&fake_stack_save,
1386