Create fileutils.c/.h
* _Py_fopen() and _Py_stat() come from Python/import.c
* (_Py)_wrealpath() comes from Python/sysmodule.c
* _Py_char2wchar(), _Py_wchar2char() and _Py_wfopen() come from Modules/main.c
* (_Py)_wstat(), (_Py)_wgetcwd(), _Py_wreadlink() come from Modules/getpath.c
diff --git a/Include/Python.h b/Include/Python.h
index 5afde02..6ca7a58 100644
--- a/Include/Python.h
+++ b/Include/Python.h
@@ -122,6 +122,7 @@
#include "pystrtod.h"
#include "pystrcmp.h"
#include "dtoa.h"
+#include "fileutils.h"
#ifdef __cplusplus
extern "C" {
@@ -130,17 +131,6 @@
/* _Py_Mangle is defined in compile.c */
PyAPI_FUNC(PyObject*) _Py_Mangle(PyObject *p, PyObject *name);
-/* These functions live in main.c */
-PyAPI_FUNC(wchar_t *) _Py_char2wchar(char *);
-PyAPI_FUNC(char*) _Py_wchar2char(const wchar_t *text);
-PyAPI_FUNC(FILE *) _Py_wfopen(const wchar_t *path, const wchar_t *mode);
-
-/* These functions live in import.c */
-PyAPI_FUNC(FILE*) _Py_fopen(PyObject *unicode, const char *mode);
-#ifdef HAVE_STAT
-int _Py_stat(PyObject *unicode, struct stat *statbuf);
-#endif
-
#ifdef __cplusplus
}
#endif