# Voicetronix vtcore driver makefile
# Ben Kramer, December 2005
# Ron Lee, June 2006

CONFIG_VTCORE ?= m

ifeq ($(strip $(KERNELRELEASE)),)
include ../../Version
endif

obj-$(CONFIG_VTCORE) := vtcore.o vtopenpci.o vtopenswitch.o
ifneq ($(ARCH_AMD64),1)
obj-$(CONFIG_VTCORE) += vtecho_fp.o
endif
vtcore-objs          := vtcore_main.o mu-alaw.o

EXTRA_CFLAGS := -O2 -mhard-float -DEXPORT_SYMTAB -DVT_VERSION=\"$(VT_VERSION)\" -I$(M)/../libvpb
CFLAGS_vtecho_fp.o    := -O3 -ffloat-store -finline-functions -funroll-all-loops
#EXTRA_LDFLAGS := -d

# Centos4.3 uses a modified 2.6.9 kernel, with no indication that
# it is different from the mainstream (or even Centos4.2 2.6.9)
# kernel, so we must crowbar off the dunce-hat manually here.
ifeq (0,$(shell grep "CentOS release 4\.[3-8]\|Red Hat Enterprise Linux ES release 4" \
                /etc/redhat-release > /dev/null 2>&1; echo $$?))
EXTRA_CFLAGS+=-DMONGREL_CENTOS4
endif

EXTRA_CFLAGS += $(NO_OSW_RING_SYNC)


ifeq ($(strip $(KERNELRELEASE)),)

KSRC  ?= /lib/modules/$(shell uname -r)/build
KVERS := $(shell grep UTS_RELEASE $(KSRC)/include/linux/version.h 2>/dev/null | cut -f 2 -d \" )
ifeq ($(strip $(KVERS)),)
KVERS := $(shell grep UTS_RELEASE $(KSRC)/include/linux/utsrelease.h 2>/dev/null | cut -f 2 -d \" )
endif
ifeq ($(strip $(KVERS)),)
KVERS := $(shell grep UTS_RELEASE $(KSRC)/include/generated/utsrelease.h 2>/dev/null | cut -f 2 -d \" )
endif
ifeq ($(strip $(KVERS)),)
$(error "No kernel version.  You probably need the distro headers package for your running kernel.")
endif

MODULEDIR := $(DESTDIR)/lib/modules/$(KVERS)/kernel/drivers/telephony


all:
	$(MAKE) -C $(KSRC) M=$(CURDIR) VT_VERSION=$(version) modules

install:
	mkdir -p $(MODULEDIR)
	@for m in $(obj-m:.o=.ko); do			\
		echo "installing $$m --> $(MODULEDIR)";	\
		install -m 644 $$m $(MODULEDIR);	\
	done
	/sbin/depmod
	@modprobe -r netjet > /dev/null 2>&1 || true

clean distclean:
	rm -f *.o *.ko *~ core *.mod.c .*.cmd
	rm -rf .tmp_versions Module.symvers


.PHONY: all install clean distclean
endif

