OS/2 EMX port changes (Modules part of patch #450267):
  Modules/
    _hotshot.c
    dbmmodule.c
    fcntlmodule.c
    main.c
    pwdmodule.c
    readline.c
    selectmodule.c
    signalmodule.c
    termios.c
    timemodule.c
    unicodedata.c
diff --git a/Modules/fcntlmodule.c b/Modules/fcntlmodule.c
index 9f84a2c..13cd0f7 100644
--- a/Modules/fcntlmodule.c
+++ b/Modules/fcntlmodule.c
@@ -222,12 +222,17 @@
 			      &lenobj, &startobj, &whence))
 	    return NULL;
 
+#if defined(PYOS_OS2) && defined(PYCC_GCC)
+	PyErr_SetString(PyExc_NotImplementedError,
+			"lockf not supported on OS/2 (EMX)");
+	return NULL;
+#else
 #ifndef LOCK_SH
 #define LOCK_SH		1	/* shared lock */
 #define LOCK_EX		2	/* exclusive lock */
 #define LOCK_NB		4	/* don't block when locking */
 #define LOCK_UN		8	/* unlock */
-#endif
+#endif  /* LOCK_SH */
 	{
 		struct flock l;
 		if (code == LOCK_UN)
@@ -275,6 +280,7 @@
 	}
 	Py_INCREF(Py_None);
 	return Py_None;
+#endif  /* defined(PYOS_OS2) && defined(PYCC_GCC) */
 }
 
 static char lockf_doc [] =