
include ../../../src/Makefile.config

TARGET = gps_receiver
GPSD = gpsd-2.37

OBJFILES = main.o gpsreceiver.o


INCPATHS = -I../../../src/ -I$(GPSD)/
LIBPATHS = -L$(GPSD)/.libs/
LIBS = -lpthread -lrt -lstdc++ -lm -lgps
CXXFLAGS = $(CXXFLAGS_ALL)
CFLAGS = $(CFLAGS_ALL)
LDFLAGS = $(LDFLAGS_ALL) 

all: $(TARGET)

$(TARGET): $(GPSD)/.libs/libgps.a $(OBJFILES) 
	$(CXX) $(CFLAGS) $(INCPATHS) $(OBJFILES) $(LIBPATHS) $(LIBS) $(LDFLAGS) -o $(TARGET) 

main.o: main.cpp
	$(CXX) $(CXXFLAGS) $(INCPATHS) -c main.cpp -o main.o 

gpsreceiver.o: GPSReceiver.cpp GPSReceiver.h
	$(CXX) $(CXXFLAGS) $(INCPATHS) -c GPSReceiver.cpp -o gpsreceiver.o

$(GPSD)/.libs/libgps.a: $(GPSD).tar.gz 
	tar xzvf $(GPSD).tar.gz
	#patch -p0 < gpsd-2.2.patch
	
	cd $(GPSD) && ./configure --disable-shared --disable-earthmate --disable-python
	make -C $(GPSD) libgps.la libgps

%.tar.gz:
	# http://gpsd.berlios.de/
	wget http://download.berlios.de/gpsd/$@  

.PHONY: clean realclean all install

clean:
	$(RM) *.o */*.o */*/*.o
	$(RM) $(TARGET) $(OBJFILES)

realclean: clean
	-rm -rf $(GPSD)


