summaryrefslogtreecommitdiff
path: root/recipes/libedit/files/20031222-debian-to-gentoo.patch
blob: 4822f2aadf4ded956633ddd701c3c20a6796848d (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
diff -ur netbsd-cvs/Makefile libedit-20031222/Makefile
--- netbsd-cvs/Makefile	2003-12-22 13:44:24.798012752 -0500
+++ libedit-20031222/Makefile	2003-12-22 14:55:15.133863488 -0500
@@ -5,6 +5,7 @@
 
 WARNS=	3
 LIB=	edit
+LIBS=-lncurses
 
 OSRCS=	chared.c common.c el.c emacs.c fcns.c help.c hist.c key.c map.c \
 	parse.c prompt.c read.c refresh.c search.c sig.c term.c tty.c vi.c
@@ -22,9 +23,10 @@
 	editline.3 tok_line.3 editline.3 tok_str.3
 
 # For speed and debugging
-#SRCS=   ${OSRCS} tokenizer.c history.c readline.c
+SRCS=   ${OSRCS} tokenizer.c history.c readline.c vis.c unvis.c fgetln.c strlcat.c strlcpy.c
 # For protection
-SRCS=	editline.c tokenizer.c history.c readline.c
+#SRCS=	editline.c tokenizer.c history.c readline.c
+OOBJS= $(patsubst %.c,%.o,$(SRCS))
 
 LIBEDITDIR?=${.CURDIR}
 
@@ -38,6 +40,7 @@
 CPPFLAGS+=-I. -I${.CURDIR}
 CPPFLAGS+=#-DDEBUG_TTY -DDEBUG_KEY -DDEBUG_READ -DDEBUG -DDEBUG_REFRESH
 CPPFLAGS+=#-DDEBUG_PASTE -DDEBUG_EDIT
+CFLAGS+=-I. -include ../glibc-bsd-glue/bsdcompat.h -I../glibc-compat -I../glibc-bsd-glue
 
 AHDR=vi.h emacs.h common.h 
 ASRC=${LIBEDITDIR}/vi.c ${LIBEDITDIR}/emacs.c ${LIBEDITDIR}/common.c
@@ -46,46 +49,56 @@
 CLEANFILES+=	${AHDR} fcns.h help.h fcns.c help.c
 
 SUBDIR=	readline
+HOST_SH=sh
+LIBEDITDIR=.
+all: .depend libedit.a libedit.so
 
 vi.h: vi.c makelist
 	${HOST_SH} ${LIBEDITDIR}/makelist -h ${LIBEDITDIR}/vi.c \
-	    > ${.TARGET}.tmp && \
-	    mv ${.TARGET}.tmp ${.TARGET}
+	    > $@.tmp && \
+	    mv $@.tmp $@
 
 emacs.h: emacs.c makelist
 	${HOST_SH} ${LIBEDITDIR}/makelist -h ${LIBEDITDIR}/emacs.c \
-	    > ${.TARGET}.tmp && \
-	    mv ${.TARGET}.tmp ${.TARGET}
+	    > $@.tmp && \
+	    mv $@.tmp $@
 
 common.h: common.c makelist
 	${HOST_SH} ${LIBEDITDIR}/makelist -h ${LIBEDITDIR}/common.c \
-	    > ${.TARGET}.tmp && \
-	    mv ${.TARGET}.tmp ${.TARGET}
+	    > $@.tmp && \
+	    mv $@.tmp $@
 
 fcns.h: ${AHDR} makelist
-	${HOST_SH} ${LIBEDITDIR}/makelist -fh ${AHDR} > ${.TARGET}.tmp && \
-	    mv ${.TARGET}.tmp ${.TARGET}
+	${HOST_SH} ${LIBEDITDIR}/makelist -fh ${AHDR} > $@.tmp && \
+	    mv $@.tmp $@
 
 fcns.c: ${AHDR} fcns.h help.h makelist
-	${HOST_SH} ${LIBEDITDIR}/makelist -fc ${AHDR} > ${.TARGET}.tmp && \
-	    mv ${.TARGET}.tmp ${.TARGET}
+	${HOST_SH} ${LIBEDITDIR}/makelist -fc ${AHDR} > $@.tmp && \
+	    mv $@.tmp $@
 
 help.c: ${ASRC} makelist 
-	${HOST_SH} ${LIBEDITDIR}/makelist -bc ${ASRC} > ${.TARGET}.tmp && \
-	    mv ${.TARGET}.tmp ${.TARGET}
+	${HOST_SH} ${LIBEDITDIR}/makelist -bc ${ASRC} > $@.tmp && \
+	    mv $@.tmp $@
 
 help.h: ${ASRC} makelist
-	${HOST_SH} ${LIBEDITDIR}/makelist -bh ${ASRC} > ${.TARGET}.tmp && \
-	    mv ${.TARGET}.tmp ${.TARGET}
+	${HOST_SH} ${LIBEDITDIR}/makelist -bh ${ASRC} > $@.tmp && \
+	    mv $@.tmp $@
 
 editline.c: ${OSRCS}
-	${HOST_SH} ${LIBEDITDIR}/makelist -e ${.ALLSRC:T} > ${.TARGET}.tmp && \
-	    mv ${.TARGET}.tmp ${.TARGET}
+	${HOST_SH} ${LIBEDITDIR}/makelist -e ${.ALLSRC:T} > $@.tmp && \
+	    mv $@.tmp $@
 
 test.o:	${LIBEDITDIR}/TEST/test.c
 	
 test:	libedit.a test.o 
-	${CC} ${LDFLAGS} ${.ALLSRC} -o ${.TARGET} libedit.a ${LDADD} -ltermcap
+	${CC} ${LDFLAGS} ${.ALLSRC} -o $@ libedit.a ${LDADD} -ltermcap
 
-.include <bsd.lib.mk>
-.include <bsd.subdir.mk>
+.depend: vi.h emacs.h common.h fcns.h help.h help.c
+	-mkdir .a .so
+.c.o:
+	${CC} ${CFLAGS} -c $< -o .a/$*
+	${CC} ${CFLAGS} -fPIC -c $< -o .so/$*
+libedit.a: ${OOBJS}
+	ar -r $@ .a/*
+libedit.so: ${OOBJS}
+	${CC} --shared -o $@ .so/* ${LIBS}
diff -ur netbsd-cvs/el.c libedit-20031222/el.c
--- netbsd-cvs/el.c	2003-12-22 13:44:25.474909848 -0500
+++ libedit-20031222/el.c	2003-12-22 15:00:15.545194024 -0500
@@ -439,8 +439,10 @@
 		static const char elpath[] = "/.editrc";
 		char path[MAXPATHLEN];
 
+#if 0
 		if (issetugid())
 			return (-1);
+#endif
 		if ((ptr = getenv("HOME")) == NULL)
 			return (-1);
 		if (strlcpy(path, ptr, sizeof(path)) >= sizeof(path))