#
# Makefile for Jacob's small shell.
# Yes, it's gnu-make specific.
#


AR=ar
CC=gcc
CFLAGS=-I/usr/include -O2
LDLIBS=

BASE=/usr
VERSION=0.1

CFLAGS+=-DVERSION=\"$(VERSION)\"
DISTDIR=smallsh-$(VERSION)
OBJFILS=main.o procline.o runcommand.o


all: smallsh

smallsh: $(OBJFILS)
	$(CC) $(CFLAGS) $(LDLIBS) -o smallsh $(OBJFILS)

install: smallsh
	install -c -m 0755 smallsh $(BASE)/smallsh

depend:
	makedepend -- $(CFLAGS) -- *.c

clean:
	rm -rf *.o *.bak *~

distclean: clean
	rm -rf smallsh-[0-9].[0-9]* smallsh

distlist: distclean
DISTLIST=$(shell find $(PWD) -mindepth 1)

distdir: distlist
	mkdir $(DISTDIR)
	cp -a $(DISTLIST) $(DISTDIR)

dist: distdir
	tar chozf $(DISTDIR).tar.gz $(DISTDIR)
	rm -rf $(DISTDIR)
