# HG changeset patch # User Joerg Sonnenberger # Date 1719248099 -7200 # Node ID e10b8388f27b97a7f218e30907ca93c74523ea0a # Parent 21442f87f7fab25437a3ac8fe4687a4277970078 portability: fix build on Solaris-derived systemd Current Illumos and older Solaris require _XOPEN_SOURCE for msg_control. O_DIRECTORY doesn't exist on older systems either, so fallback to O_RDONLY. It's good enough as a repository will require both R and X permission anyway. diff -r 21442f87f7fa -r e10b8388f27b contrib/chg/hgclient.c --- a/contrib/chg/hgclient.c Wed Jul 03 12:32:57 2024 +0200 +++ b/contrib/chg/hgclient.c Mon Jun 24 18:54:59 2024 +0200 @@ -7,6 +7,11 @@ * GNU General Public License version 2 or any later version. */ +#if defined(__sun) && !defined(_XOPEN_SOURCE) +/* msg_control is used */ +#define _XOPEN_SOURCE 600 +#endif + #include /* for ntohl(), htonl() */ #include #include @@ -26,6 +31,10 @@ #include "procutil.h" #include "util.h" +#ifndef O_DIRECTORY +#define O_DIRECTORY O_RDONLY +#endif + enum { CAP_GETENCODING = 0x0001, CAP_RUNCOMMAND = 0x0002,