--- a/meson.build  2026-03-07 22:33:25.770983216 +0000
+++ b/meson.build   2026-03-07 22:37:22.627752425 +0000
@@ -233,7 +233,8 @@
 config_h.set('HAVE_MALCONTENT', enable_malcontent,
              description: 'Define to 1 if malcontent support is enabled')
 
-if host_is_linux
+enable_network_manager = get_option('network_manager')
+if enable_network_manager
   # network manager
   network_manager_deps = [
     dependency('libnm', version: '>= 1.24.0'),
@@ -241,16 +242,18 @@
     dependency('mm-glib', version: '>= 0.7')
   ]
 endif
-config_h.set('BUILD_NETWORK', host_is_linux,
+config_h.set('BUILD_NETWORK', enable_network_manager,
              description: 'Define to 1 to build the Network panel')
-config_h.set('HAVE_NETWORK_MANAGER', host_is_linux,
+config_h.set('HAVE_NETWORK_MANAGER', enable_network_manager,
              description: 'Define to 1 if NetworkManager is available')
-config_h.set('BUILD_WWAN', host_is_linux,
+config_h.set('BUILD_WWAN', enable_network_manager,
              description: 'Define to 1 to build the WWan panel')
-config_h.set('HAVE_WWAN', host_is_linux,
+config_h.set('HAVE_WWAN', enable_network_manager,
              description: 'Define to 1 if WWan is available')
 
-if host_is_linux_not_s390
+enable_wacom = get_option('wacom')
+if enable_wacom
+  # Wacom
   libwacom_dep = dependency('libwacom', version: '>= 0.7')
 
   wacom_deps = [
@@ -250,14 +250,16 @@
   ]
   config_h.set('HAVE_WACOM_3D_STYLUS', libwacom_dep.version().version_compare('>= 0.27'),
                description: 'Define to 1 if libwacom provides definition for 3D styli')
-else
-  message('Wacom panels will not be built (no USB support on this platform)')
+
+endif
+
+if not host_is_linux_not_s390
   message('Thunderbolt panel will not be built (not supported on this platform)')
 endif
 
-config_h.set('BUILD_WACOM', host_is_linux_not_s390,
+config_h.set('BUILD_WACOM', enable_wacom,
              description: 'Define to 1 to build the Wacom panel')
-config_h.set('HAVE_WACOM', host_is_linux_not_s390,
+config_h.set('HAVE_WACOM', enable_wacom,
              description: 'Define to 1 if Wacom is supportted')
 config_h.set('BUILD_THUNDERBOLT', host_is_linux_not_s390,
              description: 'Define to 1 to build the Thunderbolt panel')
@@ -307,8 +309,8 @@
 })
 
 summary({
-  'NetworkManager': host_is_linux,
-  'Wacom': host_is_linux_not_s390,
+  'NetworkManager': enable_network_manager,
+  'Wacom': enable_wacom,
 }, section: 'Dependencies')
 
 summary({
