CFLAGS = -g -O2 -Wall
CC = gcc

all:: libfoo.so foo

libfoo.o: libfoo.c
	$(CC) -g -c -fPIC -o $@ $<

libfoo.so: libfoo.o
	$(CC) -shared -o $@ $< -nostdlib

foo: foo.o
	$(CC) -o $@ $< -ldl -rdynamic

clean:
	rm -f libfoo.so *.o foo *~

.PHONY: clean
