--- a
+++ b/Makefile.m2pp
@@ -0,0 +1,57 @@
+# ========================================
+# Makefile for m2pp Praeprocessor with GM2
+# ========================================
+
+# For GM2 the pathes below may need to be adjusted based on
+# your local installation.
+
+GM2baseDir = /usr/local/gm2/lib/gcc/i686-pc-linux-gnu/8.2.0
+
+GM2libDir = /usr/local/gm2/libs
+
+M2baseDir = /home/mriedl/Modula-2
+
+# beneath M2baseDir I have subdirs
+#
+# "InOut/quellen.git" to hold the "InOut" files
+# "StringHandler" to hold the "string handling" files (Keywords, TokenLib)
+#
+
+OPTIONS= -fiso \
+ -I $(GM2baseDir)/m2/iso \
+ -I $(GM2baseDir)/m2/pim \
+ -I $(GM2baseDir)/m2/cor \
+ -I $(M2baseDir)/InOut/quellen.git \
+ -I $(M2baseDir)/StringHandler \
+ -L $(GM2libDir) \
+ -O1 -g
+
+LIBS = $(M2baseDir)/InOut/quellen.git/libInOut.gm2.a \
+ $(M2baseDir)/StringHandler/libStringHandler.gm2.a \
+ -liso -lm
+
+
+M2C= gm2 -c $(OPTIONS)
+M2L= gm2 -fonlylink -I. $(OPTIONS) $(LIBS)
+
+all:m2pp
+
+#----------------------------------------------------------------------------
+
+m2pp: m2pp.o
+ $(M2L) m2pp.mod $(LIBS) -o m2pp
+
+m2pp.o: m2pp.mod
+ $(M2C) m2pp.mod
+
+m2pp.mod:
+
+clean: force
+ $(RM) m2pp.o \
+ m2pp_m2.cpp m2pp_m2.s
+
+force:
+
+#----------------------------------------------------------------------------
+
+