From 89fea23de593344fbe250e95f80e264777a69593 Mon Sep 17 00:00:00 2001 From: Yong Luk Stanley Elijah Goh Date: Fri, 20 Aug 2010 05:55:31 +0800 Subject: [PATCH] uemacs: Compiles on Mac OS X. Compiles on Mac OS X 10.6.4. setmode() is renamed to setemode() to avoid conflict with OS X's unistd.h's setmode(). Modify Makefile to enable the appropriate DEFINES to compile on Mac OS X. Signed-off-by: Yong Luk Stanley Elijah Goh Signed-off-by: Linus Torvalds --- Makefile | 1 + ebind.h | 2 +- efunc.h | 2 +- estruct.h | 7 +++++++ names.c | 2 +- random.c | 2 +- 6 files changed, 12 insertions(+), 4 deletions(-) diff --git a/Makefile b/Makefile index a2d445c..72fbee4 100644 --- a/Makefile +++ b/Makefile @@ -34,6 +34,7 @@ CFLAGS=-O2 $(WARNINGS) #CFLAGS=-O4 -DSVR4 # Sun #CFLAGS=-O -qchars=signed # RS/6000 DEFINES=-DAUTOCONF -DPOSIX -DUSG -D_BSD_SOURCE -D_SVID_SOURCE -D_XOPEN_SOURCE=600 # Linux +#DEFINES=-DAUTOCONF -DPOSIX -DSYSV -D_DARWIN_C_SOURCE -D_BSD_SOURCE -D_SVID_SOURCE -D_XOPEN_SOURCE=600 # Mac OS X #DEFINES=-DAUTOCONF #LIBS=-ltermcap # BSD LIBS=-lcurses # SYSV diff --git a/ebind.h b/ebind.h index 7047d02..2138946 100644 --- a/ebind.h +++ b/ebind.h @@ -162,7 +162,7 @@ struct key_tab keytab[NBINDS] = { , {CTLX | 'K', killbuffer} , - {CTLX | 'M', setmode} + {CTLX | 'M', setemode} , {CTLX | 'N', filename} , diff --git a/efunc.h b/efunc.h index 44c54e9..4453bb4 100644 --- a/efunc.h +++ b/efunc.h @@ -107,7 +107,7 @@ extern int indent(int f, int n); extern int forwdel(int f, int n); extern int backdel(int f, int n); extern int killtext(int f, int n); -extern int setmode(int f, int n); +extern int setemode(int f, int n); extern int delmode(int f, int n); extern int setgmode(int f, int n); extern int delgmode(int f, int n); diff --git a/estruct.h b/estruct.h index fc29944..3d85a17 100644 --- a/estruct.h +++ b/estruct.h @@ -713,3 +713,10 @@ typedef struct { char *rstr; } RMC; #endif + +/* Since Mac OS X's termios.h doesn't have the following 2 macros, define them. + */ +#if defined(SYSV) && defined(_DARWIN_C_SOURCE) +#define OLCUC 0000002 +#define XCASE 0000004 +#endif diff --git a/names.c b/names.c index e731167..280f380 100644 --- a/names.c +++ b/names.c @@ -11,7 +11,7 @@ struct name_bind names[] = { {"abort-command", ctrlg}, - {"add-mode", setmode}, + {"add-mode", setemode}, {"add-global-mode", setgmode}, #if APROP {"apropos", apro}, diff --git a/random.c b/random.c index 2e2bf0b..835da16 100644 --- a/random.c +++ b/random.c @@ -829,7 +829,7 @@ int killtext(int f, int n) * * int f, n; default and argument */ -int setmode(int f, int n) +int setemode(int f, int n) { #if PKCODE return adjustmode(TRUE, FALSE);