io-event 0.2.2 → 0.2.3

Sign up to get free protection for your applications and to get access to all the features.
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 42c3a881e6ec0701f4801997d37fb0db726b8be237113e1d18216124b3780696
4
- data.tar.gz: bed05a684ba79871945e6d89752dafb39a04d46e1423bc22736f270995c6777a
3
+ metadata.gz: c0978ed0fd5d85399283cd8c4bb296f44662af2fad9a67e992000f3214898f5a
4
+ data.tar.gz: 154503dd7f0f52dc2ad166d262bb371f81fc60e148dd0c74eadb65051bc5e71f
5
5
  SHA512:
6
- metadata.gz: cf07851ef3309a9dc0d8dde93f4ef7f7ccab6c5757ddae1d713cccca5f3b3990d167c83847f991752a4c2627895404aebc4d605287a6e2db7cf44e5176f0205b
7
- data.tar.gz: b5aa5dabb62b5ca20e0feb6918e5f6683a0e234fcda431ff527cf884c4d0aacc026f60c534fd66a07fe963bb4acee802bd93f355aec98d96cccdd47e0aafb8af
6
+ metadata.gz: a54cab01e6c314890284d9640e3404f6a34706402b2cbf6383bff69c6c341c0c84c56f64d1feebb46e875539e1baab95749ce7f41e5f15ae13af0d8b9e1e0c1a
7
+ data.tar.gz: 7b2891a70e1703616f104410d4f86898a5d9c2bfa6c8ecde0295bea1bfed6ee7efada50568bdf8f841e0360db370d209259f66f2cb17f97d2be47db8a1c2e101
Binary file
data/ext/Makefile CHANGED
@@ -12,12 +12,12 @@ NULLCMD = :
12
12
  #### Start of system configuration section. ####
13
13
 
14
14
  srcdir = .
15
- topdir = /home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0
15
+ topdir = /Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0
16
16
  hdrdir = $(topdir)
17
- arch_hdrdir = /home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/x86_64-linux
17
+ arch_hdrdir = /Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/arm64-darwin21
18
18
  PATH_SEPARATOR = :
19
19
  VPATH = $(srcdir):$(arch_hdrdir)/ruby:$(hdrdir)/ruby:$(srcdir)/io/event:$(srcdir)/io/event/selector
20
- prefix = $(DESTDIR)/home/samuel/.rubies/ruby-3.0.3
20
+ prefix = $(DESTDIR)/Users/samuel/.rubies/ruby-3.0.3
21
21
  rubysitearchprefix = $(rubylibprefix)/$(sitearch)
22
22
  rubyarchprefix = $(rubylibprefix)/$(arch)
23
23
  rubylibprefix = $(libdir)/$(RUBY_BASE_NAME)
@@ -50,7 +50,7 @@ dvidir = $(docdir)
50
50
  htmldir = $(docdir)
51
51
  infodir = $(datarootdir)/info
52
52
  docdir = $(datarootdir)/doc/$(PACKAGE)
53
- oldincludedir = $(DESTDIR)/usr/include
53
+ oldincludedir = $(SDKROOT)/usr/include
54
54
  includedir = $(prefix)/include
55
55
  runstatedir = $(localstatedir)/run
56
56
  localstatedir = $(prefix)/var
@@ -65,12 +65,12 @@ archdir = $(rubyarchdir)
65
65
 
66
66
 
67
67
  CC_WRAPPER =
68
- CC = gcc
69
- CXX = g++
68
+ CC = clang -fdeclspec
69
+ CXX = clang++ -fdeclspec
70
70
  LIBRUBY = $(LIBRUBY_A)
71
71
  LIBRUBY_A = lib$(RUBY_SO_NAME)-static.a
72
- LIBRUBYARG_SHARED = -Wl,-rpath,$(libdir) -L$(libdir)
73
- 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)
74
74
  empty =
75
75
  OUTFLAG = -o $(empty)
76
76
  COUTFLAG = -o $(empty)
@@ -81,31 +81,31 @@ cflags = $(optflags) $(debugflags) $(warnflags)
81
81
  cxxflags =
82
82
  optflags = -O3
83
83
  debugflags = -ggdb3
84
- 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
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
85
85
  cppflags =
86
- CCDLFLAGS = -fPIC
87
- CFLAGS = $(CCDLFLAGS) $(cflags) -Wall $(ARCH_FLAG)
86
+ CCDLFLAGS = -fno-common
87
+ CFLAGS = $(CCDLFLAGS) $(cflags) -pipe -Wall $(ARCH_FLAG)
88
88
  INCFLAGS = -I. -I$(arch_hdrdir) -I$(hdrdir)/ruby/backward -I$(hdrdir) -I$(srcdir)
89
89
  DEFS =
90
- 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)
91
91
  CXXFLAGS = $(CCDLFLAGS) $(ARCH_FLAG)
92
- ldflags = -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic
93
- dldflags = -Wl,--compress-debug-sections=zlib
94
- ARCH_FLAG =
92
+ ldflags = -L. -fstack-protector-strong -L/opt/local/lib
93
+ dldflags = -Wl,-undefined,dynamic_lookup -Wl,-multiply_defined,suppress -L/opt/local/lib
94
+ ARCH_FLAG = -m64
95
95
  DLDFLAGS = $(ldflags) $(dldflags) $(ARCH_FLAG)
96
- LDSHARED = $(CC) -shared
97
- LDSHAREDXX = $(CXX) -shared
98
- AR = gcc-ar
96
+ LDSHARED = $(CC) -dynamic -bundle
97
+ LDSHAREDXX = $(CXX) -dynamic -bundle
98
+ AR = ar
99
99
  EXEEXT =
100
100
 
101
101
  RUBY_INSTALL_NAME = $(RUBY_BASE_NAME)
102
- RUBY_SO_NAME = ruby
102
+ RUBY_SO_NAME = ruby.3.0
103
103
  RUBYW_INSTALL_NAME =
104
104
  RUBY_VERSION_NAME = $(RUBY_BASE_NAME)-$(ruby_version)
105
105
  RUBYW_BASE_NAME = rubyw
106
106
  RUBY_BASE_NAME = ruby
107
107
 
108
- arch = x86_64-linux
108
+ arch = arm64-darwin21
109
109
  sitearch = $(arch)
110
110
  ruby_version = 3.0.0
111
111
  ruby = $(bindir)/$(RUBY_BASE_NAME)
@@ -114,9 +114,9 @@ ruby_headers = $(hdrdir)/ruby.h $(hdrdir)/ruby/backward.h $(hdrdir)/ruby/ruby.h
114
114
 
115
115
  RM = rm -f
116
116
  RM_RF = $(RUBY) -run -e rm -- -rf
117
- RMDIRS = rmdir --ignore-fail-on-non-empty -p
118
- MAKEDIRS = /usr/bin/mkdir -p
119
- INSTALL = /usr/bin/install -c
117
+ RMDIRS = rmdir -p
118
+ MAKEDIRS = /opt/local/bin/gmkdir -p
119
+ INSTALL = /opt/local/bin/ginstall -c
120
120
  INSTALL_PROG = $(INSTALL) -m 0755
121
121
  INSTALL_DATA = $(INSTALL) -m 644
122
122
  COPY = cp
@@ -125,8 +125,8 @@ TOUCH = exit >
125
125
  #### End of system configuration section. ####
126
126
 
127
127
  preload =
128
- libpath = . $(libdir)
129
- LIBPATH = -L. -L$(libdir) -Wl,-rpath,$(libdir)
128
+ libpath = . $(libdir) /opt/local/lib
129
+ LIBPATH = -L. -L$(libdir) -L/opt/local/lib
130
130
  DEFFILE =
131
131
 
132
132
  CLEANFILES = mkmf.log
@@ -137,16 +137,16 @@ extout =
137
137
  extout_prefix =
138
138
  target_prefix =
139
139
  LOCAL_LIBS =
140
- LIBS = -luring -lm -lc
140
+ LIBS =
141
141
  ORIG_SRCS =
142
- SRCS = $(ORIG_SRCS) event.c selector.c uring.c epoll.c interrupt.c
143
- OBJS = event.o selector.o uring.o epoll.o interrupt.o
142
+ SRCS = $(ORIG_SRCS) event.c selector.c kqueue.c interrupt.c
143
+ OBJS = event.o selector.o kqueue.o interrupt.o
144
144
  HDRS = $(srcdir)/extconf.h
145
145
  LOCAL_HDRS =
146
146
  TARGET = IO_Event
147
147
  TARGET_NAME = IO_Event
148
148
  TARGET_ENTRY = Init_$(TARGET_NAME)
149
- DLLIB = $(TARGET).so
149
+ DLLIB = $(TARGET).bundle
150
150
  EXTSTATIC =
151
151
  STATIC_LIB =
152
152
 
@@ -260,6 +260,7 @@ $(TARGET_SO): $(OBJS) Makefile
260
260
  $(ECHO) linking shared-object $(DLLIB)
261
261
  -$(Q)$(RM) $(@)
262
262
  $(Q) $(LDSHARED) -o $@ $(OBJS) $(LIBPATH) $(DLDFLAGS) $(LOCAL_LIBS) $(LIBS)
263
+ $(Q) $(POSTLINK)
263
264
 
264
265
 
265
266
 
data/ext/event.o CHANGED
Binary file
data/ext/extconf.h CHANGED
@@ -1,8 +1,6 @@
1
1
  #ifndef EXTCONF_H
2
2
  #define EXTCONF_H
3
3
  #define HAVE_RB_EXT_RACTOR_SAFE 1
4
- #define HAVE_LIBURING_H 1
5
- #define HAVE_SYS_EPOLL_H 1
6
- #define HAVE_SYS_EVENTFD_H 1
4
+ #define HAVE_SYS_EVENT_H 1
7
5
  #define HAVE_RB_FIBER_CURRENT 1
8
6
  #endif
data/ext/interrupt.o CHANGED
Binary file
@@ -42,13 +42,25 @@ void IO_Event_Interrupt_close(struct IO_Event_Interrupt *interrupt)
42
42
  void IO_Event_Interrupt_signal(struct IO_Event_Interrupt *interrupt)
43
43
  {
44
44
  uint64_t value = 1;
45
- write(interrupt->descriptor, &value, sizeof(value));
45
+ ssize_t result = write(interrupt->descriptor, &value, sizeof(value));
46
+
47
+ if (result == -1) {
48
+ if (errno == EAGAIN || errno == EWOULDBLOCK) return;
49
+
50
+ rb_sys_fail("IO_Event_Interrupt_signal:write");
51
+ }
46
52
  }
47
53
 
48
54
  void IO_Event_Interrupt_clear(struct IO_Event_Interrupt *interrupt)
49
55
  {
50
56
  uint64_t value = 0;
51
- read(interrupt->descriptor, &value, sizeof(value));
57
+ ssize_t result = read(interrupt->descriptor, &value, sizeof(value));
58
+
59
+ if (result == -1) {
60
+ if (errno == EAGAIN || errno == EWOULDBLOCK) return;
61
+
62
+ rb_sys_fail("IO_Event_Interrupt_clear:read");
63
+ }
52
64
  }
53
65
  #else
54
66
  void IO_Event_Interrupt_open(struct IO_Event_Interrupt *interrupt)
@@ -73,12 +85,24 @@ void IO_Event_Interrupt_close(struct IO_Event_Interrupt *interrupt)
73
85
 
74
86
  void IO_Event_Interrupt_signal(struct IO_Event_Interrupt *interrupt)
75
87
  {
76
- write(interrupt->descriptor[1], ".", 1);
88
+ ssize_t result = write(interrupt->descriptor[1], ".", 1);
89
+
90
+ if (result == -1) {
91
+ if (errno == EAGAIN || errno == EWOULDBLOCK) return;
92
+
93
+ rb_sys_fail("IO_Event_Interrupt_signal:write");
94
+ }
77
95
  }
78
96
 
79
97
  void IO_Event_Interrupt_clear(struct IO_Event_Interrupt *interrupt)
80
98
  {
81
99
  char buffer[128];
82
- read(interrupt->descriptor[0], buffer, sizeof(buffer));
100
+ ssize_t result = read(interrupt->descriptor[0], buffer, sizeof(buffer));
101
+
102
+ if (result == -1) {
103
+ if (errno == EAGAIN || errno == EWOULDBLOCK) return;
104
+
105
+ rb_sys_fail("IO_Event_Interrupt_clear:read");
106
+ }
83
107
  }
84
108
  #endif
@@ -103,7 +103,7 @@ void IO_Event_Interrupt_add(struct IO_Event_Interrupt *interrupt, struct IO_Even
103
103
  int result = epoll_ctl(data->descriptor, EPOLL_CTL_ADD, descriptor, &event);
104
104
 
105
105
  if (result == -1) {
106
- rb_sys_fail("IO_Event_Interrupt_addL:epoll_ctl");
106
+ rb_sys_fail("IO_Event_Interrupt_add:epoll_ctl");
107
107
  }
108
108
  }
109
109
 
@@ -562,8 +562,12 @@ VALUE IO_Event_Selector_EPoll_select(VALUE self, VALUE duration) {
562
562
  // Process any currently pending events:
563
563
  select_internal_with_gvl(&arguments);
564
564
 
565
- // If the ready list was empty and no events were processed:
566
- if (!ready && arguments.count == 0) {
565
+ // If we:
566
+ // 1. Didn't process any ready fibers, and
567
+ // 2. Didn't process any events from non-blocking select (above), and
568
+ // 3. There are no items in the ready list,
569
+ // then we can perform a blocking select.
570
+ if (!ready && !arguments.count && !data->backend.ready) {
567
571
  arguments.timeout = make_timeout(duration);
568
572
 
569
573
  if (arguments.timeout != 0) {
@@ -35,7 +35,6 @@ struct IO_Event_Selector_KQueue {
35
35
  int descriptor;
36
36
 
37
37
  int blocked;
38
- int wakeup;
39
38
  };
40
39
 
41
40
  void IO_Event_Selector_KQueue_Type_mark(void *_data)
@@ -574,12 +573,6 @@ static
574
573
  void select_internal_without_gvl(struct select_arguments *arguments) {
575
574
  arguments->data->blocked = 1;
576
575
 
577
- if (arguments->data->wakeup) {
578
- arguments->data->wakeup = 0;
579
- arguments->count = 0;
580
- return;
581
- }
582
-
583
576
  rb_thread_call_without_gvl(select_internal, (void *)arguments, RUBY_UBF_IO, 0);
584
577
  arguments->data->blocked = 0;
585
578
 
@@ -623,8 +616,12 @@ VALUE IO_Event_Selector_KQueue_select(VALUE self, VALUE duration) {
623
616
  // First do the syscall with no timeout to get any immediately available events:
624
617
  select_internal_with_gvl(&arguments);
625
618
 
626
- // If there were no pending events, if we have a timeout, wait for more events:
627
- if (!ready && arguments.count == 0) {
619
+ // If we:
620
+ // 1. Didn't process any ready fibers, and
621
+ // 2. Didn't process any events from non-blocking select (above), and
622
+ // 3. There are no items in the ready list,
623
+ // then we can perform a blocking select.
624
+ if (!ready && !arguments.count && !data->backend.ready) {
628
625
  arguments.timeout = make_timeout(duration, &arguments.storage);
629
626
 
630
627
  if (!timeout_nonblocking(arguments.timeout)) {
@@ -650,11 +647,6 @@ VALUE IO_Event_Selector_KQueue_wakeup(VALUE self) {
650
647
  struct IO_Event_Selector_KQueue *data = NULL;
651
648
  TypedData_Get_Struct(self, struct IO_Event_Selector_KQueue, &IO_Event_Selector_KQueue_Type, data);
652
649
 
653
- // If we are already schduled to wake up, don't bother doing it again!
654
- if (data->wakeup) return Qfalse;
655
-
656
- data->wakeup = 1;
657
-
658
650
  if (data->blocked) {
659
651
  struct kevent trigger = {0};
660
652
 
@@ -606,8 +606,12 @@ VALUE IO_Event_Selector_URing_select(VALUE self, VALUE duration) {
606
606
 
607
607
  int result = select_process_completions(&data->ring);
608
608
 
609
- // If the ready list was empty and we didn't process any completions:
610
- if (!ready && result == 0) {
609
+ // If we:
610
+ // 1. Didn't process any ready fibers, and
611
+ // 2. Didn't process any events from non-blocking select (above), and
612
+ // 3. There are no items in the ready list,
613
+ // then we can perform a blocking select.
614
+ if (!ready && !result && !data->backend.ready) {
611
615
  // We might need to wait for events:
612
616
  struct select_arguments arguments = {
613
617
  .data = data,
data/ext/kqueue.o ADDED
Binary file
data/ext/mkmf.log CHANGED
@@ -1,6 +1,6 @@
1
1
  have_func: checking for rb_ext_ractor_safe()... -------------------- yes
2
2
 
3
- "gcc -o conftest -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/x86_64-linux -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0 -I. -O3 -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 -Wall conftest.c -L. -L/home/samuel/.rubies/ruby-3.0.3/lib -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L/home/samuel/.rubies/ruby-3.0.3/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.3/include/ruby-3.0.0/arm64-darwin21 -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.3/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.3/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -m64 -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,7 @@ checked program was:
11
11
  6: }
12
12
  /* end */
13
13
 
14
- "gcc -o conftest -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/x86_64-linux -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0 -I. -O3 -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 -Wall conftest.c -L. -L/home/samuel/.rubies/ruby-3.0.3/lib -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L/home/samuel/.rubies/ruby-3.0.3/lib -lruby-static -lz -lpthread -lrt -lrt -lgmp -ldl -lcrypt -lm -lm -lc"
14
+ "clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/arm64-darwin21 -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.3/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.3/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -m64 -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
15
15
  checked program was:
16
16
  /* begin */
17
17
  1: #include "ruby.h"
@@ -34,17 +34,11 @@ checked program was:
34
34
 
35
35
  have_func: checking for &rb_fiber_transfer()... -------------------- no
36
36
 
37
- "gcc -o conftest -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/x86_64-linux -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0 -I. -O3 -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 -Wall conftest.c -L. -L/home/samuel/.rubies/ruby-3.0.3/lib -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L/home/samuel/.rubies/ruby-3.0.3/lib -lruby-static -lz -lpthread -lrt -lrt -lgmp -ldl -lcrypt -lm -lm -lc"
38
- conftest.c: In function ‘t’:
39
- conftest.c:14:76: error: ‘rb_fiber_transfer’ undeclared (first use in this function); did you mean ‘rb_fiber_resume’?
40
- 14 | int t(void) { const volatile void *volatile p; p = (const volatile void *)&rb_fiber_transfer; return !p; }
41
- | ^~~~~~~~~~~~~~~~~
42
- | rb_fiber_resume
43
- conftest.c:14:76: note: each undeclared identifier is reported only once for each function it appears in
44
- conftest.c: At top level:
45
- cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
46
- cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
47
- cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
37
+ "clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/arm64-darwin21 -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.3/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.3/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -m64 -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
38
+ conftest.c:14:76: error: use of undeclared identifier 'rb_fiber_transfer'
39
+ int t(void) { const volatile void *volatile p; p = (const volatile void *)&rb_fiber_transfer; return !p; }
40
+ ^
41
+ 1 error generated.
48
42
  checked program was:
49
43
  /* begin */
50
44
  1: #include "ruby.h"
@@ -65,9 +59,11 @@ checked program was:
65
59
 
66
60
  --------------------
67
61
 
68
- have_library: checking for -luring... -------------------- yes
62
+ have_library: checking for -luring... -------------------- no
69
63
 
70
- "gcc -o conftest -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/x86_64-linux -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0 -I. -O3 -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 -Wall conftest.c -L. -L/home/samuel/.rubies/ruby-3.0.3/lib -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L/home/samuel/.rubies/ruby-3.0.3/lib -lruby-static -lz -lpthread -lrt -lrt -lgmp -ldl -lcrypt -lm -luring -lm -lc"
64
+ "clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/arm64-darwin21 -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.3/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.3/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -m64 -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc -luring "
65
+ ld: library not found for -luring
66
+ clang: error: linker command failed with exit code 1 (use -v to see invocation)
71
67
  checked program was:
72
68
  /* begin */
73
69
  1: #include "ruby.h"
@@ -89,21 +85,13 @@ checked program was:
89
85
 
90
86
  --------------------
91
87
 
92
- have_header: checking for liburing.h... -------------------- yes
88
+ have_header: checking for sys/epoll.h... -------------------- no
93
89
 
94
- "gcc -E -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/x86_64-linux -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0 -I. -O3 -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 -Wall conftest.c -o conftest.i"
95
- checked program was:
96
- /* begin */
97
- 1: #include "ruby.h"
98
- 2:
99
- 3: #include <liburing.h>
100
- /* end */
101
-
102
- --------------------
103
-
104
- have_header: checking for sys/epoll.h... -------------------- yes
105
-
106
- "gcc -E -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/x86_64-linux -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0 -I. -O3 -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 -Wall conftest.c -o conftest.i"
90
+ "clang -E -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/arm64-darwin21 -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.3/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"
91
+ conftest.c:3:10: fatal error: 'sys/epoll.h' file not found
92
+ #include <sys/epoll.h>
93
+ ^~~~~~~~~~~~~
94
+ 1 error generated.
107
95
  checked program was:
108
96
  /* begin */
109
97
  1: #include "ruby.h"
@@ -113,13 +101,9 @@ checked program was:
113
101
 
114
102
  --------------------
115
103
 
116
- have_header: checking for sys/event.h... -------------------- no
104
+ have_header: checking for sys/event.h... -------------------- yes
117
105
 
118
- "gcc -E -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/x86_64-linux -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0 -I. -O3 -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 -Wall conftest.c -o conftest.i"
119
- conftest.c:3:10: fatal error: sys/event.h: No such file or directory
120
- 3 | #include <sys/event.h>
121
- | ^~~~~~~~~~~~~
122
- compilation terminated.
106
+ "clang -E -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/arm64-darwin21 -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.3/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"
123
107
  checked program was:
124
108
  /* begin */
125
109
  1: #include "ruby.h"
@@ -129,9 +113,13 @@ checked program was:
129
113
 
130
114
  --------------------
131
115
 
132
- have_header: checking for sys/eventfd.h... -------------------- yes
116
+ have_header: checking for sys/eventfd.h... -------------------- no
133
117
 
134
- "gcc -E -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/x86_64-linux -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0 -I. -O3 -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 -Wall conftest.c -o conftest.i"
118
+ "clang -E -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/arm64-darwin21 -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.3/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"
119
+ conftest.c:3:10: fatal error: 'sys/eventfd.h' file not found
120
+ #include <sys/eventfd.h>
121
+ ^~~~~~~~~~~~~~~
122
+ 1 error generated.
135
123
  checked program was:
136
124
  /* begin */
137
125
  1: #include "ruby.h"
@@ -143,16 +131,11 @@ checked program was:
143
131
 
144
132
  have_func: checking for rb_io_descriptor()... -------------------- no
145
133
 
146
- "gcc -o conftest -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/x86_64-linux -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0 -I. -O3 -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 -Wall conftest.c -L. -L/home/samuel/.rubies/ruby-3.0.3/lib -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -luring -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L/home/samuel/.rubies/ruby-3.0.3/lib -lruby-static -lz -lpthread -lrt -lrt -lgmp -ldl -lcrypt -lm -luring -lm -lc"
147
- conftest.c: In function ‘t’:
148
- conftest.c:14:57: error: ‘rb_io_descriptor’ undeclared (first use in this function)
149
- 14 | int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_io_descriptor; return !p; }
150
- | ^~~~~~~~~~~~~~~~
151
- conftest.c:14:57: note: each undeclared identifier is reported only once for each function it appears in
152
- conftest.c: At top level:
153
- cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
154
- cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
155
- cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
134
+ "clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/arm64-darwin21 -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.3/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.3/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -m64 -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
135
+ conftest.c:14:57: error: use of undeclared identifier 'rb_io_descriptor'
136
+ int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_io_descriptor; return !p; }
137
+ ^
138
+ 1 error generated.
156
139
  checked program was:
157
140
  /* begin */
158
141
  1: #include "ruby.h"
@@ -171,10 +154,12 @@ checked program was:
171
154
  14: int t(void) { void ((*volatile p)()); p = (void ((*)()))rb_io_descriptor; return !p; }
172
155
  /* end */
173
156
 
174
- "gcc -o conftest -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/x86_64-linux -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0 -I. -O3 -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 -Wall conftest.c -L. -L/home/samuel/.rubies/ruby-3.0.3/lib -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -luring -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L/home/samuel/.rubies/ruby-3.0.3/lib -lruby-static -lz -lpthread -lrt -lrt -lgmp -ldl -lcrypt -lm -luring -lm -lc"
175
- /usr/bin/ld: /tmp/cc0gnp4R.o: in function `t':
176
- /home/samuel/Projects/socketry/io-event/ext/conftest.c:15: undefined reference to `rb_io_descriptor'
177
- collect2: error: ld returned 1 exit status
157
+ "clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/arm64-darwin21 -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.3/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.3/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -m64 -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
158
+ Undefined symbols for architecture arm64:
159
+ "_rb_io_descriptor", referenced from:
160
+ _t in conftest-1e4d1a.o
161
+ ld: symbol(s) not found for architecture arm64
162
+ clang: error: linker command failed with exit code 1 (use -v to see invocation)
178
163
  checked program was:
179
164
  /* begin */
180
165
  1: #include "ruby.h"
@@ -198,16 +183,11 @@ checked program was:
198
183
 
199
184
  have_func: checking for &rb_process_status_wait()... -------------------- no
200
185
 
201
- "gcc -o conftest -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/x86_64-linux -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0 -I. -O3 -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 -Wall conftest.c -L. -L/home/samuel/.rubies/ruby-3.0.3/lib -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -luring -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L/home/samuel/.rubies/ruby-3.0.3/lib -lruby-static -lz -lpthread -lrt -lrt -lgmp -ldl -lcrypt -lm -luring -lm -lc"
202
- conftest.c: In function ‘t’:
203
- conftest.c:14:76: error: ‘rb_process_status_wait’ undeclared (first use in this function)
204
- 14 | int t(void) { const volatile void *volatile p; p = (const volatile void *)&rb_process_status_wait; return !p; }
205
- | ^~~~~~~~~~~~~~~~~~~~~~
206
- conftest.c:14:76: note: each undeclared identifier is reported only once for each function it appears in
207
- conftest.c: At top level:
208
- cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
209
- cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
210
- cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
186
+ "clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/arm64-darwin21 -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.3/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.3/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -m64 -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
187
+ conftest.c:14:76: error: use of undeclared identifier 'rb_process_status_wait'
188
+ int t(void) { const volatile void *volatile p; p = (const volatile void *)&rb_process_status_wait; return !p; }
189
+ ^
190
+ 1 error generated.
211
191
  checked program was:
212
192
  /* begin */
213
193
  1: #include "ruby.h"
@@ -230,7 +210,7 @@ checked program was:
230
210
 
231
211
  have_func: checking for rb_fiber_current()... -------------------- yes
232
212
 
233
- "gcc -o conftest -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/x86_64-linux -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0 -I. -O3 -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 -Wall conftest.c -L. -L/home/samuel/.rubies/ruby-3.0.3/lib -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -luring -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L/home/samuel/.rubies/ruby-3.0.3/lib -lruby-static -lz -lpthread -lrt -lrt -lgmp -ldl -lcrypt -lm -luring -lm -lc"
213
+ "clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/arm64-darwin21 -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.3/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.3/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -m64 -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
234
214
  checked program was:
235
215
  /* begin */
236
216
  1: #include "ruby.h"
@@ -253,17 +233,15 @@ checked program was:
253
233
 
254
234
  have_func: checking for &rb_fiber_raise()... -------------------- no
255
235
 
256
- "gcc -o conftest -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/x86_64-linux -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0 -I. -O3 -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 -Wall conftest.c -L. -L/home/samuel/.rubies/ruby-3.0.3/lib -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L. -fstack-protector-strong -rdynamic -Wl,-export-dynamic -luring -Wl,-rpath,/home/samuel/.rubies/ruby-3.0.3/lib -L/home/samuel/.rubies/ruby-3.0.3/lib -lruby-static -lz -lpthread -lrt -lrt -lgmp -ldl -lcrypt -lm -luring -lm -lc"
257
- conftest.c: In function ‘t’:
258
- conftest.c:14:76: error: ‘rb_fiber_raise’ undeclared (first use in this function); did you mean ‘rb_fiber_resume’?
259
- 14 | int t(void) { const volatile void *volatile p; p = (const volatile void *)&rb_fiber_raise; return !p; }
260
- | ^~~~~~~~~~~~~~
261
- | rb_fiber_resume
262
- conftest.c:14:76: note: each undeclared identifier is reported only once for each function it appears in
263
- conftest.c: At top level:
264
- cc1: note: unrecognized command-line option ‘-Wno-self-assign’ may have been intended to silence earlier diagnostics
265
- cc1: note: unrecognized command-line option ‘-Wno-parentheses-equality’ may have been intended to silence earlier diagnostics
266
- cc1: note: unrecognized command-line option ‘-Wno-constant-logical-operand’ may have been intended to silence earlier diagnostics
236
+ "clang -fdeclspec -o conftest -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/arm64-darwin21 -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.3/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.3/lib -L/opt/local/lib -L. -fstack-protector-strong -L/opt/local/lib -m64 -lruby.3.0-static -framework Security -framework Foundation -lpthread -lgmp -ldl -lobjc "
237
+ conftest.c:14:76: error: use of undeclared identifier 'rb_fiber_raise'; did you mean 'rb_fiber_resume'?
238
+ int t(void) { const volatile void *volatile p; p = (const volatile void *)&rb_fiber_raise; return !p; }
239
+ ^~~~~~~~~~~~~~
240
+ rb_fiber_resume
241
+ /Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/internal/intern/cont.h:32:7: note: 'rb_fiber_resume' declared here
242
+ VALUE rb_fiber_resume(VALUE fib, int argc, const VALUE *argv);
243
+ ^
244
+ 1 error generated.
267
245
  checked program was:
268
246
  /* begin */
269
247
  1: #include "ruby.h"
@@ -286,11 +264,12 @@ checked program was:
286
264
 
287
265
  have_header: checking for ruby/io/buffer.h... -------------------- no
288
266
 
289
- "gcc -E -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/x86_64-linux -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/home/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0 -I. -O3 -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 -Wall conftest.c -o conftest.i"
290
- conftest.c:3:10: fatal error: ruby/io/buffer.h: No such file or directory
291
- 3 | #include <ruby/io/buffer.h>
292
- | ^~~~~~~~~~~~~~~~~~
293
- compilation terminated.
267
+ "clang -E -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/arm64-darwin21 -I/Users/samuel/.rubies/ruby-3.0.3/include/ruby-3.0.0/ruby/backward -I/Users/samuel/.rubies/ruby-3.0.3/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"
268
+ conftest.c:3:10: fatal error: 'ruby/io/buffer.h' file not found
269
+ #include <ruby/io/buffer.h>
270
+ ^~~~~~~~~~~~~~~~~~
271
+ conftest.c:3:10: note: did not find header 'io/buffer.h' in framework 'ruby' (loaded from '/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX.sdk/System/Library/Frameworks')
272
+ 1 error generated.
294
273
  checked program was:
295
274
  /* begin */
296
275
  1: #include "ruby.h"
@@ -305,10 +284,8 @@ extconf.h is:
305
284
  1: #ifndef EXTCONF_H
306
285
  2: #define EXTCONF_H
307
286
  3: #define HAVE_RB_EXT_RACTOR_SAFE 1
308
- 4: #define HAVE_LIBURING_H 1
309
- 5: #define HAVE_SYS_EPOLL_H 1
310
- 6: #define HAVE_SYS_EVENTFD_H 1
311
- 7: #define HAVE_RB_FIBER_CURRENT 1
312
- 8: #endif
287
+ 4: #define HAVE_SYS_EVENT_H 1
288
+ 5: #define HAVE_RB_FIBER_CURRENT 1
289
+ 6: #endif
313
290
  /* end */
314
291
 
data/ext/selector.o CHANGED
Binary file
@@ -19,5 +19,5 @@
19
19
  # THE SOFTWARE.
20
20
 
21
21
  module IO::Event
22
- VERSION = "0.2.2"
22
+ VERSION = "0.2.3"
23
23
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: io-event
3
3
  version: !ruby/object:Gem::Version
4
- version: 0.2.2
4
+ version: 0.2.3
5
5
  platform: ruby
6
6
  authors:
7
7
  - Samuel Williams
@@ -73,9 +73,8 @@ extensions:
73
73
  - ext/extconf.rb
74
74
  extra_rdoc_files: []
75
75
  files:
76
- - ext/IO_Event.so
76
+ - ext/IO_Event.bundle
77
77
  - ext/Makefile
78
- - ext/epoll.o
79
78
  - ext/event.o
80
79
  - ext/extconf.h
81
80
  - ext/extconf.rb
@@ -93,9 +92,9 @@ files:
93
92
  - ext/io/event/selector/selector.h
94
93
  - ext/io/event/selector/uring.c
95
94
  - ext/io/event/selector/uring.h
95
+ - ext/kqueue.o
96
96
  - ext/mkmf.log
97
97
  - ext/selector.o
98
- - ext/uring.o
99
98
  - lib/io/event.rb
100
99
  - lib/io/event/debug/selector.rb
101
100
  - lib/io/event/interrupt.rb
data/ext/IO_Event.so DELETED
Binary file
data/ext/epoll.o DELETED
Binary file
data/ext/uring.o DELETED
Binary file