linux.mk raw
1 linux_CFLAGS=
2 linux_CXXFLAGS=
3
4 ifneq ($(LTO),)
5 linux_AR = $(host_toolchain)gcc-ar
6 linux_NM = $(host_toolchain)gcc-nm
7 linux_RANLIB = $(host_toolchain)gcc-ranlib
8 endif
9
10 linux_release_CFLAGS=-O2
11 linux_release_CXXFLAGS=$(linux_release_CFLAGS)
12
13 linux_debug_CFLAGS=-O1 -g
14 linux_debug_CXXFLAGS=$(linux_debug_CFLAGS)
15
16 # https://gcc.gnu.org/onlinedocs/libstdc++/manual/debug_mode.html
17 linux_debug_CPPFLAGS=-D_GLIBCXX_DEBUG -D_GLIBCXX_DEBUG_PEDANTIC
18
19 # https://libcxx.llvm.org/Hardening.html
20 linux_debug_CPPFLAGS+=-D_LIBCPP_HARDENING_MODE=_LIBCPP_HARDENING_MODE_DEBUG
21
22 ifeq (86,$(findstring 86,$(build_arch)))
23 i686_linux_CC=gcc -m32
24 i686_linux_CXX=g++ -m32
25 i686_linux_AR=ar
26 i686_linux_RANLIB=ranlib
27 i686_linux_NM=nm
28 i686_linux_STRIP=strip
29
30 x86_64_linux_CC=gcc -m64
31 x86_64_linux_CXX=g++ -m64
32 x86_64_linux_AR=ar
33 x86_64_linux_RANLIB=ranlib
34 x86_64_linux_NM=nm
35 x86_64_linux_STRIP=strip
36 else
37 i686_linux_CC=$(default_host_CC) -m32
38 i686_linux_CXX=$(default_host_CXX) -m32
39 x86_64_linux_CC=$(default_host_CC) -m64
40 x86_64_linux_CXX=$(default_host_CXX) -m64
41 endif
42
43 linux_cmake_system_name=Linux
44 # Refer to doc/dependencies.md for the minimum required kernel.
45 linux_cmake_system_version=3.17.0
46