--- /dev/null
+CC=gcc
+CFLAGS=-O2 -Wall
+CPPFLAGS=
+RANLIB=ranlib
+PREFIX=/usr/local
+
+SONAME=libitkacl.so.2
+LIBNAME=libitkacl.so.2.0.0
+
+all: libitkacl.a $(LIBNAME) itkacl-test
+clean:
+ $(RM) itkacl.o itkacl.PIC.o itkacl-test.o itkacl-test libitkacl.a libitkacl.so.2.0.0
+
+itkacl-test: itkacl.o itkacl-test.o
+ $(CC) -o itkacl-test itkacl.o itkacl-test.o
+
+itkacl.o: itkacl.c
+ $(CC) $(CPPFLAGS) $(CFLAGS) -c itkacl.c -o itkacl.o
+itkacl.PIC.o: itkacl.c
+ $(CC) $(CPPFLAGS) $(CFLAGS) -fPIC -c itkacl.c -o itkacl.PIC.o
+itkacl-test.o: itkacl-test.c
+ $(CC) $(CPPFLAGS) $(CFLAGS) -c itkacl-test.c -o itkacl-test.o
+
+libitkacl.a: itkacl.o
+ $(AR) rc $@ $<
+ $(RANLIB) $@
+$(LIBNAME): itkacl.PIC.o
+ $(CC) -shared -Wl,-soname,$(SONAME) -o $@ $<
+
+install:
+ cp libitkacl.a $(DESTDIR)$(PREFIX)/lib/
+ cp $(LIBNAME) $(DESTDIR)$(PREFIX)/lib/
+ ln -s $(LIBNAME) $(DESTDIR)$(PREFIX)/lib/libitkacl.so.2
+ ln -s $(LIBNAME) $(DESTDIR)$(PREFIX)/lib/libitkacl.so
+ cp itkacl.h $(DESTDIR)$(PREFIX)/include/
+ mkdir -p $(DESTDIR)$(PREFIX)/share/itkacl/
+ cp itkacl.sql $(DESTDIR)$(PREFIX)/share/itkacl/
+ mkdir -p $(DESTDIR)$(PREFIX)/bin/
+ cp sync-itkacl.pl $(DESTDIR)$(PREFIX)/bin/sync-itkacl
+ mkdir -p $(DESTDIR)/etc/itkacl
+ cp config.pm $(DESTDIR)/etc/itkacl
+
+.PHONY: clean install