You've already forked macports-ports
mirror of
https://github.com/macports/macports-ports.git
synced 2026-07-12 18:20:25 -07:00
rb-concurrent-ruby*: update to 1.3.4
This commit is contained in:
committed by
Herby Gillot
parent
a7c2c91689
commit
cdb7de6e6a
@@ -4,18 +4,32 @@ PortSystem 1.0
|
||||
PortGroup ruby 1.0
|
||||
|
||||
ruby.branches 3.3 3.2 3.1
|
||||
ruby.setup concurrent-ruby-ext 1.3.3 gem {} rubygems
|
||||
ruby.setup concurrent-ruby-ext 1.3.4 gem {} rubygems
|
||||
license MIT
|
||||
categories-append devel
|
||||
maintainers nomaintainer
|
||||
description C extensions to optimize the concurrent-ruby gem
|
||||
long_description {*}${description} when running under MRI.
|
||||
homepage https://github.com/ruby-concurrency/concurrent-ruby
|
||||
checksums rmd160 5734a5aff59c9f4733a4da4cdee4d71e8f2fe867 \
|
||||
sha256 24b32e2e2994e00f2b1cacdf98635238ff9bfdf7a7ae1bcab48ea9bd85da362e \
|
||||
checksums rmd160 38378e5a53eafccac2d72951a61095cec67e9143 \
|
||||
sha256 873369551743523d235e3e76bcfa3aaa1bc5cd0a7050b6174df0f156ed7de4d7 \
|
||||
size 24576
|
||||
|
||||
if {${name} ne ${subport}} {
|
||||
depends_extract port:rb${ruby.suffix}-gem-patch
|
||||
|
||||
# https://github.com/ruby-concurrency/concurrent-ruby/pull/1064
|
||||
post-patch {
|
||||
copy ${filespath}/patch-atomic_reference.c.diff ${worksrcpath}
|
||||
reinplace "s|@@PREFIX@@|${prefix}|g" ${worksrcpath}/patch-atomic_reference.c.diff
|
||||
system -W ${worksrcpath} "${ruby.gem} patch ${ruby.filename}.gem patch-atomic_reference.c.diff -o ${ruby.filename}.gem -p0"
|
||||
}
|
||||
|
||||
if {${ruby.branch} < 3.3} {
|
||||
destroot.post_args-append \
|
||||
-- --with-cflags="-Wno-incompatible-pointer-types"
|
||||
}
|
||||
|
||||
depends_run-append \
|
||||
port:rb${ruby.suffix}-concurrent-ruby
|
||||
}
|
||||
|
||||
@@ -0,0 +1,18 @@
|
||||
--- ext/concurrent-ruby-ext/atomic_reference.c
|
||||
+++ ext/concurrent-ruby-ext/atomic_reference.c 2024-09-08 23:03:29.000000000 +0800
|
||||
@@ -79,9 +79,15 @@
|
||||
|
||||
VALUE ir_compare_and_set(volatile VALUE self, VALUE expect_value, VALUE new_value) {
|
||||
#if defined(__ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__) && __ENVIRONMENT_MAC_OS_X_VERSION_MIN_REQUIRED__ >= 1050
|
||||
+#if defined(__i386__) || defined(__ppc__)
|
||||
+ if (OSAtomicCompareAndSwap32(expect_value, new_value, &DATA_PTR(self))) {
|
||||
+ return Qtrue;
|
||||
+ }
|
||||
+#else
|
||||
if (OSAtomicCompareAndSwap64(expect_value, new_value, &DATA_PTR(self))) {
|
||||
return Qtrue;
|
||||
}
|
||||
+#endif
|
||||
#elif defined(__sun)
|
||||
/* Assuming VALUE is uintptr_t */
|
||||
/* Based on the definition of uintptr_t from /usr/include/sys/int_types.h */
|
||||
@@ -4,7 +4,7 @@ PortSystem 1.0
|
||||
PortGroup ruby 1.0
|
||||
|
||||
ruby.branches 3.3 3.2 3.1 3.0
|
||||
ruby.setup concurrent-ruby 1.3.3 gem {} rubygems
|
||||
ruby.setup concurrent-ruby 1.3.4 gem {} rubygems
|
||||
license MIT
|
||||
categories-append devel
|
||||
platforms any
|
||||
@@ -14,6 +14,6 @@ description Modern concurrency tools
|
||||
long_description {*}${description} including agents, futures, promises, \
|
||||
thread pools, actors, supervisors and more.
|
||||
homepage https://github.com/ruby-concurrency/concurrent-ruby
|
||||
checksums rmd160 335ba7b61f58320734151bc9cd87b592756804c0 \
|
||||
sha256 4f9cd28965c4dcf83ffd3ea7304f9323277be8525819cb18a3b61edcb56a7c6a \
|
||||
checksums rmd160 9494c071ab6a8d0dd276fe600942d0785335b3fd \
|
||||
sha256 d4aa926339b0a86b5b5054a0a8c580163e6f5dcbdfd0f4bb916b1a2570731c32 \
|
||||
size 349696
|
||||
|
||||
Reference in New Issue
Block a user