VERSION=$(shell awk '/Version:/ { print $$2 }' MAKEDEV.spec)
RELEASE=$(shell awk '/Release:/ { print $$2 }' MAKEDEV.spec)
TAG = makedev$(subst .,-,$(VERSION)-$(RELEASE))

CONF_S390= 00macros console generic std_s390 ftape \
      ipfilter raid s390 undocumented 

CONF= 00macros alsa ataraid cciss cdrom console dac960 ftape generic ia64 ibcs ida \
      ide ipfilter isdn linux1394 linux-2.4.x mouse qic raid redhat sound std \
      undocumented usb v4l

devdir=$(DESTDIR)/dev
sbindir=$(DESTDIR)/usr/sbin
sysconfdir=$(DESTDIR)/etc
mandir=$(DESTDIR)/usr/share/man
manext=8
mansubdir=$(mandir)/man$(manext)
confdir=$(sysconfdir)/makedev.d

DEBUGFLAGS=
DEFINES=-DCFGDIR=\"$(confdir)\" -DDEVDIR=\"$(devdir)\" -DVERSION=\"$(VERSION)\"
OPTFLAGS=-g -Wall
CFLAGS=$(OPTFLAGS) $(DEFINES) $(DEBUG)

ifdef S390
all: MAKEDEV mksock
else
all: MAKEDEV mksock makedev.d/dac960 makedev.d/ida makedev.d/cciss makedev.d/ataraid makedev.d/alsa
endif

force-tag:
	cvs tag -cFR $(TAG) || echo GRRRrrrrr -- [tag aborted]

tag:
	cvs tag -cR $(TAG) || echo GRRRrrrrr -- [tag aborted]

archive:
	@rm -rf /tmp/MAKEDEV
	@rm -rf /tmp/MAKEDEV-$(VERSION)
	@dir=`pwd`; cd /tmp; cvs -q -d `cat $$dir/CVS/Root` export -r$(TAG) MAKEDEV
	@mv /tmp/MAKEDEV /tmp/MAKEDEV-$(VERSION)
	@cd /tmp; tar czSpf MAKEDEV-$(VERSION)-$(RELEASE).tar.gz MAKEDEV-$(VERSION)
	@rm -rf /tmp/MAKEDEV-$(VERSION)
	@cp /tmp/MAKEDEV-$(VERSION)-$(RELEASE).tar.gz .
	@rm -f /tmp/MAKEDEV-$(VERSION)-$(RELEASE).tar.gz 
	@echo " "
	@echo "The final archive is MAKEDEV-$(VERSION)-$(RELEASE).tar.gz."

MAKEDEV: MAKEDEV.c

mksock: mksock.c

install: $(devdir)/MAKEDEV $(sbindir)/mksock install-conf

GENERATED = makedev.d/dac960 makedev.d/ida makedev.d/cciss makedev.d/ataraid makedev.d/alsa


clean:
	$(RM) -f MAKEDEV core mksock $(GENERATED)

makedev.d/dac960: gendac960
	./gendac960 > makedev.d/dac960

makedev.d/ida: genida
	./genida > makedev.d/ida

makedev.d/cciss: gencciss
	./gencciss > makedev.d/cciss

makedev.d/ataraid: genataraid
	./genataraid > makedev.d/ataraid

makedev.d/alsa: genalsa
	./genalsa > makedev.d/alsa

$(devdir)/MAKEDEV: MAKEDEV
	install -m755 -d $(devdir)
	install -m755 MAKEDEV $(devdir)/MAKEDEV
	install -m755 -d $(mansubdir)
	install -m644 MAKEDEV.m $(mansubdir)/MAKEDEV.$(manext)

$(sbindir)/mksock: mksock
	install -m755 -d $(sbindir)
	install -m755 mksock $(sbindir)/mksock

install-conf:
	install -m755 -d $(confdir)
ifdef S390
	cd makedev.d ; install -m644 $(CONF_S390) $(confdir)/
else
	cd makedev.d ; install -m644 $(CONF) $(confdir)/
endif
