array_string: declare 'arr' member as const.
[oweals/dinit.git] / mconfig
diff --git a/mconfig b/mconfig
index b9a65e24fd757ecc068a58f8c2fa8504714c864c..3aca79d24f4b7dd1b78ef8025b80b19e82a1a984 100644 (file)
--- a/mconfig
+++ b/mconfig
@@ -1,18 +1,39 @@
+# Installation path options.
+
+SBINDIR=/sbin
+MANDIR=/usr/share/man
+SYSCONTROLSOCKET=/dev/dinitctl
+
+
+# General build options. Uncomment the options appropriate for your system.
+
 # Linux (GCC). Note with GCC 5.x/6.x you must use the old ABI, with GCC 7.x you must use
 # the new ABI. See BUILD file for more information.
 CXX=g++
-CXXOPTS=-D_GLIBCXX_USE_CXX11_ABI=1 -std=gnu++11 -Os -Wall -Wno-invalid-offsetof -fno-rtti
-EXTRA_LIBS=
+CXXOPTS=-D_GLIBCXX_USE_CXX11_ABI=1 -std=c++11 -Os -Wall -fno-rtti -fno-plt -flto
+LDFLAGS=-flto
 BUILD_SHUTDOWN=yes
 SANITIZEOPTS=-fsanitize=address,undefined
 
-# OpenBSD, tested with GCC 4.9.3 and gmake:
+# OpenBSD, tested with GCC 4.9.3 / Clang++ 4/5 and gmake:
 #CXX=clang++
-#CXXOPTS=-std=gnu++11 -Os -Wall -fno-rtti
-#EXTRA_LIBS=
+#CXXOPTS=-std=c++11 -Os -Wall -fno-rtti
+#LDFLAGS=
 #BUILD_SHUTDOWN=no
 #SANITIZEOPTS=
 # (shutdown command not available for OpenBSD yet).
 
-# MacOS: use Linux settings, but don't build shutdown:
+# FreeBSD: use clang++ by default, supports sanitizers, requires linking with -lrt
+# Cannot use -fno-rtti: apparently prevents exception handling from working properly.
+#CXX=clang++
+#CXXOPTS=-std=c++11 -Os -Wall
+#LDFLAGS=-lrt
+#BUILD_SHUTDOWN=no
+#SANITIZEOPTS=-fsanitize=address,undefined
+
+# MacOS: use g++ (which may alias clang++):
+#CXX=g++
+#CXXOPTS=-std=c++11 -Os -Wall -fno-rtti -flto
+#LDFLAGS=-flto
 #BUILD_SHUTDOWN=no
+#SANITIZEOPTS=-fsanitize=address,undefined