--- nono/Makefile.inc 2026/04/29 17:04:33 1.1.1.3 +++ nono/Makefile.inc 2026/04/29 17:04:37 1.1.1.4 @@ -21,6 +21,9 @@ # C/C++ 共通のプリプロセッサオプション。 # # これらの変数には必要なら各 Makefile で値を追加してよい。 +# +# COPT は C/C++ 共通の追加の一時的なオプションで、make のコマンドラインで +# 指定されることを想定している (./Makefile.rule 参照)。 # ここからコード @@ -48,8 +51,18 @@ PROFOPT= -g #PROFOPT+= -fsanitize=undefined CCFLAGS+= -O2 -CCFLAGS+= -mtune=native CCFLAGS+= ${PROFOPT} + +# 最適化オプションは、コンパイラ/アーキテクチャごとに有効な組み合わせと +# 意味合いが違っており、オプションが存在するかどうかだけでは判断できず、 +# それぞれ手動で最適解を決定しないといけない。 +.if ("${ARCH}" == "x86_64" || "${ARCH}" == "i386") +CCFLAGS+= -march=native -mtune=native +.endif + +# C++17 では不要になるはず? +CXXFLAGS+= -faligned-new + WARNFLAGS+= -Wall -Werror -Wshadow WARNFLAGS+= -Wignored-qualifiers WARNFLAGS+= -Wno-sign-compare