diff --git a/src/option_processing.cc b/src/option_processing.cc index 9be3a09e..9db33687 100644 --- a/src/option_processing.cc +++ b/src/option_processing.cc @@ -311,7 +311,18 @@ error_code::Value option_processing(Option& op, bool standalone, } } if(standalone && op.getAsBool(PREF_DAEMON)) { - if(daemon(0, 0) < 0) { +#if defined(__GNUC__) && defined(__APPLE__) + // daemon() is deprecated on OSX since... forever. + // Silence the warning for good, so that -Werror becomes feasible. +#pragma GCC diagnostic push +#pragma GCC diagnostic ignored "-Wdeprecated-declarations" +#endif // defined(__GNUC__) && defined(__APPLE__) + const auto daemonized = daemon(0, 0); +#if defined(__GNUC__) && defined(__APPLE__) +#pragma GCC diagnostic pop +#endif // defined(__GNUC__) && defined(__APPLE__) + + if(daemonized < 0) { perror(MSG_DAEMON_FAILED); return error_code::UNKNOWN_ERROR; }