]> granicus.if.org Git - python/commitdiff
Modified for GUSI
authorJack Jansen <jack.jansen@cwi.nl>
Wed, 14 Feb 1996 16:02:30 +0000 (16:02 +0000)
committerJack Jansen <jack.jansen@cwi.nl>
Wed, 14 Feb 1996 16:02:30 +0000 (16:02 +0000)
Mac/Include/config.h
Mac/Modules/config.c
Mac/Modules/macmodule.c
Mac/Python/macapplication.c
Mac/Python/macgetcompiler.c

index c00e4e68cc0b6571f8eb49e1125e47aae8c41644..4fd79ec8577b6792ee87da776cbe208260aa8944 100644 (file)
 #define HAVE_FOPENRF
 #endif
 #ifdef __MWERKS__
+#ifndef USE_GUSI
 #define HAVE_FOPENRF
 #endif
+#endif
+
+#ifdef USE_GUSI
+/* GUSI provides a lot of unixisms */
+#define HAVE_SELECT
+#define DIRENT
+#define HAVE_GETPEERNAME
+#define HAVE_SELECT
+#define HAVE_FCNTL_H
+#define HAVE_SYS_TIME_H
+#define HAVE_UNISTD_H
+#endif
 
 #ifdef SYMANTEC__CFM68K__
 #define atof Py_AtoF
index 6ba4fc280fd1f57b9d6875e5b47268d451abf100..2dc4f50fa296085f18ea7c9fd68c63ed23973440 100644 (file)
@@ -122,6 +122,10 @@ extern void initimgop();
 #ifdef USE_TK
 extern void init_tkinter();
 #endif
+#ifdef USE_GUSI
+extern void initsocket();
+extern void initselect();
+#endif
 /* -- ADDMODULE MARKER 1 -- */
 
 extern void PyMarshal_Init();
@@ -204,6 +208,10 @@ struct {
 #ifdef USE_TK
        {"_tkinter",    init_tkinter},
 #endif
+#ifdef USE_GUSI
+       {"socket",      initsocket},
+       {"select",      initselect},
+#endif
 
 /* -- ADDMODULE MARKER 2 -- */
 
index 16ab2ffef366cce1de82b380e4dbb8f7a6811adc..bf132a54a87907ae99519c580ea82123d3946b3e 100644 (file)
@@ -43,7 +43,13 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 #undef S_ISREG
 #endif
 
+#ifdef USE_GUSI
+#include <sys/types.h>
+#include <stat.h>
+#define macstat stat
+#else
 #include "macstat.h"
+#endif
 
 #ifdef __MWERKS__
 /* For CodeWarrior 4 also define CW4 */
@@ -57,7 +63,11 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 #endif
 
 #include "macdefs.h"
+#ifdef USE_GUSI
+#include <dirent.h>
+#else
 #include "dirent.h"
+#endif
 
 #ifndef MAXPATHLEN
 #define MAXPATHLEN 1024
@@ -68,13 +78,19 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 int chdir PROTO((const char *path));
 char *getbootvol PROTO((void));
 char *getwd PROTO((char *));
+#ifdef USE_GUSI
+int mkdir PROTO((const char *path));
+DIR * opendir PROTO((const char *));
+int closedir PROTO((DIR *));
+#else
 int mkdir PROTO((const char *path, int mode));
 DIR * opendir PROTO((char *));
 void closedir PROTO((DIR *));
+#endif
 struct dirent * readdir PROTO((DIR *));
 int rmdir PROTO((const char *path));
 int sync PROTO((void));
-#if defined(THINK_C) || defined(__SC__)
+#if defined(THINK_C) || defined(__SC__) || defined(USE_GUSI)
 int unlink PROTO((char *));
 #else
 int unlink PROTO((const char *));
@@ -315,12 +331,26 @@ mac_lseek(self, args)
 }
 #endif /* !CW4 */
 
+#ifdef USE_GUSI
+/* GUSI mkdir doesn't accept the (dummy) mode. Grrr. */
+int _gusi_mkdir(name, mode)
+       char *name;
+       int mode;
+{
+       return mkdir(name);
+}
+#endif /* USE_GUSI */
+
 static object *
 mac_mkdir(self, args)
        object *self;
        object *args;
 {
+#ifdef USE_GUSI
+       return mac_strint(args, _gusi_mkdir);
+#else
        return mac_strint(args, mkdir);
+#endif
 }
 
 #ifndef CW4
@@ -425,6 +455,19 @@ mac_xstat(self, args)
        END_SAVE
        if (res != 0)
                return mac_error();
+#ifdef USE_GUSI
+       return mkvalue("(llllllllll)",
+                   (long)st.st_mode,
+                   (long)st.st_ino,
+                   (long)st.st_dev,
+                   (long)st.st_nlink,
+                   (long)st.st_uid,
+                   (long)st.st_gid,
+                   (long)st.st_size,
+                   (long)st.st_atime,
+                   (long)st.st_mtime,
+                   (long)st.st_ctime);
+#else
        return mkvalue("(llllllllllls#s#)",
                    (long)st.st_mode,
                    (long)st.st_ino,
@@ -439,6 +482,7 @@ mac_xstat(self, args)
                    (long)st.st_rsize,
                    st.st_creator, 4,
                    st.st_type, 4);
+#endif
 }
 
 static object *
index d7b1e2e89d15297e0d583c056b99c0c0cdcf50f2..5d7bc830eb78979ad70f2ad8bc41fd72e0efd24e 100644 (file)
@@ -31,8 +31,8 @@ OF OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
 extern void PyMac_InitApplication();
 
 main() {
-#if defined(__MWERKS__) && defined(USE_TK)
-       PyTk_InitGUSI();
+#if defined(USE_GUSI)
+       GUSIDefaultSetup();
 #endif
 #if defined(__MWERKS__) && defined(__CFM68K__)
        printf("Hello, world!\n");
index 67399d8fcda6e6f913833c6fcff038f143d9af56..d93172b9305d5967eadf4b401ab3dfdb89029c95 100644 (file)
@@ -5,13 +5,18 @@
 #endif
 
 #ifdef __MWERKS__
+#ifdef USE_GUSI
+#define HASGUSI " w/GUSI"
+#else
+#define HASGUSI ""
+#endif
 #ifdef __powerc
-#define COMPILER " [CW PPC]"
+#define COMPILER " [CW PPC" HASGUSI "]"
 #else
 #ifdef __CFM68K__
-#define COMPILER " [CW CFM68K]"
+#define COMPILER " [CW CFM68K" HASGUSI "]"
 #else
-#define COMPILER " [CW 68K]"
+#define COMPILER " [CW 68K" HASGUSI "]"
 #endif
 #endif
 #endif