libpsys

view Makefile.in @ 0:1c8eb90a6989

initial commit
author John Tsiombikas <nuclear@mutantstargoat.com>
date Sat, 24 Sep 2011 07:22:07 +0300
parents
children 3c0a306c5f01
line source
1 src = $(wildcard src/*.c)
2 obj = $(src:.c=.o)
3 lib_a = libpsys.a
4 lib_so = libpsys.so
6 CC = gcc
7 CFLAGS = -std=c89 -pedantic -Wall -g -fPIC -Isrc `pkg-config --cflags vmath`
8 LDFLAGS = `pkg-config --libs vmath`
10 .PHONY: all
11 all: $(lib_a) $(lib_so)
13 $(lib_a): $(obj)
14 $(AR) rcs $@ $^
16 $(lib_so): $(obj)
17 $(CC) $(CFLAGS) -shared -o $@ $^ $(LDFLAGS)
19 .PHONY: install
20 install: $(lib_a) $(lib_so)
21 install -d $(PREFIX)/lib
22 install -m 644 $(lib_a) $(lib_so) $(PREFIX)/lib
23 install -d $(PREFIX)/include
24 install -m 644 src/psys.h $(PREFIX)/include/psys.h
25 install -d $(PREFIX)/lib/pkgconfig
26 install -m 644 psys.pc $(PREFIX)/lib/pkgconfig/psys.pc
28 .PHONY: uninstall
29 uninstall:
30 rm -f $(PREFIX)/lib/$(lib_a)
31 rm -f $(PREFIX)/lib/$(lib_so)
32 rm -f $(PREFIX)/include/psys.h
33 rm -f $(PREFIX)/lib/pkgconfig/psys.pc
35 .PHONY: clean
36 clean:
37 rm -f $(obj)
39 .PHONY: distclean
40 distclean:
41 rm -f $(obj) $(lib_so) $(lib_a) Makefile psys.pc
43 .PHONY: dist
44 dist: distclean
45 cd ..; tar czvf psys.tar.gz psys && mv psys.tar.gz psys/