Your message dated Fri, 5 Dec 2025 06:53:18 -0500
with message-id 
<CAAajCMZf4NmY=stnf2bt-dno05xmo86o-3wcuygandu8lsj...@mail.gmail.com>
and subject line Re: Bug#1092506: gvfs: FTBFS on hurd-i386
has caused the Debian Bug report #1092506,
regarding gvfs: FTBFS on hurd-i386
to be marked as done.

This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.

(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)


-- 
1092506: https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1092506
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Source: gvfs
Version: 1.56.1-1
Severity: important
Tags: patch
User: [email protected]
Usertags: hurd
X-Debbugs-CC: [email protected]

Hi,

gvfs FTBFS on hurd-i386 due to several dependencies on systemd, which is not
available on GNU/Hurd.

Attached are seven patches enabling a successful build:
One is Debian-specific and six relates to meson.build files.

The meson.build file with linux-specific dependencies are embedded in
"if host_machine.system().contains('linux'); ...; endif" statements:
meson.build.patch
client_meson.build.patch
common_meson.build.patch
daemon_meson.build.patch
monitor_meson.build.patch
metadata_meson.build.patch

The first part of the debian-specific debian_rules.diff relate to the
override_dh_link-arch: target, enabling building the packages more than once (at
least on GNU/Hurd).
The second part creating an override_dh_missing: target
is needed for successful creation of the packages for GNU/Hurd.

This package has also been successfully built on GNU/Linux amd64 with the
attached patches applied. 

Thanks!



Index: gvfs-1.56.1/client/meson.build
===================================================================
--- gvfs-1.56.1.orig/client/meson.build
+++ gvfs-1.56.1/client/meson.build
@@ -77,27 +77,29 @@ if enable_devel_utils
 endif
 
 # FUSE daemon
-if enable_fuse
-  if install_systemd_tmpfilesdir
-    install_data(
-      'gvfsd-fuse-tmpfiles.conf',
-      install_dir: systemd_tmpfilesdir,
-    )
-  endif
+if host_machine.system().contains('linux')
+  if enable_fuse
+    if install_systemd_tmpfilesdir
+      install_data(
+        'gvfsd-fuse-tmpfiles.conf',
+        install_dir: systemd_tmpfilesdir,
+      )
+    endif
 
-  deps = [
-    fuse_dep,
-    libgvfscommon_dep,
-  ]
+    deps = [
+      fuse_dep,
+      libgvfscommon_dep,
+    ]
 
-  executable(
-    'gvfsd-fuse',
-    'gvfsfusedaemon.c',
-    include_directories: top_inc,
-    dependencies: deps,
-    c_args: cflags + ['-UG_LOG_DOMAIN'],
-    install: true,
-    install_rpath: gvfs_rpath,
-    install_dir: gvfs_libexecdir,
-  )
+    executable(
+      'gvfsd-fuse',
+      'gvfsfusedaemon.c',
+      include_directories: top_inc,
+      dependencies: deps,
+      c_args: cflags + ['-UG_LOG_DOMAIN'],
+      install: true,
+      install_rpath: gvfs_rpath,
+      install_dir: gvfs_libexecdir,
+    )
+  endif
 endif
Index: gvfs-1.56.1/common/meson.build
===================================================================
--- gvfs-1.56.1.orig/common/meson.build
+++ gvfs-1.56.1/common/meson.build
@@ -100,22 +100,24 @@ if enable_dnssd
   )
 endif
 
-if enable_mtp or enable_gphoto2
-  deps = [
-    glib_dep,
-    gudev_dep,
-  ]
+if host_machine.system().contains('linux')
+  if enable_mtp or enable_gphoto2
+    deps = [
+      glib_dep,
+      gudev_dep,
+    ]
 
-  libgvfscommon_gphoto2 = static_library(
-    'gvfscommon-gphoto2',
-    sources: 'gvfsgphoto2utils.c',
-    include_directories: top_inc,
-    dependencies: deps,
-  )
+    libgvfscommon_gphoto2 = static_library(
+      'gvfscommon-gphoto2',
+      sources: 'gvfsgphoto2utils.c',
+      include_directories: top_inc,
+      dependencies: deps,
+    )
 
-  libgvfscommon_gphoto2_dep = declare_dependency(
-    include_directories: common_inc,
-    dependencies: deps,
-    link_with: libgvfscommon_gphoto2,
-  )
-endif
+    libgvfscommon_gphoto2_dep = declare_dependency(
+      include_directories: common_inc,
+      dependencies: deps,
+      link_with: libgvfscommon_gphoto2,
+    )
+  endif
+endif
\ No newline at end of file
Index: gvfs-1.56.1/daemon/meson.build
===================================================================
--- gvfs-1.56.1.orig/daemon/meson.build
+++ gvfs-1.56.1/daemon/meson.build
@@ -5,18 +5,20 @@ dbus_service = gvfs_namespace + '.Daemon
 dbus_exec = 'gvfsd'
 dbus_systemd_service = ''
 
-if install_systemd_systemduserunitdir
-  service = 'gvfs-daemon.service'
+if host_machine.system().contains('linux')
+  if install_systemd_systemduserunitdir
+    service = 'gvfs-daemon.service'
 
-  configure_file(
-    input: service + '.in',
-    output: '@BASENAME@',
-    configuration: service_conf,
-    install: true,
-    install_dir: systemd_systemduserunitdir,
-  )
+    configure_file(
+      input: service + '.in',
+      output: '@BASENAME@',
+      configuration: service_conf,
+      install: true,
+      install_dir: systemd_systemduserunitdir,
+    )
 
-  dbus_systemd_service = 'SystemdService=' + service
+    dbus_systemd_service = 'SystemdService=' + service
+  endif
 endif
 
 dbus_service_conf = {
@@ -265,31 +267,33 @@ if enable_sftp
   mounts += ['sftp']
 endif
 
-if enable_samba
-  sources = files('gvfsbackendsmb.c')
-
-  cflags = [
-    '-DBACKEND_HEADER=gvfsbackendsmb.h',
-    '-DDEFAULT_BACKEND_TYPE=smb',
-    '-DBACKEND_TYPES="smb-share", G_VFS_TYPE_BACKEND_SMB,',
-    '-DMAX_JOB_THREADS=1',
-  ]
+if host_machine.system().contains('linux')
+  if enable_samba
+    sources = files('gvfsbackendsmb.c')
+
+    cflags = [
+      '-DBACKEND_HEADER=gvfsbackendsmb.h',
+      '-DDEFAULT_BACKEND_TYPE=smb',
+      '-DBACKEND_TYPES="smb-share", G_VFS_TYPE_BACKEND_SMB,',
+      '-DMAX_JOB_THREADS=1',
+    ]
+
+    programs += {'gvfsd-smb': {'sources': sources, 'dependencies': [smbclient_dep], 'c_args': cflags}}
+    mounts += ['smb']
+    schema_data += files('org.gnome.system.smb.gschema.xml')
+    convert_data += files('gvfs-smb.convert')
+
+    cflags = [
+      '-DBACKEND_HEADER=gvfsbackendsmbbrowse.h',
+      '-DDEFAULT_BACKEND_TYPE=smb-network',
+      '-DBACKEND_TYPES="smb-network", G_VFS_TYPE_BACKEND_SMB_BROWSE, "smb-server",  G_VFS_TYPE_BACKEND_SMB_BROWSE,',
+      '-DMAX_JOB_THREADS=1',
+      '-DMOUNTABLE_DBUS_NAME=' + gvfs_namespace + '.mountpoint_smb_browse',
+    ]
 
-  programs += {'gvfsd-smb': {'sources': sources, 'dependencies': [smbclient_dep], 'c_args': cflags}}
-  mounts += ['smb']
-  schema_data += files('org.gnome.system.smb.gschema.xml')
-  convert_data += files('gvfs-smb.convert')
-
-  cflags = [
-    '-DBACKEND_HEADER=gvfsbackendsmbbrowse.h',
-    '-DDEFAULT_BACKEND_TYPE=smb-network',
-    '-DBACKEND_TYPES="smb-network", G_VFS_TYPE_BACKEND_SMB_BROWSE, "smb-server",  G_VFS_TYPE_BACKEND_SMB_BROWSE,',
-    '-DMAX_JOB_THREADS=1',
-    '-DMOUNTABLE_DBUS_NAME=' + gvfs_namespace + '.mountpoint_smb_browse',
-  ]
-
-  programs += {'gvfsd-smb-browse': {'sources': sources + files('gvfsbackendsmbbrowse.c'), 'dependencies': [smbclient_dep], 'c_args': cflags}}
-  mounts += ['smb-browse']
+    programs += {'gvfsd-smb-browse': {'sources': sources + files('gvfsbackendsmbbrowse.c'), 'dependencies': [smbclient_dep], 'c_args': cflags}}
+    mounts += ['smb-browse']
+  endif
 endif
 
 if enable_dnssd
@@ -326,59 +330,63 @@ if enable_archive
   mounts += ['archive']
 endif
 
-if enable_cdda
-  deps = [
-    gudev_dep,
-    libcdio_paranoia_dep,
-  ]
+if host_machine.system().contains('linux')
+  if enable_cdda
+    deps = [
+      gudev_dep,
+      libcdio_paranoia_dep,
+    ]
+
+    cflags = [
+      '-DBACKEND_HEADER=gvfsbackendcdda.h',
+      '-DDEFAULT_BACKEND_TYPE=cdda',
+      '-DBACKEND_TYPES="cdda", G_VFS_TYPE_BACKEND_CDDA,',
+      '-DMAX_JOB_THREADS=1',
+    ]
 
-  cflags = [
-    '-DBACKEND_HEADER=gvfsbackendcdda.h',
-    '-DDEFAULT_BACKEND_TYPE=cdda',
-    '-DBACKEND_TYPES="cdda", G_VFS_TYPE_BACKEND_CDDA,',
-    '-DMAX_JOB_THREADS=1',
-  ]
-
-  programs += {'gvfsd-cdda': {'sources': files('gvfsbackendcdda.c'), 'dependencies': deps, 'c_args': cflags}}
-  mounts += ['cdda']
+    programs += {'gvfsd-cdda': {'sources': files('gvfsbackendcdda.c'), 'dependencies': deps, 'c_args': cflags}}
+    mounts += ['cdda']
+  endif
 endif
 
-if enable_admin
-  deps = [
-    libcap_dep,
-    polkit_gobject_dep,
-  ]
-
-  cflags = [
-    '-DBACKEND_HEADER=gvfsbackendadmin.h',
-    '-DDEFAULT_BACKEND_TYPE=admin',
-    '-DBACKEND_TYPES="admin", G_VFS_TYPE_BACKEND_ADMIN,',
-    '-DMOUNTABLE_DBUS_NAME=' + gvfs_namespace + '.mountpoint_admin',
-  ]
-
-  programs += {'gvfsd-admin': {'sources': files('gvfsbackendadmin.c'), 'dependencies': deps, 'c_args': cflags}}
-  mounts += ['admin']
-
-  policy = gvfs_namespace + '.file-operations.policy'
-
-  i18n.merge_file(
-    input: configure_file(
-      input: policy + '.in.in',
+if host_machine.system().contains('linux')
+  if enable_admin
+    deps = [
+      libcap_dep,
+      polkit_gobject_dep,
+    ]
+
+    cflags = [
+      '-DBACKEND_HEADER=gvfsbackendadmin.h',
+      '-DDEFAULT_BACKEND_TYPE=admin',
+      '-DBACKEND_TYPES="admin", G_VFS_TYPE_BACKEND_ADMIN,',
+      '-DMOUNTABLE_DBUS_NAME=' + gvfs_namespace + '.mountpoint_admin',
+    ]
+
+    programs += {'gvfsd-admin': {'sources': files('gvfsbackendadmin.c'), 'dependencies': deps, 'c_args': cflags}}
+    mounts += ['admin']
+
+    policy = gvfs_namespace + '.file-operations.policy'
+
+    i18n.merge_file(
+      input: configure_file(
+        input: policy + '.in.in',
+        output: '@BASENAME@',
+        configuration: service_conf,
+      ),
       output: '@BASENAME@',
-      configuration: service_conf,
-    ),
-    output: '@BASENAME@',
-    po_dir: po_dir,
-    install: true,
-    install_dir: gvfs_datadir / 'polkit-1/actions',
-  )
+      po_dir: po_dir,
+      install: true,
+      install_dir: gvfs_datadir / 'polkit-1/actions',
+    )
 
-  configure_file(
-    input: gvfs_namespace + '.file-operations.rules.in',
-    output: '@BASENAME@',
-    configuration: {'PRIVILEGED_GROUP': privileged_group},
-    install_dir: gvfs_datadir / 'polkit-1/rules.d',
-  )
+    configure_file(
+      input: gvfs_namespace + '.file-operations.rules.in',
+      output: '@BASENAME@',
+      configuration: {'PRIVILEGED_GROUP': privileged_group},
+      install_dir: gvfs_datadir / 'polkit-1/rules.d',
+    )
+  endif
 endif
 
 if enable_google
@@ -416,43 +424,47 @@ if enable_onedrive
   mounts += ['onedrive']
 endif
 
-if enable_gphoto2
-  deps = [
-    gio_unix_dep,
-    libgphoto2_dep,
-    libgvfscommon_gphoto2_dep,
-  ]
-
-  cflags = [
-    '-DBACKEND_HEADER=gvfsbackendgphoto2.h',
-    '-DDEFAULT_BACKEND_TYPE=gphoto2',
-    '-DBACKEND_TYPES="gphoto2", G_VFS_TYPE_BACKEND_GPHOTO2,',
-    '-DMAX_JOB_THREADS=1',
-  ]
+if host_machine.system().contains('linux')
+  if enable_gphoto2
+    deps = [
+      gio_unix_dep,
+      libgphoto2_dep,
+      libgvfscommon_gphoto2_dep,
+    ]
+
+    cflags = [
+      '-DBACKEND_HEADER=gvfsbackendgphoto2.h',
+      '-DDEFAULT_BACKEND_TYPE=gphoto2',
+      '-DBACKEND_TYPES="gphoto2", G_VFS_TYPE_BACKEND_GPHOTO2,',
+      '-DMAX_JOB_THREADS=1',
+    ]
 
-  programs += {'gvfsd-gphoto2': {'sources': files('gvfsbackendgphoto2.c'), 'dependencies': deps, 'c_args': cflags}}
-  mounts += ['gphoto2']
+    programs += {'gvfsd-gphoto2': {'sources': files('gvfsbackendgphoto2.c'), 'dependencies': deps, 'c_args': cflags}}
+    mounts += ['gphoto2']
+  endif
 endif
 
-if enable_mtp
-  deps = [
-    libgvfscommon_gphoto2_dep,
-    libmtp_dep
-  ]
-
-  cflags = [
-    '-DBACKEND_HEADER=gvfsbackendmtp.h',
-    '-DDEFAULT_BACKEND_TYPE=mtp',
-    '-DBACKEND_TYPES="mtp", G_VFS_TYPE_BACKEND_MTP,',
-    '-DMAX_JOB_THREADS=1',
-  ]
+if host_machine.system().contains('linux')
+  if enable_mtp
+    deps = [
+      libgvfscommon_gphoto2_dep,
+      libmtp_dep
+    ]
+
+    cflags = [
+      '-DBACKEND_HEADER=gvfsbackendmtp.h',
+      '-DDEFAULT_BACKEND_TYPE=mtp',
+      '-DBACKEND_TYPES="mtp", G_VFS_TYPE_BACKEND_MTP,',
+      '-DMAX_JOB_THREADS=1',
+    ]
+
+    if enable_libusb
+      deps += libusb_dep
+    endif
 
-  if enable_libusb
-    deps += libusb_dep
+    programs += {'gvfsd-mtp': {'sources': files('gvfsbackendmtp.c'), 'dependencies': deps, 'c_args': cflags}}
+    mounts += ['mtp']
   endif
-
-  programs += {'gvfsd-mtp': {'sources': files('gvfsbackendmtp.c'), 'dependencies': deps, 'c_args': cflags}}
-  mounts += ['mtp']
 endif
 
 if enable_http
@@ -497,22 +509,24 @@ if enable_http
   mounts += ['dav']
 endif
 
-if enable_afc
-  deps = [
-    libimobiledevice_dep,
-    libplist_dep,
-  ]
-
-  cflags = [
-    '-DBACKEND_HEADER=gvfsbackendafc.h',
-    '-DDEFAULT_BACKEND_TYPE=afc',
-    '-DBACKEND_TYPES="afc", G_VFS_TYPE_BACKEND_AFC,',
-    '-DMAX_JOB_THREADS=1',
-    '-DBACKEND_USES_GVFS=1',
-  ]
+if host_machine.system().contains('linux')
+  if enable_afc
+    deps = [
+      libimobiledevice_dep,
+      libplist_dep,
+    ]
+
+    cflags = [
+      '-DBACKEND_HEADER=gvfsbackendafc.h',
+      '-DDEFAULT_BACKEND_TYPE=afc',
+      '-DBACKEND_TYPES="afc", G_VFS_TYPE_BACKEND_AFC,',
+      '-DMAX_JOB_THREADS=1',
+      '-DBACKEND_USES_GVFS=1',
+    ]
 
-  programs += {'gvfsd-afc': {'sources': files('gvfsbackendafc.c'), 'dependencies': deps, 'c_args': cflags}}
-  mounts += ['afc']
+    programs += {'gvfsd-afc': {'sources': files('gvfsbackendafc.c'), 'dependencies': deps, 'c_args': cflags}}
+    mounts += ['afc']
+  endif
 endif
 
 if enable_afp
Index: gvfs-1.56.1/meson.build
===================================================================
--- gvfs-1.56.1.orig/meson.build
+++ gvfs-1.56.1/meson.build
@@ -272,24 +272,26 @@ gio_schemasdir = gio_dep.get_variable(
 )
 
 # *** Check for systemd options ***
-systemd_systemduserunitdir = get_option('systemduserunitdir')
-install_systemd_systemduserunitdir = (systemd_systemduserunitdir != 'no')
-
-systemd_tmpfilesdir = get_option('tmpfilesdir')
-install_systemd_tmpfilesdir = (systemd_tmpfilesdir != 'no')
-
-if install_systemd_systemduserunitdir or install_systemd_tmpfilesdir
-  if systemd_systemduserunitdir == '' or systemd_tmpfilesdir == ''
-    systemd_dep = dependency('systemd', version: '>= 206', required: false)
-
-    if install_systemd_systemduserunitdir and systemd_systemduserunitdir == ''
-      assert(systemd_dep.found(), 'systemd required but not found, please provide a valid systemd user unit dir or disable it')
-      systemd_systemduserunitdir = systemd_dep.get_variable(pkgconfig: 'systemduserunitdir', pkgconfig_define: ['prefix', gvfs_prefix])
-    endif
-
-    if install_systemd_tmpfilesdir and systemd_tmpfilesdir == ''
-      assert(systemd_dep.found(), 'systemd not found, if you use opentmpfiles please provide a valid systemd user unit dir or disable it')
-      systemd_tmpfilesdir = systemd_dep.get_variable(pkgconfig: 'tmpfilesdir', pkgconfig_define: ['prefix', gvfs_prefix])
+if host_machine.system().contains('linux')
+  systemd_systemduserunitdir = get_option('systemduserunitdir')
+  install_systemd_systemduserunitdir = (systemd_systemduserunitdir != 'no')
+
+  systemd_tmpfilesdir = get_option('tmpfilesdir')
+  install_systemd_tmpfilesdir = (systemd_tmpfilesdir != 'no')
+
+  if install_systemd_systemduserunitdir or install_systemd_tmpfilesdir
+    if systemd_systemduserunitdir == '' or systemd_tmpfilesdir == ''
+      systemd_dep = dependency('systemd', version: '>= 206', required: false)
+
+      if install_systemd_systemduserunitdir and systemd_systemduserunitdir == ''
+        assert(systemd_dep.found(), 'systemd required but not found, please provide a valid systemd user unit dir or disable it')
+        systemd_systemduserunitdir = systemd_dep.get_variable(pkgconfig: 'systemduserunitdir', pkgconfig_define: ['prefix', gvfs_prefix])
+      endif
+
+      if install_systemd_tmpfilesdir and systemd_tmpfilesdir == ''
+        assert(systemd_dep.found(), 'systemd not found, if you use opentmpfiles please provide a valid systemd user unit dir or disable it')
+        systemd_tmpfilesdir = systemd_dep.get_variable(pkgconfig: 'tmpfilesdir', pkgconfig_define: ['prefix', gvfs_prefix])
+      endif
     endif
   endif
 endif
@@ -302,11 +304,13 @@ endif
 config_h.set('HAVE_GCR', enable_gcr)
 
 # *** Check if we should build with admin backend ***
-privileged_group = get_option('privileged_group')
-enable_admin = get_option('admin')
-if enable_admin
-  libcap_dep = dependency('libcap')
-  polkit_gobject_dep = dependency('polkit-gobject-1')
+if host_machine.system().contains('linux')
+  privileged_group = get_option('privileged_group')
+  enable_admin = get_option('admin')
+  if enable_admin
+    libcap_dep = dependency('libcap')
+    polkit_gobject_dep = dependency('polkit-gobject-1')
+  endif
 endif
 
 # *** Check if we should build with http backend ***
@@ -325,45 +329,55 @@ endif
 config_h.set('HAVE_AVAHI', enable_dnssd)
 
 # *** Check for gudev ***
-enable_gudev = get_option('gudev')
-if enable_gudev
-  gudev_dep = dependency('gudev-1.0', version: '>= 147')
+if host_machine.system().contains('linux')
+  enable_gudev = get_option('gudev')
+  if enable_gudev
+    gudev_dep = dependency('gudev-1.0', version: '>= 147')
+  endif
+  config_h.set('HAVE_GUDEV', enable_gudev)
 endif
-config_h.set('HAVE_GUDEV', enable_gudev)
 
 # *** Check for FUSE ***
-enable_fuse = get_option('fuse')
-if enable_fuse
-  fuse_dep = dependency('fuse3', version: '>= 3.0.0')
+if host_machine.system().contains('linux')
+  enable_fuse = get_option('fuse')
+  if enable_fuse
+    fuse_dep = dependency('fuse3', version: '>= 3.0.0')
+  endif
+  config_h.set('HAVE_FUSE', enable_fuse)
 endif
-config_h.set('HAVE_FUSE', enable_fuse)
 
 # *** Check for udisks2 ***
-enable_udisks2 = get_option('udisks2')
-if enable_udisks2
-  assert(enable_gudev, 'UDisks2 requested but gudev is required')
-  udisks2_dep = dependency('udisks2', version: '>= 1.97')
+if host_machine.system().contains('linux')
+  enable_udisks2 = get_option('udisks2')
+  if enable_udisks2
+    assert(enable_gudev, 'UDisks2 requested but gudev is required')
+    udisks2_dep = dependency('udisks2', version: '>= 1.97')
+  endif
 endif
 
 # *** Check for libsystemd-login ***
-enable_logind = get_option('logind')
-if enable_logind
-  logind_dep = dependency('libsystemd', required: false)
-  if not logind_dep.found()
-    logind_dep = dependency('libelogind', version: '>= 229', required: false)
-  endif
+if host_machine.system().contains('linux')
+  enable_logind = get_option('logind')
+  if enable_logind
+    logind_dep = dependency('libsystemd', required: false)
+    if not logind_dep.found()
+      logind_dep = dependency('libelogind', version: '>= 229', required: false)
+    endif
 
-  assert(logind_dep.found(), 'logind requested but libsystemd nor libelogind not found')
+    assert(logind_dep.found(), 'logind requested but libsystemd nor libelogind not found')
+  endif
+  config_h.set('HAVE_LOGIND', enable_logind)
 endif
-config_h.set('HAVE_LOGIND', enable_logind)
 
 # *** Check if we should build with AFC backend ***
-enable_afc = get_option('afc')
-if enable_afc
-  libimobiledevice_dep = dependency('libimobiledevice-1.0', version: '>= 1.2')
-  libplist_dep = dependency('libplist-2.0', required: false)
-  if not libplist_dep.found()
-    libplist_dep = dependency('libplist', version: '>= 0.15')
+if host_machine.system().contains('linux')
+  enable_afc = get_option('afc')
+  if enable_afc
+    libimobiledevice_dep = dependency('libimobiledevice-1.0', version: '>= 1.2')
+    libplist_dep = dependency('libplist-2.0', required: false)
+    if not libplist_dep.found()
+      libplist_dep = dependency('libplist', version: '>= 0.15')
+    endif
   endif
 endif
 
@@ -388,17 +402,21 @@ endif
 config_h.set('HAVE_BLURAY', enable_bluray)
 
 # *** Check if we should build with libusb-1.0 ***
-enable_libusb = get_option('libusb')
-if enable_libusb
-  libusb_dep = dependency('libusb-1.0', version: '>= 1.0.21')
+if host_machine.system().contains('linux')
+  enable_libusb = get_option('libusb')
+  if enable_libusb
+    libusb_dep = dependency('libusb-1.0', version: '>= 1.0.21')
+  endif
+  config_h.set10('HAVE_LIBUSB', enable_libusb)
 endif
-config_h.set10('HAVE_LIBUSB', enable_libusb)
 
 # *** Check for samba ***
-enable_samba = get_option('smb')
-if enable_samba
-  smbclient_dep = dependency('smbclient')
-  config_h.set('HAVE_SMBC_READDIRPLUS2', cc.has_function('smbc_readdirplus2', dependencies: smbclient_dep))
+if host_machine.system().contains('linux')
+  enable_samba = get_option('smb')
+  if enable_samba
+    smbclient_dep = dependency('smbclient')
+    config_h.set('HAVE_SMBC_READDIRPLUS2', cc.has_function('smbc_readdirplus2', dependencies: smbclient_dep))
+  endif
 endif
 
 # *** Check for libarchive ***
@@ -408,14 +426,16 @@ if enable_archive
 endif
 
 # *** Check if we should build with CDDA backend ***
-enable_cdda = get_option('cdda')
-if enable_cdda
-  assert(enable_gudev, 'CDDA backend requested but gudev is required')
+if host_machine.system().contains('linux')
+  enable_cdda = get_option('cdda')
+  if enable_cdda
+    assert(enable_gudev, 'CDDA backend requested but gudev is required')
 
-  libcdio_paranoia_dep = dependency('libcdio_paranoia', version: '>= 0.78.2')
-  config_h.set('HAVE_PARANOIA_NEW_INCLUDES', cc.has_header('cdio/paranoia/paranoia.h', dependencies: libcdio_paranoia_dep))
+    libcdio_paranoia_dep = dependency('libcdio_paranoia', version: '>= 0.78.2')
+    config_h.set('HAVE_PARANOIA_NEW_INCLUDES', cc.has_header('cdio/paranoia/paranoia.h', dependencies: libcdio_paranoia_dep))
 
-  config_h.set('HAVE_CDDA', enable_cdda)
+    config_h.set('HAVE_CDDA', enable_cdda)
+  endif
 endif
 
 # *** Check if we should build with Google backend ***
@@ -435,27 +455,31 @@ if enable_onedrive
 endif
 
 # *** Check for gphoto2 ***
-enable_gphoto2 = get_option('gphoto2')
-if enable_gphoto2
-  assert(enable_gudev, 'gphoto2 requested but gudev is required')
-  assert(host_machine.system().contains('linux') or host_machine.system().contains('bsd'),
+if host_machine.system().contains('linux')
+  enable_gphoto2 = get_option('gphoto2')
+  if enable_gphoto2
+    assert(enable_gudev, 'gphoto2 requested but gudev is required')
+    assert(host_machine.system().contains('linux') or host_machine.system().contains('bsd'),
          'Cannot build with gphoto2 support. Need OS tweaks in volume monitor.')
 
-  libgphoto2_dep = dependency('libgphoto2', version: '>= 2.4.0')
-  config_h.set('HAVE_GPHOTO25', libgphoto2_dep.version().version_compare('>= 2.5.0'))
+    libgphoto2_dep = dependency('libgphoto2', version: '>= 2.4.0')
+    config_h.set('HAVE_GPHOTO25', libgphoto2_dep.version().version_compare('>= 2.5.0'))
+  endif
 endif
 
 # *** Check for libmtp ***
-enable_mtp = get_option('mtp')
-if enable_mtp
-  assert(enable_gudev, 'libmtp requested but gudev is required')
-
-  libmtp_dep = dependency('libmtp', version: '>= 1.1.12')
-  foreach version: ['1.1.15', '1.1.21']
-    config_h.set10('HAVE_LIBMTP_' + version.underscorify(), libmtp_dep.version().version_compare('>= ' + version))
-  endforeach
+if host_machine.system().contains('linux')
+  enable_mtp = get_option('mtp')
+  if enable_mtp
+    assert(enable_gudev, 'libmtp requested but gudev is required')
+
+    libmtp_dep = dependency('libmtp', version: '>= 1.1.12')
+    foreach version: ['1.1.15', '1.1.21']
+      config_h.set10('HAVE_LIBMTP_' + version.underscorify(), libmtp_dep.version().version_compare('>= ' + version))
+    endforeach
+  endif
+  config_h.set('HAVE_LIBMTP', enable_mtp)
 endif
-config_h.set('HAVE_LIBMTP', enable_mtp)
 
 # *** AFP backend ***
 enable_afp = get_option('afp')
@@ -505,43 +529,73 @@ gnome.post_install(
   gio_querymodules: gio_giomoduledir,
 )
 
-summary({
-  'systemduserunitdir': systemd_systemduserunitdir,
-  'tmpfilesdir': systemd_tmpfilesdir,
-  'privileged_group': privileged_group,
-}, section: 'Configuration')
-
-summary({
-  'admin': enable_admin,
-  'afc': enable_afc,
-  'afp': enable_afp,
-  'archive': enable_archive,
-  'burn': enable_burn,
-  'cdda': enable_cdda,
-  'dnssd': enable_dnssd,
-  'goa': enable_goa,
-  'google': enable_google,
-  'gphoto2': enable_gphoto2,
-  'http': enable_http,
-  'mtp': enable_mtp,
-  'nfs': enable_nfs,
-  'onedrive': enable_onedrive,
-  'sftp': enable_sftp,
-  'smb': enable_samba,
-  'udisks2': enable_udisks2,
-  'wsdd': enable_wsdd,
-}, section: 'Backends')
-
-summary({
-  'bluray': enable_bluray,
-  'fuse': enable_fuse,
-  'gcr': enable_gcr,
-  'gcrypt': enable_gcrypt,
-  'gudev': enable_gudev,
-  'keyring': enable_keyring,
-  'logind': enable_logind,
-  'libusb': enable_libusb,
-}, section: 'Dependencies')
+if host_machine.system().contains('linux')
+  summary({
+    'systemduserunitdir': systemd_systemduserunitdir,
+    'tmpfilesdir': systemd_tmpfilesdir,
+    'privileged_group': privileged_group,
+  }, section: 'Configuration')
+else
+  summary({
+  }, section: 'Configuration')
+endif
+
+if host_machine.system().contains('linux')
+  summary({
+    'admin': enable_admin,
+    'afc': enable_afc,
+    'afp': enable_afp,
+    'archive': enable_archive,
+    'burn': enable_burn,
+    'cdda': enable_cdda,
+    'dnssd': enable_dnssd,
+    'goa': enable_goa,
+    'google': enable_google,
+    'gphoto2': enable_gphoto2,
+    'http': enable_http,
+    'mtp': enable_mtp,
+    'nfs': enable_nfs,
+    'onedrive': enable_onedrive,
+    'sftp': enable_sftp,
+    'smb': enable_samba,
+    'udisks2': enable_udisks2,
+    'wsdd': enable_wsdd,
+  }, section: 'Backends')
+else
+  summary({
+    'afp': enable_afp,
+    'archive': enable_archive,
+    'burn': enable_burn,
+    'dnssd': enable_dnssd,
+    'goa': enable_goa,
+    'google': enable_google,
+    'http': enable_http,
+    'nfs': enable_nfs,
+    'onedrive': enable_onedrive,
+    'sftp': enable_sftp,
+    'wsdd': enable_wsdd,
+  }, section: 'Backends')
+endif
+
+if host_machine.system().contains('linux')
+  summary({
+    'bluray': enable_bluray,
+    'fuse': enable_fuse,
+    'gcr': enable_gcr,
+    'gcrypt': enable_gcrypt,
+    'gudev': enable_gudev,
+    'keyring': enable_keyring,
+    'logind': enable_logind,
+  '  libusb': enable_libusb,
+  }, section: 'Dependencies')
+else
+  summary({
+    'bluray': enable_bluray,
+    'gcr': enable_gcr,
+    'gcrypt': enable_gcrypt,
+    'keyring': enable_keyring,
+  }, section: 'Dependencies')
+endif
 
 summary({
   'deprecated_apis': enable_deprecated_apis,
Index: gvfs-1.56.1/metadata/meson.build
===================================================================
--- gvfs-1.56.1.orig/metadata/meson.build
+++ gvfs-1.56.1/metadata/meson.build
@@ -2,18 +2,20 @@ dbus_service = gvfs_namespace + '.Metada
 dbus_exec = 'gvfsd-metadata'
 dbus_systemd_service = ''
 
-if install_systemd_systemduserunitdir
-  service = 'gvfs-metadata.service'
+if host_machine.system().contains('linux')
+  if install_systemd_systemduserunitdir
+    service = 'gvfs-metadata.service'
+
+    configure_file(
+      input: service + '.in',
+      output: '@BASENAME@',
+      configuration: service_conf,
+      install: true,
+      install_dir: systemd_systemduserunitdir,
+    )
 
-  configure_file(
-    input: service + '.in',
-    output: '@BASENAME@',
-    configuration: service_conf,
-    install: true,
-    install_dir: systemd_systemduserunitdir,
-  )
-
-  dbus_systemd_service = 'SystemdService=' + service
+    dbus_systemd_service = 'SystemdService=' + service
+  endif
 endif
 
 dbus_service_conf = {
@@ -74,8 +76,10 @@ libmetadata_dep = declare_dependency(
 
 deps = [libmetadata_dep]
 
-if enable_gudev
-  deps += gudev_dep
+if host_machine.system().contains('linux')
+  if enable_gudev
+    deps += gudev_dep
+  endif
 endif
 
 executable(
Index: gvfs-1.56.1/monitor/meson.build
===================================================================
--- gvfs-1.56.1.orig/monitor/meson.build
+++ gvfs-1.56.1/monitor/meson.build
@@ -3,24 +3,32 @@ subdir('proxy')
 # [[service name suffix, install monitor test data]]
 monitors = {}
 
-if enable_afc
-  monitors += {'Afc': true}
+if host_machine.system().contains('linux')
+  if enable_afc
+    monitors += {'Afc': true}
+  endif
 endif
 
 if enable_goa
   monitors += {'Goa': false}
 endif
 
-if enable_gphoto2
-  monitors += {'GPhoto2': true}
+if host_machine.system().contains('linux')
+  if enable_gphoto2
+    monitors += {'GPhoto2': true}
+  endif
 endif
 
-if enable_mtp
-  monitors += {'MTP': false}
+if host_machine.system().contains('linux')
+  if enable_mtp
+    monitors += {'MTP': false}
+  endif
 endif
 
-if enable_udisks2
-  monitors += {'UDisks2': true}
+if host_machine.system().contains('linux')
+  if enable_udisks2
+    monitors += {'UDisks2': true}
+  endif
 endif
 
 monitors_test_data = []
@@ -31,20 +39,22 @@ foreach monitor, monitor_test: monitors
   dbus_exec = 'gvfs-@0@-volume-monitor'.format(monitor_name)
   dbus_systemd_service = ''
 
-  if install_systemd_systemduserunitdir
-    service = dbus_exec + '.service'
-
-    configure_file(
-      input: monitor_name / service + '.in',
-      output: '@BASENAME@',
-      configuration: service_conf,
-      install: true,
-      install_dir: systemd_systemduserunitdir,
-    )
+  if host_machine.system().contains('linux')
+    if install_systemd_systemduserunitdir
+      service = dbus_exec + '.service'
+
+      configure_file(
+        input: monitor_name / service + '.in',
+        output: '@BASENAME@',
+        configuration: service_conf,
+        install: true,
+        install_dir: systemd_systemduserunitdir,
+      )
 
-    dbus_systemd_service = 'SystemdService=' + service
+      dbus_systemd_service = 'SystemdService=' + service
+    endif
   endif
-
+  
   monitor_data = files(monitor_name / monitor_name + '.monitor')
 
   install_data(
--- a/debian/rules	2024-12-15 19:54:18.000000000 +0100
+++ b/debian/rules	2024-12-15 19:54:02.000000000 +0100
@@ -50,7 +50,7 @@
 override_dh_link-arch:
 	dh_link -a
 	for pkg in gvfs-backends gvfs-daemons gvfs-fuse; do \
-	  ( mkdir -p debian/$$pkg/usr/lib/gvfs; cd debian/$$pkg/usr/lib/gvfs; ln -s ../../libexec/* . ); \
+	  ( mkdir -p debian/$$pkg/usr/lib/gvfs; cd debian/$$pkg/usr/lib/gvfs; ln -sf ../../libexec/* . ); \
 	done
 
 override_dh_install:
@@ -64,6 +64,9 @@
 override_dh_shlibdeps:
 	dh_shlibdeps -Lgvfs-libs -l/usr/lib/$(DEB_HOST_MULTIARCH)/gvfs
 
+override_dh_missing:
+	dh_missing --list-missing
+
 override_dh_auto_test:
 	echo "Skipping testsuite as it's better run as an autopkgtest with machine isolation"
 

--- End Message ---
--- Begin Message ---
Version: 1.58.0-2

gvfs now builds on hurd-i386. I made a mistake in 2024 that has been fixed now.
https://salsa.debian.org/gnome-team/gvfs/-/commit/329385d

https://buildd.debian.org/status/package.php?p=gvfs

Thank you,
Jeremy BĂ­cha

--- End Message ---

Reply via email to