# Copyright(c) 2008 OMICRON electronics GmbH.
#
# 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.
#
# This program is distributed in the hope that it will be useful, but
# WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
# General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA

ifneq ($(KERNELRELEASE),)
#
# Do the kbuild.
#

obj-m := michi.o
michi-objs := mic.o i2c.o

# Include Xenomai driver if kernel is compiled with xenomai patches
ifeq ($(CONFIG_XENOMAI),y)
EXTRA_CFLAGS += -D__IN_XENOMAI__ -Iinclude/xenomai
michi-objs += iec_rt.o
else
michi-objs +=iec.o
endif

else
#
# This will build the user space programs and then invoke kbuild.
#

ifndef KDIR
$(error Need path to the kernel sources, e.g. KDIR=/path/to/src))
endif

ifndef XENO_ROOT
$(error Need path to xenomai root fs, e.g. XENO_ROOT=/path/to/root_fs))
endif

IP        = 172.22.23.64
TOOLCHAIN = armeb-unknown-linux-gnueabi-
CC        = $(TOOLCHAIN)gcc
CFLAGS    = -Wall
PWD       = $(shell pwd)
XENO_CONF = $(XENO_ROOT)/usr/xenomai/bin/xeno-config
MODULES   = michi.ko

all: module

module:
	$(MAKE) -C $(KDIR) SUBDIRS=$(PWD) ARCH=arm CROSS_COMPILE=$(TOOLCHAIN) modules 

install: all
	scp -q load.sh michi.ko root@$(IP):

clean:
	rm -f *.o
	rm -f .*.cmd

distclean: clean
	rm -f $(MODULES)
	rm -f *.mod.c
	rm -f Module.symvers
	rm -f modules.order
	rm -rf .tmp_versions

endif
