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 CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 73f2afe0a8b33db63d97b134f1c8c2ae2778d2a1982ee335e1fa17df2c6a1aba
4
- data.tar.gz: 608e5adf0b404609b4ffebdfce321e1a6aa09d4e0067b2157c48562536599006
3
+ metadata.gz: bbc589826b45d926acc5b2e3fd2ef49f67832b8e64562b5d860b43a74f850b72
4
+ data.tar.gz: 66ae0f0df1693d58cd6929ca8187ad2f0b9892920555d28595d7a0f94c07ffd4
5
5
  SHA512:
6
- metadata.gz: 1b33aa76aca72169ad6c8f0b054b58f960a8f255bd77d12d44ab85622367474cac9f65edd3db39e8d414d27851963476301757465aa874879d794c11437743d5
7
- data.tar.gz: b30be2add6fe30be434ed728ebd49bec2ded7b3cb290f9512d7856be4508576342d4164ce6d018d345ba0bc4e8397d8dde4836cdb71566dba677036295fc37c5
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 = /home/samuel/.rubies/ruby-head/include/ruby-3.1.0
15
+ topdir = /Users/samuel/.rubies/ruby-3.0.1/include/ruby-3.0.0
17
16
  hdrdir = $(topdir)
18
- arch_hdrdir = /home/samuel/.rubies/ruby-head/include/ruby-3.1.0/x86_64-linux
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)/backend
21
- prefix = $(DESTDIR)/home/samuel/.rubies/ruby-head
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 = $(DESTDIR)/usr/include
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 = gcc
70
- CXX = g++
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 = -Wl,-rpath,$(libdir) -L$(libdir)
74
- LIBRUBYARG_STATIC = -Wl,-rpath,$(libdir) -L$(libdir) -l$(RUBY_SO_NAME)-static $(MAINLIBS)
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 -fno-fast-math
82
+ optflags = -O3
84
83
  debugflags = -ggdb3
85
- warnflags = -Wall -Wextra -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wundef
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 = -fPIC
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 -rdynamic -Wl,-export-dynamic
94
- dldflags = -Wl,--compress-debug-sections=zlib
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) -shared
98
- LDSHAREDXX = $(CXX) -shared
99
- AR = gcc-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-linux
108
+ arch = x86_64-darwin20
110
109
  sitearch = $(arch)
111
- ruby_version = 3.1.0
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 --ignore-fail-on-non-empty -p
119
- MAKEDIRS = /usr/bin/mkdir -p
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) -Wl,-rpath,$(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 = -luring -lm -lc
140
+ LIBS =
142
141
  ORIG_SRCS = event.c
143
- SRCS = $(ORIG_SRCS) event.c backend.c uring.c epoll.c
144
- OBJS = event.o backend.o uring.o epoll.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).so
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 = $(sitehdrdir)$(target_prefix)
160
- ARCHHDRDIR = $(sitearchhdrdir)$(target_prefix)
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 "backend/backend.h"
22
+ #include "selector/selector.h"
23
23
 
24
24
  VALUE Event = Qnil;
25
- VALUE Event_Backend = Qnil;
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
- Event_Backend = rb_define_module_under(Event, "Backend");
34
+ Event_Selector = rb_define_module_under(Event, "Selector");
35
35
 
36
- Init_Event_Backend(Event_Backend);
36
+ Init_Event_Selector(Event_Selector);
37
37
 
38
- #ifdef EVENT_BACKEND_URING
39
- Init_Event_Backend_URing(Event_Backend);
38
+ #ifdef EVENT_SELECTOR_URING
39
+ Init_Event_Selector_URing(Event_Selector);
40
40
  #endif
41
41
 
42
- #ifdef EVENT_BACKEND_EPOLL
43
- Init_Event_Backend_EPoll(Event_Backend);
42
+ #ifdef EVENT_SELECTOR_EPOLL
43
+ Init_Event_Selector_EPoll(Event_Selector);
44
44
  #endif
45
45
 
46
- #ifdef EVENT_BACKEND_KQUEUE
47
- Init_Event_Backend_KQueue(Event_Backend);
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 "backend/uring.h"
30
+ #include "selector/uring.h"
31
31
  #endif
32
32
 
33
33
  #ifdef HAVE_SYS_EPOLL_H
34
- #include "backend/epoll.h"
34
+ #include "selector/epoll.h"
35
35
  #endif
36
36
 
37
37
  #ifdef HAVE_SYS_EVENT_H
38
- #include "backend/kqueue.h"
38
+ #include "selector/kqueue.h"
39
39
  #endif
data/ext/event/event.o CHANGED
Binary file
data/ext/event/extconf.h CHANGED
@@ -1,5 +1,4 @@
1
1
  #ifndef EXTCONF_H
2
2
  #define EXTCONF_H
3
- #define HAVE_LIBURING_H 1
4
- #define HAVE_SYS_EPOLL_H 1
3
+ #define HAVE_SYS_EVENT_H 1
5
4
  #endif
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", "backend/backend.c"]
34
- $VPATH << "$(srcdir)/backend"
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 << "backend/uring.c"
39
+ $srcs << "selector/uring.c"
38
40
  end
39
41
 
40
42
  if have_header('sys/epoll.h')
41
- $srcs << "backend/epoll.c"
43
+ $srcs << "selector/epoll.c"
42
44
  end
43
45
 
44
46
  if have_header('sys/event.h')
45
- $srcs << "backend/kqueue.c"
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`:
Binary file
data/ext/event/mkmf.log CHANGED
@@ -1,6 +1,6 @@
1
- have_library: checking for -luring... -------------------- yes
1
+ have_func: checking for &rb_fiber_transfer()... -------------------- no
2
2
 
3
- "gcc -o conftest -I/home/samuel/.rubies/ruby-head/include/ruby-3.1.0/x86_64-linux -I/home/samuel/.rubies/ruby-head/include/ruby-3.1.0/ruby/backward -I/home/samuel/.rubies/ruby-head/include/ruby-3.1.0 -I. -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wundef -Wall conftest.c -L. -L/home/samuel/.rubies/ruby-head/lib -Wl,-rpath,/home/samuel/.rubies/ruby-head/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/home/samuel/.rubies/ruby-head/lib -L/home/samuel/.rubies/ruby-head/lib -lruby-static -lz -lpthread -lrt -lrt -lgmp -ldl -lcrypt -lm -lm -lc"
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
- "gcc -o conftest -I/home/samuel/.rubies/ruby-head/include/ruby-3.1.0/x86_64-linux -I/home/samuel/.rubies/ruby-head/include/ruby-3.1.0/ruby/backward -I/home/samuel/.rubies/ruby-head/include/ruby-3.1.0 -I. -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wundef -Wall conftest.c -L. -L/home/samuel/.rubies/ruby-head/lib -Wl,-rpath,/home/samuel/.rubies/ruby-head/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/home/samuel/.rubies/ruby-head/lib -L/home/samuel/.rubies/ruby-head/lib -lruby-static -lz -lpthread -lrt -lrt -lgmp -ldl -lcrypt -lm -luring -lm -lc"
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 liburing.h... -------------------- yes
65
+ have_header: checking for sys/epoll.h... -------------------- no
37
66
 
38
- "gcc -I/home/samuel/.rubies/ruby-head/include/ruby-3.1.0/x86_64-linux -I/home/samuel/.rubies/ruby-head/include/ruby-3.1.0/ruby/backward -I/home/samuel/.rubies/ruby-head/include/ruby-3.1.0 -I. -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wundef -Wall -c conftest.c"
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 <liburing.h>
76
+ 3: #include <sys/epoll.h>
44
77
  /* end */
45
78
 
46
79
  --------------------
47
80
 
48
- have_header: checking for sys/epoll.h... -------------------- yes
81
+ have_header: checking for sys/event.h... -------------------- yes
49
82
 
50
- "gcc -I/home/samuel/.rubies/ruby-head/include/ruby-3.1.0/x86_64-linux -I/home/samuel/.rubies/ruby-head/include/ruby-3.1.0/ruby/backward -I/home/samuel/.rubies/ruby-head/include/ruby-3.1.0 -I. -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wundef -Wall -c conftest.c"
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/epoll.h>
88
+ 3: #include <sys/event.h>
56
89
  /* end */
57
90
 
58
91
  --------------------
59
92
 
60
- have_header: checking for sys/event.h... -------------------- no
93
+ have_func: checking for rb_io_descriptor()... -------------------- no
61
94
 
62
- "gcc -I/home/samuel/.rubies/ruby-head/include/ruby-3.1.0/x86_64-linux -I/home/samuel/.rubies/ruby-head/include/ruby-3.1.0/ruby/backward -I/home/samuel/.rubies/ruby-head/include/ruby-3.1.0 -I. -O3 -fno-fast-math -ggdb3 -Wall -Wextra -Wdeprecated-declarations -Wduplicated-cond -Wimplicit-function-declaration -Wimplicit-int -Wmisleading-indentation -Wpointer-arith -Wwrite-strings -Wimplicit-fallthrough=0 -Wmissing-noreturn -Wno-cast-function-type -Wno-constant-logical-operand -Wno-long-long -Wno-missing-field-initializers -Wno-overlength-strings -Wno-packed-bitfield-compat -Wno-parentheses-equality -Wno-self-assign -Wno-tautological-compare -Wno-unused-parameter -Wno-unused-value -Wsuggest-attribute=format -Wsuggest-attribute=noreturn -Wunused-variable -Wundef -Wall -c conftest.c"
63
- conftest.c:3:10: fatal error: sys/event.h: No such file or directory
64
- 3 | #include <sys/event.h>
65
- | ^~~~~~~~~~~~~
66
- compilation terminated.
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 <sys/event.h>
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 HAVE_LIBURING_H 1
81
- 4: #define HAVE_SYS_EPOLL_H 1
82
- 5: #endif
223
+ 3: #define HAVE_SYS_EVENT_H 1
224
+ 4: #endif
83
225
  /* end */
84
226