Commit Briefs

Thomas Adam

portable: got-read-patch: use compat includes

Remove the global header #includes for those items which are detected portably.


Thomas Adam

portable: add landlock to got-patch

Add the appropriate call to tje got-patch machinary to enable landlock();


Thomas Adam

portable: enable got-patch tests

Enable the got-patch tests.


Thomas Adam

portable: regress: improve sed "-i ''" on linux

GNU sed doesn't like "-i ''" which on BSD means to not keep backups around. Scan for "-i ''" and replace with just "-i" which will use the filename given to sed just fine.


Thomas Adam

portable: improve macos compat with bison/openssl

Some MacOS systems might not have GNU Bison installed, or have openssl installed. In such instances the host versions of those can be used, with a few tweaks around the edges to make them work. This commit addresses these by: * Relaxing a HAVE_CRYPTO check for __APPLE__, since the inclusion of the machine-specific headers isn't dependent on openssl being installed; * If the non-GNU version of bison on MacOS is being used, define any missing YY* variables, and add a compiler #warning so we log something. This also updates the CI scripts to default to the system versions of bison and removes openssl as a core dependency -- it's more likely openssl is going to be installed, so removing it here will mean we can catch the case for just the MacOS-specific failures, and the inclusion of openssl on other OSes should cover the rest. Noticed by Evan Silberman




Thomas Adam

fix path to the temp file used to accumulate the patch edits

ok stsp



Thomas Adam

typos


Thomas Adam

portable: README: clarify jot for regress

When running the tests under Linux, jot(1) can be found in the athena-jot package.


Thomas Adam

portable: enable got-read-patch

Allow the libexec helper, `got-read-patch` to be compiled, portably.



Thomas Adam

fix level of indirection

ok stsp



Thomas Adam

portable: add support for DragonFlyBSD

This adds support for DragonFlyBSD.


Thomas Adam

portable: update README

Mention which operating systems are supported.


Thomas Adam

portable: improve panelw detection

Rather than making certain checks for panelw dependant on the underlying operating system, actually use pkg-config's detection mechanism properly. This makes the checking for panelw much easier and broader for other OSes which might have either panelw or gnupanelw.


Thomas Adam

portable: support NetBSD

This adds support for NetBSD, using the following external dependencies: libuuid ncursesw There is no CI (yet) as enabling that on Cirrus-CI requires some work, so for now, these builds will be run manually before releases. The test suite will also need tweaking to be fully supported but the key tests are supported for now.


Thomas Adam

portable: CI: add MacOS definition

Enable CI builds for MaxcOS on CirrusCI.


Thomas Adam

portable: include support for MacOS

This adds support for MacOS (Monteray onward, although should work on older MacOSes). The BSD wrapper for poll/ppoll has been lifted from the work the folks over at OpenSSH have done -- thanks!


Thomas Adam

portable: make UUID includes generic

Move the detection of UUID header files to be included portably. This will have no functional effect until MacOS detection is put in place.


Thomas Adam

portable: update Makefile.am

Update got-{fetch,index,send}'s Makefile.am to include ratelimit.c for progress output.