aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorLibravatar Kelvin M. Klann <kmk3.code@protonmail.com>2023-06-27 07:12:48 +0000
committerLibravatar GitHub <noreply@github.com>2023-06-27 07:12:48 +0000
commite22dd9fb34a835636a83c283832c263474b9dfb9 (patch)
tree73e17050aff38b093d0c4dbe3e4c713d80999981
parentbuild(deps): bump step-security/harden-runner from 2.4.0 to 2.4.1 (diff)
parentbuild: set EXTRA_CFLAGS/EXTRA_LDFLAGS instead of append (diff)
downloadfirejail-e22dd9fb34a835636a83c283832c263474b9dfb9.tar.gz
firejail-e22dd9fb34a835636a83c283832c263474b9dfb9.tar.zst
firejail-e22dd9fb34a835636a83c283832c263474b9dfb9.zip
Merge pull request #5866 from kmk3/build-organize-make-vars
build: organize and standardize make vars and targets
-rw-r--r--config.mk.in81
-rw-r--r--src/etc-cleanup/Makefile2
-rw-r--r--src/fbuilder/Makefile2
-rw-r--r--src/fcopy/Makefile4
-rw-r--r--src/fids/Makefile2
-rw-r--r--src/firecfg/Makefile4
-rw-r--r--src/firejail/Makefile4
-rw-r--r--src/firemon/Makefile4
-rw-r--r--src/fldd/Makefile4
-rw-r--r--src/fnet/Makefile4
-rw-r--r--src/fnetfilter/Makefile4
-rw-r--r--src/fsec-optimize/Makefile4
-rw-r--r--src/fsec-print/Makefile4
-rw-r--r--src/fseccomp/Makefile4
-rw-r--r--src/fzenity/Makefile2
-rw-r--r--src/jailcheck/Makefile4
-rw-r--r--src/libpostexecseccomp/Makefile2
-rw-r--r--src/libtracelog/Makefile2
-rw-r--r--src/profstats/Makefile2
-rw-r--r--src/prog.mk26
-rw-r--r--src/so.mk23
21 files changed, 104 insertions, 84 deletions
diff --git a/config.mk.in b/config.mk.in
index 6ee541507..f3c1f658c 100644
--- a/config.mk.in
+++ b/config.mk.in
@@ -22,35 +22,56 @@ docdir=@docdir@
22mandir=@mandir@ 22mandir=@mandir@
23sysconfdir=@sysconfdir@ 23sysconfdir=@sysconfdir@
24 24
25HAVE_CONTRIB_INSTALL=@HAVE_CONTRIB_INSTALL@ 25# Misc flags
26BUSYBOX_WORKAROUND=@BUSYBOX_WORKAROUND@ 26BUSYBOX_WORKAROUND=@BUSYBOX_WORKAROUND@
27HAVE_SUID=@HAVE_SUID@ 27HAVE_CONTRIB_INSTALL=@HAVE_CONTRIB_INSTALL@
28HAVE_FATAL_WARNINGS=@HAVE_FATAL_WARNINGS@
29HAVE_GCOV=@HAVE_GCOV@
28HAVE_MAN=@HAVE_MAN@ 30HAVE_MAN=@HAVE_MAN@
29 31
32# MANFLAGS
33HAVE_APPARMOR=@HAVE_APPARMOR@
30HAVE_CHROOT=@HAVE_CHROOT@ 34HAVE_CHROOT=@HAVE_CHROOT@
31HAVE_FATAL_WARNINGS=@HAVE_FATAL_WARNINGS@ 35HAVE_DBUSPROXY=@HAVE_DBUSPROXY@
32HAVE_NETWORK=@HAVE_NETWORK@
33HAVE_USERNS=@HAVE_USERNS@
34HAVE_X11=@HAVE_X11@
35HAVE_FILE_TRANSFER=@HAVE_FILE_TRANSFER@ 36HAVE_FILE_TRANSFER=@HAVE_FILE_TRANSFER@
37HAVE_FIRETUNNEL=@HAVE_FIRETUNNEL@
38HAVE_FORCE_NONEWPRIVS=@HAVE_FORCE_NONEWPRIVS@
36HAVE_GLOBALCFG=@HAVE_GLOBALCFG@ 39HAVE_GLOBALCFG=@HAVE_GLOBALCFG@
37HAVE_APPARMOR=@HAVE_APPARMOR@ 40HAVE_IDS=@HAVE_IDS@
41HAVE_LTS=@HAVE_LTS@
42HAVE_NETWORK=@HAVE_NETWORK@
43HAVE_ONLY_SYSCFG_PROFILES=@HAVE_ONLY_SYSCFG_PROFILES@
44HAVE_OUTPUT=@HAVE_OUTPUT@
38HAVE_OVERLAYFS=@HAVE_OVERLAYFS@ 45HAVE_OVERLAYFS=@HAVE_OVERLAYFS@
39HAVE_FIRETUNNEL=@HAVE_FIRETUNNEL@
40HAVE_PRIVATE_HOME=@HAVE_PRIVATE_HOME@ 46HAVE_PRIVATE_HOME=@HAVE_PRIVATE_HOME@
41HAVE_PRIVATE_LIB=@HAVE_PRIVATE_LIB@ 47HAVE_PRIVATE_LIB=@HAVE_PRIVATE_LIB@
42HAVE_IDS=@HAVE_IDS@
43HAVE_GCOV=@HAVE_GCOV@
44HAVE_SELINUX=@HAVE_SELINUX@ 48HAVE_SELINUX=@HAVE_SELINUX@
45HAVE_SUID=@HAVE_SUID@ 49HAVE_SUID=@HAVE_SUID@
46HAVE_DBUSPROXY=@HAVE_DBUSPROXY@ 50HAVE_USERNS=@HAVE_USERNS@
47HAVE_USERTMPFS=@HAVE_USERTMPFS@ 51HAVE_USERTMPFS=@HAVE_USERTMPFS@
48HAVE_OUTPUT=@HAVE_OUTPUT@ 52HAVE_X11=@HAVE_X11@
49HAVE_LTS=@HAVE_LTS@
50HAVE_FORCE_NONEWPRIVS=@HAVE_FORCE_NONEWPRIVS@
51HAVE_ONLY_SYSCFG_PROFILES=@HAVE_ONLY_SYSCFG_PROFILES@
52 53
53MANFLAGS = $(HAVE_LTS) $(HAVE_OUTPUT) $(HAVE_X11) $(HAVE_PRIVATE_HOME) $(HAVE_PRIVATE_LIB) $(HAVE_APPARMOR) $(HAVE_IDS) $(HAVE_OVERLAYFS) $(HAVE_USERTMPFS) $(HAVE_DBUSPROXY) $(HAVE_FIRETUNNEL) $(HAVE_GLOBALCFG) $(HAVE_CHROOT) $(HAVE_NETWORK) $(HAVE_USERNS) $(HAVE_FILE_TRANSFER) $(HAVE_SELINUX) $(HAVE_SUID) $(HAVE_FORCE_NONEWPRIVS) $(HAVE_ONLY_SYSCFG_PROFILES) 54MANFLAGS = \
55 $(HAVE_APPARMOR) \
56 $(HAVE_CHROOT) \
57 $(HAVE_DBUSPROXY) \
58 $(HAVE_FILE_TRANSFER) \
59 $(HAVE_FIRETUNNEL) \
60 $(HAVE_FORCE_NONEWPRIVS) \
61 $(HAVE_GLOBALCFG) \
62 $(HAVE_IDS) \
63 $(HAVE_LTS) \
64 $(HAVE_NETWORK) \
65 $(HAVE_ONLY_SYSCFG_PROFILES) \
66 $(HAVE_OUTPUT) \
67 $(HAVE_OVERLAYFS) \
68 $(HAVE_PRIVATE_HOME) \
69 $(HAVE_PRIVATE_LIB) \
70 $(HAVE_SELINUX) \
71 $(HAVE_SUID) \
72 $(HAVE_USERNS) \
73 $(HAVE_USERTMPFS) \
74 $(HAVE_X11)
54 75
55# User variables - should not be modified in the code (as they are reserved for 76# User variables - should not be modified in the code (as they are reserved for
56# the user building the package); see the following for details: 77# the user building the package); see the following for details:
@@ -60,7 +81,29 @@ CFLAGS=@CFLAGS@
60LDFLAGS=@LDFLAGS@ 81LDFLAGS=@LDFLAGS@
61 82
62# Project variables 83# Project variables
63LIBS=@LIBS@ 84EXTRA_CFLAGS =@EXTRA_CFLAGS@
85COMMON_CFLAGS = \
86 -ggdb -O2 -DVERSION='"$(VERSION)"' \
87 -Wall -Wextra $(HAVE_FATAL_WARNINGS) \
88 -Wformat -Wformat-security \
89 -fstack-protector-all -D_FORTIFY_SOURCE=2 \
90 -DPREFIX='"$(prefix)"' -DSYSCONFDIR='"$(sysconfdir)/firejail"' \
91 -DLIBDIR='"$(libdir)"' -DBINDIR='"$(bindir)"' \
92 -DVARDIR='"/var/lib/firejail"' \
93
94PROG_CFLAGS = \
95 $(COMMON_CFLAGS) \
96 $(HAVE_GCOV) $(MANFLAGS) \
97 $(EXTRA_CFLAGS) \
98 -fPIE
99
100SO_CFLAGS = \
101 $(COMMON_CFLAGS) \
102 -fPIC
103
104EXTRA_LDFLAGS =@EXTRA_LDFLAGS@
105PROG_LDFLAGS = -Wl,-z,relro -Wl,-z,now -fPIE -pie $(EXTRA_LDFLAGS)
106SO_LDFLAGS = -Wl,-z,relro -Wl,-z,now -fPIC
107LIBS =@LIBS@
64 108
65EXTRA_CFLAGS +=@EXTRA_CFLAGS@ 109CLEANFILES = *.o *.gcov *.gcda *.gcno *.plist
66EXTRA_LDFLAGS +=@EXTRA_LDFLAGS@
diff --git a/src/etc-cleanup/Makefile b/src/etc-cleanup/Makefile
index c8a12476e..c3c482bdb 100644
--- a/src/etc-cleanup/Makefile
+++ b/src/etc-cleanup/Makefile
@@ -5,6 +5,6 @@ ROOT = ../..
5PROG = etc-cleanup 5PROG = etc-cleanup
6TARGET = $(PROG) 6TARGET = $(PROG)
7 7
8MOD_HDRS = ../include/etc_groups.h 8EXTRA_HDRS = ../include/etc_groups.h
9 9
10include $(ROOT)/src/prog.mk 10include $(ROOT)/src/prog.mk
diff --git a/src/fbuilder/Makefile b/src/fbuilder/Makefile
index 7595f0775..634bf725f 100644
--- a/src/fbuilder/Makefile
+++ b/src/fbuilder/Makefile
@@ -5,6 +5,6 @@ ROOT = ../..
5PROG = fbuilder 5PROG = fbuilder
6TARGET = $(PROG) 6TARGET = $(PROG)
7 7
8MOD_HDRS = ../include/common.h ../include/syscall.h 8EXTRA_HDRS = ../include/common.h ../include/syscall.h
9 9
10include $(ROOT)/src/prog.mk 10include $(ROOT)/src/prog.mk
diff --git a/src/fcopy/Makefile b/src/fcopy/Makefile
index e2956fdd1..a3c4abe9d 100644
--- a/src/fcopy/Makefile
+++ b/src/fcopy/Makefile
@@ -5,7 +5,7 @@ ROOT = ../..
5PROG = fcopy 5PROG = fcopy
6TARGET = $(PROG) 6TARGET = $(PROG)
7 7
8MOD_HDRS = ../include/common.h ../include/syscall.h 8EXTRA_HDRS = ../include/common.h ../include/syscall.h
9MOD_OBJS = ../lib/common.o 9EXTRA_OBJS = ../lib/common.o
10 10
11include $(ROOT)/src/prog.mk 11include $(ROOT)/src/prog.mk
diff --git a/src/fids/Makefile b/src/fids/Makefile
index 901cbb470..76388a03d 100644
--- a/src/fids/Makefile
+++ b/src/fids/Makefile
@@ -5,6 +5,6 @@ ROOT = ../..
5PROG = fids 5PROG = fids
6TARGET = $(PROG) 6TARGET = $(PROG)
7 7
8MOD_HDRS = ../include/common.h 8EXTRA_HDRS = ../include/common.h
9 9
10include $(ROOT)/src/prog.mk 10include $(ROOT)/src/prog.mk
diff --git a/src/firecfg/Makefile b/src/firecfg/Makefile
index 59b713f1b..de4639ab6 100644
--- a/src/firecfg/Makefile
+++ b/src/firecfg/Makefile
@@ -5,13 +5,13 @@ ROOT = ../..
5PROG = firecfg 5PROG = firecfg
6TARGET = $(PROG) 6TARGET = $(PROG)
7 7
8MOD_HDRS = \ 8EXTRA_HDRS = \
9../include/common.h \ 9../include/common.h \
10../include/euid_common.h \ 10../include/euid_common.h \
11../include/libnetlink.h \ 11../include/libnetlink.h \
12../include/firejail_user.h \ 12../include/firejail_user.h \
13../include/pid.h 13../include/pid.h
14 14
15MOD_OBJS = ../lib/common.o ../lib/firejail_user.o 15EXTRA_OBJS = ../lib/common.o ../lib/firejail_user.o
16 16
17include $(ROOT)/src/prog.mk 17include $(ROOT)/src/prog.mk
diff --git a/src/firejail/Makefile b/src/firejail/Makefile
index 53bccf843..d3a4b4f81 100644
--- a/src/firejail/Makefile
+++ b/src/firejail/Makefile
@@ -5,7 +5,7 @@ ROOT = ../..
5PROG = firejail 5PROG = firejail
6TARGET = $(PROG) 6TARGET = $(PROG)
7 7
8MOD_HDRS = \ 8EXTRA_HDRS = \
9../include/rundefs.h \ 9../include/rundefs.h \
10../include/common.h \ 10../include/common.h \
11../include/ldd_utils.h \ 11../include/ldd_utils.h \
@@ -18,7 +18,7 @@ MOD_HDRS = \
18../include/etc_groups.h 18../include/etc_groups.h
19 19
20 20
21MOD_OBJS = \ 21EXTRA_OBJS = \
22../lib/common.o \ 22../lib/common.o \
23../lib/ldd_utils.o \ 23../lib/ldd_utils.o \
24../lib/firejail_user.o \ 24../lib/firejail_user.o \
diff --git a/src/firemon/Makefile b/src/firemon/Makefile
index e0059aee5..09387f3eb 100644
--- a/src/firemon/Makefile
+++ b/src/firemon/Makefile
@@ -5,7 +5,7 @@ ROOT = ../..
5PROG = firemon 5PROG = firemon
6TARGET = $(PROG) 6TARGET = $(PROG)
7 7
8MOD_HDRS = ../include/common.h ../include/pid.h 8EXTRA_HDRS = ../include/common.h ../include/pid.h
9MOD_OBJS = ../lib/common.o ../lib/pid.o 9EXTRA_OBJS = ../lib/common.o ../lib/pid.o
10 10
11include $(ROOT)/src/prog.mk 11include $(ROOT)/src/prog.mk
diff --git a/src/fldd/Makefile b/src/fldd/Makefile
index 86693a76c..7fec70a33 100644
--- a/src/fldd/Makefile
+++ b/src/fldd/Makefile
@@ -5,7 +5,7 @@ ROOT = ../..
5PROG = fldd 5PROG = fldd
6TARGET = $(PROG) 6TARGET = $(PROG)
7 7
8MOD_HDRS = ../include/common.h ../include/syscall.h ../include/ldd_utils.h 8EXTRA_HDRS = ../include/common.h ../include/syscall.h ../include/ldd_utils.h
9MOD_OBJS = ../lib/common.o ../lib/ldd_utils.o 9EXTRA_OBJS = ../lib/common.o ../lib/ldd_utils.o
10 10
11include $(ROOT)/src/prog.mk 11include $(ROOT)/src/prog.mk
diff --git a/src/fnet/Makefile b/src/fnet/Makefile
index 8efc6d26b..50bfdfffd 100644
--- a/src/fnet/Makefile
+++ b/src/fnet/Makefile
@@ -5,7 +5,7 @@ ROOT = ../..
5PROG = fnet 5PROG = fnet
6TARGET = $(PROG) 6TARGET = $(PROG)
7 7
8MOD_HDRS = ../include/common.h ../include/libnetlink.h 8EXTRA_HDRS = ../include/common.h ../include/libnetlink.h
9MOD_OBJS = ../lib/common.o ../lib/libnetlink.o 9EXTRA_OBJS = ../lib/common.o ../lib/libnetlink.o
10 10
11include $(ROOT)/src/prog.mk 11include $(ROOT)/src/prog.mk
diff --git a/src/fnetfilter/Makefile b/src/fnetfilter/Makefile
index 2be8311ae..156af3ed0 100644
--- a/src/fnetfilter/Makefile
+++ b/src/fnetfilter/Makefile
@@ -5,7 +5,7 @@ ROOT = ../..
5PROG = fnetfilter 5PROG = fnetfilter
6TARGET = $(PROG) 6TARGET = $(PROG)
7 7
8MOD_HDRS = ../include/common.h ../include/syscall.h 8EXTRA_HDRS = ../include/common.h ../include/syscall.h
9MOD_OBJS = ../lib/common.o 9EXTRA_OBJS = ../lib/common.o
10 10
11include $(ROOT)/src/prog.mk 11include $(ROOT)/src/prog.mk
diff --git a/src/fsec-optimize/Makefile b/src/fsec-optimize/Makefile
index 4941f13b1..5a14726a0 100644
--- a/src/fsec-optimize/Makefile
+++ b/src/fsec-optimize/Makefile
@@ -5,7 +5,7 @@ ROOT = ../..
5PROG = fsec-optimize 5PROG = fsec-optimize
6TARGET = $(PROG) 6TARGET = $(PROG)
7 7
8MOD_HDRS = ../include/common.h ../include/seccomp.h ../include/syscall.h 8EXTRA_HDRS = ../include/common.h ../include/seccomp.h ../include/syscall.h
9MOD_OBJS = ../lib/common.o ../lib/errno.o 9EXTRA_OBJS = ../lib/common.o ../lib/errno.o
10 10
11include $(ROOT)/src/prog.mk 11include $(ROOT)/src/prog.mk
diff --git a/src/fsec-print/Makefile b/src/fsec-print/Makefile
index 78e87a93f..d55167796 100644
--- a/src/fsec-print/Makefile
+++ b/src/fsec-print/Makefile
@@ -5,7 +5,7 @@ ROOT = ../..
5PROG = fsec-print 5PROG = fsec-print
6TARGET = $(PROG) 6TARGET = $(PROG)
7 7
8MOD_HDRS = ../include/common.h ../include/seccomp.h ../include/syscall.h 8EXTRA_HDRS = ../include/common.h ../include/seccomp.h ../include/syscall.h
9MOD_OBJS = ../lib/common.o ../lib/errno.o ../lib/syscall.o 9EXTRA_OBJS = ../lib/common.o ../lib/errno.o ../lib/syscall.o
10 10
11include $(ROOT)/src/prog.mk 11include $(ROOT)/src/prog.mk
diff --git a/src/fseccomp/Makefile b/src/fseccomp/Makefile
index 461179f4d..f8c35d41f 100644
--- a/src/fseccomp/Makefile
+++ b/src/fseccomp/Makefile
@@ -5,7 +5,7 @@ ROOT = ../..
5PROG = fseccomp 5PROG = fseccomp
6TARGET = $(PROG) 6TARGET = $(PROG)
7 7
8MOD_HDRS = ../include/common.h ../include/syscall.h 8EXTRA_HDRS = ../include/common.h ../include/syscall.h
9MOD_OBJS = ../lib/common.o ../lib/errno.o ../lib/syscall.o 9EXTRA_OBJS = ../lib/common.o ../lib/errno.o ../lib/syscall.o
10 10
11include $(ROOT)/src/prog.mk 11include $(ROOT)/src/prog.mk
diff --git a/src/fzenity/Makefile b/src/fzenity/Makefile
index a17a9252f..148babbe8 100644
--- a/src/fzenity/Makefile
+++ b/src/fzenity/Makefile
@@ -5,6 +5,6 @@ ROOT = ../..
5PROG = fzenity 5PROG = fzenity
6TARGET = $(PROG) 6TARGET = $(PROG)
7 7
8MOD_HDRS = ../include/common.h 8EXTRA_HDRS = ../include/common.h
9 9
10include $(ROOT)/src/prog.mk 10include $(ROOT)/src/prog.mk
diff --git a/src/jailcheck/Makefile b/src/jailcheck/Makefile
index 23cd9c1a9..3b0b83412 100644
--- a/src/jailcheck/Makefile
+++ b/src/jailcheck/Makefile
@@ -5,7 +5,7 @@ ROOT = ../..
5PROG = jailcheck 5PROG = jailcheck
6TARGET = $(PROG) 6TARGET = $(PROG)
7 7
8MOD_HDRS = ../include/common.h ../include/pid.h 8EXTRA_HDRS = ../include/common.h ../include/pid.h
9MOD_OBJS = ../lib/common.o ../lib/pid.o 9EXTRA_OBJS = ../lib/common.o ../lib/pid.o
10 10
11include $(ROOT)/src/prog.mk 11include $(ROOT)/src/prog.mk
diff --git a/src/libpostexecseccomp/Makefile b/src/libpostexecseccomp/Makefile
index dfd8eb318..c5ec14672 100644
--- a/src/libpostexecseccomp/Makefile
+++ b/src/libpostexecseccomp/Makefile
@@ -5,6 +5,6 @@ ROOT = ../..
5SO = libpostexecseccomp.so 5SO = libpostexecseccomp.so
6TARGET = $(SO) 6TARGET = $(SO)
7 7
8MOD_HDRS = ../include/seccomp.h ../include/rundefs.h 8EXTRA_HDRS = ../include/seccomp.h ../include/rundefs.h
9 9
10include $(ROOT)/src/so.mk 10include $(ROOT)/src/so.mk
diff --git a/src/libtracelog/Makefile b/src/libtracelog/Makefile
index ac48264df..2b43ce131 100644
--- a/src/libtracelog/Makefile
+++ b/src/libtracelog/Makefile
@@ -5,6 +5,6 @@ ROOT = ../..
5SO = libtracelog.so 5SO = libtracelog.so
6TARGET = $(SO) 6TARGET = $(SO)
7 7
8MOD_HDRS = ../include/rundefs.h 8EXTRA_HDRS = ../include/rundefs.h
9 9
10include $(ROOT)/src/so.mk 10include $(ROOT)/src/so.mk
diff --git a/src/profstats/Makefile b/src/profstats/Makefile
index b4cb1a6f7..ae88bf2fd 100644
--- a/src/profstats/Makefile
+++ b/src/profstats/Makefile
@@ -5,6 +5,6 @@ ROOT = ../..
5PROG = profstats 5PROG = profstats
6TARGET = $(PROG) 6TARGET = $(PROG)
7 7
8MOD_HDRS = ../include/common.h 8EXTRA_HDRS = ../include/common.h
9 9
10include $(ROOT)/src/prog.mk 10include $(ROOT)/src/prog.mk
diff --git a/src/prog.mk b/src/prog.mk
index e4473184f..70b3629b2 100644
--- a/src/prog.mk
+++ b/src/prog.mk
@@ -3,25 +3,11 @@
3# Note: $(ROOT)/config.mk must be included before this file. 3# Note: $(ROOT)/config.mk must be included before this file.
4# 4#
5# The includer should probably define PROG and TARGET and may also want to 5# The includer should probably define PROG and TARGET and may also want to
6# define MOD_HDRS, MOD_SRCS, MOD_OBJS, TOCLEAN and TODISTCLEAN. 6# define EXTRA_HDRS and EXTRA_OBJS and extend CLEANFILES.
7 7
8HDRS := $(sort $(wildcard *.h)) $(MOD_HDRS) 8HDRS := $(sort $(wildcard *.h)) $(EXTRA_HDRS)
9SRCS := $(sort $(wildcard *.c)) $(MOD_SRCS) 9SRCS := $(sort $(wildcard *.c))
10OBJS := $(SRCS:.c=.o) $(MOD_OBJS) 10OBJS := $(SRCS:.c=.o) $(EXTRA_OBJS)
11
12PROG_CFLAGS = \
13 -ggdb -O2 -DVERSION='"$(VERSION)"' \
14 -Wall -Wextra $(HAVE_FATAL_WARNINGS) \
15 -Wformat -Wformat-security \
16 -fstack-protector-all -D_FORTIFY_SOURCE=2 \
17 -fPIE \
18 -DPREFIX='"$(prefix)"' -DSYSCONFDIR='"$(sysconfdir)/firejail"' \
19 -DLIBDIR='"$(libdir)"' -DBINDIR='"$(bindir)"' \
20 -DVARDIR='"/var/lib/firejail"' \
21 $(HAVE_GCOV) $(MANFLAGS) \
22 $(EXTRA_CFLAGS)
23
24PROG_LDFLAGS = -pie -fPIE -Wl,-z,relro -Wl,-z,now $(EXTRA_LDFLAGS)
25 11
26.PHONY: all 12.PHONY: all
27all: $(TARGET) 13all: $(TARGET)
@@ -33,7 +19,7 @@ $(PROG): $(OBJS) $(ROOT)/config.mk
33 $(CC) $(PROG_LDFLAGS) $(LDFLAGS) -o $@ $(OBJS) $(LIBS) 19 $(CC) $(PROG_LDFLAGS) $(LDFLAGS) -o $@ $(OBJS) $(LIBS)
34 20
35.PHONY: clean 21.PHONY: clean
36clean:; rm -fr *.o $(PROG) *.gcov *.gcda *.gcno *.plist $(TOCLEAN) 22clean:; rm -fr $(PROG) $(CLEANFILES)
37 23
38.PHONY: distclean 24.PHONY: distclean
39distclean: clean; rm -fr $(TODISTCLEAN) 25distclean: clean
diff --git a/src/so.mk b/src/so.mk
index e464a7bff..dadffc52f 100644
--- a/src/so.mk
+++ b/src/so.mk
@@ -3,20 +3,11 @@
3# Note: $(ROOT)/config.mk must be included before this file. 3# Note: $(ROOT)/config.mk must be included before this file.
4# 4#
5# The includer should probably define SO and TARGET and may also want to define 5# The includer should probably define SO and TARGET and may also want to define
6# MOD_HDRS, MOD_SRCS, MOD_OBJS, TOCLEAN and TODISTCLEAN. 6# EXTRA_HDRS and EXTRA_OBJS and extend CLEANFILES.
7 7
8HDRS := $(sort $(wildcard *.h)) $(MOD_HDRS) 8HDRS := $(sort $(wildcard *.h)) $(EXTRA_HDRS)
9SRCS := $(sort $(wildcard *.c)) $(MOD_SRCS) 9SRCS := $(sort $(wildcard *.c))
10OBJS := $(SRCS:.c=.o) $(MOD_OBJS) 10OBJS := $(SRCS:.c=.o) $(EXTRA_OBJS)
11
12SO_CFLAGS = \
13 -ggdb -O2 -DVERSION='"$(VERSION)"' \
14 -Wall -Wextra $(HAVE_FATAL_WARNINGS) \
15 -Wformat -Wformat-security \
16 -fstack-protector-all -D_FORTIFY_SOURCE=2 \
17 -fPIC
18
19SO_LDFLAGS = -pie -fPIE -Wl,-z,relro -Wl,-z,now
20 11
21.PHONY: all 12.PHONY: all
22all: $(TARGET) 13all: $(TARGET)
@@ -25,10 +16,10 @@ all: $(TARGET)
25 $(CC) $(SO_CFLAGS) $(CFLAGS) $(INCLUDE) -c $< -o $@ 16 $(CC) $(SO_CFLAGS) $(CFLAGS) $(INCLUDE) -c $< -o $@
26 17
27$(SO): $(OBJS) $(ROOT)/config.mk 18$(SO): $(OBJS) $(ROOT)/config.mk
28 $(CC) $(SO_LDFLAGS) -shared -fPIC -z relro $(LDFLAGS) -o $@ $(OBJS) -ldl 19 $(CC) $(SO_LDFLAGS) -shared $(LDFLAGS) -o $@ $(OBJS) -ldl
29 20
30.PHONY: clean 21.PHONY: clean
31clean:; rm -fr $(OBJS) $(SO) *.plist $(TOCLEAN) 22clean:; rm -fr $(SO) $(CLEANFILES)
32 23
33.PHONY: distclean 24.PHONY: distclean
34distclean: clean; rm -fr $(TODISTCLEAN) 25distclean: clean