]> git.ipfire.org Git - people/ms/rstp.git/blame - Makefile
Turn off compiler strict aliasing
[people/ms/rstp.git] / Makefile
CommitLineData
ad02a0eb 1
dc9475c3
SH
2DSOURCES = brstate.c libnetlink.c epoll_loop.c bridge_track.c \
3 packet.c ctl_socket.c netif_utils.c main.c brmon.c
ad02a0eb
SH
4
5DOBJECTS = $(DSOURCES:.c=.o)
6
7CTLSOURCES = ctl_main.c ctl_cli_wrap.c ctl_socket_client.c
8
9CTLOBJECTS = $(CTLSOURCES:.c=.o)
10
11CC=gcc
2a16118a
SH
12CFLAGS = -Wall -Werror -fno-strict-aliasing -O2 -g -D_REENTRANT -D__LINUX__ \
13 -DVERSION=$(version) -DBUILD=$(build) -I. -I./include -I./rstplib
ad02a0eb
SH
14
15all: rstpd rstpctl
16
17rstplib:
18 make -C rstplib librstp.a
19
20.PHONY: rstplib
21
22rstpd: $(DOBJECTS) rstplib
23 $(CC) -o $@ $(DOBJECTS) -L ./rstplib -lrstp
24
25rstpctl: $(CTLOBJECTS)
26 $(CC) -o $@ $(CTLOBJECTS)
27
28clean:
29 rm -f *.o rstpd rstpctl
30 make -C rstplib clean
31 rm -fr $(TOPDIR) $(BUILDDIR)
32
33install: all
34 install -m 755 -d $(INSTALLPREFIX)/sbin
35 install -m 755 rstpd $(INSTALLPREFIX)/sbin
36 install -m 755 rstpctl $(INSTALLPREFIX)/sbin
37 install -m 755 -d $(INSTALLPREFIX)/usr/share/man/man8
38 install -m 644 rstpd.8 $(INSTALLPREFIX)/usr/share/man/man8
39 install -m 644 rstpctl.8 $(INSTALLPREFIX)/usr/share/man/man8
40
41# RPM Building, as non root
42version := 0.16
43build := 1
44
45BUILDROOT := $(CURDIR)/rpm_buildroot
46TOPDIR := $(CURDIR)/rpm_topdir
47
48RPMBUILD=rpmbuild
49RPMDEFS=\
50 --buildroot=$(BUILDROOT) \
51 --define='_topdir $(TOPDIR)' \
52 --define='VERSION $(version)' \
53 --define='BUILD $(build)'
54
55rpm:
56 mkdir -p $(BUILDROOT) $(TOPDIR)/BUILD $(TOPDIR)/SOURCES $(TOPDIR)/RPMS
57 (cd .. ; tar cfz $(TOPDIR)/SOURCES/rstp-$(version).tgz --exclude rstp-$(version)/rpm_buildroot --exclude rstp-$(version)/rpm_topdir rstp-$(version))
58 $(RPMBUILD) $(RPMDEFS) -bb rstp.spec
59 cp $(TOPDIR)/RPMS/*/rstp-$(version)-$(build).*.rpm .
60 cp $(TOPDIR)/RPMS/*/rstp-debuginfo-$(version)-$(build).*.rpm .
61