# $Id: Makefile,v 1.27 2001/06/19 13:26:45 vdanjean Exp $

-include config/Makefile

PREFIX = /usr/local
EPREFIX = $(PREFIX)
MANPREFIX = $(PREFIX)

BINDIR = $(PREFIX)/bin
MANDIR = $(MANPREFIX)/man/man1

EXEC = dodo
INSTALL=install
ifeq ($(SEMODE),)
READPERM=0644
EXECPERM=0755
else
INSTALL += -g softelev
READPERM=0664
EXECPERM=0775
endif


.PHONY: all byte opt install home clean fullclean

all: byte

home: all
	$(MAKE) PREFIX=$(HOME) install

bin:
	mkdir bin

byte: configure bin
	cd src; $(MAKE) byte-code
opt: configure bin
	cd src; $(MAKE) native-code

configure: configure.in
	autoconf

install:
	test -d $(BINDIR) || $(INSTALL) -m $(EXECPERM) -d $(BINDIR)
	test -d $(MANDIR) || $(INSTALL) -m $(EXECPERM) -d $(MANDIR)
	$(INSTALL) -m $(EXECPERM) bin/$(EXEC) $(BINDIR)/$(EXEC)
	$(INSTALL) -m $(READPERM) man/man1/dodo.1 $(MANDIR)/dodo.1

clean:
	cd src; $(MAKE) clean
fullclean: clean
	rm -f config.cache config.status config.log

########################## Private targets ######################

.PHONY: se ens i386 sparc distrib web linux

ens: web
	ssh mjambon@ssh.ens-lyon.fr /home/mjambon/share/bin/install-dino.sh \
dragon cobra

se: opt
	strip bin/dodo
	$(MAKE) PREFIX=/soft/eleves/stow/dodo \
		EPREFIX=/soft/eleves/stow/dodo/$(shell uname -p) \
		MANPREFIX=/soft/eleves/stow/share install SEMODE=1

#sparc ou i386
$(shell uname -p):
	$(MAKE) clean
	$(MAKE)
	$(MAKE) PREFIX=$(HOME)/$@ install

distrib:
	autoconf
	$(MAKE) clean
	rm -f config.log config.cache config.status config/Makefile
	(cd ..; tar cvf dino.tar dino; mv -f dino.tar.gz /tmp; gzip dino.tar)

linux:
	export PATH=/home/martin/bin:$$PATH; ./configure; make opt
	mv bin/dodo bin/dodo-i586-linux

web:
	$(MAKE) distrib
	$(MAKE) linux
	scp bin/dodo-i586-linux ../dino.tar.gz \
               mjambon@ssh.ens-lyon.fr:~/public_html/dino
