event 0.4.4 → 0.8.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/ext/event/Makefile +33 -33
- data/ext/event/event.bundle +0 -0
- data/ext/event/event.c +10 -10
- data/ext/event/event.h +3 -3
- data/ext/event/event.o +0 -0
- data/ext/event/extconf.h +1 -2
- data/ext/event/extconf.rb +13 -5
- data/ext/event/kqueue.o +0 -0
- data/ext/event/mkmf.log +161 -19
- data/ext/event/selector.o +0 -0
- data/ext/event/selector/epoll.c +570 -0
- data/ext/event/{backend → selector}/epoll.h +2 -2
- data/ext/event/selector/kqueue.c +637 -0
- data/ext/event/{backend → selector}/kqueue.h +2 -2
- data/ext/event/{backend/backend.h → selector/pidfd.c} +14 -14
- data/ext/event/selector/selector.c +263 -0
- data/ext/event/selector/selector.h +127 -0
- data/ext/event/selector/uring.c +651 -0
- data/ext/event/{backend → selector}/uring.h +3 -3
- data/lib/event.rb +2 -1
- data/lib/event/debug.rb +126 -0
- data/lib/event/selector.rb +25 -2
- data/lib/event/{backend → selector}/select.rb +107 -1
- data/lib/event/version.rb +1 -1
- metadata +17 -18
- data/ext/event/backend.o +0 -0
- data/ext/event/backend/backend.c +0 -39
- data/ext/event/backend/epoll.c +0 -309
- data/ext/event/backend/kqueue.c +0 -347
- data/ext/event/backend/uring.c +0 -432
- data/ext/event/epoll.o +0 -0
- data/ext/event/event.so +0 -0
- data/ext/event/uring.o +0 -0
- data/lib/event/backend.rb +0 -49
- data/lib/event/debug/selector.rb +0 -108
checksums.yaml
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
---
|
|
2
2
|
SHA256:
|
|
3
|
-
metadata.gz:
|
|
4
|
-
data.tar.gz:
|
|
3
|
+
metadata.gz: bbc589826b45d926acc5b2e3fd2ef49f67832b8e64562b5d860b43a74f850b72
|
|
4
|
+
data.tar.gz: 66ae0f0df1693d58cd6929ca8187ad2f0b9892920555d28595d7a0f94c07ffd4
|
|
5
5
|
SHA512:
|
|
6
|
-
metadata.gz:
|
|
7
|
-
data.tar.gz:
|
|
6
|
+
metadata.gz: 47addf50f1785a0f632776536186c7b6575de70bf4b4cdcf4f0ab816e6455737615f3ce3640980c3da23971f7f24509652c4c3aed898220f86fa7f394c4f549b
|
|
7
|
+
data.tar.gz: c584fbaa4b9fb3c73e6ed31c7eeaf86c8da69402d4233d2790e7cb0c4fbe31bf9d0ebabca0b94a855ae55da0dc18eeba77e83dfa7e8deb8d270e9a5c1b9b85f5
|
data/ext/event/Makefile
CHANGED
|
@@ -3,7 +3,6 @@ SHELL = /bin/sh
|
|
|
3
3
|
|
|
4
4
|
# V=0 quiet, V=1 verbose. other values don't work.
|
|
5
5
|
V = 0
|
|
6
|
-
V0 = $(V:0=)
|
|
7
6
|
Q1 = $(V:1=)
|
|
8
7
|
Q = $(Q1:0=@)
|
|
9
8
|
ECHO1 = $(V:1=@ :)
|
|
@@ -13,12 +12,12 @@ NULLCMD = :
|
|
|
13
12
|
#### Start of system configuration section. ####
|
|
14
13
|
|
|
15
14
|
srcdir = .
|
|
16
|
-
topdir = /
|
|
15
|
+
topdir = /Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0
|
|
17
16
|
hdrdir = $(topdir)
|
|
18
|
-
arch_hdrdir = /
|
|
17
|
+
arch_hdrdir = /Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20
|
|
19
18
|
PATH_SEPARATOR = :
|
|
20
|
-
VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby:$(srcdir)/
|
|
21
|
-
prefix = $(DESTDIR)/
|
|
19
|
+
VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby:$(srcdir)/selector
|
|
20
|
+
prefix = $(DESTDIR)/Users/samuel/.rubies/ruby-3.0.1
|
|
22
21
|
rubysitearchprefix = $(rubylibprefix)/$(sitearch)
|
|
23
22
|
rubyarchprefix = $(rubylibprefix)/$(arch)
|
|
24
23
|
rubylibprefix = $(libdir)/$(RUBY_BASE_NAME)
|
|
@@ -51,7 +50,7 @@ dvidir = $(docdir)
|
|
|
51
50
|
htmldir = $(docdir)
|
|
52
51
|
infodir = $(datarootdir)/info
|
|
53
52
|
docdir = $(datarootdir)/doc/$(PACKAGE)
|
|
54
|
-
oldincludedir = $(
|
|
53
|
+
oldincludedir = $(SDKROOT)/usr/include
|
|
55
54
|
includedir = $(prefix)/include
|
|
56
55
|
runstatedir = $(localstatedir)/run
|
|
57
56
|
localstatedir = $(prefix)/var
|
|
@@ -66,12 +65,12 @@ archdir = $(rubyarchdir)
|
|
|
66
65
|
|
|
67
66
|
|
|
68
67
|
CC_WRAPPER =
|
|
69
|
-
CC =
|
|
70
|
-
CXX =
|
|
68
|
+
CC = clang -fdeclspec
|
|
69
|
+
CXX = clang++ -fdeclspec
|
|
71
70
|
LIBRUBY = $(LIBRUBY_A)
|
|
72
71
|
LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a
|
|
73
|
-
LIBRUBYARG_SHARED =
|
|
74
|
-
LIBRUBYARG_STATIC = -
|
|
72
|
+
LIBRUBYARG_SHARED =
|
|
73
|
+
LIBRUBYARG_STATIC = -l$(RUBY_SO_NAME)-static -framework Security -framework Foundation $(MAINLIBS)
|
|
75
74
|
empty =
|
|
76
75
|
OUTFLAG = -o $(empty)
|
|
77
76
|
COUTFLAG = -o $(empty)
|
|
@@ -80,43 +79,43 @@ CSRCFLAG = $(empty)
|
|
|
80
79
|
RUBY_EXTCONF_H = extconf.h
|
|
81
80
|
cflags = $(optflags) $(debugflags) $(warnflags)
|
|
82
81
|
cxxflags =
|
|
83
|
-
optflags = -O3
|
|
82
|
+
optflags = -O3
|
|
84
83
|
debugflags = -ggdb3
|
|
85
|
-
warnflags = -Wall -Wextra -Wdeprecated-declarations -
|
|
84
|
+
warnflags = -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens
|
|
86
85
|
cppflags =
|
|
87
|
-
CCDLFLAGS = -
|
|
88
|
-
CFLAGS = $(CCDLFLAGS) $(cflags) -Wall $(ARCH_FLAG)
|
|
86
|
+
CCDLFLAGS = -fno-common
|
|
87
|
+
CFLAGS = $(CCDLFLAGS) $(cflags) -pipe -Wall $(ARCH_FLAG)
|
|
89
88
|
INCFLAGS = -I. -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir)
|
|
90
89
|
DEFS =
|
|
91
|
-
CPPFLAGS = -DRUBY_EXTCONF_H=\"$(RUBY_EXTCONF_H)\" $(DEFS) $(cppflags)
|
|
90
|
+
CPPFLAGS = -DRUBY_EXTCONF_H=\"$(RUBY_EXTCONF_H)\" -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT $(DEFS) $(cppflags)
|
|
92
91
|
CXXFLAGS = $(CCDLFLAGS) $(ARCH_FLAG)
|
|
93
|
-
ldflags = -L. -fstack-protector-strong -
|
|
94
|
-
dldflags = -Wl
|
|
92
|
+
ldflags = -L. -fstack-protector-strong -L/opt/local/lib
|
|
93
|
+
dldflags = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -L/opt/local/lib
|
|
95
94
|
ARCH_FLAG =
|
|
96
95
|
DLDFLAGS = $(ldflags) $(dldflags) $(ARCH_FLAG)
|
|
97
|
-
LDSHARED = $(CC) -
|
|
98
|
-
LDSHAREDXX = $(CXX) -
|
|
99
|
-
AR =
|
|
96
|
+
LDSHARED = $(CC) -dynamic -bundle
|
|
97
|
+
LDSHAREDXX = $(CXX) -dynamic -bundle
|
|
98
|
+
AR = ar
|
|
100
99
|
EXEEXT =
|
|
101
100
|
|
|
102
101
|
RUBY_INSTALL_NAME = $(RUBY_BASE_NAME)
|
|
103
|
-
RUBY_SO_NAME = ruby
|
|
102
|
+
RUBY_SO_NAME = ruby.3.0
|
|
104
103
|
RUBYW_INSTALL_NAME =
|
|
105
104
|
RUBY_VERSION_NAME = $(RUBY_BASE_NAME)-$(ruby_version)
|
|
106
105
|
RUBYW_BASE_NAME = rubyw
|
|
107
106
|
RUBY_BASE_NAME = ruby
|
|
108
107
|
|
|
109
|
-
arch = x86_64-
|
|
108
|
+
arch = x86_64-darwin20
|
|
110
109
|
sitearch = $(arch)
|
|
111
|
-
ruby_version = 3.
|
|
110
|
+
ruby_version = 3.0.0
|
|
112
111
|
ruby = $(bindir)/$(RUBY_BASE_NAME)
|
|
113
112
|
RUBY = $(ruby)
|
|
114
113
|
ruby_headers = $(hdrdir)/ruby.h $(hdrdir)/ruby/backward.h $(hdrdir)/ruby/ruby.h $(hdrdir)/ruby/defines.h $(hdrdir)/ruby/missing.h $(hdrdir)/ruby/intern.h $(hdrdir)/ruby/st.h $(hdrdir)/ruby/subst.h $(arch_hdrdir)/ruby/config.h $(RUBY_EXTCONF_H)
|
|
115
114
|
|
|
116
115
|
RM = rm -f
|
|
117
116
|
RM_RF = $(RUBY) -run -e rm -- -rf
|
|
118
|
-
RMDIRS = rmdir
|
|
119
|
-
MAKEDIRS = /
|
|
117
|
+
RMDIRS = rmdir -p
|
|
118
|
+
MAKEDIRS = /opt/local/bin/gmkdir -p
|
|
120
119
|
INSTALL = /usr/bin/install -c
|
|
121
120
|
INSTALL_PROG = $(INSTALL) -m 0755
|
|
122
121
|
INSTALL_DATA = $(INSTALL) -m 644
|
|
@@ -126,8 +125,8 @@ TOUCH = exit >
|
|
|
126
125
|
#### End of system configuration section. ####
|
|
127
126
|
|
|
128
127
|
preload =
|
|
129
|
-
libpath = . $(libdir)
|
|
130
|
-
LIBPATH = -L. -L$(libdir) -
|
|
128
|
+
libpath = . $(libdir) /opt/local/lib
|
|
129
|
+
LIBPATH = -L. -L$(libdir) -L/opt/local/lib
|
|
131
130
|
DEFFILE =
|
|
132
131
|
|
|
133
132
|
CLEANFILES = mkmf.log
|
|
@@ -138,16 +137,16 @@ extout =
|
|
|
138
137
|
extout_prefix =
|
|
139
138
|
target_prefix = /event
|
|
140
139
|
LOCAL_LIBS =
|
|
141
|
-
LIBS =
|
|
140
|
+
LIBS =
|
|
142
141
|
ORIG_SRCS = event.c
|
|
143
|
-
SRCS = $(ORIG_SRCS) event.c
|
|
144
|
-
OBJS = event.o
|
|
142
|
+
SRCS = $(ORIG_SRCS) event.c selector.c kqueue.c
|
|
143
|
+
OBJS = event.o selector.o kqueue.o
|
|
145
144
|
HDRS = $(srcdir)/event.h $(srcdir)/extconf.h
|
|
146
145
|
LOCAL_HDRS =
|
|
147
146
|
TARGET = event
|
|
148
147
|
TARGET_NAME = event
|
|
149
148
|
TARGET_ENTRY = Init_$(TARGET_NAME)
|
|
150
|
-
DLLIB = $(TARGET).
|
|
149
|
+
DLLIB = $(TARGET).bundle
|
|
151
150
|
EXTSTATIC =
|
|
152
151
|
STATIC_LIB =
|
|
153
152
|
|
|
@@ -156,8 +155,8 @@ BINDIR = $(bindir)
|
|
|
156
155
|
RUBYCOMMONDIR = $(sitedir)$(target_prefix)
|
|
157
156
|
RUBYLIBDIR = $(sitelibdir)$(target_prefix)
|
|
158
157
|
RUBYARCHDIR = $(sitearchdir)$(target_prefix)
|
|
159
|
-
HDRDIR = $(
|
|
160
|
-
ARCHHDRDIR = $(
|
|
158
|
+
HDRDIR = $(rubyhdrdir)/ruby$(target_prefix)
|
|
159
|
+
ARCHHDRDIR = $(rubyhdrdir)/$(arch)/ruby$(target_prefix)
|
|
161
160
|
TARGET_SO_DIR =
|
|
162
161
|
TARGET_SO = $(TARGET_SO_DIR)$(DLLIB)
|
|
163
162
|
CLEANLIBS = $(TARGET_SO)
|
|
@@ -261,6 +260,7 @@ $(TARGET_SO): $(OBJS) Makefile
|
|
|
261
260
|
$(ECHO) linking shared-object event/$(DLLIB)
|
|
262
261
|
-$(Q)$(RM) $(@)
|
|
263
262
|
$(Q) $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS)
|
|
263
|
+
$(Q) $(POSTLINK)
|
|
264
264
|
|
|
265
265
|
|
|
266
266
|
|
|
Binary file
|
data/ext/event/event.c
CHANGED
|
@@ -19,10 +19,10 @@
|
|
|
19
19
|
// THE SOFTWARE.
|
|
20
20
|
|
|
21
21
|
#include "event.h"
|
|
22
|
-
#include "
|
|
22
|
+
#include "selector/selector.h"
|
|
23
23
|
|
|
24
24
|
VALUE Event = Qnil;
|
|
25
|
-
VALUE
|
|
25
|
+
VALUE Event_Selector = Qnil;
|
|
26
26
|
|
|
27
27
|
void Init_event()
|
|
28
28
|
{
|
|
@@ -31,19 +31,19 @@ void Init_event()
|
|
|
31
31
|
#endif
|
|
32
32
|
|
|
33
33
|
Event = rb_define_module("Event");
|
|
34
|
-
|
|
34
|
+
Event_Selector = rb_define_module_under(Event, "Selector");
|
|
35
35
|
|
|
36
|
-
|
|
36
|
+
Init_Event_Selector(Event_Selector);
|
|
37
37
|
|
|
38
|
-
#ifdef
|
|
39
|
-
|
|
38
|
+
#ifdef EVENT_SELECTOR_URING
|
|
39
|
+
Init_Event_Selector_URing(Event_Selector);
|
|
40
40
|
#endif
|
|
41
41
|
|
|
42
|
-
#ifdef
|
|
43
|
-
|
|
42
|
+
#ifdef EVENT_SELECTOR_EPOLL
|
|
43
|
+
Init_Event_Selector_EPoll(Event_Selector);
|
|
44
44
|
#endif
|
|
45
45
|
|
|
46
|
-
#ifdef
|
|
47
|
-
|
|
46
|
+
#ifdef EVENT_SELECTOR_KQUEUE
|
|
47
|
+
Init_Event_Selector_KQueue(Event_Selector);
|
|
48
48
|
#endif
|
|
49
49
|
}
|
data/ext/event/event.h
CHANGED
|
@@ -27,13 +27,13 @@
|
|
|
27
27
|
void Init_event();
|
|
28
28
|
|
|
29
29
|
#ifdef HAVE_LIBURING_H
|
|
30
|
-
#include "
|
|
30
|
+
#include "selector/uring.h"
|
|
31
31
|
#endif
|
|
32
32
|
|
|
33
33
|
#ifdef HAVE_SYS_EPOLL_H
|
|
34
|
-
#include "
|
|
34
|
+
#include "selector/epoll.h"
|
|
35
35
|
#endif
|
|
36
36
|
|
|
37
37
|
#ifdef HAVE_SYS_EVENT_H
|
|
38
|
-
#include "
|
|
38
|
+
#include "selector/kqueue.h"
|
|
39
39
|
#endif
|
data/ext/event/event.o
CHANGED
|
Binary file
|
data/ext/event/extconf.h
CHANGED
data/ext/event/extconf.rb
CHANGED
|
@@ -30,21 +30,29 @@ dir_config(extension_name)
|
|
|
30
30
|
|
|
31
31
|
$CFLAGS << " -Wall"
|
|
32
32
|
|
|
33
|
-
$srcs = ["event.c", "
|
|
34
|
-
$VPATH << "$(srcdir)/
|
|
33
|
+
$srcs = ["event.c", "selector/selector.c"]
|
|
34
|
+
$VPATH << "$(srcdir)/selector"
|
|
35
|
+
|
|
36
|
+
have_func('&rb_fiber_transfer')
|
|
35
37
|
|
|
36
38
|
if have_library('uring') and have_header('liburing.h')
|
|
37
|
-
$srcs << "
|
|
39
|
+
$srcs << "selector/uring.c"
|
|
38
40
|
end
|
|
39
41
|
|
|
40
42
|
if have_header('sys/epoll.h')
|
|
41
|
-
$srcs << "
|
|
43
|
+
$srcs << "selector/epoll.c"
|
|
42
44
|
end
|
|
43
45
|
|
|
44
46
|
if have_header('sys/event.h')
|
|
45
|
-
$srcs << "
|
|
47
|
+
$srcs << "selector/kqueue.c"
|
|
46
48
|
end
|
|
47
49
|
|
|
50
|
+
have_func("rb_io_descriptor")
|
|
51
|
+
have_func("&rb_process_status_wait")
|
|
52
|
+
have_func("&rb_fiber_raise")
|
|
53
|
+
|
|
54
|
+
have_header('ruby/io/buffer.h')
|
|
55
|
+
|
|
48
56
|
create_header
|
|
49
57
|
|
|
50
58
|
# Generate the makefile to compile the native binary into `lib`:
|
data/ext/event/kqueue.o
ADDED
|
Binary file
|
data/ext/event/mkmf.log
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
|
|
1
|
+
have_func: checking for &rb_fiber_transfer()... -------------------- no
|
|
2
2
|
|
|
3
|
-
"
|
|
3
|
+
"clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -L. -L/Users/samuel/.rubies/ruby-3.0.1/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
|
|
4
4
|
checked program was:
|
|
5
5
|
/* begin */
|
|
6
6
|
1: #include "ruby.h"
|
|
@@ -11,7 +11,36 @@ checked program was:
|
|
|
11
11
|
6: }
|
|
12
12
|
/* end */
|
|
13
13
|
|
|
14
|
-
"
|
|
14
|
+
"clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -L. -L/Users/samuel/.rubies/ruby-3.0.1/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
|
|
15
|
+
conftest.c:14:76: error: use of undeclared identifier 'rb_fiber_transfer'
|
|
16
|
+
int t(void) { const volatile void *volatile p; p = (const volatile void *)&rb_fiber_transfer; return !p; }
|
|
17
|
+
^
|
|
18
|
+
1 error generated.
|
|
19
|
+
checked program was:
|
|
20
|
+
/* begin */
|
|
21
|
+
1: #include "ruby.h"
|
|
22
|
+
2:
|
|
23
|
+
3: /*top*/
|
|
24
|
+
4: extern int t(void);
|
|
25
|
+
5: int main(int argc, char **argv)
|
|
26
|
+
6: {
|
|
27
|
+
7: if (argc > 1000000) {
|
|
28
|
+
8: int (* volatile tp)(void)=(int (*)(void))&t;
|
|
29
|
+
9: printf("%d", (*tp)());
|
|
30
|
+
10: }
|
|
31
|
+
11:
|
|
32
|
+
12: return !!argv[argc];
|
|
33
|
+
13: }
|
|
34
|
+
14: int t(void) { const volatile void *volatile p; p = (const volatile void *)&rb_fiber_transfer; return !p; }
|
|
35
|
+
/* end */
|
|
36
|
+
|
|
37
|
+
--------------------
|
|
38
|
+
|
|
39
|
+
have_library: checking for -luring... -------------------- no
|
|
40
|
+
|
|
41
|
+
"clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -L. -L/Users/samuel/.rubies/ruby-3.0.1/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc -luring "
|
|
42
|
+
ld: library not found for -luring
|
|
43
|
+
clang: error: linker command failed with exit code 1 (use -v to see invocation)
|
|
15
44
|
checked program was:
|
|
16
45
|
/* begin */
|
|
17
46
|
1: #include "ruby.h"
|
|
@@ -33,42 +62,156 @@ checked program was:
|
|
|
33
62
|
|
|
34
63
|
--------------------
|
|
35
64
|
|
|
36
|
-
have_header: checking for
|
|
65
|
+
have_header: checking for sys/epoll.h... -------------------- no
|
|
37
66
|
|
|
38
|
-
"
|
|
67
|
+
"clang -E -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -o conftest.i"
|
|
68
|
+
conftest.c:3:10: fatal error: 'sys/epoll.h' file not found
|
|
69
|
+
#include <sys/epoll.h>
|
|
70
|
+
^~~~~~~~~~~~~
|
|
71
|
+
1 error generated.
|
|
39
72
|
checked program was:
|
|
40
73
|
/* begin */
|
|
41
74
|
1: #include "ruby.h"
|
|
42
75
|
2:
|
|
43
|
-
3: #include <
|
|
76
|
+
3: #include <sys/epoll.h>
|
|
44
77
|
/* end */
|
|
45
78
|
|
|
46
79
|
--------------------
|
|
47
80
|
|
|
48
|
-
have_header: checking for sys/
|
|
81
|
+
have_header: checking for sys/event.h... -------------------- yes
|
|
49
82
|
|
|
50
|
-
"
|
|
83
|
+
"clang -E -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -o conftest.i"
|
|
51
84
|
checked program was:
|
|
52
85
|
/* begin */
|
|
53
86
|
1: #include "ruby.h"
|
|
54
87
|
2:
|
|
55
|
-
3: #include <sys/
|
|
88
|
+
3: #include <sys/event.h>
|
|
56
89
|
/* end */
|
|
57
90
|
|
|
58
91
|
--------------------
|
|
59
92
|
|
|
60
|
-
|
|
93
|
+
have_func: checking for rb_io_descriptor()... -------------------- no
|
|
61
94
|
|
|
62
|
-
"
|
|
63
|
-
conftest.c:
|
|
64
|
-
|
|
65
|
-
|
|
66
|
-
|
|
95
|
+
"clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -L. -L/Users/samuel/.rubies/ruby-3.0.1/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
|
|
96
|
+
conftest.c:14:57: error: use of undeclared identifier 'rb_io_descriptor'
|
|
97
|
+
int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_io_descriptor; return !p; }
|
|
98
|
+
^
|
|
99
|
+
1 error generated.
|
|
100
|
+
checked program was:
|
|
101
|
+
/* begin */
|
|
102
|
+
1: #include "ruby.h"
|
|
103
|
+
2:
|
|
104
|
+
3: /*top*/
|
|
105
|
+
4: extern int t(void);
|
|
106
|
+
5: int main(int argc, char **argv)
|
|
107
|
+
6: {
|
|
108
|
+
7: if (argc > 1000000) {
|
|
109
|
+
8: int (* volatile tp)(void)=(int (*)(void))&t;
|
|
110
|
+
9: printf("%d", (*tp)());
|
|
111
|
+
10: }
|
|
112
|
+
11:
|
|
113
|
+
12: return !!argv[argc];
|
|
114
|
+
13: }
|
|
115
|
+
14: int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_io_descriptor; return !p; }
|
|
116
|
+
/* end */
|
|
117
|
+
|
|
118
|
+
"clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -L. -L/Users/samuel/.rubies/ruby-3.0.1/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
|
|
119
|
+
Undefined symbols for architecture x86_64:
|
|
120
|
+
"_rb_io_descriptor", referenced from:
|
|
121
|
+
_t in conftest-839f76.o
|
|
122
|
+
ld: symbol(s) not found for architecture x86_64
|
|
123
|
+
clang: error: linker command failed with exit code 1 (use -v to see invocation)
|
|
124
|
+
checked program was:
|
|
125
|
+
/* begin */
|
|
126
|
+
1: #include "ruby.h"
|
|
127
|
+
2:
|
|
128
|
+
3: /*top*/
|
|
129
|
+
4: extern int t(void);
|
|
130
|
+
5: int main(int argc, char **argv)
|
|
131
|
+
6: {
|
|
132
|
+
7: if (argc > 1000000) {
|
|
133
|
+
8: int (* volatile tp)(void)=(int (*)(void))&t;
|
|
134
|
+
9: printf("%d", (*tp)());
|
|
135
|
+
10: }
|
|
136
|
+
11:
|
|
137
|
+
12: return !!argv[argc];
|
|
138
|
+
13: }
|
|
139
|
+
14: extern void rb_io_descriptor();
|
|
140
|
+
15: int t(void) { rb_io_descriptor(); return 0; }
|
|
141
|
+
/* end */
|
|
142
|
+
|
|
143
|
+
--------------------
|
|
144
|
+
|
|
145
|
+
have_func: checking for &rb_process_status_wait()... -------------------- no
|
|
146
|
+
|
|
147
|
+
"clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -L. -L/Users/samuel/.rubies/ruby-3.0.1/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
|
|
148
|
+
conftest.c:14:76: error: use of undeclared identifier 'rb_process_status_wait'
|
|
149
|
+
int t(void) { const volatile void *volatile p; p = (const volatile void *)&rb_process_status_wait; return !p; }
|
|
150
|
+
^
|
|
151
|
+
1 error generated.
|
|
152
|
+
checked program was:
|
|
153
|
+
/* begin */
|
|
154
|
+
1: #include "ruby.h"
|
|
155
|
+
2:
|
|
156
|
+
3: /*top*/
|
|
157
|
+
4: extern int t(void);
|
|
158
|
+
5: int main(int argc, char **argv)
|
|
159
|
+
6: {
|
|
160
|
+
7: if (argc > 1000000) {
|
|
161
|
+
8: int (* volatile tp)(void)=(int (*)(void))&t;
|
|
162
|
+
9: printf("%d", (*tp)());
|
|
163
|
+
10: }
|
|
164
|
+
11:
|
|
165
|
+
12: return !!argv[argc];
|
|
166
|
+
13: }
|
|
167
|
+
14: int t(void) { const volatile void *volatile p; p = (const volatile void *)&rb_process_status_wait; return !p; }
|
|
168
|
+
/* end */
|
|
169
|
+
|
|
170
|
+
--------------------
|
|
171
|
+
|
|
172
|
+
have_func: checking for &rb_fiber_raise()... -------------------- no
|
|
173
|
+
|
|
174
|
+
"clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -L. -L/Users/samuel/.rubies/ruby-3.0.1/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
|
|
175
|
+
conftest.c:14:76: error: use of undeclared identifier 'rb_fiber_raise'; did you mean 'rb_fiber_resume'?
|
|
176
|
+
int t(void) { const volatile void *volatile p; p = (const volatile void *)&rb_fiber_raise; return !p; }
|
|
177
|
+
^~~~~~~~~~~~~~
|
|
178
|
+
rb_fiber_resume
|
|
179
|
+
/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/internal/intern/cont.h:32:7: note: 'rb_fiber_resume' declared here
|
|
180
|
+
VALUE rb_fiber_resume(VALUE fib, int argc, const VALUE *argv);
|
|
181
|
+
^
|
|
182
|
+
1 error generated.
|
|
183
|
+
checked program was:
|
|
184
|
+
/* begin */
|
|
185
|
+
1: #include "ruby.h"
|
|
186
|
+
2:
|
|
187
|
+
3: /*top*/
|
|
188
|
+
4: extern int t(void);
|
|
189
|
+
5: int main(int argc, char **argv)
|
|
190
|
+
6: {
|
|
191
|
+
7: if (argc > 1000000) {
|
|
192
|
+
8: int (* volatile tp)(void)=(int (*)(void))&t;
|
|
193
|
+
9: printf("%d", (*tp)());
|
|
194
|
+
10: }
|
|
195
|
+
11:
|
|
196
|
+
12: return !!argv[argc];
|
|
197
|
+
13: }
|
|
198
|
+
14: int t(void) { const volatile void *volatile p; p = (const volatile void *)&rb_fiber_raise; return !p; }
|
|
199
|
+
/* end */
|
|
200
|
+
|
|
201
|
+
--------------------
|
|
202
|
+
|
|
203
|
+
have_header: checking for ruby/io/buffer.h... -------------------- no
|
|
204
|
+
|
|
205
|
+
"clang -E -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/x86_64-darwin20 -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0 -I. -I/opt/local/include -D_XOPEN_SOURCE -D_DARWIN_C_SOURCE -D_DARWIN_UNLIMITED_SELECT -D_REENTRANT -O3 -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wdivision-by-zero -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wshorten-64-to-32 -Wwrite-strings -Wmissing-noreturn -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wunused-variable -Wextra-tokens -pipe -Wall conftest.c -o conftest.i"
|
|
206
|
+
conftest.c:3:10: fatal error: 'ruby/io/buffer.h' file not found
|
|
207
|
+
#include <ruby/io/buffer.h>
|
|
208
|
+
^~~~~~~~~~~~~~~~~~
|
|
209
|
+
1 error generated.
|
|
67
210
|
checked program was:
|
|
68
211
|
/* begin */
|
|
69
212
|
1: #include "ruby.h"
|
|
70
213
|
2:
|
|
71
|
-
3: #include <
|
|
214
|
+
3: #include <ruby/io/buffer.h>
|
|
72
215
|
/* end */
|
|
73
216
|
|
|
74
217
|
--------------------
|
|
@@ -77,8 +220,7 @@ extconf.h is:
|
|
|
77
220
|
/* begin */
|
|
78
221
|
1: #ifndef EXTCONF_H
|
|
79
222
|
2: #define EXTCONF_H
|
|
80
|
-
3: #define
|
|
81
|
-
4: #
|
|
82
|
-
5: #endif
|
|
223
|
+
3: #define HAVE_SYS_EVENT_H 1
|
|
224
|
+
4: #endif
|
|
83
225
|
/* end */
|
|
84
226
|
|