forked from clrkwllms/realtime-setup
-
Notifications
You must be signed in to change notification settings - Fork 0
/
Copy pathMakefile
62 lines (51 loc) · 2.02 KB
/
Makefile
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
# SPDX-License-Identifier: GPL-2.0-or-later
VERSION := $(shell awk '/^Version:/ { print $$2 }' realtime-setup.spec)
$(info "Version: $(VERSION)")
RPMDIR := $(shell pwd)/rpm
RPMARGS := --define "_topdir $(RPMDIR)"
CC := gcc
ifeq ($(CFLAGS),)
CFLAGS := -O3 -g -Wall -D_GNU_SOURCE \
-fstack-protector-all -fcf-protection \
-fstack-clash-protection
endif
CFLAGS += -fPIC -fplugin=annobin
LDFLAGS += -Wl,-z,now -Wl,-z,relro -pie
DISTVER := 8.0.0
DISTGITDIR := ../realtime-setup.rhpkg
DISTGITBRANCH := rhel-$(DISTVER)
FILES := realtime-setup-kdump \
slub_cpu_partial_off \
rhel-rt.rules \
kernel-is-rt \
realtime-setup.sysconfig \
realtime-setup.systemd \
realtime.conf \
realtime-entsk.service \
realtime-setup.service \
realtime-setup.spec
EXT := bz2
TARBALL := realtime-setup-v$(VERSION).tar.$(EXT)
all: build
build: realtime-entsk
realtime-entsk: enable-netsocket-tstamp-static-key.c
$(CC) $(CFLAGS) -c enable-netsocket-tstamp-static-key.c
$(CC) $(LDFLAGS) -o realtime-entsk enable-netsocket-tstamp-static-key.o
clean:
rm -f *~ *.tar.$(EXT)
rm -rf rpm
rm -f realtime-entsk *.o
tarball: clean
git archive --format=tar --prefix=realtime-setup-v$(VERSION)/ HEAD | \
bzip2 >realtime-setup-v$(VERSION).tar.$(EXT)
install: build
install -m 755 -D realtime-setup-kdump $(DEST)/usr/bin/realtime-setup-kdump
install -m 755 -D slub_cpu_partial_off $(DEST)/usr/bin/slub_cpu_partial_off
install -m 644 -D rhel-rt.rules $(DEST)/etc/udev/rules.d/99-rhel-rt.rules
install -m 755 -D kernel-is-rt $(DEST)/usr/sbin/kernel-is-rt
install -m 644 -D realtime-setup.sysconfig $(DEST)/etc/sysconfig/realtime-setup
install -m 755 -D realtime-setup.systemd $(DEST)/usr/bin/realtime-setup
install -m 644 -D realtime.conf $(DEST)/etc/security/limits.d/realtime.conf
install -m 644 -D realtime-entsk.service $(DEST)/usr/lib/systemd/system/realtime-entsk.service
install -m 755 -D -s realtime-entsk $(DEST)/usr/sbin/realtime-entsk
install -m 644 -D realtime-setup.service $(DEST)/usr/lib/systemd/system/realtime-setup.service