diff --git a/mach/mantra/liboc/Makefile b/mach/mantra/liboc/Makefile
new file mode 100644
index 000000000..a0f5ff2a3
--- /dev/null
+++ b/mach/mantra/liboc/Makefile
@@ -0,0 +1,20 @@
+SUF=o
+MAKEFILE=../../proto/libg/Makefile
+MACHDEF="MACH=mantra" "SUF=$(SUF)" "ASAR=aal"
+PCDEF="PREF=ocm" "SUB=" "SRC=lang/occam/lib"
+
+install:
+	make -f $(MAKEFILE) $(PCDEF) $(MACHDEF) tailcp
+
+cmp:
+	make -f $(MAKEFILE) $(PCDEF) $(MACHDEF) tail
+	-../../compare tail_ocm
+
+clean:
+		-rm -f *.old *.[ce$(SUF)] tail*
+
+opr:
+	make pr | opr
+
+pr:
+	@pr Makefile
diff --git a/mach/mantra/liboc/compmodule b/mach/mantra/liboc/compmodule
new file mode 100755
index 000000000..6327cb991
--- /dev/null
+++ b/mach/mantra/liboc/compmodule
@@ -0,0 +1,6 @@
+if ${MACH?} -I../../../h ${MACHFL?} $1 1>&2
+then
+	echo `basename $1 $2`.o
+else
+	exit 1
+fi
diff --git a/mach/sun2/liboc/Makefile b/mach/sun2/liboc/Makefile
new file mode 100644
index 000000000..90b208035
--- /dev/null
+++ b/mach/sun2/liboc/Makefile
@@ -0,0 +1,20 @@
+SUF=o
+MAKEFILE=../../proto/libg/Makefile
+MACHDEF="MACH=sun2" "SUF=$(SUF)" "ASAR=aal"
+PCDEF="PREF=ocm" "SUB=" "SRC=lang/occam/lib"
+
+install:
+	make -f $(MAKEFILE) $(PCDEF) $(MACHDEF) tailcp
+
+cmp:
+	make -f $(MAKEFILE) $(PCDEF) $(MACHDEF) tail
+	-../../compare tail_ocm
+
+clean:
+		-rm -f *.old *.[ce$(SUF)] tail*
+
+opr:
+	make pr | opr
+
+pr:
+	@pr Makefile
diff --git a/mach/sun2/liboc/compmodule b/mach/sun2/liboc/compmodule
new file mode 100755
index 000000000..6327cb991
--- /dev/null
+++ b/mach/sun2/liboc/compmodule
@@ -0,0 +1,6 @@
+if ${MACH?} -I../../../h ${MACHFL?} $1 1>&2
+then
+	echo `basename $1 $2`.o
+else
+	exit 1
+fi
diff --git a/mach/sun3/liboc/Makefile b/mach/sun3/liboc/Makefile
new file mode 100644
index 000000000..921625e4f
--- /dev/null
+++ b/mach/sun3/liboc/Makefile
@@ -0,0 +1,20 @@
+SUF=o
+MAKEFILE=../../proto/libg/Makefile
+MACHDEF="MACH=sun3" "SUF=$(SUF)" "ASAR=aal"
+PCDEF="PREF=ocm" "SUB=" "SRC=lang/occam/lib"
+
+install:
+	make -f $(MAKEFILE) $(PCDEF) $(MACHDEF) tailcp
+
+cmp:
+	make -f $(MAKEFILE) $(PCDEF) $(MACHDEF) tail
+	-../../compare tail_ocm
+
+clean:
+		-rm -f *.old *.[ce$(SUF)] tail*
+
+opr:
+	make pr | opr
+
+pr:
+	@pr Makefile
diff --git a/mach/sun3/liboc/compmodule b/mach/sun3/liboc/compmodule
new file mode 100755
index 000000000..6327cb991
--- /dev/null
+++ b/mach/sun3/liboc/compmodule
@@ -0,0 +1,6 @@
+if ${MACH?} -I../../../h ${MACHFL?} $1 1>&2
+then
+	echo `basename $1 $2`.o
+else
+	exit 1
+fi