Here's an update to the latest version of eventmachine, which contains almost 5 years of changes, and is compatible with ruby 2.2.
Changelog for the last couple years of changes is at https://github.com/eventmachine/eventmachine/blob/master/CHANGELOG.md Tested on amd64. I plan on committing this this weekend unless I hear objections. Thanks, Jeremy Index: Makefile =================================================================== RCS file: /cvs/ports/net/ruby-eventmachine/Makefile,v retrieving revision 1.18 diff -u -p -r1.18 Makefile --- Makefile 15 Jan 2014 02:13:58 -0000 1.18 +++ Makefile 8 Jan 2015 22:12:18 -0000 @@ -2,8 +2,7 @@ COMMENT= event-driven I/O for Ruby using the Reactor pattern -DISTNAME= eventmachine-0.12.8 -REVISION = 9 +DISTNAME= eventmachine-1.0.4 CATEGORIES= net devel HOMEPAGE= http://rubyeventmachine.com/ @@ -19,7 +18,10 @@ CONFIGURE_STYLE=ruby gem ext MODRUBY_TEST = rake +TEST_DEPENDS = ${FULLPKGNAME}:${BUILD_PKGPATH} + do-test: - cd ${WRKSRC} && RUBYOPT=-Ilib:. ${RAKE} default + cd ${WRKSRC} && ${RUBY} -I tests \ + -e 'ARGV.each{|f| require f}' -- ./tests/test_*.rb .include <bsd.port.mk> Index: distinfo =================================================================== RCS file: /cvs/ports/net/ruby-eventmachine/distinfo,v retrieving revision 1.2 diff -u -p -r1.2 distinfo --- distinfo 9 Aug 2009 12:27:48 -0000 1.2 +++ distinfo 8 Jan 2015 22:05:15 -0000 @@ -1,5 +1,2 @@ -MD5 (eventmachine-0.12.8.gem) = N5+Dm9Mu4q2mOi1Lpel44w== -RMD160 (eventmachine-0.12.8.gem) = nwg9nhb0xfHUYur/xxzWQbY01r0= -SHA1 (eventmachine-0.12.8.gem) = kD56XFcTSzaXsIeGmhj9s9l1LnY= -SHA256 (eventmachine-0.12.8.gem) = oxJePNdNGjS8WEdHOcoebPs7T5SOTfBgBzSOcXB31b8= -SIZE (eventmachine-0.12.8.gem) = 214528 +SHA256 (eventmachine-1.0.4.gem) = E0xAap+YCsIdFg3hLvisfXFCWs075ggpPwzQ1mzUYak= +SIZE (eventmachine-1.0.4.gem) = 227840 Index: patches/patch-ext_ed_cpp =================================================================== RCS file: /cvs/ports/net/ruby-eventmachine/patches/patch-ext_ed_cpp,v retrieving revision 1.1.1.1 diff -u -p -r1.1.1.1 patch-ext_ed_cpp --- patches/patch-ext_ed_cpp 18 Apr 2009 19:34:34 -0000 1.1.1.1 +++ patches/patch-ext_ed_cpp 29 Nov 2014 02:17:43 -0000 @@ -1,9 +1,9 @@ $OpenBSD: patch-ext_ed_cpp,v 1.1.1.1 2009/04/18 19:34:34 jcs Exp $ ---- ext/ed.cpp.orig Wed Dec 31 18:00:00 1969 -+++ ext/ed.cpp Mon Mar 30 10:17:39 2009 -@@ -643,11 +643,8 @@ void ConnectionDescriptor::_WriteOutboundData() - } +--- ext/ed.cpp.orig Wed Dec 31 16:00:00 1969 ++++ ext/ed.cpp Fri Nov 28 18:16:12 2014 +@@ -1018,11 +1018,8 @@ void ConnectionDescriptor::_WriteOutboundData() } + #endif - // We should never have gotten here if there were no data to write, - // so assert that as a sanity check. @@ -14,14 +14,14 @@ $OpenBSD: patch-ext_ed_cpp,v 1.1.1.1 200 + return; assert (GetSocket() != INVALID_SOCKET); - int bytes_written = send (GetSocket(), output_buffer, nbytes, 0); -@@ -1294,6 +1291,9 @@ int DatagramDescriptor::SendOutboundData (const char * - EpollEvent.events = (EPOLLIN | EPOLLOUT); + #ifdef HAVE_WRITEV +@@ -1687,6 +1684,9 @@ void DatagramDescriptor::Write() + EpollEvent.events = (EPOLLIN | (SelectForWrite() ? EPOLLOUT : 0)); assert (MyEventMachine); MyEventMachine->Modify (this); + #endif + #ifdef HAVE_KQUEUE + MyEventMachine->ArmKqueueWriter (this); #endif - return length; - } + #ifdef HAVE_KQUEUE + if (SelectForWrite()) Index: patches/patch-ext_extconf_rb =================================================================== RCS file: /cvs/ports/net/ruby-eventmachine/patches/patch-ext_extconf_rb,v retrieving revision 1.1.1.1 diff -u -p -r1.1.1.1 patch-ext_extconf_rb --- patches/patch-ext_extconf_rb 18 Apr 2009 19:34:34 -0000 1.1.1.1 +++ patches/patch-ext_extconf_rb 29 Nov 2014 02:17:43 -0000 @@ -1,19 +1,12 @@ $OpenBSD: patch-ext_extconf_rb,v 1.1.1.1 2009/04/18 19:34:34 jcs Exp $ ---- ext/extconf.rb.orig Wed Dec 31 18:00:00 1969 -+++ ext/extconf.rb Mon Mar 30 10:41:06 2009 -@@ -63,7 +63,7 @@ when /openbsd/ - # OpenBSD branch contributed by Guillaume Sellier. - - # on Unix we need a g++ link, not gcc. On OpenBSD, linking against libstdc++ have to be explicitly done for shared libs -- CONFIG['LDSHARED'] = "$(CXX) -shared -lstdc++" -+ CONFIG['LDSHARED'] = "$(CXX) -shared -lstdc++ -fPIC" - - when /darwin/ - -@@ -126,4 +126,4 @@ else - add_define "WITHOUT_SSL" +--- ext/extconf.rb.orig Wed Dec 31 16:00:00 1969 ++++ ext/extconf.rb Fri Nov 28 18:16:12 2014 +@@ -98,7 +98,7 @@ if RbConfig::CONFIG["host_os"] =~ /mingw/ + add_define "FD_SETSIZE=32767" unless found end --create_makefile "rubyeventmachine" -\ No newline at end of file +-# Main platform invariances: +create_makefile "rubyeventmachine" + + case RUBY_PLATFORM + when /mswin32/, /mingw32/, /bccwin32/ Index: patches/patch-ext_fastfilereader_extconf_rb =================================================================== RCS file: patches/patch-ext_fastfilereader_extconf_rb diff -N patches/patch-ext_fastfilereader_extconf_rb --- patches/patch-ext_fastfilereader_extconf_rb 18 Apr 2009 19:34:34 -0000 1.1.1.1 +++ /dev/null 1 Jan 1970 00:00:00 -0000 @@ -1,19 +0,0 @@ -$OpenBSD: patch-ext_fastfilereader_extconf_rb,v 1.1.1.1 2009/04/18 19:34:34 jcs Exp $ ---- ext/fastfilereader/extconf.rb.orig Mon Mar 30 10:40:44 2009 -+++ ext/fastfilereader/extconf.rb Mon Mar 30 10:41:11 2009 -@@ -59,7 +59,7 @@ when /openbsd/ - # OpenBSD branch contributed by Guillaume Sellier. - - # on Unix we need a g++ link, not gcc. On OpenBSD, linking against libstdc++ have to be explicitly done for shared libs -- CONFIG['LDSHARED'] = "$(CXX) -shared -lstdc++" -+ CONFIG['LDSHARED'] = "$(CXX) -shared -lstdc++ -fPIC" - when /darwin/ - # on Unix we need a g++ link, not gcc. - # Ff line contributed by Daniel Harple. -@@ -74,4 +74,4 @@ else - CONFIG['LDSHARED'] = "$(CXX) -shared" - end - --create_makefile "fastfilereaderext" -\ No newline at end of file -+create_makefile "fastfilereaderext" Index: pkg/PLIST =================================================================== RCS file: /cvs/ports/net/ruby-eventmachine/pkg/PLIST,v retrieving revision 1.5 diff -u -p -r1.5 PLIST --- pkg/PLIST 11 Jan 2014 22:51:02 -0000 1.5 +++ pkg/PLIST 8 Jan 2015 22:06:13 -0000 @@ -2,38 +2,74 @@ ${GEM_LIB}/cache/${DISTNAME}.gem ${GEM_LIB}/gems/${DISTNAME}/ ${GEM_LIB}/gems/${DISTNAME}/.gitignore -${GEM_LIB}/gems/${DISTNAME}/README +${GEM_LIB}/gems/${DISTNAME}/.travis.yml +${GEM_LIB}/gems/${DISTNAME}/.yardopts +${GEM_LIB}/gems/${DISTNAME}/CHANGELOG.md +${GEM_LIB}/gems/${DISTNAME}/GNU +${GEM_LIB}/gems/${DISTNAME}/Gemfile +${GEM_LIB}/gems/${DISTNAME}/LICENSE +${GEM_LIB}/gems/${DISTNAME}/README.md ${GEM_LIB}/gems/${DISTNAME}/Rakefile ${GEM_LIB}/gems/${DISTNAME}/docs/ -${GEM_LIB}/gems/${DISTNAME}/docs/COPYING -${GEM_LIB}/gems/${DISTNAME}/docs/ChangeLog -${GEM_LIB}/gems/${DISTNAME}/docs/DEFERRABLES -${GEM_LIB}/gems/${DISTNAME}/docs/EPOLL -${GEM_LIB}/gems/${DISTNAME}/docs/GNU -${GEM_LIB}/gems/${DISTNAME}/docs/INSTALL -${GEM_LIB}/gems/${DISTNAME}/docs/KEYBOARD -${GEM_LIB}/gems/${DISTNAME}/docs/LEGAL -${GEM_LIB}/gems/${DISTNAME}/docs/LIGHTWEIGHT_CONCURRENCY -${GEM_LIB}/gems/${DISTNAME}/docs/PURE_RUBY -${GEM_LIB}/gems/${DISTNAME}/docs/RELEASE_NOTES -${GEM_LIB}/gems/${DISTNAME}/docs/SMTP -${GEM_LIB}/gems/${DISTNAME}/docs/SPAWNED_PROCESSES -${GEM_LIB}/gems/${DISTNAME}/docs/TODO +${GEM_LIB}/gems/${DISTNAME}/docs/DocumentationGuidesIndex.md +${GEM_LIB}/gems/${DISTNAME}/docs/GettingStarted.md +${GEM_LIB}/gems/${DISTNAME}/docs/old/ +${GEM_LIB}/gems/${DISTNAME}/docs/old/ChangeLog +${GEM_LIB}/gems/${DISTNAME}/docs/old/DEFERRABLES +${GEM_LIB}/gems/${DISTNAME}/docs/old/EPOLL +${GEM_LIB}/gems/${DISTNAME}/docs/old/INSTALL +${GEM_LIB}/gems/${DISTNAME}/docs/old/KEYBOARD +${GEM_LIB}/gems/${DISTNAME}/docs/old/LEGAL +${GEM_LIB}/gems/${DISTNAME}/docs/old/LIGHTWEIGHT_CONCURRENCY +${GEM_LIB}/gems/${DISTNAME}/docs/old/PURE_RUBY +${GEM_LIB}/gems/${DISTNAME}/docs/old/RELEASE_NOTES +${GEM_LIB}/gems/${DISTNAME}/docs/old/SMTP +${GEM_LIB}/gems/${DISTNAME}/docs/old/SPAWNED_PROCESSES +${GEM_LIB}/gems/${DISTNAME}/docs/old/TODO ${GEM_LIB}/gems/${DISTNAME}/eventmachine.gemspec ${GEM_LIB}/gems/${DISTNAME}/examples/ -${GEM_LIB}/gems/${DISTNAME}/examples/ex_channel.rb -${GEM_LIB}/gems/${DISTNAME}/examples/ex_queue.rb -${GEM_LIB}/gems/${DISTNAME}/examples/helper.rb +${GEM_LIB}/gems/${DISTNAME}/examples/guides/ +${GEM_LIB}/gems/${DISTNAME}/examples/guides/getting_started/ +${GEM_LIB}/gems/${DISTNAME}/examples/guides/getting_started/01_eventmachine_echo_server.rb +${GEM_LIB}/gems/${DISTNAME}/examples/guides/getting_started/02_eventmachine_echo_server_that_recognizes_exit_command.rb +${GEM_LIB}/gems/${DISTNAME}/examples/guides/getting_started/03_simple_chat_server.rb +${GEM_LIB}/gems/${DISTNAME}/examples/guides/getting_started/04_simple_chat_server_step_one.rb +${GEM_LIB}/gems/${DISTNAME}/examples/guides/getting_started/05_simple_chat_server_step_two.rb +${GEM_LIB}/gems/${DISTNAME}/examples/guides/getting_started/06_simple_chat_server_step_three.rb +${GEM_LIB}/gems/${DISTNAME}/examples/guides/getting_started/07_simple_chat_server_step_four.rb +${GEM_LIB}/gems/${DISTNAME}/examples/guides/getting_started/08_simple_chat_server_step_five.rb +${GEM_LIB}/gems/${DISTNAME}/examples/old/ +${GEM_LIB}/gems/${DISTNAME}/examples/old/ex_channel.rb +${GEM_LIB}/gems/${DISTNAME}/examples/old/ex_queue.rb +${GEM_LIB}/gems/${DISTNAME}/examples/old/ex_tick_loop_array.rb +${GEM_LIB}/gems/${DISTNAME}/examples/old/ex_tick_loop_counter.rb +${GEM_LIB}/gems/${DISTNAME}/examples/old/helper.rb +${GEM_LIB}/gems/${DISTNAME}/java/ +${GEM_LIB}/gems/${DISTNAME}/java/.classpath +${GEM_LIB}/gems/${DISTNAME}/java/.project +${GEM_LIB}/gems/${DISTNAME}/java/src/ +${GEM_LIB}/gems/${DISTNAME}/java/src/com/ +${GEM_LIB}/gems/${DISTNAME}/java/src/com/rubyeventmachine/ +${GEM_LIB}/gems/${DISTNAME}/java/src/com/rubyeventmachine/EmReactor.java +${GEM_LIB}/gems/${DISTNAME}/java/src/com/rubyeventmachine/EmReactorException.java +${GEM_LIB}/gems/${DISTNAME}/java/src/com/rubyeventmachine/EventableChannel.java +${GEM_LIB}/gems/${DISTNAME}/java/src/com/rubyeventmachine/EventableDatagramChannel.java +${GEM_LIB}/gems/${DISTNAME}/java/src/com/rubyeventmachine/EventableSocketChannel.java ${GEM_LIB}/gems/${DISTNAME}/lib/ ${GEM_LIB}/gems/${DISTNAME}/lib/em/ ${GEM_LIB}/gems/${DISTNAME}/lib/em/buftok.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/callback.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/channel.rb +${GEM_LIB}/gems/${DISTNAME}/lib/em/completion.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/connection.rb +${GEM_LIB}/gems/${DISTNAME}/lib/em/deferrable/ ${GEM_LIB}/gems/${DISTNAME}/lib/em/deferrable.rb +${GEM_LIB}/gems/${DISTNAME}/lib/em/deferrable/pool.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/file_watch.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/future.rb +${GEM_LIB}/gems/${DISTNAME}/lib/em/iterator.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/messages.rb +${GEM_LIB}/gems/${DISTNAME}/lib/em/pool.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/process_watch.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/processes.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/protocols/ @@ -42,6 +78,7 @@ ${GEM_LIB}/gems/${DISTNAME}/lib/em/proto ${GEM_LIB}/gems/${DISTNAME}/lib/em/protocols/httpclient.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/protocols/httpclient2.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/protocols/line_and_text.rb +${GEM_LIB}/gems/${DISTNAME}/lib/em/protocols/line_protocol.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/protocols/linetext2.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/protocols/memcache.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/protocols/object_protocol.rb @@ -49,72 +86,82 @@ ${GEM_LIB}/gems/${DISTNAME}/lib/em/proto ${GEM_LIB}/gems/${DISTNAME}/lib/em/protocols/saslauth.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/protocols/smtpclient.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/protocols/smtpserver.rb +${GEM_LIB}/gems/${DISTNAME}/lib/em/protocols/socks4.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/protocols/stomp.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/protocols/tcptest.rb +${GEM_LIB}/gems/${DISTNAME}/lib/em/pure_ruby.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/queue.rb +${GEM_LIB}/gems/${DISTNAME}/lib/em/resolver.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/spawnable.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/streamer.rb +${GEM_LIB}/gems/${DISTNAME}/lib/em/threaded_resource.rb +${GEM_LIB}/gems/${DISTNAME}/lib/em/tick_loop.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/timers.rb ${GEM_LIB}/gems/${DISTNAME}/lib/em/version.rb ${GEM_LIB}/gems/${DISTNAME}/lib/eventmachine.rb -${GEM_LIB}/gems/${DISTNAME}/lib/evma/ -${GEM_LIB}/gems/${DISTNAME}/lib/evma.rb -${GEM_LIB}/gems/${DISTNAME}/lib/evma/callback.rb -${GEM_LIB}/gems/${DISTNAME}/lib/evma/container.rb -${GEM_LIB}/gems/${DISTNAME}/lib/evma/factory.rb -${GEM_LIB}/gems/${DISTNAME}/lib/evma/protocol.rb -${GEM_LIB}/gems/${DISTNAME}/lib/evma/reactor.rb ${GEM_LIB}/gems/${DISTNAME}/lib/fastfilereaderext.so ${GEM_LIB}/gems/${DISTNAME}/lib/jeventmachine.rb -${GEM_LIB}/gems/${DISTNAME}/lib/pr_eventmachine.rb ${GEM_LIB}/gems/${DISTNAME}/lib/rubyeventmachine.so -${GEM_LIB}/gems/${DISTNAME}/setup.rb -${GEM_LIB}/gems/${DISTNAME}/tasks/ -${GEM_LIB}/gems/${DISTNAME}/tasks/cpp.rake -${GEM_LIB}/gems/${DISTNAME}/tasks/project.rake -${GEM_LIB}/gems/${DISTNAME}/tasks/tests.rake +${GEM_LIB}/gems/${DISTNAME}/rakelib/ +${GEM_LIB}/gems/${DISTNAME}/rakelib/cpp.rake_example +${GEM_LIB}/gems/${DISTNAME}/rakelib/package.rake +${GEM_LIB}/gems/${DISTNAME}/rakelib/test.rake ${GEM_LIB}/gems/${DISTNAME}/tests/ ${GEM_LIB}/gems/${DISTNAME}/tests/client.crt ${GEM_LIB}/gems/${DISTNAME}/tests/client.key +${GEM_LIB}/gems/${DISTNAME}/tests/em_test_helper.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_attach.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_basic.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_channel.rb +${GEM_LIB}/gems/${DISTNAME}/tests/test_completion.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_connection_count.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_defer.rb +${GEM_LIB}/gems/${DISTNAME}/tests/test_deferrable.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_epoll.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_error_handler.rb -${GEM_LIB}/gems/${DISTNAME}/tests/test_errors.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_exc.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_file_watch.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_futures.rb +${GEM_LIB}/gems/${DISTNAME}/tests/test_get_sock_opt.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_handler_check.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_hc.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_httpclient.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_httpclient2.rb +${GEM_LIB}/gems/${DISTNAME}/tests/test_idle_connection.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_inactivity_timeout.rb +${GEM_LIB}/gems/${DISTNAME}/tests/test_iterator.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_kb.rb +${GEM_LIB}/gems/${DISTNAME}/tests/test_line_protocol.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_ltp.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_ltp2.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_next_tick.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_object_protocol.rb +${GEM_LIB}/gems/${DISTNAME}/tests/test_pause.rb +${GEM_LIB}/gems/${DISTNAME}/tests/test_pending_connect_timeout.rb +${GEM_LIB}/gems/${DISTNAME}/tests/test_pool.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_process_watch.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_processes.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_proxy_connection.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_pure.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_queue.rb +${GEM_LIB}/gems/${DISTNAME}/tests/test_resolver.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_running.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_sasl.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_send_file.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_servers.rb +${GEM_LIB}/gems/${DISTNAME}/tests/test_set_sock_opt.rb +${GEM_LIB}/gems/${DISTNAME}/tests/test_shutdown_hooks.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_smtpclient.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_smtpserver.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_spawn.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_ssl_args.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_ssl_methods.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_ssl_verify.rb +${GEM_LIB}/gems/${DISTNAME}/tests/test_stomp.rb +${GEM_LIB}/gems/${DISTNAME}/tests/test_system.rb +${GEM_LIB}/gems/${DISTNAME}/tests/test_threaded_resource.rb +${GEM_LIB}/gems/${DISTNAME}/tests/test_tick_loop.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_timers.rb ${GEM_LIB}/gems/${DISTNAME}/tests/test_ud.rb -${GEM_LIB}/gems/${DISTNAME}/tests/testem.rb -${GEM_LIB}/gems/${DISTNAME}/web/ -${GEM_LIB}/gems/${DISTNAME}/web/whatis +${GEM_LIB}/gems/${DISTNAME}/tests/test_unbind_reason.rb ${GEM_LIB}/specifications/${DISTNAME}.gemspec