diff options
author | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 13:49:04 -0700 |
---|---|---|
committer | Robin H. Johnson <robbat2@gentoo.org> | 2015-08-08 17:38:18 -0700 |
commit | 56bd759df1d0c750a065b8c845e93d5dfa6b549d (patch) | |
tree | 3f91093cdb475e565ae857f1c5a7fd339e2d781e /dev-scheme/gauche/files | |
download | gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.gz gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.tar.bz2 gentoo-56bd759df1d0c750a065b8c845e93d5dfa6b549d.zip |
proj/gentoo: Initial commit
This commit represents a new era for Gentoo:
Storing the gentoo-x86 tree in Git, as converted from CVS.
This commit is the start of the NEW history.
Any historical data is intended to be grafted onto this point.
Creation process:
1. Take final CVS checkout snapshot
2. Remove ALL ChangeLog* files
3. Transform all Manifests to thin
4. Remove empty Manifests
5. Convert all stale $Header$/$Id$ CVS keywords to non-expanded Git $Id$
5.1. Do not touch files with -kb/-ko keyword flags.
Signed-off-by: Robin H. Johnson <robbat2@gentoo.org>
X-Thanks: Alec Warner <antarus@gentoo.org> - did the GSoC 2006 migration tests
X-Thanks: Robin H. Johnson <robbat2@gentoo.org> - infra guy, herding this project
X-Thanks: Nguyen Thai Ngoc Duy <pclouds@gentoo.org> - Former Gentoo developer, wrote Git features for the migration
X-Thanks: Brian Harring <ferringb@gentoo.org> - wrote much python to improve cvs2svn
X-Thanks: Rich Freeman <rich0@gentoo.org> - validation scripts
X-Thanks: Patrick Lauer <patrick@gentoo.org> - Gentoo dev, running new 2014 work in migration
X-Thanks: Michał Górny <mgorny@gentoo.org> - scripts, QA, nagging
X-Thanks: All of other Gentoo developers - many ideas and lots of paint on the bikeshed
Diffstat (limited to 'dev-scheme/gauche/files')
-rw-r--r-- | dev-scheme/gauche/files/gauche-0.9.3.3-gauche.threads.diff | 120 | ||||
-rw-r--r-- | dev-scheme/gauche/files/gauche-ext-ldflags.diff | 11 | ||||
-rw-r--r-- | dev-scheme/gauche/files/gauche-gauche.m4.diff | 19 | ||||
-rw-r--r-- | dev-scheme/gauche/files/gauche-rfc.tls.diff | 11 | ||||
-rw-r--r-- | dev-scheme/gauche/files/gauche-rpath.diff | 10 | ||||
-rw-r--r-- | dev-scheme/gauche/files/gauche-xz-info.diff | 31 |
6 files changed, 202 insertions, 0 deletions
diff --git a/dev-scheme/gauche/files/gauche-0.9.3.3-gauche.threads.diff b/dev-scheme/gauche/files/gauche-0.9.3.3-gauche.threads.diff new file mode 100644 index 000000000000..a44ee75b8d1a --- /dev/null +++ b/dev-scheme/gauche/files/gauche-0.9.3.3-gauche.threads.diff @@ -0,0 +1,120 @@ +commit 60d82dd56c15a533562cf28111af5d3365d5d354 +Author: Shiro Kawai <shiro@acm.org> +Date: Thu May 31 15:23:22 2012 -1000 + + Fixed thread-terminate! bug that SEGVs when applied on non-running threads + +--- a/ext/threads/test.scm ++++ b/ext/threads/test.scm +@@ -100,6 +100,18 @@ + (thread-terminate! t1) + (thread-join! t1)))) + ++;; this SEGVs on 0.9.3.3. test code from @cryks. ++(test* "thread termination before running" 'terminated ++ (let1 t1 (make-thread (^[] #f)) ++ (thread-terminate! t1) ++ (thread-state t1))) ++ ++(test* "thread termination while being stopped" 'terminated ++ (let1 t1 (thread-start! (make-thread (^[] (let loop () (loop))))) ++ (thread-stop! t1) ++ (thread-terminate! t1) ++ (thread-state t1))) ++ + ;;--------------------------------------------------------------------- + (test-section "thread and error") + +--- a/ext/threads/threads.c ++++ b/ext/threads/threads.c +@@ -432,36 +432,41 @@ ScmObj Scm_ThreadTerminate(ScmVM *target) + } + + (void)SCM_INTERNAL_MUTEX_LOCK(target->vmlock); +- do { +- /* This ensures only the first call of thread-terminate! on a thread +- is in effect. */ +- if (target->canceller == NULL) { +- target->canceller = vm; +- +- /* First try */ +- target->stopRequest = SCM_VM_REQUEST_TERMINATE; +- target->attentionRequest = TRUE; +- if (wait_for_termination(target)) break; +- +- /* Second try */ ++ if (target->state == SCM_VM_RUNNABLE || target->state == SCM_VM_STOPPED) { ++ do { ++ /* This ensures only the first call of thread-terminate! on a ++ thread is in effect. */ ++ if (target->canceller == NULL) { ++ target->canceller = vm; ++ ++ /* First try */ ++ target->stopRequest = SCM_VM_REQUEST_TERMINATE; ++ target->attentionRequest = TRUE; ++ if (wait_for_termination(target)) break; ++ ++ /* Second try */ ++ SCM_ASSERT(target->thread); + #if defined(GAUCHE_USE_PTHREADS) + # if defined(GAUCHE_PTHREAD_SIGNAL) +- pthread_kill(target->thread, GAUCHE_PTHREAD_SIGNAL); ++ pthread_kill(target->thread, GAUCHE_PTHREAD_SIGNAL); + # endif /*defined(GAUCHE_PTHREAD_SIGNAL)*/ + #elif defined(GAUCHE_USE_WTHREADS) +- /* TODO: implement signal mechanism using an event */ ++ /* TODO: implement signal mechanism using an event */ + #endif /* defined(GAUCHE_USE_WTHREADS) */ +- if (wait_for_termination(target)) break; ++ if (wait_for_termination(target)) break; + +- /* Last resort */ +- thread_cleanup_inner(target); ++ /* Last resort */ ++ thread_cleanup_inner(target); + #if defined(GAUCHE_USE_PTHREADS) +- pthread_cancel(target->thread); ++ pthread_cancel(target->thread); + #elif defined(GAUCHE_USE_WTHREADS) +- TerminateThread(target->thread, 0); ++ TerminateThread(target->thread, 0); + #endif +- } +- } while (0); ++ } ++ } while (0); ++ } ++ /* target either is terminated or hasn't been run */ ++ target->state = SCM_VM_TERMINATED; + (void)SCM_INTERNAL_MUTEX_UNLOCK(target->vmlock); + return SCM_UNDEFINED; + } +--- a/test/control.scm ++++ b/test/control.scm +@@ -72,7 +72,7 @@ + ;; + + (cond-expand +- [gauche.sys.pthreads ++ [gauche.sys.threads + (test-section "control.thread-pool") + (use control.thread-pool) + (test-module 'control.thread-pool) +@@ -173,7 +173,15 @@ + (let1 xjob (add-job! pool work) + (terminate-all! pool :force-timeout 0.05) + (job-status xjob)))) +- ] ++ ++ ;; This SEGVs on 0.9.3.3 (test code by @cryks) ++ (test* "thread pool termination" 'terminated ++ (let ([t (thread-start! (make-thread (cut undefined)))] ++ [pool (make-thread-pool 10)]) ++ (terminate-all! pool) ++ (thread-terminate! t) ++ (thread-state t))) ++ ] ; gauche.sys.pthreads + [else]) + + (test-end) diff --git a/dev-scheme/gauche/files/gauche-ext-ldflags.diff b/dev-scheme/gauche/files/gauche-ext-ldflags.diff new file mode 100644 index 000000000000..a9de4114d2bf --- /dev/null +++ b/dev-scheme/gauche/files/gauche-ext-ldflags.diff @@ -0,0 +1,11 @@ +--- Gauche-0.9.1.orig/ext/Makefile.ext.in ++++ Gauche-0.9.1/ext/Makefile.ext.in +@@ -22,7 +22,7 @@ + LIBS = $(XLIBS) @LIBS@ + CFLAGS = @CFLAGS@ @SHLIB_SO_CFLAGS@ $(XCFLAGS) + CPPFLAGS = @CPPFLAGS@ $(XCPPFLAGS) +-LDFLAGS = $(LOCAL_LFLAGS) $(XLDFLAGS) @SHLIB_SO_LDFLAGS@ ++LDFLAGS = $(LOCAL_LFLAGS) $(XLDFLAGS) @LDFLAGS@ @SHLIB_SO_LDFLAGS@ + + # These are set by configure + DEFS = @DEFS@ diff --git a/dev-scheme/gauche/files/gauche-gauche.m4.diff b/dev-scheme/gauche/files/gauche-gauche.m4.diff new file mode 100644 index 000000000000..8c4d3180836a --- /dev/null +++ b/dev-scheme/gauche/files/gauche-gauche.m4.diff @@ -0,0 +1,19 @@ +--- Gauche-0.9.4.orig/m4/gauche.m4 ++++ Gauche-0.9.4/m4/gauche.m4 +@@ -103,15 +103,11 @@ + i686-*) I686OPT="-DUSE_I686_PREFETCH";; + esac + case "$CC" in +- gcc*) # some systems may have gcc-2.95, gcc-3, etc. ++ *gcc*) # some systems may have gcc-2.95, gcc-3, etc. + case "$target" in + *mingw*) ;; + *) GCCOPT="-fomit-frame-pointer";; + esac +- case "$target" in +- i586-*) GCCOPT="$GCCOPT -march=i586";; +- i686-*) GCCOPT="$GCCOPT -march=i686";; +- esac + ;; + esac + OPTFLAGS="$GCCOPT $I686OPT" diff --git a/dev-scheme/gauche/files/gauche-rfc.tls.diff b/dev-scheme/gauche/files/gauche-rfc.tls.diff new file mode 100644 index 000000000000..662ab433ef5f --- /dev/null +++ b/dev-scheme/gauche/files/gauche-rfc.tls.diff @@ -0,0 +1,11 @@ +--- Gauche-0.9.3.2.orig/ext/tls/Makefile.in ++++ Gauche-0.9.3.2/ext/tls/Makefile.in +@@ -77,6 +77,8 @@ + @sed -e "s@\.\./ssl/@../../$(srcdir)/axTLS/ssl/@g" \ + -e "s/system/safe_system/g" \ + -e "s@openssl @sh ../../$(srcdir)/kick_openssl @g" \ ++ -e "/do_reneg = 1;/i#if 0" \ ++ -e "/do_reneg = 0;/a#endif" \ + $(srcdir)/axTLS/ssl/test/ssltest.c >> $(SSLTEST_GENERATED) + @cat $(srcdir)/system-fix.c >> $(SSLTEST_GENERATED) + diff --git a/dev-scheme/gauche/files/gauche-rpath.diff b/dev-scheme/gauche/files/gauche-rpath.diff new file mode 100644 index 000000000000..ca76cb831234 --- /dev/null +++ b/dev-scheme/gauche/files/gauche-rpath.diff @@ -0,0 +1,10 @@ +--- Gauche-0.9.1.orig/configure.ac ++++ Gauche-0.9.1/configure.ac +@@ -709,7 +709,6 @@ + fi + if test "$RPATH_FLAG" != ""; then + RPATH_TMP=$RPATH_FLAG'`pwd`' +- RPATH_REAL=$RPATH_FLAG'$(LIB_INSTALL_DIR)' + fi + fi + AC_SUBST(RPATH_FLAG) diff --git a/dev-scheme/gauche/files/gauche-xz-info.diff b/dev-scheme/gauche/files/gauche-xz-info.diff new file mode 100644 index 000000000000..809879c4cbd8 --- /dev/null +++ b/dev-scheme/gauche/files/gauche-xz-info.diff @@ -0,0 +1,31 @@ +--- Gauche-0.9.1.orig/lib/gauche/interactive/info.scm ++++ Gauche-0.9.1/lib/gauche/interactive/info.scm +@@ -84,7 +84,8 @@ + :pred (lambda (p) + (or (file-is-readable? p) + (file-is-readable? #`",|p|.gz") +- (file-is-readable? #`",|p|.bz2")))) ++ (file-is-readable? #`",|p|.bz2") ++ (file-is-readable? #`",|p|.xz")))) + (errorf "couldn't find info file ~s in paths: ~s" *info-file* paths)) + )) + +--- Gauche-0.9.1.orig/lib/text/info.scm ++++ Gauche-0.9.1/lib/text/info.scm +@@ -63,6 +63,7 @@ + ;; Find gunzip location + (define gunzip (find-file-in-paths "gunzip")) + (define bzip2 (find-file-in-paths "bzip2")) ++(define xz (find-file-in-paths "xz")) + + ;; Read an info file FILE, and returns a list of strings splitted by ^_ (#\x1f) + ;; If FILE is not found, look for compressed one. +@@ -74,6 +75,8 @@ + (with-input-from-process #`",gunzip -c ,file" thunk)] + [(and bzip2 (file-exists? #`",|file|.bz2")) + (with-input-from-process #`",bzip2 -c -d ,|file|.bz2" thunk)] ++ [(and xz (file-exists? #`",|file|.xz")) ++ (with-input-from-process #`",xz -c -d ,|file|.xz" thunk)] + [else (error "can't find info file" file)])) + (with-input-from-info + (lambda () |