$NetBSD: patch-gcc_configure,v 1.2 2025/06/08 07:37:45 wiz Exp $ Support Darwin/aarch64, from https://github.com/Homebrew/formula-patches. --- gcc/configure.orig 2025-05-23 11:02:04.504200864 +0000 +++ gcc/configure @@ -740,6 +740,8 @@ ORIGINAL_NM_FOR_TARGET gcc_cv_nm ORIGINAL_LD_GOLD_FOR_TARGET ORIGINAL_LD_BFD_FOR_TARGET +ORIGINAL_CLASSIC_LD_FOR_TARGET +ORIGINAL_LLD_FOR_TARGET ORIGINAL_LD_FOR_TARGET ORIGINAL_PLUGIN_LD_FOR_TARGET gcc_cv_ld @@ -3803,20 +3805,19 @@ gcc_gxx_libcxx_include_dir= # Check whether --with-gxx-libcxx-include-dir was given. if test "${with_gxx_libcxx_include_dir+set}" = set; then : - withval=$with_gxx_libcxx_include_dir; case "${withval}" in -yes) as_fn_error $? "bad value ${withval} given for libc++ include directory" "$LINENO" 5 ;; -*) gcc_gxx_libcxx_include_dir=$with_gxx_libcxx_include_dir ;; -esac + withval=$with_gxx_libcxx_include_dir; gcc_gxx_libcxx_include_dir=$with_gxx_libcxx_include_dir fi # --with-gxx-libcxx-include-dir controls the enabling of the -stdlib option. # if --with-gxx-libcxx-include-dir is 'no' we disable the stdlib option. +# if --with-gxx-libcxx-include-dir is 'yes' we enable the stdlib option and use +# the default path within the installation. # if --with-gxx-libcxx-include-dir is unset we enable the stdlib option -# based on the platform (to be available on platform versions where it is the +# based on the platform (to be available on platform versions where it is the # default for the system tools). We also use a default path within the compiler -# install tree. -# Otherwise, we use the path provided and enable the stdlib option. +# install tree. +# Otherwise, we use the path provided and enable the stdlib option. # If both --with-sysroot and --with-gxx-libcxx-include-dir are passed, we # check to see if the latter starts with the former and, upon success, compute # gcc_gxx_libcxx_include_dir as relative to the sysroot. @@ -3824,16 +3825,20 @@ gcc_gxx_libcxx_include_dir_add_sysroot=0 gcc_enable_stdlib_opt=0 if test x${gcc_gxx_libcxx_include_dir} != x; then if test x${gcc_gxx_libcxx_include_dir} = xno; then - # set defaults for the dir, but the option is disabled anyway. + # set defaults for the dir, but the option is disabled anyway. + gcc_gxx_libcxx_include_dir= + elif test x${gcc_gxx_libcxx_include_dir} = xyes; then + # set defaults for the dir, and enable. gcc_gxx_libcxx_include_dir= + gcc_enable_stdlib_opt=1 else gcc_enable_stdlib_opt=1 fi else case $target in *-darwin1[1-9]* | *-darwin2*) - # Default this on for Darwin versions which default to libcxx, - # and embed the path in the compiler install so that we get a + # Default this on for Darwin versions which default to libcxx, + # and embed the path in the compiler install so that we get a # self-contained toolchain. gcc_enable_stdlib_opt=1 ;; @@ -25342,6 +25347,14 @@ fi $as_echo "$gold_non_default" >&6; } ORIGINAL_LD_FOR_TARGET=$gcc_cv_ld +if test x"$ld64_flag" = x"yes"; then +ORIGINAL_LLD_FOR_TARGET=${gcc_cv_ld}64.lld +else +ORIGINAL_LLD_FOR_TARGET=$gcc_cv_lld +fi +ORIGINAL_CLASSIC_LD_FOR_TARGET=$gcc_cv_ld-classic + + case "$ORIGINAL_LD_FOR_TARGET" in ./collect-ld | ./collect-ld$build_exeext) ;;