Linux OSGPS 2.x Makefile

Clifford Kelley <[email protected]> Sat, 23 Dec 2006 21:15:26 -0800 (GMT-08:00)
Newsgroups gmane.comp.hardware.gps.opensource
Message-ID <19133341.1166937326474.JavaMail.root@elwamui-rubis.atl.sa.earthlink.net>
After looking at the .tar file for OSGPS 2.1 it appears that for some reason the all important makefile was not included.  It is in the CVS but since it is small I decided to send it out to the group.

In addition I'd like to wish you all a Merry Christmas and a Happy New Year.

Best regards,

Cliff

_______________________________________________
opensource_gps mailing list
[email protected]
http://lists.psas.pdx.edu/cgi-bin/mailman/listinfo/opensource_gps
Makefile (text/plain, 1.7 KB)
# To build modules outside of the kernel tree, we run "make"
# in the kernel source tree; the Makefile these then includes this
# Makefile once again.
# This conditional selects whether we are being included from the
# kernel Makefile or not.
ifeq ($(PATCHLEVEL),)

    # Assume the source tree is where the running kernel was built
    # You should set KERNELDIR in the environment if it's elsewhere
    KERNELDIR ?= /lib/modules/$(shell uname -r)/build
    # The current directory is passed to sub-makes as argument
    PWD := $(shell pwd)


PROJ=gpsrcvr
SRC=  gpsfuncs.c gpsrcvr.c nav_fix.c linuxusr.c nmea.c FwInter.c rinex.c
GUSRC=gpsfuncs.c gpsrcvr.c nav_fix.c interfac.c
# NMEA.c serport.c FwInter.c

CFLAGS=-g3 -O3 -Wall -W -pedantic -D_GNU_SOURCE -Werror
LDFLAGS=-lm



all: .depend gpsrcvr regtest modules 90-osgps.rules

modules:
	$(MAKE) -C $(KERNELDIR) M=$(PWD) modules

modules_install:
	$(MAKE) -C $(KERNELDIR) M=$(PWD) modules_install

gpsrcvr: $(SRC:.c=.o)
	$(CC) $(CFLAGS) $^ -o $@ $(LDFLAGS)

gpsuser: $(GUSRC:.c=.o)
	$(CC) $(CFLAGS) $^ -o $@ $(LDFLAGS)

90-osgps.rules:
	echo 'KERNEL=="gps.status",     NAME="gps/status", MODE="0666"' > $@
	echo 'KERNEL=="gps.measurement",NAME="gps/measurement", MODE="0666"' >> $@
	echo 'KERNEL=="gps.data",       NAME="gps/data", MODE="0666"' >> $@

install: modules_install
	cp 90-osgps.rules /etc/udev/rules.d/

clean:
	$(RM) -r *.o *~ core .depend .*.cmd *.ko *.mod.c .tmp_versions
	$(RM) gpsrcvr regtest *.o *~ 
	$(RM) *.lib *.obj *.exe *.exe

.depend:
	$(RM) $@
	gcc -MM $(CFLAGS) $(SRC) > $@

.PHONY: modules modules_install clean depend

include .depend

else
    # called from kernel build system: just declare what our modules are
    gp2021km-objs := linuxmod.o gp2021.o gpsisr.o interfac.o
    obj-m := gp2021km.o
endif