# Makefile part of k6mult package
#
# Adapted from microcode_ctl package,
# Copyright 2000 (c) Simon Trimmer, Tigran Aivazian.
# by Leigh L. Klotz, Jr. <klotz@graflex.org>

#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License
# as published by the Free Software Foundation; either version
# 2 of the License, or (at your option) any later version.

PROGRAM		= k6mult
MANPAGE		= 

INS		= install
CC		= gcc
CFLAGS		= -g -Wall

DESTDIR		=
PREFIX		= /usr/local

INSDIR		= $(PREFIX)/sbin

CONFDIR		= /etc
CONFFILE	= k6mult.conf

RCFILE		= k6mult.start
RCFILEFINAL	= k6mult
RCDIR		= /etc/rc.d
RCHOMEDIR	= init.d
RCFILETO	= $(RCDIR)/$(RCHOMEDIR)

all: k6mult

k6mult: k6mult.c
	$(CC) $(CFLAGS) -o $(PROGRAM) k6mult.c

clean:
	rm -f $(PROGRAM)

install:
	$(INS) -d	$(DESTDIR)$(INSDIR) $(DESTDIR)$(CONFDIR) \
			$(DESTDIR)$(RCLINKTO) \
			$(DESTDIR)$(RCFILETO)

	$(INS) -s -m 755 $(PROGRAM) $(DESTDIR)$(INSDIR)

	$(INS) -m 755 $(RCFILE) $(DESTDIR)$(RCFILETO)/$(RCFILEFINAL)
	$(INS) -m 644 $(CONFFILE) $(DESTDIR)$(CONFDIR)/

ifndef DESTDIR
		chkconfig --add $(RCFILEFINAL)
else
		echo "MAKE: Skipping chkconfig operation (rpm build?)"
endif

device:
	mkdir -p $(DESTDIR)/dev/cpu/0
	mknod $(DESTDIR)/dev/cpu/0/msr c 202 0

uninstall:
ifndef DESTDIR
	chkconfig --del $(RCFILEFINAL)
endif
# shame there isn't reverse of install...
	rm $(DESTDIR)$(INSDIR)/$(PROGRAM) \
		$(DESTDIR)$(RCFILETO)/$(RCFILEFINAL)
