mirror of
https://git.FreeBSD.org/ports.git
synced 2025-02-01 10:59:55 +00:00
- add new option MULTIPLE_THREADS. With this option enabled libsee/dtoa.c is
compiled with proper thread locking. - bump PORTVERSION PR: ports/122525 Submitted by: maintainer
This commit is contained in:
parent
395271795c
commit
430838889b
Notes:
svn2git
2021-03-31 03:12:20 +00:00
svn path=/head/; revision=212868
@ -7,6 +7,7 @@
|
||||
|
||||
PORTNAME= see
|
||||
PORTVERSION= 3.0.1376
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= lang devel
|
||||
MASTER_SITES= http://www.evolane.com/download/mirror/etcl/ \
|
||||
http://www.evolane.fr/download/mirror/etcl/
|
||||
@ -17,7 +18,8 @@ COMMENT= Simple ECMAScript Engine (SEE)
|
||||
|
||||
OPTIONS= GC "Use Boehm-Weiser garbage collection package" on \
|
||||
OPTIMIZED_CFLAGS "Enable some additional optimizations" off \
|
||||
SEE_DEBUG "Internal SEE library debugging" off
|
||||
SEE_DEBUG "Internal SEE library debugging" off \
|
||||
MULTIPLE_THREADS "Enable thread-safety" on
|
||||
|
||||
CONFLICTS= see-[0-9]*
|
||||
|
||||
@ -32,6 +34,10 @@ CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
.if defined(WITH_MULTIPLE_THREADS)
|
||||
CFLAGS+= -DMULTIPLE_THREADS
|
||||
.endif
|
||||
|
||||
.if !defined(WITH_SEE_DEBUG)
|
||||
CFLAGS+= -DNDEBUG
|
||||
.endif
|
||||
@ -44,9 +50,11 @@ CFLAGS+= -O3 -fomit-frame-pointer
|
||||
LIB_DEPENDS+= gc:${PORTSDIR}/devel/boehm-gc
|
||||
.else
|
||||
CONFIGURE_ARGS+= --without-boehm-gc
|
||||
.if !defined(WITH_MULTIPLE_THREADS)
|
||||
PTHREAD_CFLAGS=
|
||||
PTHREAD_LIBS=
|
||||
.endif
|
||||
.endif
|
||||
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} -e "s|PACKAGE_BUGREPORT='leonard@users|PACKAGE_BUGREPORT='leonard\\\@users|" \
|
||||
|
24
lang/see-devel/files/patch-libsee_dtoa.c
Normal file
24
lang/see-devel/files/patch-libsee_dtoa.c
Normal file
@ -0,0 +1,24 @@
|
||||
--- libsee/dtoa.c.orig 2005-12-24 04:35:38.000000000 +0100
|
||||
+++ libsee/dtoa.c 2008-04-07 11:30:11.529829910 +0200
|
||||
@@ -168,6 +168,11 @@
|
||||
* the result overflows to +-Infinity or underflows to 0.
|
||||
*/
|
||||
|
||||
+#ifdef MULTIPLE_THREADS
|
||||
+#include <pthread.h>
|
||||
+static pthread_mutex_t mylock[2] = { PTHREAD_MUTEX_INITIALIZER, PTHREAD_MUTEX_INITIALIZER };
|
||||
+#endif
|
||||
+
|
||||
#ifndef Long
|
||||
#define Long long
|
||||
#endif
|
||||
@@ -470,6 +475,9 @@
|
||||
#ifndef MULTIPLE_THREADS
|
||||
#define ACQUIRE_DTOA_LOCK(n) /*nothing*/
|
||||
#define FREE_DTOA_LOCK(n) /*nothing*/
|
||||
+#else
|
||||
+#define ACQUIRE_DTOA_LOCK(n) pthread_mutex_lock(&mylock[n]);
|
||||
+#define FREE_DTOA_LOCK(n) pthread_mutex_unlock(&mylock[n]);
|
||||
#endif
|
||||
|
||||
#define Kmax 15
|
@ -7,6 +7,7 @@
|
||||
|
||||
PORTNAME= see
|
||||
PORTVERSION= 2.0.1131
|
||||
PORTREVISION= 1
|
||||
CATEGORIES= lang devel
|
||||
MASTER_SITES= http://www.powerband.net.au/~david.leonard/ \
|
||||
http://freshmeat.net/redir/see/45974/url_tgz/
|
||||
@ -16,7 +17,8 @@ COMMENT= Simple ECMAScript Engine (SEE)
|
||||
|
||||
OPTIONS= GC "Use Boehm-Weiser garbage collection package" on \
|
||||
OPTIMIZED_CFLAGS "Enable some additional optimizations" off \
|
||||
SEE_DEBUG "Internal SEE library debugging" off
|
||||
SEE_DEBUG "Internal SEE library debugging" off \
|
||||
MULTIPLE_THREADS "Enable thread-safety" on
|
||||
|
||||
CONFLICTS= see-devel-[0-9]*
|
||||
|
||||
@ -33,6 +35,10 @@ CONFIGURE_TARGET= --build=${MACHINE_ARCH}-portbld-freebsd${OSREL}
|
||||
|
||||
.include <bsd.port.pre.mk>
|
||||
|
||||
.if defined(WITH_MULTIPLE_THREADS)
|
||||
CFLAGS+= -DMULTIPLE_THREADS
|
||||
.endif
|
||||
|
||||
.if !defined(WITH_SEE_DEBUG)
|
||||
CFLAGS+= -DNDEBUG
|
||||
.endif
|
||||
@ -45,9 +51,11 @@ CFLAGS+= -O3 -fomit-frame-pointer
|
||||
LIB_DEPENDS+= gc:${PORTSDIR}/devel/boehm-gc
|
||||
.else
|
||||
CONFIGURE_ARGS+= --without-boehm-gc
|
||||
.if !defined(WITH_MULTIPLE_THREADS)
|
||||
PTHREAD_CFLAGS=
|
||||
PTHREAD_LIBS=
|
||||
.endif
|
||||
.endif
|
||||
|
||||
post-patch:
|
||||
@${REINPLACE_CMD} -e "s|PACKAGE_BUGREPORT='leonard@users|PACKAGE_BUGREPORT='leonard\\\@users|" \
|
||||
|
24
lang/see/files/patch-libsee_dtoa.c
Normal file
24
lang/see/files/patch-libsee_dtoa.c
Normal file
@ -0,0 +1,24 @@
|
||||
--- libsee/dtoa.c.orig 2005-12-24 04:35:38.000000000 +0100
|
||||
+++ libsee/dtoa.c 2008-04-07 11:30:11.529829910 +0200
|
||||
@@ -168,6 +168,11 @@
|
||||
* the result overflows to +-Infinity or underflows to 0.
|
||||
*/
|
||||
|
||||
+#ifdef MULTIPLE_THREADS
|
||||
+#include <pthread.h>
|
||||
+static pthread_mutex_t mylock[2] = { PTHREAD_MUTEX_INITIALIZER, PTHREAD_MUTEX_INITIALIZER };
|
||||
+#endif
|
||||
+
|
||||
#ifndef Long
|
||||
#define Long long
|
||||
#endif
|
||||
@@ -470,6 +475,9 @@
|
||||
#ifndef MULTIPLE_THREADS
|
||||
#define ACQUIRE_DTOA_LOCK(n) /*nothing*/
|
||||
#define FREE_DTOA_LOCK(n) /*nothing*/
|
||||
+#else
|
||||
+#define ACQUIRE_DTOA_LOCK(n) pthread_mutex_lock(&mylock[n]);
|
||||
+#define FREE_DTOA_LOCK(n) pthread_mutex_unlock(&mylock[n]);
|
||||
#endif
|
||||
|
||||
#define Kmax 15
|
Loading…
Reference in New Issue
Block a user