# $AMSEL: Makefile,v 1.9 2004/05/27 21:25:05 reyk Exp $

OBJECTS		= strlcpy.o strlcat.o arc4random.o atoul.o vis.o base64.o \
		    setproctitle.o unvis.o privsep.o
LIBRARY		= libamsel.so
TARGET		= libamsel
HEADER		= compat.h vis.h base64.h privsep.h

# The build's version number (date for CVS-builds)
VERSION		= $(shell date +"%Y%m%d")-cvs

LDIR		= $(PWD)
CC		= gcc
LD		= ld
INSTALL		= install
OPT_CFLAGS	=
OPT_LDFLAGS	=
CFLAGS		= $(OPT_CFLAGS) -O3 -I$(LDIR) -include $(LDIR)/compat.h
LDFLAGS		= $(OPT_LDFLAGS)
PREFIX		= /usr/local

all: $(LIBRARY)

$(LIBRARY): $(OBJECTS)
	$(CC) $(CFLAGS) -shared $(OBJECTS) -o $(LIBRARY)

$(OBJECTS): $(HEADER)

install: all
	$(INSTALL) -d \
	    $(DESTDIR)$(PREFIX)/lib \
	    $(DESTDIR)$(PREFIX)/include/amsel
	$(INSTALL) -m 644 $(LIBRARY) $(DESTDIR)$(PREFIX)/lib/
	cp $(HEADER) $(DESTDIR)$(PREFIX)/include/amsel/
	cp -r compat $(DESTDIR)$(PREFIX)/include/amsel/

dist:
	@mkdir /tmp/$(TARGET)-$(VERSION)
	@cp -ar * /tmp/$(TARGET)-$(VERSION)/
	@tar \
		-C /tmp \
		--exclude='$(TARGET)-*.tar.bz2' \
		--exclude='$(TARGET)' \
		--exclude='*.o' \
		--exclude='*.so' \
		--exclude='*~' \
		--exclude='\#*' \
		--exclude='.\#*' \
		--exclude='CVS*' \
		-jcvf $(TARGET)-$(VERSION).tar.bz2 $(TARGET)-$(VERSION)
	@rm -fr /tmp/$(TARGET)-$(VERSION)

clean:
	$(RM) $(LIBRARY) $(OBJECTS) *~

