1 |
commit: 928ac136512f2b3fd53d2565259b475a355f45f8 |
2 |
Author: Patrice Clement <monsieurp <AT> gentoo <DOT> org> |
3 |
AuthorDate: Wed Oct 5 07:54:44 2016 +0000 |
4 |
Commit: Patrice Clement <monsieurp <AT> gentoo <DOT> org> |
5 |
CommitDate: Wed Oct 5 07:56:58 2016 +0000 |
6 |
URL: https://gitweb.gentoo.org/repo/gentoo.git/commit/?id=928ac136 |
7 |
|
8 |
dev-scheme/chicken: remove unused patches. |
9 |
|
10 |
Closes: https://github.com/gentoo/gentoo/pull/2422 |
11 |
|
12 |
Package-Manager: portage-2.3.0 |
13 |
|
14 |
dev-scheme/chicken/files/50hen-gentoo.el | 5 - |
15 |
.../chicken-4.5.0-r0-ARCH-to-zARCH-hack.patch | 210 -------------- |
16 |
.../files/chicken-4.7.3-parallel-build.patch | 74 ----- |
17 |
.../files/chicken-4.8.0.3-CVE-2013-1874.patch | 25 -- |
18 |
.../files/chicken-4.8.0.3-CVE-2013-2024.patch | 47 ---- |
19 |
.../files/chicken-4.8.0.3-CVE-2013-2075_1.patch | 161 ----------- |
20 |
.../files/chicken-4.8.0.3-CVE-2013-2075_2.patch | 309 --------------------- |
21 |
.../files/chicken-4.8.0.3-parallel-build.patch | 74 ----- |
22 |
8 files changed, 905 deletions(-) |
23 |
|
24 |
diff --git a/dev-scheme/chicken/files/50hen-gentoo.el b/dev-scheme/chicken/files/50hen-gentoo.el |
25 |
deleted file mode 100644 |
26 |
index 712b287..00000000 |
27 |
--- a/dev-scheme/chicken/files/50hen-gentoo.el |
28 |
+++ /dev/null |
29 |
@@ -1,5 +0,0 @@ |
30 |
- |
31 |
-;;; chicken site-lisp configuration |
32 |
- |
33 |
-(add-to-list 'load-path "@SITELISP@") |
34 |
-(autoload 'hen-mode "hen" "Major mode for Chicken Scheme source." t) |
35 |
|
36 |
diff --git a/dev-scheme/chicken/files/chicken-4.5.0-r0-ARCH-to-zARCH-hack.patch b/dev-scheme/chicken/files/chicken-4.5.0-r0-ARCH-to-zARCH-hack.patch |
37 |
deleted file mode 100644 |
38 |
index 33527cd..00000000 |
39 |
--- a/dev-scheme/chicken/files/chicken-4.5.0-r0-ARCH-to-zARCH-hack.patch |
40 |
+++ /dev/null |
41 |
@@ -1,210 +0,0 @@ |
42 |
-diff -ru a//defaults.make b//defaults.make |
43 |
---- a//defaults.make 2010-05-11 18:50:35.000000000 +0300 |
44 |
-+++ b//defaults.make 2010-06-07 21:24:55.000000000 +0300 |
45 |
-@@ -31,7 +31,7 @@ |
46 |
- STACKDIRECTION ?= 1 |
47 |
- CROSS_CHICKEN ?= 0 |
48 |
- |
49 |
--ifeq ($(ARCH),x86-64) |
50 |
-+ifeq ($(zARCH),x86-64) |
51 |
- NURSERY ?= (256*1024) |
52 |
- else |
53 |
- NURSERY ?= (128*1024) |
54 |
-@@ -272,10 +272,10 @@ |
55 |
- POSIXFILE ?= posixunix |
56 |
- CHICKEN_CONFIG_H = chicken-config.h |
57 |
- |
58 |
--ifneq ($(ARCH),) |
59 |
-+ifneq ($(zARCH),) |
60 |
- HACKED_APPLY ?= 1 |
61 |
--APPLY_HACK_SRC ?= apply-hack.$(ARCH)$(ASM) |
62 |
--APPLY_HACK_OBJECT ?= apply-hack.$(ARCH)$(O) |
63 |
-+APPLY_HACK_SRC ?= apply-hack.$(zARCH)$(ASM) |
64 |
-+APPLY_HACK_OBJECT ?= apply-hack.$(zARCH)$(O) |
65 |
- endif |
66 |
- |
67 |
- ifeq ($(HACKED_APPLY),) |
68 |
-diff -ru a//Makefile.bsd b//Makefile.bsd |
69 |
---- a//Makefile.bsd 2010-05-11 18:50:34.000000000 +0300 |
70 |
-+++ b//Makefile.bsd 2010-06-07 21:24:25.000000000 +0300 |
71 |
-@@ -33,7 +33,7 @@ |
72 |
- |
73 |
- # platform configuration |
74 |
- |
75 |
--ARCH ?= $(shell sh $(SRCDIR)/config-arch.sh) |
76 |
-+zARCH ?= $(shell sh $(SRCDIR)/config-arch.sh) |
77 |
- |
78 |
- # options |
79 |
- |
80 |
-diff -ru a//Makefile.cross-linux-mingw b//Makefile.cross-linux-mingw |
81 |
---- a//Makefile.cross-linux-mingw 2010-05-11 18:50:34.000000000 +0300 |
82 |
-+++ b//Makefile.cross-linux-mingw 2010-06-07 21:23:02.000000000 +0300 |
83 |
-@@ -34,7 +34,7 @@ |
84 |
- # platform configuration |
85 |
- |
86 |
- DLLSINPATH = 1 |
87 |
--ARCH ?= x86 |
88 |
-+zARCH ?= x86 |
89 |
- HACKED_APPLY = 1 |
90 |
- WINDOWS = 1 |
91 |
- |
92 |
-@@ -72,7 +72,7 @@ |
93 |
- |
94 |
- # special files |
95 |
- |
96 |
--APPLY_HACK_OBJECT = apply-hack.$(ARCH)$(O) |
97 |
-+APPLY_HACK_OBJECT = apply-hack.$(zARCH)$(O) |
98 |
- POSIXFILE = posixwin |
99 |
- |
100 |
- # select default and internal settings |
101 |
-diff -ru a//Makefile.cygwin b//Makefile.cygwin |
102 |
---- a//Makefile.cygwin 2010-05-11 18:50:34.000000000 +0300 |
103 |
-+++ b//Makefile.cygwin 2010-06-07 21:24:07.000000000 +0300 |
104 |
-@@ -33,7 +33,7 @@ |
105 |
- |
106 |
- # platform configuration |
107 |
- |
108 |
--ARCH ?= x86 |
109 |
-+zARCH ?= x86 |
110 |
- HACKED_APPLY ?= 1 |
111 |
- DLLSINPATH = 1 |
112 |
- |
113 |
-@@ -76,7 +76,7 @@ |
114 |
- # special files |
115 |
- |
116 |
- CHICKEN_CONFIG_H = chicken-config.h |
117 |
--APPLY_HACK_OBJECT = apply-hack.$(ARCH)$(O) |
118 |
-+APPLY_HACK_OBJECT = apply-hack.$(zARCH)$(O) |
119 |
- |
120 |
- # select default and internal settings |
121 |
- |
122 |
-diff -ru a//Makefile.linux b//Makefile.linux |
123 |
---- a//Makefile.linux 2010-05-11 18:50:34.000000000 +0300 |
124 |
-+++ b//Makefile.linux 2010-06-07 21:25:31.000000000 +0300 |
125 |
-@@ -33,7 +33,7 @@ |
126 |
- |
127 |
- # platform configuration |
128 |
- |
129 |
--ARCH ?= $(shell sh $(SRCDIR)/config-arch.sh) |
130 |
-+zARCH ?= $(shell sh $(SRCDIR)/config-arch.sh) |
131 |
- |
132 |
- # options |
133 |
- |
134 |
-diff -ru a//Makefile.macosx b//Makefile.macosx |
135 |
---- a//Makefile.macosx 2010-05-11 18:50:34.000000000 +0300 |
136 |
-+++ b//Makefile.macosx 2010-06-07 21:23:51.000000000 +0300 |
137 |
-@@ -33,7 +33,7 @@ |
138 |
- |
139 |
- # platform configuration |
140 |
- |
141 |
--ARCH ?= $(shell sh $(SRCDIR)/config-arch.sh) |
142 |
-+zARCH ?= $(shell sh $(SRCDIR)/config-arch.sh) |
143 |
- |
144 |
- # commands |
145 |
- |
146 |
-@@ -64,19 +64,19 @@ |
147 |
- # special files |
148 |
- |
149 |
- CHICKEN_CONFIG_H = chicken-config.h |
150 |
--APPLY_HACK_OBJECT = apply-hack.$(ARCH)$(O) |
151 |
-+APPLY_HACK_OBJECT = apply-hack.$(zARCH)$(O) |
152 |
- HACKED_APPLY ?= 1 |
153 |
- |
154 |
- # architectures |
155 |
- |
156 |
--ifeq ($(ARCH),x86-64) |
157 |
-+ifeq ($(zARCH),x86-64) |
158 |
- C_COMPILER_OPTIONS += -m64 |
159 |
- LINKER_OPTIONS += -m64 |
160 |
- # Avoid bus error in install_name_tool |
161 |
- LINKER_LINK_SHARED_DLOADABLE_OPTIONS += -Wl,-headerpad -Wl,128 |
162 |
- else |
163 |
- |
164 |
--ifeq ($(ARCH),universal) |
165 |
-+ifeq ($(zARCH),universal) |
166 |
- C_COMPILER_OPTIONS += -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk |
167 |
- LINKER_OPTIONS += -arch ppc -arch i386 -isysroot /Developer/SDKs/MacOSX10.4u.sdk |
168 |
- endif |
169 |
-@@ -126,7 +126,7 @@ |
170 |
- endif |
171 |
- cat chicken-defaults.h >>$@ |
172 |
- |
173 |
--ifeq ($(ARCH),universal) |
174 |
-+ifeq ($(zARCH),universal) |
175 |
- ifneq ($(HACKED_APPLY),) |
176 |
- # We undefine HACKED_APPLY in order to override rules.make |
177 |
- # with our own build rules. |
178 |
-diff -ru a//Makefile.mingw b//Makefile.mingw |
179 |
---- a//Makefile.mingw 2010-05-11 18:50:34.000000000 +0300 |
180 |
-+++ b//Makefile.mingw 2010-06-07 21:25:59.000000000 +0300 |
181 |
-@@ -36,12 +36,12 @@ |
182 |
- # platform configuration |
183 |
- |
184 |
- DLLSINPATH = 1 |
185 |
--ARCH ?= x86 |
186 |
-+zARCH ?= x86 |
187 |
- WINDOWS = 1 |
188 |
- WINDOWS_SHELL = 1 |
189 |
- UNAME_SYS = MinGW |
190 |
- |
191 |
--ifeq ($(ARCH),x86) |
192 |
-+ifeq ($(zARCH),x86) |
193 |
- HACKED_APPLY ?= 1 |
194 |
- else |
195 |
- HACKED_APPLY = |
196 |
-@@ -79,7 +79,7 @@ |
197 |
- # special files |
198 |
- |
199 |
- CHICKEN_CONFIG_H = chicken-config.h |
200 |
--APPLY_HACK_OBJECT = apply-hack.$(ARCH)$(O) |
201 |
-+APPLY_HACK_OBJECT = apply-hack.$(zARCH)$(O) |
202 |
- POSIXFILE = posixwin |
203 |
- |
204 |
- # select default and internal settings |
205 |
-diff -ru a//Makefile.mingw-msys b//Makefile.mingw-msys |
206 |
---- a//Makefile.mingw-msys 2010-05-11 18:50:34.000000000 +0300 |
207 |
-+++ b//Makefile.mingw-msys 2010-06-07 21:26:33.000000000 +0300 |
208 |
-@@ -34,8 +34,8 @@ |
209 |
- # platform configuration |
210 |
- |
211 |
- DLLSINPATH = 1 |
212 |
--ARCH ?= x86 |
213 |
--ifeq ($(ARCH),x86) |
214 |
-+zARCH ?= x86 |
215 |
-+ifeq ($(zARCH),x86) |
216 |
- HACKED_APPLY ?= 1 |
217 |
- else |
218 |
- HACKED_APPLY = |
219 |
-@@ -79,7 +79,7 @@ |
220 |
- # special files |
221 |
- |
222 |
- CHICKEN_CONFIG_H = chicken-config.h |
223 |
--APPLY_HACK_OBJECT = apply-hack.$(ARCH)$(O) |
224 |
-+APPLY_HACK_OBJECT = apply-hack.$(zARCH)$(O) |
225 |
- POSIXFILE = posixwin |
226 |
- |
227 |
- # select default and internal settings |
228 |
-diff -ru a//Makefile.solaris b//Makefile.solaris |
229 |
---- a//Makefile.solaris 2010-05-11 18:50:34.000000000 +0300 |
230 |
-+++ b//Makefile.solaris 2010-06-07 21:25:45.000000000 +0300 |
231 |
-@@ -33,7 +33,7 @@ |
232 |
- |
233 |
- # platform configuration |
234 |
- |
235 |
--ARCH ?= $(shell sh $(SRCDIR)/config-arch.sh) |
236 |
-+zARCH ?= $(shell sh $(SRCDIR)/config-arch.sh) |
237 |
- |
238 |
- # options |
239 |
- |
240 |
-diff -ru a//rules.make b//rules.make |
241 |
---- a//rules.make 2010-05-11 18:50:36.000000000 +0300 |
242 |
-+++ b//rules.make 2010-06-07 21:26:10.000000000 +0300 |
243 |
-@@ -453,7 +453,7 @@ |
244 |
- # assembler objects |
245 |
- |
246 |
- ifneq ($(HACKED_APPLY),) |
247 |
--$(APPLY_HACK_OBJECT): $(SRCDIR)apply-hack.$(ARCH)$(ASM) |
248 |
-+$(APPLY_HACK_OBJECT): $(SRCDIR)apply-hack.$(zARCH)$(ASM) |
249 |
- $(ASSEMBLER) $(ASSEMBLER_OPTIONS) $(ASSEMBLER_COMPILE_OPTION) $< $(ASSEMBLER_OUTPUT) |
250 |
- endif |
251 |
- |
252 |
|
253 |
diff --git a/dev-scheme/chicken/files/chicken-4.7.3-parallel-build.patch b/dev-scheme/chicken/files/chicken-4.7.3-parallel-build.patch |
254 |
deleted file mode 100644 |
255 |
index 6d96287..00000000 |
256 |
--- a/dev-scheme/chicken/files/chicken-4.7.3-parallel-build.patch |
257 |
+++ /dev/null |
258 |
@@ -1,74 +0,0 @@ |
259 |
-diff --git a/GNUmakefile b/GNUmakefile |
260 |
-index 9bc40ca..c697f14 100644 |
261 |
---- a/GNUmakefile |
262 |
-+++ b/GNUmakefile |
263 |
-@@ -49,6 +49,9 @@ STANDARD_TARGETS \ |
264 |
- fullcheck libs install-target install-dev bench |
265 |
- |
266 |
- .PHONY: $(STANDARD_TARGETS) dist boot-chicken |
267 |
-+# Build this file's targets sequentially. This avoids executing overlapping |
268 |
-+# makes if the user specifies multiple targets. |
269 |
-+.NOTPARALLEL: |
270 |
- |
271 |
- $(STANDARD_TARGETS): |
272 |
- $(MAKE) -f $(SRCDIR)/Makefile.$(PLATFORM) CONFIG=$(CONFIG) $@ |
273 |
-diff --git a/README b/README |
274 |
-index 8d0d067..551b716 100644 |
275 |
---- a/README |
276 |
-+++ b/README |
277 |
-@@ -72,7 +72,7 @@ |
278 |
- platforms. |
279 |
- |
280 |
- Note that parallel builds (using the "-j" make(1) option) are |
281 |
-- *not* supported. |
282 |
-+ also supported. Beware that parallel install will not work though. |
283 |
- |
284 |
- If you invoke "make" later with different configuration parameters, |
285 |
- it is advisable to run: |
286 |
-diff --git a/rules.make b/rules.make |
287 |
-index 929b0a3..a8cb9b0 100644 |
288 |
---- a/rules.make |
289 |
-+++ b/rules.make |
290 |
-@@ -243,8 +243,8 @@ lib$(PROGRAM_PREFIX)chicken$(PROGRAM_SUFFIX)$(A): $(APPLY_HACK_OBJECT) $(LIBCHIC |
291 |
- |
292 |
- # import libraries and extensions |
293 |
- |
294 |
--%.so: %.o |
295 |
-- $(LINKER) $(LINKER_OPTIONS) $(LINKER_LINK_SHARED_DLOADABLE_OPTIONS) $^ $(LINKER_OUTPUT_OPTION) $@ \ |
296 |
-+%.so: %.o $(PRIMARY_LIBCHICKEN) |
297 |
-+ $(LINKER) $(LINKER_OPTIONS) $(LINKER_LINK_SHARED_DLOADABLE_OPTIONS) $< $(LINKER_OUTPUT_OPTION) $@ \ |
298 |
- $(LINKER_LIBRARY_PREFIX)$(PROGRAM_PREFIX)chicken$(PROGRAM_SUFFIX)$(LINKER_LIBRARY_SUFFIX) \ |
299 |
- $(LIBRARIES) |
300 |
- |
301 |
-@@ -578,9 +578,9 @@ chicken-profile.c: $(SRCDIR)chicken-profile.scm |
302 |
- $(CHICKEN) $< $(CHICKEN_PROGRAM_OPTIONS) -output-file $@ |
303 |
- chicken-install.c: $(SRCDIR)chicken-install.scm setup-download.c setup-api.c |
304 |
- $(CHICKEN) $< $(CHICKEN_PROGRAM_OPTIONS) -output-file $@ |
305 |
--chicken-uninstall.c: $(SRCDIR)chicken-uninstall.scm |
306 |
-+chicken-uninstall.c: $(SRCDIR)chicken-uninstall.scm setup-api.c |
307 |
- $(CHICKEN) $< $(CHICKEN_PROGRAM_OPTIONS) -output-file $@ |
308 |
--chicken-status.c: $(SRCDIR)chicken-status.scm |
309 |
-+chicken-status.c: $(SRCDIR)chicken-status.scm setup-api.c |
310 |
- $(CHICKEN) $< $(CHICKEN_PROGRAM_OPTIONS) -output-file $@ |
311 |
- csc.c: $(SRCDIR)csc.scm |
312 |
- $(CHICKEN) $< $(CHICKEN_PROGRAM_OPTIONS) -output-file $@ |
313 |
-@@ -671,14 +671,17 @@ bench: $(CHICKEN_SHARED_EXECUTABLE) $(CSI_SHARED_EXECUTABLE) $(CSC_PROGRAM)$(EXE |
314 |
- .PHONY: boot-chicken |
315 |
- |
316 |
- boot-chicken: |
317 |
-+ $(MAKE) -f Makefile.$(PLATFORM) PLATFORM=$(PLATFORM) CONFIG= confclean |
318 |
- $(MAKE) -f Makefile.$(PLATFORM) PLATFORM=$(PLATFORM) PREFIX=/nowhere CONFIG= \ |
319 |
- SRCDIR=$(SRCDIR) CHICKEN=$(CHICKEN) PROGRAM_SUFFIX=-boot-stage1 STATICBUILD=1 \ |
320 |
- C_COMPILER_OPTIMIZATION_OPTIONS= C_HACKED_APPLY= \ |
321 |
-- confclean chicken-boot-stage1$(EXE) |
322 |
-+ chicken-boot-stage1$(EXE) |
323 |
-+ $(MAKE) -f Makefile.$(PLATFORM) PLATFORM=$(PLATFORM) CONFIG= touchfiles |
324 |
- $(MAKE) -f Makefile.$(PLATFORM) PLATFORM=$(PLATFORM) PREFIX=/nowhere CONFIG= \ |
325 |
- SRCDIR=$(SRCDIR) CHICKEN=`pwd`/chicken-boot-stage1$(EXE) PROGRAM_SUFFIX=-boot \ |
326 |
- STATICBUILD=1 C_COMPILER_OPTIMIZATION_OPTIONS= \ |
327 |
-- touchfiles chicken-boot$(EXE) confclean |
328 |
-+ chicken-boot$(EXE) |
329 |
-+ $(MAKE) -f Makefile.$(PLATFORM) PLATFORM=$(PLATFORM) CONFIG= confclean |
330 |
- |
331 |
- .PHONY: touchfiles |
332 |
- |
333 |
|
334 |
diff --git a/dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-1874.patch b/dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-1874.patch |
335 |
deleted file mode 100644 |
336 |
index 599ae61..00000000 |
337 |
--- a/dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-1874.patch |
338 |
+++ /dev/null |
339 |
@@ -1,25 +0,0 @@ |
340 |
-From http://lists.nongnu.org/archive/html/chicken-hackers/2013-03/msg00074.html |
341 |
---- chicken-4.8.0.3/csi.scm |
342 |
-+++ chicken-4.8.0.3/csi.scm |
343 |
-@@ -1019,13 +1019,11 @@ EOF |
344 |
- (cons (cadr p) (loop (cddr p)))) ) ] |
345 |
- [else '()] ) ) ) |
346 |
- (define (loadinit) |
347 |
-- (let ([fn (##sys#string-append "./" init-file)]) |
348 |
-- (if (file-exists? fn) |
349 |
-- (load fn) |
350 |
-- (let* ([prefix (chop-separator (or (get-environment-variable "HOME") "."))] |
351 |
-- [fn (string-append prefix "/" init-file)] ) |
352 |
-- (when (file-exists? fn) |
353 |
-- (load fn) ) ) ) ) ) |
354 |
-+ (and-let* ((home (get-environment-variable "HOME")) |
355 |
-+ ((not (string=? home "")))) |
356 |
-+ (let ((fn (string-append (chop-separator home) "/" init-file))) |
357 |
-+ (when (file-exists? fn) |
358 |
-+ (load fn) ) ) ) ) |
359 |
- (define (evalstring str #!optional (rec (lambda _ (void)))) |
360 |
- (let ((in (open-input-string str))) |
361 |
- (do ([x (read in) (read in)]) |
362 |
--- |
363 |
-1.7.12 |
364 |
- |
365 |
|
366 |
diff --git a/dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-2024.patch b/dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-2024.patch |
367 |
deleted file mode 100644 |
368 |
index d57a4bc..00000000 |
369 |
--- a/dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-2024.patch |
370 |
+++ /dev/null |
371 |
@@ -1,47 +0,0 @@ |
372 |
-From http://code.call-cc.org/cgi-bin/gitweb.cgi?p=chicken-core.git;a=commit;h=58684f69572453acc6fed7326fa9df39be98760e |
373 |
---- chicken-4.8.0.3/setup-api.scm |
374 |
-+++ chicken-4.8.0.3/setup-api.scm |
375 |
-@@ -239,7 +239,7 @@ |
376 |
- (cond ((string=? prg "csc") |
377 |
- (string-intersperse |
378 |
- (cons* |
379 |
-- (shellpath (find-program "csc")) |
380 |
-+ (find-program "csc") |
381 |
- "-feature" "compiling-extension" |
382 |
- (if (or (deployment-mode) |
383 |
- (and (feature? #:cross-chicken) |
384 |
---- chicken-4.8.0.3/utils.scm |
385 |
-+++ chicken-4.8.0.3/utils.scm |
386 |
-@@ -59,20 +59,18 @@ |
387 |
- ;;; Quote string for shell |
388 |
- |
389 |
- (define (qs str #!optional (platform (build-platform))) |
390 |
-- (case platform |
391 |
-- ((mingw32) |
392 |
-- (string-append "\"" str "\"")) |
393 |
-- (else |
394 |
-- (if (zero? (string-length str)) |
395 |
-- "''" |
396 |
-- (string-concatenate |
397 |
-- (map (lambda (c) |
398 |
-- (if (or (char-whitespace? c) |
399 |
-- (memq c '(#\# #\" #\' #\` #\´ #\~ #\& #\% #\$ #\! #\* #\; |
400 |
-- #\< #\> #\\ #\( #\) #\[ #\] #\{ #\} #\?))) |
401 |
-- (string #\\ c) |
402 |
-- (string c))) |
403 |
-- (string->list str))))))) |
404 |
-+ (let ((delim (if (eq? platform 'mingw32) #\" #\')) |
405 |
-+ (escaped (if (eq? platform 'mingw32) "\"\"" "'\\''"))) |
406 |
-+ (string-append |
407 |
-+ (string delim) |
408 |
-+ (string-concatenate |
409 |
-+ (map (lambda (c) |
410 |
-+ (cond |
411 |
-+ ((char=? c delim) escaped) |
412 |
-+ ((char=? c #\nul) (error 'qs "NUL character can not be represented in shell string" str)) |
413 |
-+ (else (string c)))) |
414 |
-+ (string->list str))) |
415 |
-+ (string delim)))) |
416 |
- |
417 |
- |
418 |
- ;;; Compile and load file |
419 |
|
420 |
diff --git a/dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-2075_1.patch b/dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-2075_1.patch |
421 |
deleted file mode 100644 |
422 |
index d3de47b..00000000 |
423 |
--- a/dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-2075_1.patch |
424 |
+++ /dev/null |
425 |
@@ -1,161 +0,0 @@ |
426 |
-From 9e2022652258e8a30e5cedbf0abc9cd85a0f6af7 Mon Sep 17 00:00:00 2001 |
427 |
-From: Peter Bex <peter.bex@××××××.nl> |
428 |
-Date: Thu, 18 Apr 2013 00:31:08 +0200 |
429 |
-Subject: [PATCH] Implement file-select in terms of POSIX poll() for UNIX |
430 |
- |
431 |
-Signed-off-by: felix <felix@××××××××××××××××××××××××××××××.org> |
432 |
---- |
433 |
- posixunix.scm | 116 ++++++++++++++++++++++++++------------------------------ |
434 |
- 1 files changed, 54 insertions(+), 62 deletions(-) |
435 |
- |
436 |
-diff --git a/posixunix.scm b/posixunix.scm |
437 |
-index 15cb535..90e0176 100644 |
438 |
---- a/posixunix.scm |
439 |
-+++ b/posixunix.scm |
440 |
-@@ -67,6 +67,7 @@ static C_TLS int C_wait_status; |
441 |
- #endif |
442 |
- |
443 |
- #include <sys/mman.h> |
444 |
-+#include <sys/poll.h> |
445 |
- #include <time.h> |
446 |
- |
447 |
- #ifndef O_FSYNC |
448 |
-@@ -136,7 +137,6 @@ static C_TLS struct { |
449 |
- static C_TLS int C_pipefds[ 2 ]; |
450 |
- static C_TLS time_t C_secs; |
451 |
- static C_TLS struct tm C_tm; |
452 |
--static C_TLS fd_set C_fd_sets[ 2 ]; |
453 |
- static C_TLS struct timeval C_timeval; |
454 |
- static C_TLS char C_hostbuf[ 256 ]; |
455 |
- static C_TLS struct stat C_statbuf; |
456 |
-@@ -303,13 +303,6 @@ static C_TLS sigset_t C_sigset; |
457 |
- #define C_fseek(p, n, w) C_mk_nbool(fseek(C_port_file(p), C_num_to_int(n), C_unfix(w))) |
458 |
- #define C_lseek(fd, o, w) C_fix(lseek(C_unfix(fd), C_unfix(o), C_unfix(w))) |
459 |
- |
460 |
--#define C_zero_fd_set(i) FD_ZERO(&C_fd_sets[ i ]) |
461 |
--#define C_set_fd_set(i, fd) FD_SET(fd, &C_fd_sets[ i ]) |
462 |
--#define C_test_fd_set(i, fd) FD_ISSET(fd, &C_fd_sets[ i ]) |
463 |
--#define C_C_select(m) C_fix(select(C_unfix(m), &C_fd_sets[ 0 ], &C_fd_sets[ 1 ], NULL, NULL)) |
464 |
--#define C_C_select_t(m, t) (C_set_timeval(t, &C_timeval), \ |
465 |
-- C_fix(select(C_unfix(m), &C_fd_sets[ 0 ], &C_fd_sets[ 1 ], NULL, &C_timeval))) |
466 |
-- |
467 |
- #define C_ctime(n) (C_secs = (n), ctime(&C_secs)) |
468 |
- |
469 |
- #if defined(__SVR4) || defined(C_MACOSX) |
470 |
-@@ -656,60 +649,59 @@ EOF |
471 |
- |
472 |
- ;;; I/O multiplexing: |
473 |
- |
474 |
--(define file-select |
475 |
-- (let ([fd_zero (foreign-lambda void "C_zero_fd_set" int)] |
476 |
-- [fd_set (foreign-lambda void "C_set_fd_set" int int)] |
477 |
-- [fd_test (foreign-lambda bool "C_test_fd_set" int int)] ) |
478 |
-- (lambda (fdsr fdsw . timeout) |
479 |
-- (let ([fdmax 0] |
480 |
-- [tm (if (pair? timeout) (car timeout) #f)] ) |
481 |
-- (fd_zero 0) |
482 |
-- (fd_zero 1) |
483 |
-- (cond [(not fdsr)] |
484 |
-- [(fixnum? fdsr) |
485 |
-- (set! fdmax fdsr) |
486 |
-- (fd_set 0 fdsr) ] |
487 |
-- [else |
488 |
-- (##sys#check-list fdsr 'file-select) |
489 |
-- (for-each |
490 |
-- (lambda (fd) |
491 |
-- (##sys#check-exact fd 'file-select) |
492 |
-- (set! fdmax (##core#inline "C_i_fixnum_max" fdmax fd)) |
493 |
-- (fd_set 0 fd) ) |
494 |
-- fdsr) ] ) |
495 |
-- (cond [(not fdsw)] |
496 |
-- [(fixnum? fdsw) |
497 |
-- (set! fdmax fdsw) |
498 |
-- (fd_set 1 fdsw) ] |
499 |
-- [else |
500 |
-- (##sys#check-list fdsw 'file-select) |
501 |
-- (for-each |
502 |
-- (lambda (fd) |
503 |
-- (##sys#check-exact fd 'file-select) |
504 |
-- (set! fdmax (##core#inline "C_i_fixnum_max" fdmax fd)) |
505 |
-- (fd_set 1 fd) ) |
506 |
-- fdsw) ] ) |
507 |
-- (let ([n (cond [tm |
508 |
-- (##sys#check-number tm 'file-select) |
509 |
-- (##core#inline "C_C_select_t" (fx+ fdmax 1) tm) ] |
510 |
-- [else (##core#inline "C_C_select" (fx+ fdmax 1))] ) ] ) |
511 |
-- (cond [(fx< n 0) |
512 |
-- (posix-error #:file-error 'file-select "failed" fdsr fdsw) ] |
513 |
-- [(fx= n 0) (values (if (pair? fdsr) '() #f) (if (pair? fdsw) '() #f))] |
514 |
-- [else |
515 |
-- (values |
516 |
-- (and fdsr |
517 |
-- (if (fixnum? fdsr) |
518 |
-- (fd_test 0 fdsr) |
519 |
-- (let ([lstr '()]) |
520 |
-- (for-each (lambda (fd) (when (fd_test 0 fd) (set! lstr (cons fd lstr)))) fdsr) |
521 |
-- lstr) ) ) |
522 |
-- (and fdsw |
523 |
-- (if (fixnum? fdsw) |
524 |
-- (fd_test 1 fdsw) |
525 |
-- (let ([lstw '()]) |
526 |
-- (for-each (lambda (fd) (when (fd_test 1 fd) (set! lstw (cons fd lstw)))) fdsw) |
527 |
-- lstw) ) ) ) ] ) ) ) ) ) ) |
528 |
-+(define (file-select fdsr fdsw . timeout) |
529 |
-+ (let* ((tm (if (pair? timeout) (car timeout) #f)) |
530 |
-+ (fdsrl (cond ((not fdsr) '()) |
531 |
-+ ((fixnum? fdsr) (list fdsr)) |
532 |
-+ (else (##sys#check-list fdsr 'file-select) |
533 |
-+ fdsr))) |
534 |
-+ (fdswl (cond ((not fdsw) '()) |
535 |
-+ ((fixnum? fdsw) (list fdsw)) |
536 |
-+ (else (##sys#check-list fdsw 'file-select) |
537 |
-+ fdsw))) |
538 |
-+ (nfdsr (##sys#length fdsrl)) |
539 |
-+ (nfdsw (##sys#length fdswl)) |
540 |
-+ (nfds (fx+ nfdsr nfdsw)) |
541 |
-+ (fds-blob (##sys#make-blob |
542 |
-+ (fx* nfds (foreign-value "sizeof(struct pollfd)" int))))) |
543 |
-+ (when tm (##sys#check-number tm)) |
544 |
-+ (do ((i 0 (fx+ i 1)) |
545 |
-+ (fdsrl fdsrl (cdr fdsrl))) |
546 |
-+ ((null? fdsrl)) |
547 |
-+ ((foreign-lambda* void ((int i) (int fd) (scheme-pointer p)) |
548 |
-+ "struct pollfd *fds = p;" |
549 |
-+ "fds[i].fd = fd; fds[i].events = POLLIN;") i (car fdsrl) fds-blob)) |
550 |
-+ (do ((i nfdsr (fx+ i 1)) |
551 |
-+ (fdswl fdswl (cdr fdswl))) |
552 |
-+ ((null? fdswl)) |
553 |
-+ ((foreign-lambda* void ((int i) (int fd) (scheme-pointer p)) |
554 |
-+ "struct pollfd *fds = p;" |
555 |
-+ "fds[i].fd = fd; fds[i].events = POLLOUT;") i (car fdswl) fds-blob)) |
556 |
-+ (let ((n ((foreign-lambda int "poll" scheme-pointer int int) |
557 |
-+ fds-blob nfds (if tm (inexact->exact (* (max 0 tm) 1000)) -1)))) |
558 |
-+ (cond ((fx< n 0) |
559 |
-+ (posix-error #:file-error 'file-select "failed" fdsr fdsw) ) |
560 |
-+ ((fx= n 0) (values (if (pair? fdsr) '() #f) (if (pair? fdsw) '() #f))) |
561 |
-+ (else |
562 |
-+ (let ((rl (let lp ((i 0) (res '()) (fds fdsrl)) |
563 |
-+ (cond ((null? fds) (##sys#fast-reverse res)) |
564 |
-+ (((foreign-lambda* bool ((int i) (scheme-pointer p)) |
565 |
-+ "struct pollfd *fds = p;" |
566 |
-+ "C_return(fds[i].revents & (POLLIN|POLLERR|POLLHUP|POLLNVAL));") |
567 |
-+ i fds-blob) |
568 |
-+ (lp (fx+ i 1) (cons (car fds) res) (cdr fds))) |
569 |
-+ (else (lp (fx+ i 1) res (cdr fds)))))) |
570 |
-+ (wl (let lp ((i nfdsr) (res '()) (fds fdswl)) |
571 |
-+ (cond ((null? fds) (##sys#fast-reverse res)) |
572 |
-+ (((foreign-lambda* bool ((int i) (scheme-pointer p)) |
573 |
-+ "struct pollfd *fds = p;" |
574 |
-+ "C_return(fds[i].revents & (POLLOUT|POLLERR|POLLHUP|POLLNVAL));") |
575 |
-+ i fds-blob) |
576 |
-+ (lp (fx+ i 1) (cons (car fds) res) (cdr fds))) |
577 |
-+ (else (lp (fx+ i 1) res (cdr fds))))))) |
578 |
-+ (values |
579 |
-+ (and fdsr (if (fixnum? fdsr) (and (memq fdsr rl) fdsr) rl)) |
580 |
-+ (and fdsw (if (fixnum? fdsw) (and (memq fdsw wl) fdsw) wl))))))))) |
581 |
- |
582 |
- |
583 |
- ;;; File attribute access: |
584 |
--- |
585 |
-1.7.2.1 |
586 |
- |
587 |
|
588 |
diff --git a/dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-2075_2.patch b/dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-2075_2.patch |
589 |
deleted file mode 100644 |
590 |
index b85ea7c..00000000 |
591 |
--- a/dev-scheme/chicken/files/chicken-4.8.0.3-CVE-2013-2075_2.patch |
592 |
+++ /dev/null |
593 |
@@ -1,309 +0,0 @@ |
594 |
-From http://code.call-cc.org/cgi-bin/gitweb.cgi?p=chicken-core.git;a=commitdiff;h=556108092774086b6c86c2e27daf3f740ffec091 |
595 |
- |
596 |
---- chicken-4.8.0.3/chicken.h |
597 |
-+++ chicken-4.8.0.3/chicken.h |
598 |
-@@ -1668,6 +1668,7 @@ |
599 |
- C_fctexport C_word C_fcall C_read_char(C_word port) C_regparm; |
600 |
- C_fctexport C_word C_fcall C_peek_char(C_word port) C_regparm; |
601 |
- C_fctexport C_word C_fcall C_execute_shell_command(C_word string) C_regparm; |
602 |
-+C_fctexport int C_fcall C_check_fd_ready(int fd) C_regparm; |
603 |
- C_fctexport C_word C_fcall C_char_ready_p(C_word port) C_regparm; |
604 |
- C_fctexport C_word C_fcall C_fudge(C_word fudge_factor) C_regparm; |
605 |
- C_fctexport void C_fcall C_raise_interrupt(int reason) C_regparm; |
606 |
---- chicken-4.8.0.3/posixunix.scm |
607 |
-+++ chicken-4.8.0.3/posixunix.scm |
608 |
-@@ -493,16 +493,7 @@ |
609 |
- "if(val == -1) C_return(0);" |
610 |
- "C_return(fcntl(fd, F_SETFL, val | O_NONBLOCK) != -1);" ) ) |
611 |
- |
612 |
--(define ##sys#file-select-one |
613 |
-- (foreign-lambda* int ([int fd]) |
614 |
-- "fd_set in;" |
615 |
-- "struct timeval tm;" |
616 |
-- "FD_ZERO(&in);" |
617 |
-- "FD_SET(fd, &in);" |
618 |
-- "tm.tv_sec = tm.tv_usec = 0;" |
619 |
-- "if(select(fd + 1, &in, NULL, NULL, &tm) == -1) C_return(-1);" |
620 |
-- "else C_return(FD_ISSET(fd, &in) ? 1 : 0);" ) ) |
621 |
-- |
622 |
-+(define ##sys#file-select-one (foreign-lambda int "C_check_fd_ready" int) ) |
623 |
- |
624 |
- ;;; Lo-level I/O: |
625 |
- |
626 |
---- chicken-4.8.0.3/runtime.c |
627 |
-+++ chicken-4.8.0.3/runtime.c |
628 |
-@@ -60,6 +60,11 @@ |
629 |
- # define EOVERFLOW 0 |
630 |
- #endif |
631 |
- |
632 |
-+/* TODO: Include sys/select.h? Windows doesn't seem to have it... */ |
633 |
-+#ifdef HAVE_POSIX_POLL |
634 |
-+# include <poll.h> |
635 |
-+#endif |
636 |
-+ |
637 |
- #if !defined(C_NONUNIX) |
638 |
- |
639 |
- # include <sys/types.h> |
640 |
-@@ -4036,20 +4041,39 @@ |
641 |
- return C_fix(n); |
642 |
- } |
643 |
- |
644 |
-+/* |
645 |
-+ * TODO: Implement something for Windows that supports selecting on |
646 |
-+ * arbitrary fds (there, select() only works on network sockets and |
647 |
-+ * poll() is not available at all). |
648 |
-+ */ |
649 |
-+C_regparm int C_fcall C_check_fd_ready(int fd) |
650 |
-+{ |
651 |
-+#ifdef HAVE_POSIX_POLL |
652 |
-+ struct pollfd ps; |
653 |
-+ ps.fd = fd; |
654 |
-+ ps.events = POLLIN; |
655 |
-+ return poll(&ps, 1, 0); |
656 |
-+#else |
657 |
-+ fd_set in; |
658 |
-+ struct timeval tm; |
659 |
-+ int rv; |
660 |
-+ FD_ZERO(&in); |
661 |
-+ FD_SET(fd, &in); |
662 |
-+ tm.tv_sec = tm.tv_usec = 0; |
663 |
-+ rv = select(fd + 1, &in, NULL, NULL, &tm); |
664 |
-+ if(rv > 0) { rv = FD_ISSET(fd, &in) ? 1 : 0; } |
665 |
-+ return rv; |
666 |
-+#endif |
667 |
-+} |
668 |
- |
669 |
- C_regparm C_word C_fcall C_char_ready_p(C_word port) |
670 |
- { |
671 |
--#if !defined(C_NONUNIX) |
672 |
-- fd_set fs; |
673 |
-- struct timeval to; |
674 |
-- int fd = C_fileno(C_port_file(port)); |
675 |
-- |
676 |
-- FD_ZERO(&fs); |
677 |
-- FD_SET(fd, &fs); |
678 |
-- to.tv_sec = to.tv_usec = 0; |
679 |
-- return C_mk_bool(C_select(fd + 1, &fs, NULL, NULL, &to) == 1); |
680 |
--#else |
681 |
-+#if defined(C_NONUNIX) |
682 |
-+ /* The best we can currently do on Windows... */ |
683 |
- return C_SCHEME_TRUE; |
684 |
-+#else |
685 |
-+ int fd = C_fileno(C_port_file(port)); |
686 |
-+ return C_mk_bool(C_check_fd_ready(fd) == 1); |
687 |
- #endif |
688 |
- } |
689 |
- |
690 |
---- chicken-4.8.0.3/tcp.scm |
691 |
-+++ chicken-4.8.0.3/tcp.scm |
692 |
-@@ -46,6 +46,7 @@ |
693 |
- # define fcntl(a, b, c) 0 |
694 |
- # define EWOULDBLOCK 0 |
695 |
- # define EINPROGRESS 0 |
696 |
-+# define EAGAIN 0 |
697 |
- # define typecorrect_getsockopt(socket, level, optname, optval, optlen) \ |
698 |
- getsockopt(socket, level, optname, (char *)optval, optlen) |
699 |
- #else |
700 |
-@@ -111,6 +112,7 @@ |
701 |
- (define ##net#recv (foreign-lambda int "recv" int scheme-pointer int int)) |
702 |
- (define ##net#shutdown (foreign-lambda int "shutdown" int int)) |
703 |
- (define ##net#connect (foreign-lambda int "connect" int scheme-pointer int)) |
704 |
-+(define ##net#check-fd-ready (foreign-lambda int "C_check_fd_ready" int)) |
705 |
- |
706 |
- (define ##net#send |
707 |
- (foreign-lambda* |
708 |
-@@ -177,30 +179,6 @@ |
709 |
- if((se = getservbyname(serv, proto)) == NULL) C_return(0); |
710 |
- else C_return(ntohs(se->s_port));") ) |
711 |
- |
712 |
--(define ##net#select |
713 |
-- (foreign-lambda* int ((int fd)) |
714 |
-- "fd_set in; |
715 |
-- struct timeval tm; |
716 |
-- int rv; |
717 |
-- FD_ZERO(&in); |
718 |
-- FD_SET(fd, &in); |
719 |
-- tm.tv_sec = tm.tv_usec = 0; |
720 |
-- rv = select(fd + 1, &in, NULL, NULL, &tm); |
721 |
-- if(rv > 0) { rv = FD_ISSET(fd, &in) ? 1 : 0; } |
722 |
-- C_return(rv);") ) |
723 |
-- |
724 |
--(define ##net#select-write |
725 |
-- (foreign-lambda* int ((int fd)) |
726 |
-- "fd_set out; |
727 |
-- struct timeval tm; |
728 |
-- int rv; |
729 |
-- FD_ZERO(&out); |
730 |
-- FD_SET(fd, &out); |
731 |
-- tm.tv_sec = tm.tv_usec = 0; |
732 |
-- rv = select(fd + 1, NULL, &out, NULL, &tm); |
733 |
-- if(rv > 0) { rv = FD_ISSET(fd, &out) ? 1 : 0; } |
734 |
-- C_return(rv);") ) |
735 |
-- |
736 |
- (define ##net#gethostaddr |
737 |
- (foreign-lambda* bool ((scheme-pointer saddr) (c-string host) (unsigned-short port)) |
738 |
- "struct hostent *he = gethostbyname(host);" |
739 |
-@@ -212,13 +190,6 @@ |
740 |
- "addr->sin_addr = *((struct in_addr *)he->h_addr);" |
741 |
- "C_return(1);") ) |
742 |
- |
743 |
--(define (yield) |
744 |
-- (##sys#call-with-current-continuation |
745 |
-- (lambda (return) |
746 |
-- (let ((ct ##sys#current-thread)) |
747 |
-- (##sys#setslot ct 1 (lambda () (return (##core#undefined)))) |
748 |
-- (##sys#schedule) ) ) ) ) |
749 |
-- |
750 |
- (define ##net#parse-host |
751 |
- (let ((substring substring)) |
752 |
- (lambda (host proto) |
753 |
-@@ -343,7 +314,9 @@ |
754 |
- (outbufsize (tbs)) |
755 |
- (outbuf (and outbufsize (fx> outbufsize 0) "")) |
756 |
- (tmr (tcp-read-timeout)) |
757 |
-+ (dlr (and tmr (+ (current-milliseconds) tmr))) |
758 |
- (tmw (tcp-write-timeout)) |
759 |
-+ (dlw (and tmw (+ (current-milliseconds) tmw))) |
760 |
- (read-input |
761 |
- (lambda () |
762 |
- (let loop () |
763 |
-@@ -351,12 +324,11 @@ |
764 |
- (cond ((eq? -1 n) |
765 |
- (cond ((or (eq? errno _ewouldblock) |
766 |
- (eq? errno _eagain)) |
767 |
-- (when tmr |
768 |
-- (##sys#thread-block-for-timeout! |
769 |
-- ##sys#current-thread |
770 |
-- (+ (current-milliseconds) tmr) ) ) |
771 |
-+ (when dlr |
772 |
-+ (##sys#thread-block-for-timeout! |
773 |
-+ ##sys#current-thread dlr) ) |
774 |
- (##sys#thread-block-for-i/o! ##sys#current-thread fd #:input) |
775 |
-- (yield) |
776 |
-+ (##sys#thread-yield!) |
777 |
- (when (##sys#slot ##sys#current-thread 13) |
778 |
- (##sys#signal-hook |
779 |
- #:network-timeout-error |
780 |
-@@ -386,7 +358,7 @@ |
781 |
- c) ) ) |
782 |
- (lambda () |
783 |
- (or (fx< bufindex buflen) |
784 |
-- (let ((f (##net#select fd))) |
785 |
-+ (let ((f (##net#check-fd-ready fd))) |
786 |
- (when (eq? f -1) |
787 |
- (##sys#update-errno) |
788 |
- (##sys#signal-hook |
789 |
-@@ -469,12 +441,11 @@ |
790 |
- (cond ((eq? -1 n) |
791 |
- (cond ((or (eq? errno _ewouldblock) |
792 |
- (eq? errno _eagain)) |
793 |
-- (when tmw |
794 |
-+ (when dlw |
795 |
- (##sys#thread-block-for-timeout! |
796 |
-- ##sys#current-thread |
797 |
-- (+ (current-milliseconds) tmw) ) ) |
798 |
-- (##sys#thread-block-for-i/o! ##sys#current-thread fd #:output) |
799 |
-- (yield) |
800 |
-+ ##sys#current-thread dlw) ) |
801 |
-+ (##sys#thread-block-for-i/o! ##sys#current-thread fd #:output) |
802 |
-+ (##sys#thread-yield!) |
803 |
- (when (##sys#slot ##sys#current-thread 13) |
804 |
- (##sys#signal-hook |
805 |
- #:network-timeout-error |
806 |
-@@ -528,38 +499,29 @@ |
807 |
- |
808 |
- (define (tcp-accept tcpl) |
809 |
- (##sys#check-structure tcpl 'tcp-listener) |
810 |
-- (let ((fd (##sys#slot tcpl 1)) |
811 |
-- (tma (tcp-accept-timeout))) |
812 |
-+ (let* ((fd (##sys#slot tcpl 1)) |
813 |
-+ (tma (tcp-accept-timeout)) |
814 |
-+ (dla (and tma (+ tma (current-milliseconds))))) |
815 |
- (let loop () |
816 |
-- (if (eq? 1 (##net#select fd)) |
817 |
-- (let ((fd (##net#accept fd #f #f))) |
818 |
-- (cond ((not (eq? -1 fd)) (##net#io-ports fd)) |
819 |
-- ((eq? errno _eintr) |
820 |
-- (##sys#dispatch-interrupt loop)) |
821 |
-- (else |
822 |
-- (##sys#update-errno) |
823 |
-- (##sys#signal-hook |
824 |
-- #:network-error |
825 |
-- 'tcp-accept |
826 |
-- (##sys#string-append "could not accept from listener - " strerror) |
827 |
-- tcpl)))) |
828 |
-- (begin |
829 |
-- (when tma |
830 |
-- (##sys#thread-block-for-timeout! |
831 |
-- ##sys#current-thread |
832 |
-- (+ (current-milliseconds) tma) ) ) |
833 |
-- (##sys#thread-block-for-i/o! ##sys#current-thread fd #:input) |
834 |
-- (yield) |
835 |
-- (when (##sys#slot ##sys#current-thread 13) |
836 |
-- (##sys#signal-hook |
837 |
-- #:network-timeout-error |
838 |
-- 'tcp-accept |
839 |
-- "accept operation timed out" tma fd) ) |
840 |
-- (loop) ) ) ) ) ) |
841 |
-+ (when dla |
842 |
-+ (##sys#thread-block-for-timeout! ##sys#current-thread dla) ) |
843 |
-+ (##sys#thread-block-for-i/o! ##sys#current-thread fd #:input) |
844 |
-+ (##sys#thread-yield!) |
845 |
-+ (if (##sys#slot ##sys#current-thread 13) |
846 |
-+ (##sys#signal-hook |
847 |
-+ #:network-timeout-error |
848 |
-+ 'tcp-accept |
849 |
-+ "accept operation timed out" tma fd) ) |
850 |
-+ (let ((fd (##net#accept fd #f #f))) |
851 |
-+ (cond ((not (eq? -1 fd)) (##net#io-ports fd)) |
852 |
-+ ((eq? errno _eintr) |
853 |
-+ (##sys#dispatch-interrupt loop)) |
854 |
-+ (else |
855 |
-+ (network-error 'tcp-accept "could not accept from listener" tcpl)))) ) ) ) |
856 |
- |
857 |
- (define (tcp-accept-ready? tcpl) |
858 |
- (##sys#check-structure tcpl 'tcp-listener 'tcp-accept-ready?) |
859 |
-- (let ((f (##net#select (##sys#slot tcpl 1)))) |
860 |
-+ (let ((f (##net#check-fd-ready (##sys#slot tcpl 1)))) |
861 |
- (when (eq? -1 f) |
862 |
- (##sys#update-errno) |
863 |
- (##sys#signal-hook |
864 |
-@@ -578,8 +540,9 @@ |
865 |
- (define general-strerror (foreign-lambda c-string "strerror" int)) |
866 |
- |
867 |
- (define (tcp-connect host . more) |
868 |
-- (let ((port (optional more #f)) |
869 |
-- (tmc (tcp-connect-timeout))) |
870 |
-+ (let* ((port (optional more #f)) |
871 |
-+ (tmc (tcp-connect-timeout)) |
872 |
-+ (dlc (and tmc (+ (current-milliseconds) tmc)))) |
873 |
- (##sys#check-string host) |
874 |
- (unless port |
875 |
- (set!-values (host port) (##net#parse-host host "tcp")) |
876 |
-@@ -606,23 +569,9 @@ |
877 |
- (let loop () |
878 |
- (when (eq? -1 (##net#connect s addr _sockaddr_in_size)) |
879 |
- (cond ((eq? errno _einprogress) |
880 |
-- (let loop2 () |
881 |
-- (let ((f (##net#select-write s))) |
882 |
-- (when (eq? f -1) (fail)) |
883 |
-- (unless (eq? f 1) |
884 |
-- (when tmc |
885 |
-- (##sys#thread-block-for-timeout! |
886 |
-- ##sys#current-thread |
887 |
-- (+ (current-milliseconds) tmc) ) ) |
888 |
-- (##sys#thread-block-for-i/o! ##sys#current-thread s #:all) |
889 |
-- (yield) |
890 |
-- (when (##sys#slot ##sys#current-thread 13) |
891 |
-- (##net#close s) |
892 |
-- (##sys#signal-hook |
893 |
-- #:network-timeout-error |
894 |
-- 'tcp-connect |
895 |
-- "connect operation timed out" tmc s) ) |
896 |
-- (loop2) ) ) )) |
897 |
-+ (when dlc |
898 |
-+ (##sys#thread-block-for-timeout! ##sys#current-thread dlc)) |
899 |
-+ (##sys#thread-block-for-i/o! ##sys#current-thread s #:all)) |
900 |
- ((eq? errno _eintr) |
901 |
- (##sys#dispatch-interrupt loop)) |
902 |
- (else (fail) ) ))) |
903 |
|
904 |
diff --git a/dev-scheme/chicken/files/chicken-4.8.0.3-parallel-build.patch b/dev-scheme/chicken/files/chicken-4.8.0.3-parallel-build.patch |
905 |
deleted file mode 100644 |
906 |
index a42dd2e..00000000 |
907 |
--- a/dev-scheme/chicken/files/chicken-4.8.0.3-parallel-build.patch |
908 |
+++ /dev/null |
909 |
@@ -1,74 +0,0 @@ |
910 |
-diff --git a/GNUmakefile b/GNUmakefile |
911 |
-index 9bc40ca..c697f14 100644 |
912 |
---- a/GNUmakefile |
913 |
-+++ b/GNUmakefile |
914 |
-@@ -49,6 +49,9 @@ STANDARD_TARGETS \ |
915 |
- fullcheck libs install-target install-dev bench |
916 |
- |
917 |
- .PHONY: $(STANDARD_TARGETS) dist boot-chicken |
918 |
-+# Build this file's targets sequentially. This avoids executing overlapping |
919 |
-+# makes if the user specifies multiple targets. |
920 |
-+.NOTPARALLEL: |
921 |
- |
922 |
- $(STANDARD_TARGETS): |
923 |
- $(MAKE) -f $(SRCDIR)/Makefile.$(PLATFORM) CONFIG=$(CONFIG) $@ |
924 |
-diff --git a/README b/README |
925 |
-index 8d0d067..551b716 100644 |
926 |
---- a/README |
927 |
-+++ b/README |
928 |
-@@ -72,7 +72,7 @@ |
929 |
- platforms. |
930 |
- |
931 |
- Note that parallel builds (using the "-j" make(1) option) are |
932 |
-- *not* supported. |
933 |
-+ also supported. Beware that parallel install will not work though. |
934 |
- |
935 |
- If you invoke "make" later with different configuration parameters, |
936 |
- it is advisable to run: |
937 |
-diff --git a/rules.make b/rules.make |
938 |
-index 929b0a3..a8cb9b0 100644 |
939 |
---- a/rules.make |
940 |
-+++ b/rules.make |
941 |
-@@ -243,8 +243,8 @@ lib$(PROGRAM_PREFIX)chicken$(PROGRAM_SUFFIX)$(A): $(APPLY_HACK_OBJECT) $(LIBCHIC |
942 |
- |
943 |
- # import libraries and extensions |
944 |
- |
945 |
--%.so: %.o |
946 |
-- $(LINKER) $(LINKER_OPTIONS) $(LINKER_LINK_SHARED_DLOADABLE_OPTIONS) $^ $(LINKER_OUTPUT_OPTION) $@ \ |
947 |
-+%.so: %.o $(PRIMARY_LIBCHICKEN) |
948 |
-+ $(LINKER) $(LINKER_OPTIONS) $(LINKER_LINK_SHARED_DLOADABLE_OPTIONS) $< $(LINKER_OUTPUT_OPTION) $@ \ |
949 |
- $(LINKER_LIBRARY_PREFIX)$(PROGRAM_PREFIX)chicken$(PROGRAM_SUFFIX)$(LINKER_LIBRARY_SUFFIX) \ |
950 |
- $(LIBRARIES) |
951 |
- |
952 |
-@@ -582,9 +582,9 @@ chicken-profile.c: $(SRCDIR)chicken-profile.scm |
953 |
- $(CHICKEN) $< $(CHICKEN_PROGRAM_OPTIONS) -output-file $@ |
954 |
- chicken-install.c: $(SRCDIR)chicken-install.scm setup-download.c setup-api.c |
955 |
- $(CHICKEN) $< $(CHICKEN_PROGRAM_OPTIONS) -output-file $@ |
956 |
--chicken-uninstall.c: $(SRCDIR)chicken-uninstall.scm |
957 |
-+chicken-uninstall.c: $(SRCDIR)chicken-uninstall.scm setup-api.c |
958 |
- $(CHICKEN) $< $(CHICKEN_PROGRAM_OPTIONS) -output-file $@ |
959 |
--chicken-status.c: $(SRCDIR)chicken-status.scm |
960 |
-+chicken-status.c: $(SRCDIR)chicken-status.scm setup-api.c |
961 |
- $(CHICKEN) $< $(CHICKEN_PROGRAM_OPTIONS) -output-file $@ |
962 |
- csc.c: $(SRCDIR)csc.scm |
963 |
- $(CHICKEN) $< $(CHICKEN_PROGRAM_OPTIONS) -output-file $@ |
964 |
-@@ -675,14 +675,17 @@ bench: $(CHICKEN_SHARED_EXECUTABLE) $(CSI_SHARED_EXECUTABLE) $(CSC_PROGRAM)$(EXE |
965 |
- .PHONY: boot-chicken |
966 |
- |
967 |
- boot-chicken: |
968 |
-+ $(MAKE) -f Makefile.$(PLATFORM) PLATFORM=$(PLATFORM) CONFIG= confclean |
969 |
- $(MAKE) -f Makefile.$(PLATFORM) PLATFORM=$(PLATFORM) PREFIX=/nowhere CONFIG= \ |
970 |
- CHICKEN=$(CHICKEN) PROGRAM_SUFFIX=-boot-stage1 STATICBUILD=1 \ |
971 |
- C_COMPILER_OPTIMIZATION_OPTIONS= C_HACKED_APPLY= BUILDING_CHICKEN_BOOT=1 \ |
972 |
-- confclean chicken-boot-stage1$(EXE) |
973 |
-+ chicken-boot-stage1$(EXE) |
974 |
-+ $(MAKE) -f Makefile.$(PLATFORM) PLATFORM=$(PLATFORM) CONFIG= touchfiles |
975 |
- $(MAKE) -f Makefile.$(PLATFORM) PLATFORM=$(PLATFORM) PREFIX=/nowhere CONFIG= \ |
976 |
- CHICKEN=.$(SEP)chicken-boot-stage1$(EXE) PROGRAM_SUFFIX=-boot \ |
977 |
- STATICBUILD=1 C_COMPILER_OPTIMIZATION_OPTIONS= \ |
978 |
-- touchfiles chicken-boot$(EXE) confclean |
979 |
-+ chicken-boot$(EXE) |
980 |
-+ $(MAKE) -f Makefile.$(PLATFORM) PLATFORM=$(PLATFORM) CONFIG= confclean |
981 |
- |
982 |
- .PHONY: touchfiles |
983 |
- |