All of lore.kernel.org
 help / color / mirror / Atom feed
* [PATCH v6 00/15] host: Support macOS 12
@ 2022-02-15  8:02 Philippe Mathieu-Daudé via
  2022-02-15  8:02 ` [PATCH v6 01/15] MAINTAINERS: Add Akihiko Odaki to macOS-relateds Philippe Mathieu-Daudé via
                   ` (14 more replies)
  0 siblings, 15 replies; 25+ messages in thread
From: Philippe Mathieu-Daudé via @ 2022-02-15  8:02 UTC (permalink / raw)
  To: qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Cameron Esfahani, Akihiko Odaki,
	Christian Schoenebeck, Philippe Mathieu-Daudé

Few patches to be able to build QEMU on macOS 12 (Monterey).

Since v5:
- Fixed failed rebase between patches 10 and 16 (Akihiko)
- Include "ui/cocoa: Fix the leak of qemu_console_get_label"

Since v4:
- Use MAC_OS_X_VERSION_MIN_REQUIRED definition (Akihiko)
- Include patches from Akihiko

Since v3:
- Fix --enable-modules
- Ignore #pragma on softfloat3 tests
- Addressed Akihiko Odaki comments
- Include Cameron Esfahani patches

Since v2:
- Addressed Akihiko Odaki comments:
  . use __is_identifier(),
  . remove cocoa setAllowedFileTypes()
- Addressed Daniel Berrangé comment:
  . rebased on testing/next, update libvirt-ci/lcitool

Akihiko Odaki (4):
  MAINTAINERS: Add Akihiko Odaki to macOS-relateds
  ui/cocoa: Add Services menu
  ui/cocoa: Do not alert even without block devices
  ui/cocoa: Fix the leak of qemu_console_get_label

Cameron Esfahani (1):
  hvf: Use standard CR0 and CR4 register definitions

Philippe Mathieu-Daudé (10):
  configure: Allow passing extra Objective C compiler flags
  tests/fp/berkeley-testfloat-3: Ignore ignored #pragma directives
  hvf: Make hvf_get_segments() / hvf_put_segments() local
  hvf: Remove deprecated hv_vcpu_flush() calls
  block/file-posix: Remove a deprecation warning on macOS 12
  audio/coreaudio: Remove a deprecation warning on macOS 12
  audio/dbus: Fix building with modules on macOS
  ui/cocoa: Remove allowedFileTypes restriction in SavePanel
  lcitool: Refresh
  gitlab-ci: Support macOS 12 via cirrus-run

 .gitlab-ci.d/cirrus.yml                    | 16 ++++++++++
 .gitlab-ci.d/cirrus/macos-12.vars          | 16 ++++++++++
 MAINTAINERS                                |  2 ++
 audio/coreaudio.c                          | 17 +++++++----
 audio/meson.build                          |  2 +-
 block/file-posix.c                         | 14 ++++++---
 configure                                  |  8 +++++
 meson.build                                |  5 ++++
 target/i386/hvf/vmx.h                      | 19 ++++++------
 target/i386/hvf/x86.c                      |  6 ++--
 target/i386/hvf/x86.h                      | 34 ----------------------
 target/i386/hvf/x86_mmu.c                  |  2 +-
 target/i386/hvf/x86_task.c                 |  4 +--
 target/i386/hvf/x86hvf.c                   |  6 ++--
 target/i386/hvf/x86hvf.h                   |  2 --
 tests/docker/dockerfiles/ubuntu1804.docker |  2 --
 tests/docker/dockerfiles/ubuntu2004.docker |  2 --
 tests/fp/meson.build                       |  1 +
 tests/lcitool/refresh                      |  1 +
 ui/cocoa.m                                 | 19 +++++-------
 20 files changed, 95 insertions(+), 83 deletions(-)
 create mode 100644 .gitlab-ci.d/cirrus/macos-12.vars

-- 
2.34.1



^ permalink raw reply	[flat|nested] 25+ messages in thread

* [PATCH v6 01/15] MAINTAINERS: Add Akihiko Odaki to macOS-relateds
  2022-02-15  8:02 [PATCH v6 00/15] host: Support macOS 12 Philippe Mathieu-Daudé via
@ 2022-02-15  8:02 ` Philippe Mathieu-Daudé via
  2022-02-15  8:02 ` [PATCH v6 02/15] configure: Allow passing extra Objective C compiler flags Philippe Mathieu-Daudé via
                   ` (13 subsequent siblings)
  14 siblings, 0 replies; 25+ messages in thread
From: Philippe Mathieu-Daudé via @ 2022-02-15  8:02 UTC (permalink / raw)
  To: qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Cameron Esfahani, Akihiko Odaki,
	Christian Schoenebeck, Philippe Mathieu-Daudé

From: Akihiko Odaki <akihiko.odaki@gmail.com>

Signed-off-by: Akihiko Odaki <akihiko.odaki@gmail.com>
Reviewed-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20220213021215.1974-1-akihiko.odaki@gmail.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 MAINTAINERS | 2 ++
 1 file changed, 2 insertions(+)

diff --git a/MAINTAINERS b/MAINTAINERS
index b0b845f445..ce6f4f9228 100644
--- a/MAINTAINERS
+++ b/MAINTAINERS
@@ -2406,6 +2406,7 @@ F: audio/alsaaudio.c
 Core Audio framework backend
 M: Gerd Hoffmann <kraxel@redhat.com>
 R: Christian Schoenebeck <qemu_oss@crudebyte.com>
+R: Akihiko Odaki <akihiko.odaki@gmail.com>
 S: Odd Fixes
 F: audio/coreaudio.c
 
@@ -2658,6 +2659,7 @@ F: util/drm.c
 
 Cocoa graphics
 M: Peter Maydell <peter.maydell@linaro.org>
+R: Akihiko Odaki <akihiko.odaki@gmail.com>
 S: Odd Fixes
 F: ui/cocoa.m
 
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH v6 02/15] configure: Allow passing extra Objective C compiler flags
  2022-02-15  8:02 [PATCH v6 00/15] host: Support macOS 12 Philippe Mathieu-Daudé via
  2022-02-15  8:02 ` [PATCH v6 01/15] MAINTAINERS: Add Akihiko Odaki to macOS-relateds Philippe Mathieu-Daudé via
@ 2022-02-15  8:02 ` Philippe Mathieu-Daudé via
  2022-02-18 18:08   ` Akihiko Odaki
  2022-02-15  8:02 ` [PATCH v6 03/15] tests/fp/berkeley-testfloat-3: Ignore ignored #pragma directives Philippe Mathieu-Daudé via
                   ` (12 subsequent siblings)
  14 siblings, 1 reply; 25+ messages in thread
From: Philippe Mathieu-Daudé via @ 2022-02-15  8:02 UTC (permalink / raw)
  To: qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Cameron Esfahani, Akihiko Odaki,
	Christian Schoenebeck, Philippe Mathieu-Daudé

We can pass C/CPP/LD flags via CFLAGS/CXXFLAGS/LDFLAGS environment
variables, or via configure --extra-cflags / --extra-cxxflags /
--extra-ldflags options. Provide similar behavior for Objective C:
use existing flags from $OBJCFLAGS, or passed via --extra-objcflags.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 configure   | 8 ++++++++
 meson.build | 5 +++++
 2 files changed, 13 insertions(+)

diff --git a/configure b/configure
index 3a29eff5cc..06c03cebd3 100755
--- a/configure
+++ b/configure
@@ -287,6 +287,7 @@ done
 
 EXTRA_CFLAGS=""
 EXTRA_CXXFLAGS=""
+EXTRA_OBJCFLAGS=""
 EXTRA_LDFLAGS=""
 
 xen_ctrl_version="$default_feature"
@@ -391,9 +392,12 @@ for opt do
   --extra-cflags=*)
     EXTRA_CFLAGS="$EXTRA_CFLAGS $optarg"
     EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS $optarg"
+    EXTRA_OBJCFLAGS="$EXTRA_OBJCFLAGS $optarg"
     ;;
   --extra-cxxflags=*) EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS $optarg"
   ;;
+  --extra-objcflags=*) EXTRA_OBJCFLAGS="$EXTRA_OBJCFLAGS $optarg"
+  ;;
   --extra-ldflags=*) EXTRA_LDFLAGS="$EXTRA_LDFLAGS $optarg"
   ;;
   --enable-debug-info) debug_info="yes"
@@ -774,6 +778,8 @@ for opt do
   ;;
   --extra-cxxflags=*)
   ;;
+  --extra-objcflags=*)
+  ;;
   --extra-ldflags=*)
   ;;
   --enable-debug-info)
@@ -1312,6 +1318,7 @@ Advanced options (experts only):
   --objcc=OBJCC            use Objective-C compiler OBJCC [$objcc]
   --extra-cflags=CFLAGS    append extra C compiler flags CFLAGS
   --extra-cxxflags=CXXFLAGS append extra C++ compiler flags CXXFLAGS
+  --extra-objcflags=OBJCFLAGS append extra Objective C compiler flags OBJCFLAGS
   --extra-ldflags=LDFLAGS  append extra linker flags LDFLAGS
   --cross-cc-ARCH=CC       use compiler when building ARCH guest test cases
   --cross-cc-cflags-ARCH=  use compiler flags when building ARCH guest tests
@@ -3724,6 +3731,7 @@ if test "$skip_meson" = no; then
   echo "[built-in options]" >> $cross
   echo "c_args = [$(meson_quote $CFLAGS $EXTRA_CFLAGS)]" >> $cross
   echo "cpp_args = [$(meson_quote $CXXFLAGS $EXTRA_CXXFLAGS)]" >> $cross
+  test -n "$objcc" && echo "objc_args = [$(meson_quote $OBJCFLAGS $EXTRA_OBJCFLAGS)]" >> $cross
   echo "c_link_args = [$(meson_quote $CFLAGS $LDFLAGS $EXTRA_CFLAGS $EXTRA_LDFLAGS)]" >> $cross
   echo "cpp_link_args = [$(meson_quote $CXXFLAGS $LDFLAGS $EXTRA_CXXFLAGS $EXTRA_LDFLAGS)]" >> $cross
   echo "[binaries]" >> $cross
diff --git a/meson.build b/meson.build
index ae5f7eec6e..df25e7a5e7 100644
--- a/meson.build
+++ b/meson.build
@@ -3292,6 +3292,11 @@ if link_language == 'cpp'
                                                + ['-O' + get_option('optimization')]
                                                + (get_option('debug') ? ['-g'] : []))}
 endif
+if targetos == 'darwin'
+  summary_info += {'OBJCFLAGS':       ' '.join(get_option('objc_args')
+                                               + ['-O' + get_option('optimization')]
+                                               + (get_option('debug') ? ['-g'] : []))}
+endif
 link_args = get_option(link_language + '_link_args')
 if link_args.length() > 0
   summary_info += {'LDFLAGS':         ' '.join(link_args)}
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH v6 03/15] tests/fp/berkeley-testfloat-3: Ignore ignored #pragma directives
  2022-02-15  8:02 [PATCH v6 00/15] host: Support macOS 12 Philippe Mathieu-Daudé via
  2022-02-15  8:02 ` [PATCH v6 01/15] MAINTAINERS: Add Akihiko Odaki to macOS-relateds Philippe Mathieu-Daudé via
  2022-02-15  8:02 ` [PATCH v6 02/15] configure: Allow passing extra Objective C compiler flags Philippe Mathieu-Daudé via
@ 2022-02-15  8:02 ` Philippe Mathieu-Daudé via
  2022-02-18 18:09   ` Akihiko Odaki
  2022-02-15  8:02 ` [PATCH v6 04/15] hvf: Use standard CR0 and CR4 register definitions Philippe Mathieu-Daudé via
                   ` (11 subsequent siblings)
  14 siblings, 1 reply; 25+ messages in thread
From: Philippe Mathieu-Daudé via @ 2022-02-15  8:02 UTC (permalink / raw)
  To: qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Cameron Esfahani, Akihiko Odaki,
	Christian Schoenebeck, Philippe Mathieu-Daudé

Since we already use -Wno-unknown-pragmas, we can also use
-Wno-ignored-pragmas. This silences hundred of warnings using
clang 13 on macOS Monterey:

  [409/771] Compiling C object tests/fp/libtestfloat.a.p/berkeley-testfloat-3_source_test_az_f128_rx.c.o
  ../tests/fp/berkeley-testfloat-3/source/test_az_f128_rx.c:49:14: warning: '#pragma FENV_ACCESS' is not supported on this target - ignored [-Wignored-pragmas]
  #pragma STDC FENV_ACCESS ON
               ^
  1 warning generated.

Having:

  $ cc -v
  Apple clang version 13.0.0 (clang-1300.0.29.30)

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 tests/fp/meson.build | 1 +
 1 file changed, 1 insertion(+)

diff --git a/tests/fp/meson.build b/tests/fp/meson.build
index 59776a00a7..5192264a08 100644
--- a/tests/fp/meson.build
+++ b/tests/fp/meson.build
@@ -30,6 +30,7 @@ tfcflags = [
   '-Wno-implicit-fallthrough',
   '-Wno-strict-prototypes',
   '-Wno-unknown-pragmas',
+  '-Wno-ignored-pragmas',
   '-Wno-uninitialized',
   '-Wno-missing-prototypes',
   '-Wno-return-type',
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH v6 04/15] hvf: Use standard CR0 and CR4 register definitions
  2022-02-15  8:02 [PATCH v6 00/15] host: Support macOS 12 Philippe Mathieu-Daudé via
                   ` (2 preceding siblings ...)
  2022-02-15  8:02 ` [PATCH v6 03/15] tests/fp/berkeley-testfloat-3: Ignore ignored #pragma directives Philippe Mathieu-Daudé via
@ 2022-02-15  8:02 ` Philippe Mathieu-Daudé via
  2022-02-15  8:02 ` [PATCH v6 05/15] hvf: Make hvf_get_segments() / hvf_put_segments() local Philippe Mathieu-Daudé via
                   ` (10 subsequent siblings)
  14 siblings, 0 replies; 25+ messages in thread
From: Philippe Mathieu-Daudé via @ 2022-02-15  8:02 UTC (permalink / raw)
  To: qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Cameron Esfahani, Akihiko Odaki,
	Christian Schoenebeck, Philippe Mathieu-Daudé,
	Philippe Mathieu-Daudé

From: Cameron Esfahani <dirty@apple.com>

No need to have our own definitions of these registers.

Signed-off-by: Cameron Esfahani <dirty@apple.com>
Reviewed-by: Philippe Mathieu-Daudé <philmd@redhat.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 target/i386/hvf/vmx.h      | 17 +++++++++--------
 target/i386/hvf/x86.c      |  6 +++---
 target/i386/hvf/x86.h      | 34 ----------------------------------
 target/i386/hvf/x86_mmu.c  |  2 +-
 target/i386/hvf/x86_task.c |  3 ++-
 5 files changed, 15 insertions(+), 47 deletions(-)

diff --git a/target/i386/hvf/vmx.h b/target/i386/hvf/vmx.h
index 6df87116f6..29b7deed3c 100644
--- a/target/i386/hvf/vmx.h
+++ b/target/i386/hvf/vmx.h
@@ -124,10 +124,11 @@ static inline void macvm_set_cr0(hv_vcpuid_t vcpu, uint64_t cr0)
     uint64_t efer = rvmcs(vcpu, VMCS_GUEST_IA32_EFER);
     uint64_t old_cr0 = rvmcs(vcpu, VMCS_GUEST_CR0);
     uint64_t changed_cr0 = old_cr0 ^ cr0;
-    uint64_t mask = CR0_PG | CR0_CD | CR0_NW | CR0_NE | CR0_ET;
+    uint64_t mask = CR0_PG_MASK | CR0_CD_MASK | CR0_NW_MASK |
+                    CR0_NE_MASK | CR0_ET_MASK;
     uint64_t entry_ctls;
 
-    if ((cr0 & CR0_PG) && (rvmcs(vcpu, VMCS_GUEST_CR4) & CR4_PAE) &&
+    if ((cr0 & CR0_PG_MASK) && (rvmcs(vcpu, VMCS_GUEST_CR4) & CR4_PAE_MASK) &&
         !(efer & MSR_EFER_LME)) {
         address_space_read(&address_space_memory,
                            rvmcs(vcpu, VMCS_GUEST_CR3) & ~0x1f,
@@ -142,8 +143,8 @@ static inline void macvm_set_cr0(hv_vcpuid_t vcpu, uint64_t cr0)
     wvmcs(vcpu, VMCS_CR0_SHADOW, cr0);
 
     if (efer & MSR_EFER_LME) {
-        if (changed_cr0 & CR0_PG) {
-            if (cr0 & CR0_PG) {
+        if (changed_cr0 & CR0_PG_MASK) {
+            if (cr0 & CR0_PG_MASK) {
                 enter_long_mode(vcpu, cr0, efer);
             } else {
                 exit_long_mode(vcpu, cr0, efer);
@@ -155,8 +156,8 @@ static inline void macvm_set_cr0(hv_vcpuid_t vcpu, uint64_t cr0)
     }
 
     /* Filter new CR0 after we are finished examining it above. */
-    cr0 = (cr0 & ~(mask & ~CR0_PG));
-    wvmcs(vcpu, VMCS_GUEST_CR0, cr0 | CR0_NE | CR0_ET);
+    cr0 = (cr0 & ~(mask & ~CR0_PG_MASK));
+    wvmcs(vcpu, VMCS_GUEST_CR0, cr0 | CR0_NE_MASK | CR0_ET_MASK);
 
     hv_vcpu_invalidate_tlb(vcpu);
     hv_vcpu_flush(vcpu);
@@ -164,11 +165,11 @@ static inline void macvm_set_cr0(hv_vcpuid_t vcpu, uint64_t cr0)
 
 static inline void macvm_set_cr4(hv_vcpuid_t vcpu, uint64_t cr4)
 {
-    uint64_t guest_cr4 = cr4 | CR4_VMXE;
+    uint64_t guest_cr4 = cr4 | CR4_VMXE_MASK;
 
     wvmcs(vcpu, VMCS_GUEST_CR4, guest_cr4);
     wvmcs(vcpu, VMCS_CR4_SHADOW, cr4);
-    wvmcs(vcpu, VMCS_CR4_MASK, CR4_VMXE);
+    wvmcs(vcpu, VMCS_CR4_MASK, CR4_VMXE_MASK);
 
     hv_vcpu_invalidate_tlb(vcpu);
     hv_vcpu_flush(vcpu);
diff --git a/target/i386/hvf/x86.c b/target/i386/hvf/x86.c
index 2898bb70a8..91a3fe002c 100644
--- a/target/i386/hvf/x86.c
+++ b/target/i386/hvf/x86.c
@@ -119,7 +119,7 @@ bool x86_read_call_gate(struct CPUState *cpu, struct x86_call_gate *idt_desc,
 bool x86_is_protected(struct CPUState *cpu)
 {
     uint64_t cr0 = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR0);
-    return cr0 & CR0_PE;
+    return cr0 & CR0_PE_MASK;
 }
 
 bool x86_is_real(struct CPUState *cpu)
@@ -150,13 +150,13 @@ bool x86_is_long64_mode(struct CPUState *cpu)
 bool x86_is_paging_mode(struct CPUState *cpu)
 {
     uint64_t cr0 = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR0);
-    return cr0 & CR0_PG;
+    return cr0 & CR0_PG_MASK;
 }
 
 bool x86_is_pae_enabled(struct CPUState *cpu)
 {
     uint64_t cr4 = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR4);
-    return cr4 & CR4_PAE;
+    return cr4 & CR4_PAE_MASK;
 }
 
 target_ulong linear_addr(struct CPUState *cpu, target_ulong addr, X86Seg seg)
diff --git a/target/i386/hvf/x86.h b/target/i386/hvf/x86.h
index 782664c2ea..947b98da41 100644
--- a/target/i386/hvf/x86.h
+++ b/target/i386/hvf/x86.h
@@ -42,40 +42,6 @@ typedef struct x86_register {
     };
 } __attribute__ ((__packed__)) x86_register;
 
-typedef enum x86_reg_cr0 {
-    CR0_PE =            (1L << 0),
-    CR0_MP =            (1L << 1),
-    CR0_EM =            (1L << 2),
-    CR0_TS =            (1L << 3),
-    CR0_ET =            (1L << 4),
-    CR0_NE =            (1L << 5),
-    CR0_WP =            (1L << 16),
-    CR0_AM =            (1L << 18),
-    CR0_NW =            (1L << 29),
-    CR0_CD =            (1L << 30),
-    CR0_PG =            (1L << 31),
-} x86_reg_cr0;
-
-typedef enum x86_reg_cr4 {
-    CR4_VME =            (1L << 0),
-    CR4_PVI =            (1L << 1),
-    CR4_TSD =            (1L << 2),
-    CR4_DE  =            (1L << 3),
-    CR4_PSE =            (1L << 4),
-    CR4_PAE =            (1L << 5),
-    CR4_MSE =            (1L << 6),
-    CR4_PGE =            (1L << 7),
-    CR4_PCE =            (1L << 8),
-    CR4_OSFXSR =         (1L << 9),
-    CR4_OSXMMEXCPT =     (1L << 10),
-    CR4_VMXE =           (1L << 13),
-    CR4_SMXE =           (1L << 14),
-    CR4_FSGSBASE =       (1L << 16),
-    CR4_PCIDE =          (1L << 17),
-    CR4_OSXSAVE =        (1L << 18),
-    CR4_SMEP =           (1L << 20),
-} x86_reg_cr4;
-
 /* 16 bit Task State Segment */
 typedef struct x86_tss_segment16 {
     uint16_t link;
diff --git a/target/i386/hvf/x86_mmu.c b/target/i386/hvf/x86_mmu.c
index e9ed0f5aa1..df0b91cd42 100644
--- a/target/i386/hvf/x86_mmu.c
+++ b/target/i386/hvf/x86_mmu.c
@@ -129,7 +129,7 @@ static bool test_pt_entry(struct CPUState *cpu, struct gpt_translation *pt,
 
     uint32_t cr0 = rvmcs(cpu->hvf->fd, VMCS_GUEST_CR0);
     /* check protection */
-    if (cr0 & CR0_WP) {
+    if (cr0 & CR0_WP_MASK) {
         if (pt->write_access && !pte_write_access(pte)) {
             return false;
         }
diff --git a/target/i386/hvf/x86_task.c b/target/i386/hvf/x86_task.c
index 422156128b..e1301599e9 100644
--- a/target/i386/hvf/x86_task.c
+++ b/target/i386/hvf/x86_task.c
@@ -174,7 +174,8 @@ void vmx_handle_task_switch(CPUState *cpu, x68_segment_selector tss_sel, int rea
         //ret = task_switch_16(cpu, tss_sel, old_tss_sel, old_tss_base, &next_tss_desc);
         VM_PANIC("task_switch_16");
 
-    macvm_set_cr0(cpu->hvf->fd, rvmcs(cpu->hvf->fd, VMCS_GUEST_CR0) | CR0_TS);
+    macvm_set_cr0(cpu->hvf->fd, rvmcs(cpu->hvf->fd, VMCS_GUEST_CR0) |
+                                CR0_TS_MASK);
     x86_segment_descriptor_to_vmx(cpu, tss_sel, &next_tss_desc, &vmx_seg);
     vmx_write_segment_descriptor(cpu, &vmx_seg, R_TR);
 
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH v6 05/15] hvf: Make hvf_get_segments() / hvf_put_segments() local
  2022-02-15  8:02 [PATCH v6 00/15] host: Support macOS 12 Philippe Mathieu-Daudé via
                   ` (3 preceding siblings ...)
  2022-02-15  8:02 ` [PATCH v6 04/15] hvf: Use standard CR0 and CR4 register definitions Philippe Mathieu-Daudé via
@ 2022-02-15  8:02 ` Philippe Mathieu-Daudé via
  2022-02-15  8:02 ` [PATCH v6 06/15] hvf: Remove deprecated hv_vcpu_flush() calls Philippe Mathieu-Daudé via
                   ` (9 subsequent siblings)
  14 siblings, 0 replies; 25+ messages in thread
From: Philippe Mathieu-Daudé via @ 2022-02-15  8:02 UTC (permalink / raw)
  To: qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Cameron Esfahani, Akihiko Odaki,
	Christian Schoenebeck, Philippe Mathieu-Daudé

Both hvf_get_segments/hvf_put_segments() functions are only
used within x86hvf.c: do not declare them as public API.

Reviewed-by: Roman Bolshakov <r.bolshakov@yadro.com>
Tested-by: Roman Bolshakov <r.bolshakov@yadro.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 target/i386/hvf/x86hvf.c | 4 ++--
 target/i386/hvf/x86hvf.h | 2 --
 2 files changed, 2 insertions(+), 4 deletions(-)

diff --git a/target/i386/hvf/x86hvf.c b/target/i386/hvf/x86hvf.c
index 05ec1bddc4..907f09f1b4 100644
--- a/target/i386/hvf/x86hvf.c
+++ b/target/i386/hvf/x86hvf.c
@@ -83,7 +83,7 @@ void hvf_put_xsave(CPUState *cpu_state)
     }
 }
 
-void hvf_put_segments(CPUState *cpu_state)
+static void hvf_put_segments(CPUState *cpu_state)
 {
     CPUX86State *env = &X86_CPU(cpu_state)->env;
     struct vmx_segment seg;
@@ -166,7 +166,7 @@ void hvf_get_xsave(CPUState *cpu_state)
     x86_cpu_xrstor_all_areas(X86_CPU(cpu_state), xsave, xsave_len);
 }
 
-void hvf_get_segments(CPUState *cpu_state)
+static void hvf_get_segments(CPUState *cpu_state)
 {
     CPUX86State *env = &X86_CPU(cpu_state)->env;
 
diff --git a/target/i386/hvf/x86hvf.h b/target/i386/hvf/x86hvf.h
index 99ed8d608d..db6003d6bd 100644
--- a/target/i386/hvf/x86hvf.h
+++ b/target/i386/hvf/x86hvf.h
@@ -26,11 +26,9 @@ void hvf_set_segment(struct CPUState *cpu, struct vmx_segment *vmx_seg,
                      SegmentCache *qseg, bool is_tr);
 void hvf_get_segment(SegmentCache *qseg, struct vmx_segment *vmx_seg);
 void hvf_put_xsave(CPUState *cpu_state);
-void hvf_put_segments(CPUState *cpu_state);
 void hvf_put_msrs(CPUState *cpu_state);
 void hvf_get_xsave(CPUState *cpu_state);
 void hvf_get_msrs(CPUState *cpu_state);
 void vmx_clear_int_window_exiting(CPUState *cpu);
-void hvf_get_segments(CPUState *cpu_state);
 void vmx_update_tpr(CPUState *cpu);
 #endif
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH v6 06/15] hvf: Remove deprecated hv_vcpu_flush() calls
  2022-02-15  8:02 [PATCH v6 00/15] host: Support macOS 12 Philippe Mathieu-Daudé via
                   ` (4 preceding siblings ...)
  2022-02-15  8:02 ` [PATCH v6 05/15] hvf: Make hvf_get_segments() / hvf_put_segments() local Philippe Mathieu-Daudé via
@ 2022-02-15  8:02 ` Philippe Mathieu-Daudé via
  2022-02-15  8:02 ` [PATCH v6 07/15] block/file-posix: Remove a deprecation warning on macOS 12 Philippe Mathieu-Daudé via
                   ` (8 subsequent siblings)
  14 siblings, 0 replies; 25+ messages in thread
From: Philippe Mathieu-Daudé via @ 2022-02-15  8:02 UTC (permalink / raw)
  To: qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Cameron Esfahani, Akihiko Odaki,
	Christian Schoenebeck, Philippe Mathieu-Daudé

When building on macOS 11 [*], we get:

  In file included from ../target/i386/hvf/hvf.c:59:
  ../target/i386/hvf/vmx.h:174:5: error: 'hv_vcpu_flush' is deprecated: first deprecated in macOS 11.0 - This API has no effect and always returns HV_UNSUPPORTED [-Werror,-Wdeprecated-declarations]
      hv_vcpu_flush(vcpu);
      ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/Hypervisor.framework/Headers/hv.h:364:20: note: 'hv_vcpu_flush' has been explicitly marked deprecated here
  extern hv_return_t hv_vcpu_flush(hv_vcpuid_t vcpu)
                     ^

Since this call "has no effect", simply remove it ¯\_(ツ)_/¯

Not very useful deprecation doc:
https://developer.apple.com/documentation/hypervisor/1441386-hv_vcpu_flush

[*] Also 10.15 (Catalina):
    https://lore.kernel.org/qemu-devel/Yd3DmSqZ1SiJwd7P@roolebo.dev/

Reviewed-by: Roman Bolshakov <r.bolshakov@yadro.com>
Tested-by: Roman Bolshakov <r.bolshakov@yadro.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 target/i386/hvf/vmx.h      | 2 --
 target/i386/hvf/x86_task.c | 1 -
 target/i386/hvf/x86hvf.c   | 2 --
 3 files changed, 5 deletions(-)

diff --git a/target/i386/hvf/vmx.h b/target/i386/hvf/vmx.h
index 29b7deed3c..573ddc33c0 100644
--- a/target/i386/hvf/vmx.h
+++ b/target/i386/hvf/vmx.h
@@ -160,7 +160,6 @@ static inline void macvm_set_cr0(hv_vcpuid_t vcpu, uint64_t cr0)
     wvmcs(vcpu, VMCS_GUEST_CR0, cr0 | CR0_NE_MASK | CR0_ET_MASK);
 
     hv_vcpu_invalidate_tlb(vcpu);
-    hv_vcpu_flush(vcpu);
 }
 
 static inline void macvm_set_cr4(hv_vcpuid_t vcpu, uint64_t cr4)
@@ -172,7 +171,6 @@ static inline void macvm_set_cr4(hv_vcpuid_t vcpu, uint64_t cr4)
     wvmcs(vcpu, VMCS_CR4_MASK, CR4_VMXE_MASK);
 
     hv_vcpu_invalidate_tlb(vcpu);
-    hv_vcpu_flush(vcpu);
 }
 
 static inline void macvm_set_rip(CPUState *cpu, uint64_t rip)
diff --git a/target/i386/hvf/x86_task.c b/target/i386/hvf/x86_task.c
index e1301599e9..d24daf6a41 100644
--- a/target/i386/hvf/x86_task.c
+++ b/target/i386/hvf/x86_task.c
@@ -182,5 +182,4 @@ void vmx_handle_task_switch(CPUState *cpu, x68_segment_selector tss_sel, int rea
     store_regs(cpu);
 
     hv_vcpu_invalidate_tlb(cpu->hvf->fd);
-    hv_vcpu_flush(cpu->hvf->fd);
 }
diff --git a/target/i386/hvf/x86hvf.c b/target/i386/hvf/x86hvf.c
index 907f09f1b4..bec9fc5814 100644
--- a/target/i386/hvf/x86hvf.c
+++ b/target/i386/hvf/x86hvf.c
@@ -125,8 +125,6 @@ static void hvf_put_segments(CPUState *cpu_state)
 
     hvf_set_segment(cpu_state, &seg, &env->ldt, false);
     vmx_write_segment_descriptor(cpu_state, &seg, R_LDTR);
-    
-    hv_vcpu_flush(cpu_state->hvf->fd);
 }
     
 void hvf_put_msrs(CPUState *cpu_state)
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH v6 07/15] block/file-posix: Remove a deprecation warning on macOS 12
  2022-02-15  8:02 [PATCH v6 00/15] host: Support macOS 12 Philippe Mathieu-Daudé via
                   ` (5 preceding siblings ...)
  2022-02-15  8:02 ` [PATCH v6 06/15] hvf: Remove deprecated hv_vcpu_flush() calls Philippe Mathieu-Daudé via
@ 2022-02-15  8:02 ` Philippe Mathieu-Daudé via
  2022-02-18 18:11   ` Akihiko Odaki
  2022-02-15  8:03 ` [PATCH v6 08/15] audio/coreaudio: " Philippe Mathieu-Daudé via
                   ` (7 subsequent siblings)
  14 siblings, 1 reply; 25+ messages in thread
From: Philippe Mathieu-Daudé via @ 2022-02-15  8:02 UTC (permalink / raw)
  To: qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Cameron Esfahani, Akihiko Odaki,
	Christian Schoenebeck, Philippe Mathieu-Daudé

When building on macOS 12 we get:

  block/file-posix.c:3335:18: warning: 'IOMasterPort' is deprecated: first deprecated in macOS 12.0 [-Wdeprecated-declarations]
      kernResult = IOMasterPort( MACH_PORT_NULL, &masterPort );
                   ^~~~~~~~~~~~
                   IOMainPort

Replace by IOMainPort, redefining it to IOMasterPort if not available.

Suggested-by: Akihiko Odaki <akihiko.odaki@gmail.com>
Reviewed-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
Reviewed by: Cameron Esfahani <dirty@apple.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 block/file-posix.c | 14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

diff --git a/block/file-posix.c b/block/file-posix.c
index 1f1756e192..13393ad296 100644
--- a/block/file-posix.c
+++ b/block/file-posix.c
@@ -3319,17 +3319,23 @@ BlockDriver bdrv_file = {
 #if defined(__APPLE__) && defined(__MACH__)
 static kern_return_t GetBSDPath(io_iterator_t mediaIterator, char *bsdPath,
                                 CFIndex maxPathSize, int flags);
+
+#if !defined(MAC_OS_VERSION_12_0) \
+    || (MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_VERSION_12_0)
+#define IOMainPort IOMasterPort
+#endif
+
 static char *FindEjectableOpticalMedia(io_iterator_t *mediaIterator)
 {
     kern_return_t kernResult = KERN_FAILURE;
-    mach_port_t     masterPort;
+    mach_port_t mainPort;
     CFMutableDictionaryRef  classesToMatch;
     const char *matching_array[] = {kIODVDMediaClass, kIOCDMediaClass};
     char *mediaType = NULL;
 
-    kernResult = IOMasterPort( MACH_PORT_NULL, &masterPort );
+    kernResult = IOMainPort(MACH_PORT_NULL, &mainPort);
     if ( KERN_SUCCESS != kernResult ) {
-        printf( "IOMasterPort returned %d\n", kernResult );
+        printf("IOMainPort returned %d\n", kernResult);
     }
 
     int index;
@@ -3342,7 +3348,7 @@ static char *FindEjectableOpticalMedia(io_iterator_t *mediaIterator)
         }
         CFDictionarySetValue(classesToMatch, CFSTR(kIOMediaEjectableKey),
                              kCFBooleanTrue);
-        kernResult = IOServiceGetMatchingServices(masterPort, classesToMatch,
+        kernResult = IOServiceGetMatchingServices(mainPort, classesToMatch,
                                                   mediaIterator);
         if (kernResult != KERN_SUCCESS) {
             error_report("Note: IOServiceGetMatchingServices returned %d",
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH v6 08/15] audio/coreaudio: Remove a deprecation warning on macOS 12
  2022-02-15  8:02 [PATCH v6 00/15] host: Support macOS 12 Philippe Mathieu-Daudé via
                   ` (6 preceding siblings ...)
  2022-02-15  8:02 ` [PATCH v6 07/15] block/file-posix: Remove a deprecation warning on macOS 12 Philippe Mathieu-Daudé via
@ 2022-02-15  8:03 ` Philippe Mathieu-Daudé via
  2022-02-18 18:26   ` Akihiko Odaki
  2022-02-15  8:03 ` [PATCH v6 09/15] audio/dbus: Fix building with modules on macOS Philippe Mathieu-Daudé via
                   ` (6 subsequent siblings)
  14 siblings, 1 reply; 25+ messages in thread
From: Philippe Mathieu-Daudé via @ 2022-02-15  8:03 UTC (permalink / raw)
  To: qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Cameron Esfahani, Akihiko Odaki,
	Christian Schoenebeck, Philippe Mathieu-Daudé,
	Roman Bolshakov

When building on macOS 12 we get:

  audio/coreaudio.c:50:5: error: 'kAudioObjectPropertyElementMaster' is deprecated: first deprecated in macOS 12.0 [-Werror,-Wdeprecated-declarations]
      kAudioObjectPropertyElementMaster
      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
      kAudioObjectPropertyElementMain
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreAudio.framework/Headers/AudioHardwareBase.h:208:5: note: 'kAudioObjectPropertyElementMaster' has been explicitly marked deprecated here
      kAudioObjectPropertyElementMaster API_DEPRECATED_WITH_REPLACEMENT("kAudioObjectPropertyElementMain", macos(10.0, 12.0), ios(2.0, 15.0), watchos(1.0, 8.0), tvos(9.0, 15.0)) = kAudioObjectPropertyElementMain
      ^

Replace by kAudioObjectPropertyElementMain, redefining it to
kAudioObjectPropertyElementMaster if not available.

Suggested-by: Akihiko Odaki <akihiko.odaki@gmail.com>
Suggested-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
Suggested-by: Roman Bolshakov <roman@roolebo.dev>
Reviewed-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 audio/coreaudio.c | 17 +++++++++++------
 1 file changed, 11 insertions(+), 6 deletions(-)

diff --git a/audio/coreaudio.c b/audio/coreaudio.c
index d8a21d3e50..1faef7fa7a 100644
--- a/audio/coreaudio.c
+++ b/audio/coreaudio.c
@@ -44,10 +44,15 @@ typedef struct coreaudioVoiceOut {
     bool enabled;
 } coreaudioVoiceOut;
 
+#if !defined(MAC_OS_VERSION_12_0) \
+    || (MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_VERSION_12_0)
+#define kAudioObjectPropertyElementMain kAudioObjectPropertyElementMaster
+#endif
+
 static const AudioObjectPropertyAddress voice_addr = {
     kAudioHardwarePropertyDefaultOutputDevice,
     kAudioObjectPropertyScopeGlobal,
-    kAudioObjectPropertyElementMaster
+    kAudioObjectPropertyElementMain
 };
 
 static OSStatus coreaudio_get_voice(AudioDeviceID *id)
@@ -69,7 +74,7 @@ static OSStatus coreaudio_get_framesizerange(AudioDeviceID id,
     AudioObjectPropertyAddress addr = {
         kAudioDevicePropertyBufferFrameSizeRange,
         kAudioDevicePropertyScopeOutput,
-        kAudioObjectPropertyElementMaster
+        kAudioObjectPropertyElementMain
     };
 
     return AudioObjectGetPropertyData(id,
@@ -86,7 +91,7 @@ static OSStatus coreaudio_get_framesize(AudioDeviceID id, UInt32 *framesize)
     AudioObjectPropertyAddress addr = {
         kAudioDevicePropertyBufferFrameSize,
         kAudioDevicePropertyScopeOutput,
-        kAudioObjectPropertyElementMaster
+        kAudioObjectPropertyElementMain
     };
 
     return AudioObjectGetPropertyData(id,
@@ -103,7 +108,7 @@ static OSStatus coreaudio_set_framesize(AudioDeviceID id, UInt32 *framesize)
     AudioObjectPropertyAddress addr = {
         kAudioDevicePropertyBufferFrameSize,
         kAudioDevicePropertyScopeOutput,
-        kAudioObjectPropertyElementMaster
+        kAudioObjectPropertyElementMain
     };
 
     return AudioObjectSetPropertyData(id,
@@ -121,7 +126,7 @@ static OSStatus coreaudio_set_streamformat(AudioDeviceID id,
     AudioObjectPropertyAddress addr = {
         kAudioDevicePropertyStreamFormat,
         kAudioDevicePropertyScopeOutput,
-        kAudioObjectPropertyElementMaster
+        kAudioObjectPropertyElementMain
     };
 
     return AudioObjectSetPropertyData(id,
@@ -138,7 +143,7 @@ static OSStatus coreaudio_get_isrunning(AudioDeviceID id, UInt32 *result)
     AudioObjectPropertyAddress addr = {
         kAudioDevicePropertyDeviceIsRunning,
         kAudioDevicePropertyScopeOutput,
-        kAudioObjectPropertyElementMaster
+        kAudioObjectPropertyElementMain
     };
 
     return AudioObjectGetPropertyData(id,
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH v6 09/15] audio/dbus: Fix building with modules on macOS
  2022-02-15  8:02 [PATCH v6 00/15] host: Support macOS 12 Philippe Mathieu-Daudé via
                   ` (7 preceding siblings ...)
  2022-02-15  8:03 ` [PATCH v6 08/15] audio/coreaudio: " Philippe Mathieu-Daudé via
@ 2022-02-15  8:03 ` Philippe Mathieu-Daudé via
  2022-02-15  8:03 ` [PATCH v6 10/15] ui/cocoa: Remove allowedFileTypes restriction in SavePanel Philippe Mathieu-Daudé via
                   ` (5 subsequent siblings)
  14 siblings, 0 replies; 25+ messages in thread
From: Philippe Mathieu-Daudé via @ 2022-02-15  8:03 UTC (permalink / raw)
  To: qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Cameron Esfahani, Akihiko Odaki,
	Christian Schoenebeck, Philippe Mathieu-Daudé,
	Li Zhang

When configuring QEMU with --enable-modules we get on macOS:

  --- stderr ---
  Dependency ui-dbus cannot be satisfied

ui-dbus depends on pixman and opengl, so add these dependencies
to audio-dbus.

Fixes: 739362d420 ("audio: add "dbus" audio backend")
Reviewed-by: Li Zhang <lizhang@suse.de>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 audio/meson.build | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

diff --git a/audio/meson.build b/audio/meson.build
index 0ac3791d0b..d9b295514f 100644
--- a/audio/meson.build
+++ b/audio/meson.build
@@ -28,7 +28,7 @@ endforeach
 
 if dbus_display
     module_ss = ss.source_set()
-    module_ss.add(when: gio, if_true: files('dbusaudio.c'))
+    module_ss.add(when: [gio, pixman, opengl, 'CONFIG_GIO'], if_true: files('dbusaudio.c'))
     audio_modules += {'dbus': module_ss}
 endif
 
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH v6 10/15] ui/cocoa: Remove allowedFileTypes restriction in SavePanel
  2022-02-15  8:02 [PATCH v6 00/15] host: Support macOS 12 Philippe Mathieu-Daudé via
                   ` (8 preceding siblings ...)
  2022-02-15  8:03 ` [PATCH v6 09/15] audio/dbus: Fix building with modules on macOS Philippe Mathieu-Daudé via
@ 2022-02-15  8:03 ` Philippe Mathieu-Daudé via
  2022-02-18 18:28   ` Akihiko Odaki
  2022-02-15  8:03 ` [PATCH v6 11/15] ui/cocoa: Add Services menu Philippe Mathieu-Daudé via
                   ` (4 subsequent siblings)
  14 siblings, 1 reply; 25+ messages in thread
From: Philippe Mathieu-Daudé via @ 2022-02-15  8:03 UTC (permalink / raw)
  To: qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Cameron Esfahani, Akihiko Odaki,
	Christian Schoenebeck, Philippe Mathieu-Daudé

setAllowedFileTypes is deprecated in macOS 12.

Per Akihiko Odaki [*]:

  An image file, which is being chosen by the panel, can be a
  raw file and have a variety of file extensions and many are not
  covered by the provided list (e.g. "udf"). Other platforms like
  GTK can provide an option to open a file with an extension not
  listed, but Cocoa can't. It forces the user to rename the file
  to give an extension in the list. Moreover, Cocoa does not tell
  which extensions are in the list so the user needs to read the
  source code, which is pretty bad.

Since this code is harming the usability rather than improving it,
simply remove the [NSSavePanel allowedFileTypes:] call, fixing:

  [2789/6622] Compiling Objective-C object libcommon.fa.p/ui_cocoa.m.o
  ui/cocoa.m:1411:16: error: 'setAllowedFileTypes:' is deprecated: first deprecated in macOS 12.0 - Use -allowedContentTypes instead [-Werror,-Wdeprecated-declarations]
      [openPanel setAllowedFileTypes: supportedImageFileTypes];
                 ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSSavePanel.h:215:49: note: property 'allowedFileTypes' is declared deprecated here
  @property (nullable, copy) NSArray<NSString *> *allowedFileTypes API_DEPRECATED("Use -allowedContentTypes instead", macos(10.3,12.0));
                                                  ^
  /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSSavePanel.h:215:49: note: 'setAllowedFileTypes:' has been explicitly marked deprecated here
  FAILED: libcommon.fa.p/ui_cocoa.m.o

[*] https://lore.kernel.org/qemu-devel/4dde2e66-63cb-4390-9538-c032310db3e3@gmail.com/

Suggested-by: Akihiko Odaki <akihiko.odaki@gmail.com>
Reviewed-by: Roman Bolshakov <r.bolshakov@yadro.com>
Tested-by: Roman Bolshakov <r.bolshakov@yadro.com>
Reviewed-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
Reviewed by: Cameron Esfahani <dirty@apple.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 ui/cocoa.m | 6 ------
 1 file changed, 6 deletions(-)

diff --git a/ui/cocoa.m b/ui/cocoa.m
index ac18e14ce0..7a1ddd4075 100644
--- a/ui/cocoa.m
+++ b/ui/cocoa.m
@@ -100,7 +100,6 @@ static int gArgc;
 static char **gArgv;
 static bool stretch_video;
 static NSTextField *pauseLabel;
-static NSArray * supportedImageFileTypes;
 
 static QemuSemaphore display_init_sem;
 static QemuSemaphore app_started_sem;
@@ -1168,10 +1167,6 @@ QemuCocoaView *cocoaView;
         [pauseLabel setTextColor: [NSColor blackColor]];
         [pauseLabel sizeToFit];
 
-        // set the supported image file types that can be opened
-        supportedImageFileTypes = [NSArray arrayWithObjects: @"img", @"iso", @"dmg",
-                                 @"qcow", @"qcow2", @"cloop", @"vmdk", @"cdr",
-                                  @"toast", nil];
         [self make_about_window];
     }
     return self;
@@ -1414,7 +1409,6 @@ QemuCocoaView *cocoaView;
     openPanel = [NSOpenPanel openPanel];
     [openPanel setCanChooseFiles: YES];
     [openPanel setAllowsMultipleSelection: NO];
-    [openPanel setAllowedFileTypes: supportedImageFileTypes];
     if([openPanel runModal] == NSModalResponseOK) {
         NSString * file = [[[openPanel URLs] objectAtIndex: 0] path];
         if(file == nil) {
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH v6 11/15] ui/cocoa: Add Services menu
  2022-02-15  8:02 [PATCH v6 00/15] host: Support macOS 12 Philippe Mathieu-Daudé via
                   ` (9 preceding siblings ...)
  2022-02-15  8:03 ` [PATCH v6 10/15] ui/cocoa: Remove allowedFileTypes restriction in SavePanel Philippe Mathieu-Daudé via
@ 2022-02-15  8:03 ` Philippe Mathieu-Daudé via
  2022-02-15 16:38   ` Will Cohen
  2022-02-18 17:33   ` Peter Maydell
  2022-02-15  8:03 ` [PATCH v6 12/15] ui/cocoa: Do not alert even without block devices Philippe Mathieu-Daudé via
                   ` (3 subsequent siblings)
  14 siblings, 2 replies; 25+ messages in thread
From: Philippe Mathieu-Daudé via @ 2022-02-15  8:03 UTC (permalink / raw)
  To: qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Cameron Esfahani, Akihiko Odaki,
	Christian Schoenebeck, Philippe Mathieu-Daudé

From: Akihiko Odaki <akihiko.odaki@gmail.com>

Services menu functionality of Cocoa is described at:
https://developer.apple.com/design/human-interface-guidelines/macos/extensions/services/

Signed-off-by: Akihiko Odaki <akihiko.odaki@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20220214091320.51750-1-akihiko.odaki@gmail.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 ui/cocoa.m | 4 ++++
 1 file changed, 4 insertions(+)

diff --git a/ui/cocoa.m b/ui/cocoa.m
index 7a1ddd4075..becca58cb7 100644
--- a/ui/cocoa.m
+++ b/ui/cocoa.m
@@ -1591,11 +1591,15 @@ static void create_initial_menus(void)
     NSMenuItem  *menuItem;
 
     [NSApp setMainMenu:[[NSMenu alloc] init]];
+    [NSApp setServicesMenu:[[NSMenu alloc] initWithTitle:@"Services"]];
 
     // Application menu
     menu = [[NSMenu alloc] initWithTitle:@""];
     [menu addItemWithTitle:@"About QEMU" action:@selector(do_about_menu_item:) keyEquivalent:@""]; // About QEMU
     [menu addItem:[NSMenuItem separatorItem]]; //Separator
+    menuItem = [menu addItemWithTitle:@"Services" action:nil keyEquivalent:@""];
+    [menuItem setSubmenu:[NSApp servicesMenu]];
+    [menu addItem:[NSMenuItem separatorItem]];
     [menu addItemWithTitle:@"Hide QEMU" action:@selector(hide:) keyEquivalent:@"h"]; //Hide QEMU
     menuItem = (NSMenuItem *)[menu addItemWithTitle:@"Hide Others" action:@selector(hideOtherApplications:) keyEquivalent:@"h"]; // Hide Others
     [menuItem setKeyEquivalentModifierMask:(NSEventModifierFlagOption|NSEventModifierFlagCommand)];
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH v6 12/15] ui/cocoa: Do not alert even without block devices
  2022-02-15  8:02 [PATCH v6 00/15] host: Support macOS 12 Philippe Mathieu-Daudé via
                   ` (10 preceding siblings ...)
  2022-02-15  8:03 ` [PATCH v6 11/15] ui/cocoa: Add Services menu Philippe Mathieu-Daudé via
@ 2022-02-15  8:03 ` Philippe Mathieu-Daudé via
  2022-02-15  8:03 ` [PATCH v6 13/15] ui/cocoa: Fix the leak of qemu_console_get_label Philippe Mathieu-Daudé via
                   ` (2 subsequent siblings)
  14 siblings, 0 replies; 25+ messages in thread
From: Philippe Mathieu-Daudé via @ 2022-02-15  8:03 UTC (permalink / raw)
  To: qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Cameron Esfahani, Akihiko Odaki,
	Christian Schoenebeck, Philippe Mathieu-Daudé

From: Akihiko Odaki <akihiko.odaki@gmail.com>

Signed-off-by: Akihiko Odaki <akihiko.odaki@gmail.com>
Message-Id: <20220213021418.2155-1-akihiko.odaki@gmail.com>
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 ui/cocoa.m | 5 -----
 1 file changed, 5 deletions(-)

diff --git a/ui/cocoa.m b/ui/cocoa.m
index becca58cb7..6cadd43309 100644
--- a/ui/cocoa.m
+++ b/ui/cocoa.m
@@ -1713,11 +1713,6 @@ static void addRemovableDevicesMenuItems(void)
 
     currentDevice = qmp_query_block(NULL);
     pointerToFree = currentDevice;
-    if(currentDevice == NULL) {
-        NSBeep();
-        QEMU_Alert(@"Failed to query for block devices!");
-        return;
-    }
 
     menu = [[[NSApp mainMenu] itemWithTitle:@"Machine"] submenu];
 
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH v6 13/15] ui/cocoa: Fix the leak of qemu_console_get_label
  2022-02-15  8:02 [PATCH v6 00/15] host: Support macOS 12 Philippe Mathieu-Daudé via
                   ` (11 preceding siblings ...)
  2022-02-15  8:03 ` [PATCH v6 12/15] ui/cocoa: Do not alert even without block devices Philippe Mathieu-Daudé via
@ 2022-02-15  8:03 ` Philippe Mathieu-Daudé via
  2022-02-15  8:03 ` [PATCH v6 14/15] lcitool: Refresh Philippe Mathieu-Daudé via
  2022-02-15  8:03 ` [PATCH v6 15/15] gitlab-ci: Support macOS 12 via cirrus-run Philippe Mathieu-Daudé via
  14 siblings, 0 replies; 25+ messages in thread
From: Philippe Mathieu-Daudé via @ 2022-02-15  8:03 UTC (permalink / raw)
  To: qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Cameron Esfahani, Akihiko Odaki,
	Christian Schoenebeck, Philippe Mathieu-Daudé

From: Akihiko Odaki <akihiko.odaki@gmail.com>

Signed-off-by: Akihiko Odaki <akihiko.odaki@gmail.com>
Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
Message-Id: <20220213021329.2066-1-akihiko.odaki@gmail.com>
[PMD: Use g_autofree, suggested by Zoltan BALATON]
Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 ui/cocoa.m | 4 +++-
 1 file changed, 3 insertions(+), 1 deletion(-)

diff --git a/ui/cocoa.m b/ui/cocoa.m
index 6cadd43309..30702d31a5 100644
--- a/ui/cocoa.m
+++ b/ui/cocoa.m
@@ -1678,7 +1678,9 @@ static void create_initial_menus(void)
 /* Returns a name for a given console */
 static NSString * getConsoleName(QemuConsole * console)
 {
-    return [NSString stringWithFormat: @"%s", qemu_console_get_label(console)];
+    g_autofree char *label = qemu_console_get_label(console);
+
+    return [NSString stringWithUTF8String:label];
 }
 
 /* Add an entry to the View menu for each console */
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH v6 14/15] lcitool: Refresh
  2022-02-15  8:02 [PATCH v6 00/15] host: Support macOS 12 Philippe Mathieu-Daudé via
                   ` (12 preceding siblings ...)
  2022-02-15  8:03 ` [PATCH v6 13/15] ui/cocoa: Fix the leak of qemu_console_get_label Philippe Mathieu-Daudé via
@ 2022-02-15  8:03 ` Philippe Mathieu-Daudé via
  2022-02-15  8:03 ` [PATCH v6 15/15] gitlab-ci: Support macOS 12 via cirrus-run Philippe Mathieu-Daudé via
  14 siblings, 0 replies; 25+ messages in thread
From: Philippe Mathieu-Daudé via @ 2022-02-15  8:03 UTC (permalink / raw)
  To: qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Cameron Esfahani, Akihiko Odaki,
	Christian Schoenebeck, Philippe Mathieu-Daudé

Run 'make lcitool-refresh' again.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 tests/docker/dockerfiles/ubuntu1804.docker | 2 --
 tests/docker/dockerfiles/ubuntu2004.docker | 2 --
 2 files changed, 4 deletions(-)

diff --git a/tests/docker/dockerfiles/ubuntu1804.docker b/tests/docker/dockerfiles/ubuntu1804.docker
index 699f2dfc6a..040938277a 100644
--- a/tests/docker/dockerfiles/ubuntu1804.docker
+++ b/tests/docker/dockerfiles/ubuntu1804.docker
@@ -65,7 +65,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
             libpam0g-dev \
             libpcre2-dev \
             libpixman-1-dev \
-            libpmem-dev \
             libpng-dev \
             libpulse-dev \
             librbd-dev \
@@ -89,7 +88,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
             libvdeplug-dev \
             libvirglrenderer-dev \
             libvte-2.91-dev \
-            libxen-dev \
             libzstd-dev \
             llvm \
             locales \
diff --git a/tests/docker/dockerfiles/ubuntu2004.docker b/tests/docker/dockerfiles/ubuntu2004.docker
index 87513125b8..159e7f60c9 100644
--- a/tests/docker/dockerfiles/ubuntu2004.docker
+++ b/tests/docker/dockerfiles/ubuntu2004.docker
@@ -66,7 +66,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
             libpam0g-dev \
             libpcre2-dev \
             libpixman-1-dev \
-            libpmem-dev \
             libpng-dev \
             libpulse-dev \
             librbd-dev \
@@ -91,7 +90,6 @@ RUN export DEBIAN_FRONTEND=noninteractive && \
             libvdeplug-dev \
             libvirglrenderer-dev \
             libvte-2.91-dev \
-            libxen-dev \
             libzstd-dev \
             llvm \
             locales \
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* [PATCH v6 15/15] gitlab-ci: Support macOS 12 via cirrus-run
  2022-02-15  8:02 [PATCH v6 00/15] host: Support macOS 12 Philippe Mathieu-Daudé via
                   ` (13 preceding siblings ...)
  2022-02-15  8:03 ` [PATCH v6 14/15] lcitool: Refresh Philippe Mathieu-Daudé via
@ 2022-02-15  8:03 ` Philippe Mathieu-Daudé via
  14 siblings, 0 replies; 25+ messages in thread
From: Philippe Mathieu-Daudé via @ 2022-02-15  8:03 UTC (permalink / raw)
  To: qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Cameron Esfahani, Akihiko Odaki,
	Christian Schoenebeck, Philippe Mathieu-Daudé

Add support for macOS 12 build on Cirrus-CI, similarly to commit
0e103a65ba1 ("gitlab: support for ... macOS 11 via cirrus-run"),
but with the following differences:
 - Enable modules (configure --enable-modules)
 - Do not run softfloat3 tests (make check-softfloat)
 - Run Aarch64 qtests instead of x86_64 ones

Generate the vars file by calling 'make lcitool-refresh'.

Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
---
 .gitlab-ci.d/cirrus.yml           | 16 ++++++++++++++++
 .gitlab-ci.d/cirrus/macos-12.vars | 16 ++++++++++++++++
 tests/lcitool/refresh             |  1 +
 3 files changed, 33 insertions(+)
 create mode 100644 .gitlab-ci.d/cirrus/macos-12.vars

diff --git a/.gitlab-ci.d/cirrus.yml b/.gitlab-ci.d/cirrus.yml
index b96b22e269..be1dce5d4e 100644
--- a/.gitlab-ci.d/cirrus.yml
+++ b/.gitlab-ci.d/cirrus.yml
@@ -87,6 +87,22 @@ x64-macos-11-base-build:
     PKG_CONFIG_PATH: /usr/local/opt/curl/lib/pkgconfig:/usr/local/opt/ncurses/lib/pkgconfig:/usr/local/opt/readline/lib/pkgconfig
     TEST_TARGETS: check-unit check-block check-qapi-schema check-softfloat check-qtest-x86_64
 
+x64-macos-12-base-build:
+  extends: .cirrus_build_job
+  variables:
+    NAME: macos-12
+    CIRRUS_VM_INSTANCE_TYPE: osx_instance
+    CIRRUS_VM_IMAGE_SELECTOR: image
+    CIRRUS_VM_IMAGE_NAME: monterey-base
+    CIRRUS_VM_CPUS: 12
+    CIRRUS_VM_RAM: 24G
+    UPDATE_COMMAND: brew update
+    INSTALL_COMMAND: brew install
+    PATH_EXTRA: /usr/local/opt/ccache/libexec:/usr/local/opt/gettext/bin
+    PKG_CONFIG_PATH: /usr/local/opt/curl/lib/pkgconfig:/usr/local/opt/ncurses/lib/pkgconfig:/usr/local/opt/readline/lib/pkgconfig
+    CONFIGURE_ARGS: --enable-modules
+    TEST_TARGETS: check-unit check-block check-qapi-schema check-qtest-aarch64
+
 
 # The following jobs run VM-based tests via KVM on a Linux-based Cirrus-CI job
 .cirrus_kvm_job:
diff --git a/.gitlab-ci.d/cirrus/macos-12.vars b/.gitlab-ci.d/cirrus/macos-12.vars
new file mode 100644
index 0000000000..a793258c64
--- /dev/null
+++ b/.gitlab-ci.d/cirrus/macos-12.vars
@@ -0,0 +1,16 @@
+# THIS FILE WAS AUTO-GENERATED
+#
+#  $ lcitool variables macos-12 qemu
+#
+# https://gitlab.com/libvirt/libvirt-ci
+
+CCACHE='/usr/local/bin/ccache'
+CPAN_PKGS='Test::Harness'
+CROSS_PKGS=''
+MAKE='/usr/local/bin/gmake'
+NINJA='/usr/local/bin/ninja'
+PACKAGING_COMMAND='brew'
+PIP3='/usr/local/bin/pip3'
+PKGS='bash bc bzip2 capstone ccache cpanminus ctags curl dbus diffutils dtc gcovr gettext git glib gnu-sed gnutls gtk+3 jemalloc jpeg-turbo libepoxy libffi libgcrypt libiscsi libnfs libpng libslirp libssh libtasn1 libusb llvm lzo make meson ncurses nettle ninja perl pixman pkg-config python3 rpm2cpio sdl2 sdl2_image snappy sparse spice-protocol tesseract texinfo usbredir vde vte3 zlib zstd'
+PYPI_PKGS='PyYAML numpy pillow sphinx sphinx-rtd-theme virtualenv'
+PYTHON='/usr/local/bin/python3'
diff --git a/tests/lcitool/refresh b/tests/lcitool/refresh
index 4ab90a310a..a714e2851d 100755
--- a/tests/lcitool/refresh
+++ b/tests/lcitool/refresh
@@ -89,6 +89,7 @@ try:
    generate_cirrus("freebsd-12")
    generate_cirrus("freebsd-13")
    generate_cirrus("macos-11")
+   generate_cirrus("macos-12")
 
    sys.exit(0)
 except Exception as ex:
-- 
2.34.1



^ permalink raw reply related	[flat|nested] 25+ messages in thread

* Re: [PATCH v6 11/15] ui/cocoa: Add Services menu
  2022-02-15  8:03 ` [PATCH v6 11/15] ui/cocoa: Add Services menu Philippe Mathieu-Daudé via
@ 2022-02-15 16:38   ` Will Cohen
  2022-02-18 17:33   ` Peter Maydell
  1 sibling, 0 replies; 25+ messages in thread
From: Will Cohen @ 2022-02-15 16:38 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé
  Cc: Roman Bolshakov, Akihiko Odaki, Christian Schoenebeck,
	qemu Developers, Cameron Esfahani

[-- Attachment #1: Type: text/plain, Size: 1934 bytes --]

On Tue, Feb 15, 2022 at 3:04 AM Philippe Mathieu-Daudé <f4bug@amsat.org>
wrote:

> From: Akihiko Odaki <akihiko.odaki@gmail.com>
>
> Services menu functionality of Cocoa is described at:
>
> https://developer.apple.com/design/human-interface-guidelines/macos/extensions/services/
>
> Signed-off-by: Akihiko Odaki <akihiko.odaki@gmail.com>
> Reviewed-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> Tested-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> Message-Id: <20220214091320.51750-1-akihiko.odaki@gmail.com>
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>  ui/cocoa.m | 4 ++++
>  1 file changed, 4 insertions(+)
>
> diff --git a/ui/cocoa.m b/ui/cocoa.m
> index 7a1ddd4075..becca58cb7 100644
> --- a/ui/cocoa.m
> +++ b/ui/cocoa.m
> @@ -1591,11 +1591,15 @@ static void create_initial_menus(void)
>      NSMenuItem  *menuItem;
>
>      [NSApp setMainMenu:[[NSMenu alloc] init]];
> +    [NSApp setServicesMenu:[[NSMenu alloc] initWithTitle:@"Services"]];
>
>      // Application menu
>      menu = [[NSMenu alloc] initWithTitle:@""];
>      [menu addItemWithTitle:@"About QEMU" action:@selector(do_about_menu_item:)
> keyEquivalent:@""]; // About QEMU
>      [menu addItem:[NSMenuItem separatorItem]]; //Separator
> +    menuItem = [menu addItemWithTitle:@"Services" action:nil
> keyEquivalent:@""];
> +    [menuItem setSubmenu:[NSApp servicesMenu]];
> +    [menu addItem:[NSMenuItem separatorItem]];
>      [menu addItemWithTitle:@"Hide QEMU" action:@selector(hide:)
> keyEquivalent:@"h"]; //Hide QEMU
>      menuItem = (NSMenuItem *)[menu addItemWithTitle:@"Hide Others"
> action:@selector(hideOtherApplications:) keyEquivalent:@"h"]; // Hide
> Others
>      [menuItem
> setKeyEquivalentModifierMask:(NSEventModifierFlagOption|NSEventModifierFlagCommand)];
> --
> 2.34.1
>

Reviewed-by: Will Cohen <wwcohen@gmail.com>
Tested-by: Will Cohen <wwcohen@gmail.com>

[-- Attachment #2: Type: text/html, Size: 3033 bytes --]

^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH v6 11/15] ui/cocoa: Add Services menu
  2022-02-15  8:03 ` [PATCH v6 11/15] ui/cocoa: Add Services menu Philippe Mathieu-Daudé via
  2022-02-15 16:38   ` Will Cohen
@ 2022-02-18 17:33   ` Peter Maydell
  2022-02-18 17:49     ` Akihiko Odaki
  1 sibling, 1 reply; 25+ messages in thread
From: Peter Maydell @ 2022-02-18 17:33 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé
  Cc: Christian Schoenebeck, qemu-devel, Cameron Esfahani,
	Roman Bolshakov, Will Cohen, Akihiko Odaki

On Tue, 15 Feb 2022 at 08:26, Philippe Mathieu-Daudé via
<qemu-devel@nongnu.org> wrote:
>
> From: Akihiko Odaki <akihiko.odaki@gmail.com>
>
> Services menu functionality of Cocoa is described at:
> https://developer.apple.com/design/human-interface-guidelines/macos/extensions/services/
>

I tested this, and while it does create a Services menu, none of
the items in it seem very relevant to QEMU (on my machine, there's
Activity Monitor, Time Profile Active Application, and some other
software-development related things). In fact, every app I looked
at exposed the same list of things in the Services menu. So I'm
not sure why this is even an application-specific menu that needs
specific code to support, rather than something system-wide that
Apple automatically adds to the UI where it wants it.

-- PMM


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH v6 11/15] ui/cocoa: Add Services menu
  2022-02-18 17:33   ` Peter Maydell
@ 2022-02-18 17:49     ` Akihiko Odaki
  2022-02-18 18:18       ` Christian Schoenebeck
  0 siblings, 1 reply; 25+ messages in thread
From: Akihiko Odaki @ 2022-02-18 17:49 UTC (permalink / raw)
  To: Peter Maydell
  Cc: Christian Schoenebeck, Philippe Mathieu-Daudé,
	Cameron Esfahani, qemu Developers, Roman Bolshakov, Will Cohen

On Sat, Feb 19, 2022 at 2:33 AM Peter Maydell <peter.maydell@linaro.org> wrote:
>
> On Tue, 15 Feb 2022 at 08:26, Philippe Mathieu-Daudé via
> <qemu-devel@nongnu.org> wrote:
> >
> > From: Akihiko Odaki <akihiko.odaki@gmail.com>
> >
> > Services menu functionality of Cocoa is described at:
> > https://developer.apple.com/design/human-interface-guidelines/macos/extensions/services/
> >
>
> I tested this, and while it does create a Services menu, none of
> the items in it seem very relevant to QEMU (on my machine, there's
> Activity Monitor, Time Profile Active Application, and some other
> software-development related things). In fact, every app I looked
> at exposed the same list of things in the Services menu. So I'm
> not sure why this is even an application-specific menu that needs
> specific code to support, rather than something system-wide that
> Apple automatically adds to the UI where it wants it.
>
> -- PMM

Actually I wanted to use those services from Xcode to debug QEMU. I
have no idea why Apple decided to do it this way, but an application
template from Xcode does the same although it uses an interface file
instead of Objective-C code.

Regards,
Akihiko Odaki


^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH v6 02/15] configure: Allow passing extra Objective C compiler flags
  2022-02-15  8:02 ` [PATCH v6 02/15] configure: Allow passing extra Objective C compiler flags Philippe Mathieu-Daudé via
@ 2022-02-18 18:08   ` Akihiko Odaki
  0 siblings, 0 replies; 25+ messages in thread
From: Akihiko Odaki @ 2022-02-18 18:08 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Christian Schoenebeck, Cameron Esfahani

Reviewed-by: Akihiko Odaki <akihiko.odaki@gmail.com>
Tested-by: Akihiko Odaki <akihiko.odaki@gmail.com>

On 2022/02/15 17:02, Philippe Mathieu-Daudé via wrote:
> We can pass C/CPP/LD flags via CFLAGS/CXXFLAGS/LDFLAGS environment
> variables, or via configure --extra-cflags / --extra-cxxflags /
> --extra-ldflags options. Provide similar behavior for Objective C:
> use existing flags from $OBJCFLAGS, or passed via --extra-objcflags.
> 
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>   configure   | 8 ++++++++
>   meson.build | 5 +++++
>   2 files changed, 13 insertions(+)
> 
> diff --git a/configure b/configure
> index 3a29eff5cc..06c03cebd3 100755
> --- a/configure
> +++ b/configure
> @@ -287,6 +287,7 @@ done
>   
>   EXTRA_CFLAGS=""
>   EXTRA_CXXFLAGS=""
> +EXTRA_OBJCFLAGS=""
>   EXTRA_LDFLAGS=""
>   
>   xen_ctrl_version="$default_feature"
> @@ -391,9 +392,12 @@ for opt do
>     --extra-cflags=*)
>       EXTRA_CFLAGS="$EXTRA_CFLAGS $optarg"
>       EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS $optarg"
> +    EXTRA_OBJCFLAGS="$EXTRA_OBJCFLAGS $optarg"
>       ;;
>     --extra-cxxflags=*) EXTRA_CXXFLAGS="$EXTRA_CXXFLAGS $optarg"
>     ;;
> +  --extra-objcflags=*) EXTRA_OBJCFLAGS="$EXTRA_OBJCFLAGS $optarg"
> +  ;;
>     --extra-ldflags=*) EXTRA_LDFLAGS="$EXTRA_LDFLAGS $optarg"
>     ;;
>     --enable-debug-info) debug_info="yes"
> @@ -774,6 +778,8 @@ for opt do
>     ;;
>     --extra-cxxflags=*)
>     ;;
> +  --extra-objcflags=*)
> +  ;;
>     --extra-ldflags=*)
>     ;;
>     --enable-debug-info)
> @@ -1312,6 +1318,7 @@ Advanced options (experts only):
>     --objcc=OBJCC            use Objective-C compiler OBJCC [$objcc]
>     --extra-cflags=CFLAGS    append extra C compiler flags CFLAGS
>     --extra-cxxflags=CXXFLAGS append extra C++ compiler flags CXXFLAGS
> +  --extra-objcflags=OBJCFLAGS append extra Objective C compiler flags OBJCFLAGS
>     --extra-ldflags=LDFLAGS  append extra linker flags LDFLAGS
>     --cross-cc-ARCH=CC       use compiler when building ARCH guest test cases
>     --cross-cc-cflags-ARCH=  use compiler flags when building ARCH guest tests
> @@ -3724,6 +3731,7 @@ if test "$skip_meson" = no; then
>     echo "[built-in options]" >> $cross
>     echo "c_args = [$(meson_quote $CFLAGS $EXTRA_CFLAGS)]" >> $cross
>     echo "cpp_args = [$(meson_quote $CXXFLAGS $EXTRA_CXXFLAGS)]" >> $cross
> +  test -n "$objcc" && echo "objc_args = [$(meson_quote $OBJCFLAGS $EXTRA_OBJCFLAGS)]" >> $cross
>     echo "c_link_args = [$(meson_quote $CFLAGS $LDFLAGS $EXTRA_CFLAGS $EXTRA_LDFLAGS)]" >> $cross
>     echo "cpp_link_args = [$(meson_quote $CXXFLAGS $LDFLAGS $EXTRA_CXXFLAGS $EXTRA_LDFLAGS)]" >> $cross
>     echo "[binaries]" >> $cross
> diff --git a/meson.build b/meson.build
> index ae5f7eec6e..df25e7a5e7 100644
> --- a/meson.build
> +++ b/meson.build
> @@ -3292,6 +3292,11 @@ if link_language == 'cpp'
>                                                  + ['-O' + get_option('optimization')]
>                                                  + (get_option('debug') ? ['-g'] : []))}
>   endif
> +if targetos == 'darwin'
> +  summary_info += {'OBJCFLAGS':       ' '.join(get_option('objc_args')
> +                                               + ['-O' + get_option('optimization')]
> +                                               + (get_option('debug') ? ['-g'] : []))}
> +endif
>   link_args = get_option(link_language + '_link_args')
>   if link_args.length() > 0
>     summary_info += {'LDFLAGS':         ' '.join(link_args)}



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH v6 03/15] tests/fp/berkeley-testfloat-3: Ignore ignored #pragma directives
  2022-02-15  8:02 ` [PATCH v6 03/15] tests/fp/berkeley-testfloat-3: Ignore ignored #pragma directives Philippe Mathieu-Daudé via
@ 2022-02-18 18:09   ` Akihiko Odaki
  0 siblings, 0 replies; 25+ messages in thread
From: Akihiko Odaki @ 2022-02-18 18:09 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Christian Schoenebeck, Cameron Esfahani

Reviewed-by: Akihiko Odaki <akihiko.odaki@gmail.com>
Tested-by: Akihiko Odaki <akihiko.odaki@gmail.com>

On 2022/02/15 17:02, Philippe Mathieu-Daudé via wrote:
> Since we already use -Wno-unknown-pragmas, we can also use
> -Wno-ignored-pragmas. This silences hundred of warnings using
> clang 13 on macOS Monterey:
> 
>    [409/771] Compiling C object tests/fp/libtestfloat.a.p/berkeley-testfloat-3_source_test_az_f128_rx.c.o
>    ../tests/fp/berkeley-testfloat-3/source/test_az_f128_rx.c:49:14: warning: '#pragma FENV_ACCESS' is not supported on this target - ignored [-Wignored-pragmas]
>    #pragma STDC FENV_ACCESS ON
>                 ^
>    1 warning generated.
> 
> Having:
> 
>    $ cc -v
>    Apple clang version 13.0.0 (clang-1300.0.29.30)
> 
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>   tests/fp/meson.build | 1 +
>   1 file changed, 1 insertion(+)
> 
> diff --git a/tests/fp/meson.build b/tests/fp/meson.build
> index 59776a00a7..5192264a08 100644
> --- a/tests/fp/meson.build
> +++ b/tests/fp/meson.build
> @@ -30,6 +30,7 @@ tfcflags = [
>     '-Wno-implicit-fallthrough',
>     '-Wno-strict-prototypes',
>     '-Wno-unknown-pragmas',
> +  '-Wno-ignored-pragmas',
>     '-Wno-uninitialized',
>     '-Wno-missing-prototypes',
>     '-Wno-return-type',



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH v6 07/15] block/file-posix: Remove a deprecation warning on macOS 12
  2022-02-15  8:02 ` [PATCH v6 07/15] block/file-posix: Remove a deprecation warning on macOS 12 Philippe Mathieu-Daudé via
@ 2022-02-18 18:11   ` Akihiko Odaki
  0 siblings, 0 replies; 25+ messages in thread
From: Akihiko Odaki @ 2022-02-18 18:11 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Christian Schoenebeck, Cameron Esfahani

Reviewed-by: Akihiko Odaki <akihiko.odaki@gmail.com>
Tested-by: Akihiko Odaki <akihiko.odaki@gmail.com>

On 2022/02/15 17:02, Philippe Mathieu-Daudé via wrote:
> When building on macOS 12 we get:
> 
>    block/file-posix.c:3335:18: warning: 'IOMasterPort' is deprecated: first deprecated in macOS 12.0 [-Wdeprecated-declarations]
>        kernResult = IOMasterPort( MACH_PORT_NULL, &masterPort );
>                     ^~~~~~~~~~~~
>                     IOMainPort
> 
> Replace by IOMainPort, redefining it to IOMasterPort if not available.
> 
> Suggested-by: Akihiko Odaki <akihiko.odaki@gmail.com>
> Reviewed-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
> Reviewed by: Cameron Esfahani <dirty@apple.com>
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>   block/file-posix.c | 14 ++++++++++----
>   1 file changed, 10 insertions(+), 4 deletions(-)
> 
> diff --git a/block/file-posix.c b/block/file-posix.c
> index 1f1756e192..13393ad296 100644
> --- a/block/file-posix.c
> +++ b/block/file-posix.c
> @@ -3319,17 +3319,23 @@ BlockDriver bdrv_file = {
>   #if defined(__APPLE__) && defined(__MACH__)
>   static kern_return_t GetBSDPath(io_iterator_t mediaIterator, char *bsdPath,
>                                   CFIndex maxPathSize, int flags);
> +
> +#if !defined(MAC_OS_VERSION_12_0) \
> +    || (MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_VERSION_12_0)
> +#define IOMainPort IOMasterPort
> +#endif
> +
>   static char *FindEjectableOpticalMedia(io_iterator_t *mediaIterator)
>   {
>       kern_return_t kernResult = KERN_FAILURE;
> -    mach_port_t     masterPort;
> +    mach_port_t mainPort;
>       CFMutableDictionaryRef  classesToMatch;
>       const char *matching_array[] = {kIODVDMediaClass, kIOCDMediaClass};
>       char *mediaType = NULL;
>   
> -    kernResult = IOMasterPort( MACH_PORT_NULL, &masterPort );
> +    kernResult = IOMainPort(MACH_PORT_NULL, &mainPort);
>       if ( KERN_SUCCESS != kernResult ) {
> -        printf( "IOMasterPort returned %d\n", kernResult );
> +        printf("IOMainPort returned %d\n", kernResult);
>       }
>   
>       int index;
> @@ -3342,7 +3348,7 @@ static char *FindEjectableOpticalMedia(io_iterator_t *mediaIterator)
>           }
>           CFDictionarySetValue(classesToMatch, CFSTR(kIOMediaEjectableKey),
>                                kCFBooleanTrue);
> -        kernResult = IOServiceGetMatchingServices(masterPort, classesToMatch,
> +        kernResult = IOServiceGetMatchingServices(mainPort, classesToMatch,
>                                                     mediaIterator);
>           if (kernResult != KERN_SUCCESS) {
>               error_report("Note: IOServiceGetMatchingServices returned %d",



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH v6 11/15] ui/cocoa: Add Services menu
  2022-02-18 17:49     ` Akihiko Odaki
@ 2022-02-18 18:18       ` Christian Schoenebeck
  0 siblings, 0 replies; 25+ messages in thread
From: Christian Schoenebeck @ 2022-02-18 18:18 UTC (permalink / raw)
  To: qemu-devel
  Cc: Akihiko Odaki, Peter Maydell, Philippe Mathieu-Daudé,
	Cameron Esfahani, Roman Bolshakov, Will Cohen

On Freitag, 18. Februar 2022 18:49:55 CET Akihiko Odaki wrote:
> On Sat, Feb 19, 2022 at 2:33 AM Peter Maydell <peter.maydell@linaro.org> 
wrote:
> > On Tue, 15 Feb 2022 at 08:26, Philippe Mathieu-Daudé via
> > 
> > <qemu-devel@nongnu.org> wrote:
> > > From: Akihiko Odaki <akihiko.odaki@gmail.com>
> > > 
> > > Services menu functionality of Cocoa is described at:
> > > https://developer.apple.com/design/human-interface-guidelines/macos/exte
> > > nsions/services/> 
> > I tested this, and while it does create a Services menu, none of
> > the items in it seem very relevant to QEMU (on my machine, there's
> > Activity Monitor, Time Profile Active Application, and some other
> > software-development related things). In fact, every app I looked
> > at exposed the same list of things in the Services menu. So I'm
> > not sure why this is even an application-specific menu that needs
> > specific code to support, rather than something system-wide that
> > Apple automatically adds to the UI where it wants it.
> > 
> > -- PMM
> 
> Actually I wanted to use those services from Xcode to debug QEMU. I
> have no idea why Apple decided to do it this way, but an application
> template from Xcode does the same although it uses an interface file
> instead of Objective-C code.
> 
> Regards,
> Akihiko Odaki

Yes, that appearance of the "Services" menu is normal. I think the idea was to 
leave it completely to app developers how their app menus looks like exactly, 
instead of Apple injecting something there without being asked.

There are much bigger oddities in macOS's menu design than that IMO.

Best regards,
Christian Schoenebeck




^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH v6 08/15] audio/coreaudio: Remove a deprecation warning on macOS 12
  2022-02-15  8:03 ` [PATCH v6 08/15] audio/coreaudio: " Philippe Mathieu-Daudé via
@ 2022-02-18 18:26   ` Akihiko Odaki
  0 siblings, 0 replies; 25+ messages in thread
From: Akihiko Odaki @ 2022-02-18 18:26 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel
  Cc: Roman Bolshakov, Roman Bolshakov, Will Cohen,
	Christian Schoenebeck, Cameron Esfahani

Reviewed-by: Akihiko Odaki <akihiko.odaki@gmail.com>
Tested-by: Akihiko Odaki <akihiko.odaki@gmail.com>

On 2022/02/15 17:03, Philippe Mathieu-Daudé via wrote:
> When building on macOS 12 we get:
> 
>    audio/coreaudio.c:50:5: error: 'kAudioObjectPropertyElementMaster' is deprecated: first deprecated in macOS 12.0 [-Werror,-Wdeprecated-declarations]
>        kAudioObjectPropertyElementMaster
>        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
>        kAudioObjectPropertyElementMain
>    /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/CoreAudio.framework/Headers/AudioHardwareBase.h:208:5: note: 'kAudioObjectPropertyElementMaster' has been explicitly marked deprecated here
>        kAudioObjectPropertyElementMaster API_DEPRECATED_WITH_REPLACEMENT("kAudioObjectPropertyElementMain", macos(10.0, 12.0), ios(2.0, 15.0), watchos(1.0, 8.0), tvos(9.0, 15.0)) = kAudioObjectPropertyElementMain
>        ^
> 
> Replace by kAudioObjectPropertyElementMain, redefining it to
> kAudioObjectPropertyElementMaster if not available.
> 
> Suggested-by: Akihiko Odaki <akihiko.odaki@gmail.com>
> Suggested-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
> Suggested-by: Roman Bolshakov <roman@roolebo.dev>
> Reviewed-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>   audio/coreaudio.c | 17 +++++++++++------
>   1 file changed, 11 insertions(+), 6 deletions(-)
> 
> diff --git a/audio/coreaudio.c b/audio/coreaudio.c
> index d8a21d3e50..1faef7fa7a 100644
> --- a/audio/coreaudio.c
> +++ b/audio/coreaudio.c
> @@ -44,10 +44,15 @@ typedef struct coreaudioVoiceOut {
>       bool enabled;
>   } coreaudioVoiceOut;
>   
> +#if !defined(MAC_OS_VERSION_12_0) \
> +    || (MAC_OS_X_VERSION_MIN_REQUIRED < MAC_OS_VERSION_12_0)
> +#define kAudioObjectPropertyElementMain kAudioObjectPropertyElementMaster
> +#endif
> +
>   static const AudioObjectPropertyAddress voice_addr = {
>       kAudioHardwarePropertyDefaultOutputDevice,
>       kAudioObjectPropertyScopeGlobal,
> -    kAudioObjectPropertyElementMaster
> +    kAudioObjectPropertyElementMain
>   };
>   
>   static OSStatus coreaudio_get_voice(AudioDeviceID *id)
> @@ -69,7 +74,7 @@ static OSStatus coreaudio_get_framesizerange(AudioDeviceID id,
>       AudioObjectPropertyAddress addr = {
>           kAudioDevicePropertyBufferFrameSizeRange,
>           kAudioDevicePropertyScopeOutput,
> -        kAudioObjectPropertyElementMaster
> +        kAudioObjectPropertyElementMain
>       };
>   
>       return AudioObjectGetPropertyData(id,
> @@ -86,7 +91,7 @@ static OSStatus coreaudio_get_framesize(AudioDeviceID id, UInt32 *framesize)
>       AudioObjectPropertyAddress addr = {
>           kAudioDevicePropertyBufferFrameSize,
>           kAudioDevicePropertyScopeOutput,
> -        kAudioObjectPropertyElementMaster
> +        kAudioObjectPropertyElementMain
>       };
>   
>       return AudioObjectGetPropertyData(id,
> @@ -103,7 +108,7 @@ static OSStatus coreaudio_set_framesize(AudioDeviceID id, UInt32 *framesize)
>       AudioObjectPropertyAddress addr = {
>           kAudioDevicePropertyBufferFrameSize,
>           kAudioDevicePropertyScopeOutput,
> -        kAudioObjectPropertyElementMaster
> +        kAudioObjectPropertyElementMain
>       };
>   
>       return AudioObjectSetPropertyData(id,
> @@ -121,7 +126,7 @@ static OSStatus coreaudio_set_streamformat(AudioDeviceID id,
>       AudioObjectPropertyAddress addr = {
>           kAudioDevicePropertyStreamFormat,
>           kAudioDevicePropertyScopeOutput,
> -        kAudioObjectPropertyElementMaster
> +        kAudioObjectPropertyElementMain
>       };
>   
>       return AudioObjectSetPropertyData(id,
> @@ -138,7 +143,7 @@ static OSStatus coreaudio_get_isrunning(AudioDeviceID id, UInt32 *result)
>       AudioObjectPropertyAddress addr = {
>           kAudioDevicePropertyDeviceIsRunning,
>           kAudioDevicePropertyScopeOutput,
> -        kAudioObjectPropertyElementMaster
> +        kAudioObjectPropertyElementMain
>       };
>   
>       return AudioObjectGetPropertyData(id,



^ permalink raw reply	[flat|nested] 25+ messages in thread

* Re: [PATCH v6 10/15] ui/cocoa: Remove allowedFileTypes restriction in SavePanel
  2022-02-15  8:03 ` [PATCH v6 10/15] ui/cocoa: Remove allowedFileTypes restriction in SavePanel Philippe Mathieu-Daudé via
@ 2022-02-18 18:28   ` Akihiko Odaki
  0 siblings, 0 replies; 25+ messages in thread
From: Akihiko Odaki @ 2022-02-18 18:28 UTC (permalink / raw)
  To: Philippe Mathieu-Daudé, qemu-devel
  Cc: Roman Bolshakov, Will Cohen, Christian Schoenebeck, Cameron Esfahani

Reviewed-by: Akihiko Odaki <akihiko.odaki@gmail.com>
Tested-by: Akihiko Odaki <akihiko.odaki@gmail.com>

On 2022/02/15 17:03, Philippe Mathieu-Daudé via wrote:
> setAllowedFileTypes is deprecated in macOS 12.
> 
> Per Akihiko Odaki [*]:
> 
>    An image file, which is being chosen by the panel, can be a
>    raw file and have a variety of file extensions and many are not
>    covered by the provided list (e.g. "udf"). Other platforms like
>    GTK can provide an option to open a file with an extension not
>    listed, but Cocoa can't. It forces the user to rename the file
>    to give an extension in the list. Moreover, Cocoa does not tell
>    which extensions are in the list so the user needs to read the
>    source code, which is pretty bad.
> 
> Since this code is harming the usability rather than improving it,
> simply remove the [NSSavePanel allowedFileTypes:] call, fixing:
> 
>    [2789/6622] Compiling Objective-C object libcommon.fa.p/ui_cocoa.m.o
>    ui/cocoa.m:1411:16: error: 'setAllowedFileTypes:' is deprecated: first deprecated in macOS 12.0 - Use -allowedContentTypes instead [-Werror,-Wdeprecated-declarations]
>        [openPanel setAllowedFileTypes: supportedImageFileTypes];
>                   ^
>    /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSSavePanel.h:215:49: note: property 'allowedFileTypes' is declared deprecated here
>    @property (nullable, copy) NSArray<NSString *> *allowedFileTypes API_DEPRECATED("Use -allowedContentTypes instead", macos(10.3,12.0));
>                                                    ^
>    /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/System/Library/Frameworks/AppKit.framework/Headers/NSSavePanel.h:215:49: note: 'setAllowedFileTypes:' has been explicitly marked deprecated here
>    FAILED: libcommon.fa.p/ui_cocoa.m.o
> 
> [*] https://lore.kernel.org/qemu-devel/4dde2e66-63cb-4390-9538-c032310db3e3@gmail.com/
> 
> Suggested-by: Akihiko Odaki <akihiko.odaki@gmail.com>
> Reviewed-by: Roman Bolshakov <r.bolshakov@yadro.com>
> Tested-by: Roman Bolshakov <r.bolshakov@yadro.com>
> Reviewed-by: Christian Schoenebeck <qemu_oss@crudebyte.com>
> Reviewed by: Cameron Esfahani <dirty@apple.com>
> Signed-off-by: Philippe Mathieu-Daudé <f4bug@amsat.org>
> ---
>   ui/cocoa.m | 6 ------
>   1 file changed, 6 deletions(-)
> 
> diff --git a/ui/cocoa.m b/ui/cocoa.m
> index ac18e14ce0..7a1ddd4075 100644
> --- a/ui/cocoa.m
> +++ b/ui/cocoa.m
> @@ -100,7 +100,6 @@ static int gArgc;
>   static char **gArgv;
>   static bool stretch_video;
>   static NSTextField *pauseLabel;
> -static NSArray * supportedImageFileTypes;
>   
>   static QemuSemaphore display_init_sem;
>   static QemuSemaphore app_started_sem;
> @@ -1168,10 +1167,6 @@ QemuCocoaView *cocoaView;
>           [pauseLabel setTextColor: [NSColor blackColor]];
>           [pauseLabel sizeToFit];
>   
> -        // set the supported image file types that can be opened
> -        supportedImageFileTypes = [NSArray arrayWithObjects: @"img", @"iso", @"dmg",
> -                                 @"qcow", @"qcow2", @"cloop", @"vmdk", @"cdr",
> -                                  @"toast", nil];
>           [self make_about_window];
>       }
>       return self;
> @@ -1414,7 +1409,6 @@ QemuCocoaView *cocoaView;
>       openPanel = [NSOpenPanel openPanel];
>       [openPanel setCanChooseFiles: YES];
>       [openPanel setAllowsMultipleSelection: NO];
> -    [openPanel setAllowedFileTypes: supportedImageFileTypes];
>       if([openPanel runModal] == NSModalResponseOK) {
>           NSString * file = [[[openPanel URLs] objectAtIndex: 0] path];
>           if(file == nil) {



^ permalink raw reply	[flat|nested] 25+ messages in thread

end of thread, other threads:[~2022-02-18 18:29 UTC | newest]

Thread overview: 25+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-02-15  8:02 [PATCH v6 00/15] host: Support macOS 12 Philippe Mathieu-Daudé via
2022-02-15  8:02 ` [PATCH v6 01/15] MAINTAINERS: Add Akihiko Odaki to macOS-relateds Philippe Mathieu-Daudé via
2022-02-15  8:02 ` [PATCH v6 02/15] configure: Allow passing extra Objective C compiler flags Philippe Mathieu-Daudé via
2022-02-18 18:08   ` Akihiko Odaki
2022-02-15  8:02 ` [PATCH v6 03/15] tests/fp/berkeley-testfloat-3: Ignore ignored #pragma directives Philippe Mathieu-Daudé via
2022-02-18 18:09   ` Akihiko Odaki
2022-02-15  8:02 ` [PATCH v6 04/15] hvf: Use standard CR0 and CR4 register definitions Philippe Mathieu-Daudé via
2022-02-15  8:02 ` [PATCH v6 05/15] hvf: Make hvf_get_segments() / hvf_put_segments() local Philippe Mathieu-Daudé via
2022-02-15  8:02 ` [PATCH v6 06/15] hvf: Remove deprecated hv_vcpu_flush() calls Philippe Mathieu-Daudé via
2022-02-15  8:02 ` [PATCH v6 07/15] block/file-posix: Remove a deprecation warning on macOS 12 Philippe Mathieu-Daudé via
2022-02-18 18:11   ` Akihiko Odaki
2022-02-15  8:03 ` [PATCH v6 08/15] audio/coreaudio: " Philippe Mathieu-Daudé via
2022-02-18 18:26   ` Akihiko Odaki
2022-02-15  8:03 ` [PATCH v6 09/15] audio/dbus: Fix building with modules on macOS Philippe Mathieu-Daudé via
2022-02-15  8:03 ` [PATCH v6 10/15] ui/cocoa: Remove allowedFileTypes restriction in SavePanel Philippe Mathieu-Daudé via
2022-02-18 18:28   ` Akihiko Odaki
2022-02-15  8:03 ` [PATCH v6 11/15] ui/cocoa: Add Services menu Philippe Mathieu-Daudé via
2022-02-15 16:38   ` Will Cohen
2022-02-18 17:33   ` Peter Maydell
2022-02-18 17:49     ` Akihiko Odaki
2022-02-18 18:18       ` Christian Schoenebeck
2022-02-15  8:03 ` [PATCH v6 12/15] ui/cocoa: Do not alert even without block devices Philippe Mathieu-Daudé via
2022-02-15  8:03 ` [PATCH v6 13/15] ui/cocoa: Fix the leak of qemu_console_get_label Philippe Mathieu-Daudé via
2022-02-15  8:03 ` [PATCH v6 14/15] lcitool: Refresh Philippe Mathieu-Daudé via
2022-02-15  8:03 ` [PATCH v6 15/15] gitlab-ci: Support macOS 12 via cirrus-run Philippe Mathieu-Daudé via

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.