#
# Makefile for nsp_cs
#

# $Id: Makefile,v 1.32 2002/03/27 12:46:09 elca Exp $

NSP_VERSION=2.8.2#
#NSP32_VERSION=alpha#
PROJECT=nsp_cs-$(NSP_VERSION)#+nsp32_cb-$(NSP32_VERSION)

# If you use kernel 2.2, uncomennt this line
#NSP_KERNEL_2_2=1

ifdef NSP_KERNEL_2_2
PCMCIA_DEF = -DNSP_KERNEL_2_2=1 -I/usr/src/pcmcia-cs-3.1.31/include
else
PCMCIA_DEF =
endif

# Select your CPU type
# ARCH_DEF = -march=i386   # i386
# ARCH_DEF = -march=i486   # i486
# ARCH_DEF = -march=i586   # pentium / pentium MMX
ARCH_DEF = -march=i686     # pentium 2 / pentium 3 / pentium 4
# ARCH_DEF = -march=k6     # K6
# ARCH_DEF = -march=athlon # Athlon

TOPDIR   = /usr/src/linux
CC       = gcc
comma   := ,

CFLAGS = -MD -O2 -Wall -Wstrict-prototypes -pipe \
	-mpreferred-stack-boundary=2 \
	$(ARCH_DEF) \
	-D__KERNEL__ \
	-DKBUILD_BASENAME=$(subst $(comma),_,$(subst -,_,$(*F))) \
	-DMODULE -DMODVERSIONS -include $(TOPDIR)/include/linux/modversions.h \
	-DPCMCIA  \
	$(PCMCIA_DEF) -I$(TOPDIR)/include

.PHONY: clean dist all22

all:: nsp_cs.o

ifeq ($(wildcard nsp32_cb.c), nsp32_cb.c)
all:: nsp32_cb.o
endif

all22:
	make NSP_KERNEL_2_2=1 TOPDIR=/usr/src/linux-2.2.20-reiserfs nsp_cs.o

.c.o:
	$(CC) $(CFLAGS) -c $<

nsp_cs.o: nsp_cs.c nsp_cs.h nsp_io.h nsp_message.c
	$(CC) $(CFLAGS) -c nsp_cs.c

nsp32_cb.o: nsp32_cb.c nsp32_cb.h nsp32_io.h nsp32_debug.c nsp32_pio.c
	$(CC) $(CFLAGS) -c nsp32_cb.c

clean:
	rm -f nsp_cs.o nsp32_cb.o

dist:
	rm -rf $(PROJECT)/
	mkdir $(PROJECT)
	cp ChangeLog README.nsp_cs README.nsp_cs.eng MAINTAINERS.nsp_cs Q_and_A.nsp_cs Q_and_A.nsp_cs.eng Makefile Configure.help.nsp_cs Configure.help.nsp_cs.eng COPYING $(PROJECT)/
	cp nsp_cs.c nsp_cs.h nsp_io.h nsp_debug.c nsp_message.c nsp_cs.conf nsp_cs.4 nsp_cs.4j $(PROJECT)/
	cp nsp32_cb.c nsp32_cb.h nsp32_io.h README.nsp32_cb nsp32_debug.c nsp32_pio.c $(PROJECT)/
	tar cvf $(PROJECT).tar $(PROJECT)/
	gzip -9f $(PROJECT).tar

# end
