Source: gvfs Version: 1.56.1-1 Severity: important Tags: patch User: debian-hurd@lists.debian.org Usertags: hurd X-Debbugs-CC: debian-hurd@lists.debian.org
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"