summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMartin Burnicki <martin.burnicki@meinberg.de>2020-08-25 15:36:17 +0200
committerMartin Burnicki <martin.burnicki@meinberg.de>2020-08-25 15:36:17 +0200
commit3a3ea70c46af6e0ea9085681a85a1462225921a1 (patch)
tree21609eafe02ec4fa7a2874c771b5318d21bdda9b
parent0742d224ccfd89a5bf87f07fbad32d16d6265599 (diff)
parent41869040e9ba2c11431cc1f3b7d2592256472d11 (diff)
downloadgpsxmple-3a3ea70c46af6e0ea9085681a85a1462225921a1.tar.gz
gpsxmple-3a3ea70c46af6e0ea9085681a85a1462225921a1.zip
Merge branch 'linux'
-rw-r--r--unix/Makefile107
1 files changed, 107 insertions, 0 deletions
diff --git a/unix/Makefile b/unix/Makefile
new file mode 100644
index 0000000..9b856d6
--- /dev/null
+++ b/unix/Makefile
@@ -0,0 +1,107 @@
+
+#########################################################################
+#
+# $Id: Makefile 1.9 2017/04/12 08:49:33 martin TEST $
+#
+# Description:
+# Makefile for gpsxmple for Unix-like systems.
+# Currently supported OSs: Linux, QNX 6.x
+#
+# -----------------------------------------------------------------------
+# $Log: Makefile $
+# Revision 1.9 2017/04/12 08:49:33 martin
+# Changed CFLAGS to CPPFLAGS.
+# Revision 1.8 2017/04/05 16:08:53 martin
+# Added some library modules.
+# Revision 1.7 2014/10/30 13:50:04 martin
+# Added module mbgerror.o.
+# Revision 1.6 2013/02/01 16:11:27 martin
+# Added extiohlp module to the list of object files.
+# Revision 1.5 2011/08/19 07:26:40 martin
+# Modified the way to define targets etc.
+# Revision 1.4 2011/04/18 08:08:41 martin
+# Modified DEBUG handling.
+# Revision 1.3 2009/10/01 14:09:19 martin
+# Added mbgserio.c source module.
+# Revision 1.2 2006/08/22 15:49:27 martin
+# Moved this makefile for Unix-like systems to folder unix.
+# This build environment now supports Linux and QNX 6.x.
+# Network socket I/O is supported for both Linux and QNX.
+# Serial I/O is not yet supprted for QNX, but for Linux.
+# Account for mbglib files having been moved to subdirectory mbglib.
+# Build with debug if make is called with DEBUG=1.
+# Added library modules mbgextio.c and aes128.c.
+# Revision 1.1 2004/06/01 14:55:27 martin
+#
+#########################################################################
+
+TARGET = gpsxmple
+
+MBGLIB = ../mbglib
+MBGLIB_DIRS += common
+
+VPATH += ..
+VPATH += $(foreach dir,$(MBGLIB_DIRS),$(MBGLIB)/$(dir))
+
+OBJS = $(TARGET).o
+OBJS += extiohlp.o
+OBJS += xtiocomm.o
+OBJS += cfg_hlp.o
+OBJS += mbgextio.o
+OBJS += mbgserio.o
+OBJS += gpsserio.o
+OBJS += gpsutils.o
+OBJS += aes128.o
+OBJS += mbgerror.o
+OBJS += str_util.o
+OBJS += lan_util.o
+OBJS += xdevfeat.o
+
+# Try to determine whether the OS is QNX
+OS_IS_QNX := $(shell uname | grep -i QNX && echo "QNX" )
+
+
+# set up the compiler flags
+
+CPPFLAGS += -Wall
+
+ifdef DEBUG
+ # build with debugging enabled
+ CPPFLAGS += -g -DDEBUG=$(DEBUG)
+else
+ # build with specified optimization level
+ CPPFLAGS += -O2
+endif
+
+CPPFLAGS += -D_USE_SOCKET_IO=1
+
+CPPFLAGS += -I.
+CPPFLAGS += $(foreach dir,$(MBGLIB_DIRS),-I$(MBGLIB)/$(dir))
+
+ifneq ($(OS_IS_QNX),)
+ # for QNX we must link the socket library explicitely
+ LDFLAGS += -lsocket
+ # we don't yet support serial I/O under QNX
+ CPPFLAGS += -D_USE_SERIAL_IO=0
+else
+ CPPFLAGS += -D_USE_SERIAL_IO=1
+endif
+
+
+LD = $(CC)
+
+.PHONY: all
+all: $(TARGET)
+
+$(TARGET): $(OBJS)
+ $(LD) $(LDFLAGS) -o $@ $(OBJS)
+
+
+.PHONY: clean
+clean:
+ rm -f *.o *~ core
+ rm -f $(TARGET)
+
+.PHONY: distclean
+distclean: clean
+