When I try to compile groff on macOS Catalina with the compiler tools installed by Xcode 12.2 (12B4b) and commit 534680662889eb74dac3e100bcadf97e5962f027 I get the following error:
CXX src/libs/libgroff/libgroff_a-curtime.o In file included from src/libs/libgroff/curtime.cpp:20: In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/stdlib.h:100: ./lib/math.h:38:3: error: "Please include config.h first." #error "Please include config.h first." ^ ./lib/math.h:40:1: error: unknown type name '_GL_INLINE_HEADER_BEGIN' _GL_INLINE_HEADER_BEGIN ^ ./lib/math.h:1625:1: error: expected unqualified-id _GL_CXXALIAS_SYS (frexp, double, (double x, int *expptr)); ^ ./lib/math.h:256:5: note: expanded from macro '_GL_CXXALIAS_SYS' _GL_EXTERN_C int _gl_cxxalias_dummy ^ ./lib/math.h:136:30: note: expanded from macro '_GL_EXTERN_C' # define _GL_EXTERN_C extern "C" ^ ./lib/math.h:3100:1: error: unknown type name '_GL_INLINE_HEADER_END' _GL_INLINE_HEADER_END ^ In file included from src/libs/libgroff/curtime.cpp:21: In file included from ./lib/string.h:41: In file included from /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/string.h:60: /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/string.h:69:1: error: expected unqualified-id __BEGIN_DECLS ^ /Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/sys/cdefs.h:71:32: note: expanded from macro '__BEGIN_DECLS' #define __BEGIN_DECLS extern "C" { ^ In file included from src/libs/libgroff/curtime.cpp:21: In file included from ./lib/string.h:41: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/string.h:73:64: error: use of undeclared identifier 'strchr' char* __libcpp_strchr(const char* __s, int __c) {return (char*)strchr(__s, __c);} ^ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/string.h:80:75: error: use of undeclared identifier 'strpbrk' char* __libcpp_strpbrk(const char* __s1, const char* __s2) {return (char*)strpbrk(__s1, __s2);} ^ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/string.h:87:65: error: use of undeclared identifier 'strrchr'; did you mean 'strchr'? char* __libcpp_strrchr(const char* __s, int __c) {return (char*)strrchr(__s, __c);} ^ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/string.h:75:13: note: 'strchr' declared here const char* strchr(const char* __s, int __c) {return __libcpp_strchr(__s, __c);} ^ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/string.h:94:76: error: use of undeclared identifier 'memchr' void* __libcpp_memchr(const void* __s, int __c, size_t __n) {return (void*)memchr(__s, __c, __n);} ^ /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin/../include/c++/v1/string.h:101:74: error: use of undeclared identifier 'strstr' char* __libcpp_strstr(const char* __s1, const char* __s2) {return (char*)strstr(__s1, __s2);} ^ src/libs/libgroff/curtime.cpp:43:47: error: use of undeclared identifier 'strerror' fatal("$SOURCE_DATE_EPOCH: strtol: %1", strerror(errno)); ^ 11 errors generated. make[1]: *** [src/libs/libgroff/libgroff_a-curtime.o] Error 1 make: *** [all] Error 2 Does anybody have any idea what is going on here? This also fails on an older checkout of the groff git repository that I have compiled in the past, so I speculate it is a problem with something on the Mac, rather than with groff. A google search did not come up with any answers. -- T. Kurt Bond, tkurtb...@gmail.com, https://tkurtbond.github.io