diff -ruN '--exclude=*.o' '--exclude=*.a' '--exclude=Makefile' a/include/ext_iokit.h b/include/ext_iokit.h --- a/include/ext_iokit.h 2025-08-23 08:43:56.000000000 +0000 +++ b/include/ext_iokit.h 2026-04-25 11:12:29.301508174 +0000 @@ -6,7 +6,7 @@ #ifndef HC_EXT_IOKIT_H #define HC_EXT_IOKIT_H -#if defined(__APPLE__) +#if defined(__APPLE__) && defined(WITH_IOKIT) #include // kIOMasterPortDefault/kIOMainPortDefault is 0 @@ -101,7 +101,7 @@ typedef struct IOReportSubscriptionRef* IOReportSubscriptionRef; -#endif // __APPLE__ +#endif // __APPLE__ && WITH_IOKIT typedef int HM_ADAPTER_IOKIT; @@ -120,7 +120,7 @@ typedef struct hm_iokit_lib { - #if defined(__APPLE__) + #if defined(__APPLE__) && defined(WITH_IOKIT) io_connect_t conn; @@ -132,13 +132,13 @@ moving_avg_t avg_power; - #endif // __APPLE__ + #endif // __APPLE__ && WITH_IOKIT } hm_iokit_lib_t; typedef hm_iokit_lib_t IOKIT_PTR; -#if defined(__APPLE__) +#if defined(__APPLE__) && defined(WITH_IOKIT) UInt32 hm_IOKIT_strtoul (const char *str, int size, int base); void hm_IOKIT_ultostr (char *str, UInt32 val); @@ -157,6 +157,6 @@ bool iokit_init (void *hashcat_ctx); bool iokit_close (void *hashcat_ctx); -#endif // __APPLE__ +#endif // __APPLE__ && WITH_IOKIT #endif // HC_EXT_IOKIT_H diff -ruN '--exclude=*.o' '--exclude=*.a' '--exclude=Makefile' a/include/hwmon.h b/include/hwmon.h --- a/include/hwmon.h 2025-08-23 08:43:56.000000000 +0000 +++ b/include/hwmon.h 2026-04-25 11:31:13.283617065 +0000 @@ -16,7 +16,7 @@ int hm_get_temperature_with_devices_idx (hashcat_ctx_t *hashcat_ctx, const int backend_device_idx); int hm_get_fanpolicy_with_devices_idx (hashcat_ctx_t *hashcat_ctx, const int backend_device_idx); int hm_get_fanspeed_with_devices_idx (hashcat_ctx_t *hashcat_ctx, const int backend_device_idx); -#if defined(__APPLE__) +#if defined(__APPLE__) && defined(WITH_IOKIT) int hm_get_fanspeed_apple (hashcat_ctx_t *hashcat_ctx, char *fan_speed_buf); #endif int hm_get_buslanes_with_devices_idx (hashcat_ctx_t *hashcat_ctx, const int backend_device_idx); diff -ruN '--exclude=*.o' '--exclude=*.a' '--exclude=Makefile' a/include/status.h b/include/status.h --- a/include/status.h 2025-08-23 08:43:56.000000000 +0000 +++ b/include/status.h 2026-04-25 11:31:22.909867290 +0000 @@ -104,7 +104,7 @@ char *status_get_brain_rx_all (const hashcat_ctx_t *hashcat_ctx); char *status_get_brain_tx_all (const hashcat_ctx_t *hashcat_ctx); #endif -#if defined(__APPLE__) +#if defined(__APPLE__) && defined(WITH_IOKIT) char *status_get_hwmon_fan_dev (const hashcat_ctx_t *hashcat_ctx); #endif char *status_get_hwmon_dev (const hashcat_ctx_t *hashcat_ctx, const int backend_devices_idx); diff -ruN '--exclude=*.o' '--exclude=*.a' '--exclude=Makefile' a/src/ext_iokit.m b/src/ext_iokit.m --- a/src/ext_iokit.m 2025-08-23 08:43:56.000000000 +0000 +++ b/src/ext_iokit.m 2026-04-25 11:12:29.302508200 +0000 @@ -3,6 +3,9 @@ * License.....: MIT */ +#ifdef WITH_IOKIT + + #include "common.h" #include "types.h" #include "memory.h" @@ -585,3 +588,5 @@ } #endif // __APPLE__ + +#endif // WITH_IOKIT diff -ruN '--exclude=*.o' '--exclude=*.a' '--exclude=Makefile' a/src/hashcat.c b/src/hashcat.c --- a/src/hashcat.c 2025-08-23 08:43:56.000000000 +0000 +++ b/src/hashcat.c 2026-04-25 11:31:23.103872333 +0000 @@ -2095,7 +2095,7 @@ device_info->exec_msec_dev = status_get_exec_msec_dev (hashcat_ctx, device_id); device_info->speed_sec_dev = status_get_speed_sec_dev (hashcat_ctx, device_id); device_info->guess_candidates_dev = status_get_guess_candidates_dev (hashcat_ctx, device_id); - #if defined (__APPLE__) + #if defined (__APPLE__) && defined (WITH_IOKIT) device_info->hwmon_fan_dev = status_get_hwmon_fan_dev (hashcat_ctx); #endif device_info->hwmon_dev = status_get_hwmon_dev (hashcat_ctx, device_id); diff -ruN '--exclude=*.o' '--exclude=*.a' '--exclude=Makefile' a/src/hwmon.c b/src/hwmon.c --- a/src/hwmon.c 2025-08-23 08:43:56.000000000 +0000 +++ b/src/hwmon.c 2026-04-25 11:12:29.304508251 +0000 @@ -237,7 +237,7 @@ { if (backend_ctx->devices_param[backend_device_idx].opencl_device_type & CL_DEVICE_TYPE_CPU) { - #if defined (__APPLE__) + #if defined (__APPLE__) && defined (WITH_IOKIT) if (backend_ctx->devices_param[backend_device_idx].opencl_platform_vendor_id == VENDOR_ID_APPLE) { if (hwmon_ctx->hm_iokit) @@ -275,7 +275,7 @@ if (backend_ctx->devices_param[backend_device_idx].opencl_device_type & CL_DEVICE_TYPE_GPU) { - #if defined (__APPLE__) + #if defined (__APPLE__) && defined (WITH_IOKIT) if (backend_ctx->devices_param[backend_device_idx].opencl_platform_vendor_id == VENDOR_ID_APPLE) { if (hwmon_ctx->hm_iokit) @@ -504,7 +504,7 @@ return -1; } -#if defined (__APPLE__) +#if defined (__APPLE__) && defined (WITH_IOKIT) int hm_get_fanspeed_apple (hashcat_ctx_t *hashcat_ctx, char *fan_speed_buf) { hwmon_ctx_t *hwmon_ctx = hashcat_ctx->hwmon_ctx; @@ -1846,7 +1846,7 @@ } } - #if defined (__APPLE__) + #if defined (__APPLE__) && defined (WITH_IOKIT) if (backend_ctx->need_iokit == true) { hwmon_ctx->hm_iokit = (IOKIT_PTR *) hcmalloc (sizeof (IOKIT_PTR)); @@ -1888,7 +1888,7 @@ hwmon_ctx_init_sysfs_cpu (hashcat_ctx, hm_adapters_sysfs_cpu, backend_devices_cnt); - #if defined (__APPLE__) + #if defined (__APPLE__) && defined (WITH_IOKIT) if (backend_ctx->need_iokit == true) { hwmon_ctx->hm_iokit = (IOKIT_PTR *) hcmalloc (sizeof (IOKIT_PTR)); @@ -2002,7 +2002,7 @@ { if (device_param->opencl_device_type & CL_DEVICE_TYPE_CPU) { - #if defined (__APPLE__) + #if defined (__APPLE__) && defined (WITH_IOKIT) if (device_param->opencl_platform_vendor_id == VENDOR_ID_APPLE) { if (hwmon_ctx->hm_iokit) @@ -2041,7 +2041,7 @@ if (device_param->opencl_device_type & CL_DEVICE_TYPE_GPU) { - #if defined (__APPLE__) + #if defined (__APPLE__) && defined (WITH_IOKIT) if (device_param->opencl_platform_vendor_id == VENDOR_ID_APPLE) { if (hwmon_ctx->hm_iokit) @@ -2232,7 +2232,7 @@ sysfs_cpu_close (hashcat_ctx); } - #if defined (__APPLE__) + #if defined (__APPLE__) && defined (WITH_IOKIT) if (hwmon_ctx->hm_iokit) { iokit_close (hashcat_ctx); diff -ruN '--exclude=*.o' '--exclude=*.a' '--exclude=Makefile' a/src/monitor.c b/src/monitor.c --- a/src/monitor.c 2025-08-23 08:43:56.000000000 +0000 +++ b/src/monitor.c 2026-04-25 11:12:29.305508277 +0000 @@ -135,7 +135,7 @@ myabort (hashcat_ctx); } - #if defined (__APPLE__) + #if defined (__APPLE__) && defined (WITH_IOKIT) // experimental feature, check the "Sensor Graphic Hot" sensor through IOKIT/SMC to catch a GPU overtemp alarm else if (temperature > (int) (user_options->hwmon_temp_abort - 10)) { diff -ruN '--exclude=*.o' '--exclude=*.a' '--exclude=Makefile' a/src/status.c b/src/status.c --- a/src/status.c 2025-08-23 08:43:56.000000000 +0000 +++ b/src/status.c 2026-04-25 11:31:13.750629205 +0000 @@ -2092,7 +2092,7 @@ } #endif -#if defined (__APPLE__) +#if defined (__APPLE__) && defined (WITH_IOKIT) char *status_get_hwmon_fan_dev (const hashcat_ctx_t *hashcat_ctx) { status_ctx_t *status_ctx = hashcat_ctx->status_ctx;