1
# go on and adjust here if you don't like those flags
2
CFLAGS=-Os -fomit-frame-pointer -s -pipe
3
#CFLAGS=-Wall -g -fomit-frame-pointer -s -pipe -DDEBUG
4
LDFLAGS=-lm
5
CC=gcc
6
# likewise, if you want to change the destination prefix
7
DESTDIR=
8
DESTPREFIX=/usr/local
9
MANDIR=$(DESTPREFIX)/share/man/man8
10
GZIP=gzip -9
11
TARGET=schedtool
12
DOCS=LICENSE README INSTALL SCHED_DESIGN
13
RELEASE=$(shell basename `pwd`)
14
15
all: $(TARGET)
16
17
clean:
18
	rm -f *.o $(TARGET)
19
20
distclean: clean
21
	rm -f *~ *.s
22
23
install: all
24
	install -d $(DESTDIR)$(DESTPREFIX)/bin
25
	install -p -c $(TARGET) $(DESTDIR)$(DESTPREFIX)/bin
26
27
install-doc:
28
	install -d $(DESTDIR)$(DESTPREFIX)/share/doc/$(RELEASE)
29
	install -p -c $(DOCS) $(DESTDIR)$(DESTPREFIX)/share/doc/$(RELEASE)
30
31
zipman:
32
	test -f schedtool.8 && $(GZIP) schedtool.8 || exit 0
33
34
unzipman:
35
	test -f schedtool.8.gz && $(GZIP) -d schedtool.8.gz || exit 0
36
37
affinity_hack: clean
38
	$(MAKE) CFLAGS="$(CFLAGS) -DHAVE_AFFINITY_HACK" $(TARGET)
39
40
release: distclean release_gz release_bz2
41
	@echo --- $(RELEASE) released ---
42
43
release_gz: distclean
44
	@echo Building tar.gz
45
	( cd .. ; tar czf $(RELEASE).tar.gz $(RELEASE) )
46
47
release_bz2: distclean
48
	@echo Building tar.bz2
49
	( cd .. ; tar cjf $(RELEASE).tar.bz2 $(RELEASE) )
50
51
52
schedtool: schedtool.o error.o
53
schedtool.o: schedtool.c error.h util.h
54
error.o: error.c error.h