From 4dc3c5ebcbccafd8e8235b8a7d9adec9e35f5e9b Mon Sep 17 00:00:00 2001 From: yaneurao Date: Mon, 24 Jun 2024 19:08:33 +0900 Subject: [PATCH] =?UTF-8?q?clang-18=E5=AF=BE=E5=BF=9C=E3=81=9D=E3=81=AE3?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- source/Makefile | 17 +++++------------ 1 file changed, 5 insertions(+), 12 deletions(-) diff --git a/source/Makefile b/source/Makefile index 3e0f3568e..62f1ef743 100644 --- a/source/Makefile +++ b/source/Makefile @@ -184,16 +184,16 @@ ifneq (,$(findstring clang++,$(COMPILER))) # → 本当に消してしまっても大丈夫か? WCPPFLAGS += -fno-threadsafe-statics - # note : LDFLAGSに -fuse-ld=lld を指定しないとUbuntu 24.04のclang-18でのlinkに失敗する。 + # note : clang++で-flto指定時に、LDFLAGSに -fuse-ld=lld を指定しないと + # MSYS2、Ubuntu 24.04のclang-18でのlinkに失敗する。 # ⇨ このオプションはそれ以前のclangでもつけて問題ないのでclangならば必ずつけるようにする。 # ⇨ gccでコンパイルする時にこのオプションをつけるとエラーになるので、gccの時はつけてはいけない。 - # note : macOSでは、デフォルトではclangのlinkerではなくld64を用いるので、この指定をするとエラーになる。 - # ⇨ よってTARGET_CPUにAPPLEの文字が入っている場合は、これを付与しない。 + # note : macOSでは、デフォルトではclangのlinkerではなくld64を用いるので、この指定をするとエラーになる。(いまのところ) + # ⇨ よってTARGET_CPUにAPPLEの文字が入っている場合は、これを付与してはならない。 ifeq (,$(findstring APPLE,$(TARGET_CPU))) - LDFLAGS = -fuse-ld=lld + LDFLAGS += -fuse-ld=lld endif - else ifneq (,$(findstring g++,$(COMPILER))) # mingw g++ で AVX512 向けビルドを行おうとするとエラーになる問題の回避 @@ -246,13 +246,6 @@ endif # cf. https://gcc.gnu.org/onlinedocs/gcc-6.3.0/gcc/Optimize-Options.html#Optimize-Options LTOFLAGS = -flto -# MSYS2 clang++ で -flto 指定時にリンクを行えない問題の回避 -ifneq (,$(findstring clang++,$(COMPILER))) - ifeq ($(OS),Windows_NT) - LDFLAGS += -fuse-ld=lld - endif -endif - # wstringを使うためにこのシンボル定義が必要。 CPPFLAGS += -DUNICODE