Commits


TWEAK 4


TWEAK 3


TWEAK 2


TWEAK


portable: macos: look for gnu bison harder When checking for GNU Bison (and presumably other) toolchain commands on MacOS, ther's two main systems most users use. Brew, and Ports. Both of these take different approaches when building software, and although a Portsfile exists for -portable now, those users who don't use that directly, or use brew, and try and build -portable from git directly, will likely be at the mercy of ./configure being able to go off and find the appropriate tools. Therefore, ./configure *tries* to be smart about handling this, and will go and check if brew(1) is installed and try and use that to determine the likely path for where it puts its software. Indeed, for MacPorts, the story is very different, and although some users might therfore use --prefix to ./configure to determine this path, there is an overloaded assumption between --prefix meaning where the binaries are to be installed, and --prefix meaning "go and look elsewhere for other applications". At some point, a dedicated configure option might be required. Reported by grey and jamsek.


portable: configure.ac: tidy/add summary Remove some unneeded comments which were references to files. Add a quick summary output at the end of ./configure which will aid with CI debugging.


portable: use a release variable for tarballs When creating a release tarball, use a GOT_RELEASE variable to determine the version of the release.


portable: MacOS: harden homebrew checks When building got-portable for MacOS, don't assume the toolchain programs are in /usr/local. This used to be true before Apple silicon existed, but since then the paths have changed. Instead, ask brew(1) for its prefix (if it's installed), or default to /usr/local if not. Noticed by Lucas.


portable: sockets: handle sa_len/ss_len portably In the sockaddr_storage struct, there can be a ss_len field. This is seen on some BSDs, but not Linux. Since this isn't POSIX-specific, there's no guarantee it will be available on all systems.


portable: configure: fix version string Older autotools versions need extra coaxing when running external programs.


portable: fix sys/queue,h detection When checking for specific sys/queue.h declarations, ensure to add the header file (sys/queue.h) to search, otherwise nothing will be found.


portable: add repo version to main string When compiling got-portable from source, outside of an official release tarball, it's often helpful to know which commit the binary was built from, especially for diagnostic purposes. This adds an extra hook to AC_INIT to derive whether -portable is being built in-tree or via a release tarball.


portable: MacOS: export env from configure Compiling -portable on MacOS directly would never have worked, as the environment was only being set when run under CI. Move these checks into configure.ac so that they propagate out to make, etc. Noticed by cjones on IRC.


Revert "portable: ci: macos: add libressl" Remove dependency on libretls as TLS isn't going to be included in gotwebd any time soon. This reverts commit af7f5027866eea7b4299c2319f83d0eb18a395e6.


portable: gotwebd: handle setres{g,u}id This isn't defined on all systems.


portable: ci: macos: add libressl


portable: add setproctitle This is needed for gotwebd.


portable: gotwebd: first stab at compilation This is not yet "clean", but does compile. A few things to consider: * See comments beginning with "TA:"


portable: honour sys/queue.h directly Don't assert compat/queue.h in favour of what's on the system. When -portable was first being developed, there were frequent clashes between libbsd, and the check for sys/queue.h got lost in that noise. Noticed by stsp@


portable: set next version


portable: set next version


portable: release 0.73


portable: set next version


fix cross-compilation; diff from Leah Neukirchen (thanks!), ok thomas


portable: set next version