From 9a5d1fceb86a61c9ead380df89ce3c4ba387d2e5 Mon Sep 17 00:00:00 2001 From: Eric Gallager Date: Wed, 25 May 2022 12:45:33 -0400 Subject: [PATCH] improve error when /usr/include isn't found [PR90835] This is a pretty simple patch that ought to help Darwin users understand better why their build is failing when they forget to pass the --with-sysroot= flag to configure. gcc/ChangeLog: PR target/90835 * Makefile.in: improve error message when /usr/include is missing --- gcc/Makefile.in | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/gcc/Makefile.in b/gcc/Makefile.in index 5f4dc487495..78779546459 100644 --- a/gcc/Makefile.in +++ b/gcc/Makefile.in @@ -55,6 +55,7 @@ MAKEOVERRIDES = # ------------------------------- build=@build@ +build_os=@build_os@ host=@host@ host_noncanonical=@host_noncanonical@ host_os=@host_os@ @@ -3333,8 +3334,13 @@ stmp-fixinc: gsyslimits.h macro_list fixinc_list \ multi_dir=`echo $${ml} | sed -e 's/^[^;]*;//'`; \ fix_dir=include-fixed$${multi_dir}; \ if ! $(inhibit_libc) && test ! -d ${BUILD_SYSTEM_HEADER_DIR}; then \ - echo The directory that should contain system headers does not exist: >&2 ; \ + echo "The directory (BUILD_SYSTEM_HEADER_DIR) that should contain system headers does not exist:" >&2 ; \ echo " ${BUILD_SYSTEM_HEADER_DIR}" >&2 ; \ + case ${build_os} in \ + darwin*) \ + echo "(on Darwin this usually means you need to pass the --with-sysroot= flag to point to a valid MacOS SDK)" >&2; \ + ;; \ + esac; \ tooldir_sysinc=`echo "${gcc_tooldir}/sys-include" | sed -e :a -e "s,[^/]*/\.\.\/,," -e ta`; \ if test "x${BUILD_SYSTEM_HEADER_DIR}" = "x$${tooldir_sysinc}"; \ then sleep 1; else exit 1; fi; \