Implement parallel nut-scanner scanning support on MacOS, fix NUT build on Solaris 8#2539
Conversation
….h> and/or <float.h> [networkupstools#1176] Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…test.c et al: introduce a NUT_CHECK_BOOL scriptlet and a header with nut_bool_t type [networkupstools#1176] Chose to use a unique type name to avoid conflicts with third-party headers which deliver a `bool_t` (currently commonly hacked into many NUT sources). Using lower-cased `true` and `false` values, hoping for maximum compatibility with C99 and newer language standards (if the compilers do implement them on whatever obscure platform NUT gets built on, and then our new `nut_bool_t` definition can be just an alias for what the language gives us). A test case was added to make sure it behaves as expected on different systems. Converting the sources from their custom type definitions and usages would be a separate step. Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…ariable pc_path pkg-config` for troubleshooting Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…onfig program, neuter its PKG_CONFIG_LIBDIR Imported from wxWidgets project; their license is LGPL-based with extra permissions: https://github.com/wxWidgets/wxWidgets/blob/master/docs/licence.txt Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
… lines [networkupstools#2510] While we group by those (by default, overridable) when generating the `ChangeLog`, we ignore the e-mail for comparisons -- and different signatures can matter! Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…euter its PKG_CONFIG_LIBDIR Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…they vary in preferences Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…etworkupstools#2522] Should fail e.g. on MacOS where it is present in headers but not implemented and throws deprecation warnings which our compile+link(+run) check can use to rule out the support. Signed-off-by: Jim Klimov <jimklimov@gmail.com>
…etworkupstools#2522] Signed-off-by: Jim Klimov <jimklimov@gmail.com>
…ools#2522] Signed-off-by: Jim Klimov <jimklimov@gmail.com>
…e of files [networkupstools#2511] Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…y something else if possible MacOS ships 3.x and does not grok our syntax; their HomeBrew version is ok. Signed-off-by: Jim Klimov <jimklimov@gmail.com>
Signed-off-by: Jim Klimov <jimklimov@gmail.com>
Signed-off-by: Jim Klimov <jimklimov@gmail.com>
Signed-off-by: Jim Klimov <jimklimov@gmail.com>
|
Previous build stumbled on some of the issues solved by PR #2538 (and this one would solve some issues with the new MacOS agent that would preclude other PRs from getting built), so merged that and #2537 branches into this one. Probably merging it later (after tests pass) would auto-close those too. |
947f61c to
bef2bca
Compare
nut-scanner scanning support on MacOSnut-scanner scanning support on MacOS, fix NUT build on Solaris 8
Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
|
While testing Closes: #2337 |
… on MacOS+Homebrew Signed-off-by: Jim Klimov <jimklimov@gmail.com>
…y in threaded builds [networkupstools#2522] Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…workupstools#2522] Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…CREAT header [networkupstools#2522] Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…OR_LINK_IFELSE() just a bit below) [networkupstools#2522] Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…allback.c: add a fallback timegm() Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
…ll getifaddr() related methods [networkupstools#2244] Signed-off-by: Jim Klimov <jimklimov+nut@gmail.com>
|
The couple of failed scenarios are due to tinkering with the MacOS build agent. No Another couple due to misplaced label claiming it can build all driver types (can not, e.g. avahi is missing). |
Closes: #2522
Detect dysfunctional (on MacOS)
sem_init()(unnamed) and functionalsem_open()(named) semaphore support.Update
nut-scannerto work with either technology.Tested on MacOS and Linux to do successfully run parallel scans.
Not quite sure what should happen if
sem_init()/sem_open()fails. This code drops themax_threads_scantypeto 0, to avoid probing aNULLnamed semaphore pointer. Currently there are no similar provisions for the global limiting semaphore (to skip if null).