mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00
[ruby/fiddle] Check HAVE_RUBY_MEMORY_VIEW_H rather than API version (https://github.com/ruby/fiddle/pull/86)
https://github.com/ruby/fiddle/commit/c5abcc3a7e
This commit is contained in:
parent
818c74b7f4
commit
169529a0c0
6 changed files with 16 additions and 11 deletions
|
@ -1,3 +1,5 @@
|
||||||
# frozen_string_literal: false
|
# frozen_string_literal: false
|
||||||
|
require "mkmf"
|
||||||
|
|
||||||
require_relative "../auto_ext.rb"
|
require_relative "../auto_ext.rb"
|
||||||
auto_ext(inc: true)
|
auto_ext(inc: true)
|
||||||
|
|
|
@ -1,4 +1,6 @@
|
||||||
#include "ruby.h"
|
#include "ruby.h"
|
||||||
|
|
||||||
|
#ifdef HAVE_RUBY_MEMORY_VIEW_H
|
||||||
#include "ruby/memory_view.h"
|
#include "ruby/memory_view.h"
|
||||||
|
|
||||||
#define STRUCT_ALIGNOF(T, result) do { \
|
#define STRUCT_ALIGNOF(T, result) do { \
|
||||||
|
@ -373,10 +375,13 @@ mdview_aref(VALUE obj, VALUE indices_v)
|
||||||
return result;
|
return result;
|
||||||
}
|
}
|
||||||
|
|
||||||
|
#endif /* HAVE_RUBY_MEMORY_VIEW_H */
|
||||||
|
|
||||||
void
|
void
|
||||||
Init_memory_view(void)
|
Init_memory_view(void)
|
||||||
{
|
{
|
||||||
rb_ext_ractor_safe(true);
|
rb_ext_ractor_safe(true);
|
||||||
|
#ifdef HAVE_RUBY_MEMORY_VIEW_H
|
||||||
VALUE mMemoryViewTestUtils = rb_define_module("MemoryViewTestUtils");
|
VALUE mMemoryViewTestUtils = rb_define_module("MemoryViewTestUtils");
|
||||||
|
|
||||||
rb_define_module_function(mMemoryViewTestUtils, "available?", memory_view_available_p, 1);
|
rb_define_module_function(mMemoryViewTestUtils, "available?", memory_view_available_p, 1);
|
||||||
|
@ -440,4 +445,6 @@ Init_memory_view(void)
|
||||||
DEF_ALIGNMENT_CONST(double, DOUBLE);
|
DEF_ALIGNMENT_CONST(double, DOUBLE);
|
||||||
|
|
||||||
#undef DEF_ALIGNMENT_CONST
|
#undef DEF_ALIGNMENT_CONST
|
||||||
|
|
||||||
|
#endif /* HAVE_RUBY_MEMORY_VIEW_H */
|
||||||
}
|
}
|
||||||
|
|
|
@ -7,7 +7,7 @@ VALUE rb_eFiddleError;
|
||||||
void Init_fiddle_pointer(void);
|
void Init_fiddle_pointer(void);
|
||||||
void Init_fiddle_pinned(void);
|
void Init_fiddle_pinned(void);
|
||||||
|
|
||||||
#ifdef FIDDLE_MEMORY_VIEW
|
#ifdef HAVE_RUBY_MEMORY_VIEW_H
|
||||||
void Init_fiddle_memory_view(void);
|
void Init_fiddle_memory_view(void);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -546,7 +546,7 @@ Init_fiddle(void)
|
||||||
Init_fiddle_pointer();
|
Init_fiddle_pointer();
|
||||||
Init_fiddle_pinned();
|
Init_fiddle_pinned();
|
||||||
|
|
||||||
#ifdef FIDDLE_MEMORY_VIEW
|
#ifdef HAVE_RUBY_MEMORY_VIEW_H
|
||||||
Init_fiddle_memory_view();
|
Init_fiddle_memory_view();
|
||||||
#endif
|
#endif
|
||||||
}
|
}
|
||||||
|
|
|
@ -189,10 +189,6 @@
|
||||||
#define ALIGN_INT32_T ALIGN_OF(int32_t)
|
#define ALIGN_INT32_T ALIGN_OF(int32_t)
|
||||||
#define ALIGN_INT64_T ALIGN_OF(int64_t)
|
#define ALIGN_INT64_T ALIGN_OF(int64_t)
|
||||||
|
|
||||||
#ifdef HAVE_RUBY_MEMORY_VIEW_H
|
|
||||||
# define FIDDLE_MEMORY_VIEW
|
|
||||||
#endif
|
|
||||||
|
|
||||||
extern VALUE mFiddle;
|
extern VALUE mFiddle;
|
||||||
extern VALUE rb_eFiddleDLError;
|
extern VALUE rb_eFiddleDLError;
|
||||||
|
|
||||||
|
|
|
@ -1,6 +1,6 @@
|
||||||
#include <fiddle.h>
|
#include <fiddle.h>
|
||||||
|
|
||||||
#ifdef FIDDLE_MEMORY_VIEW
|
#ifdef HAVE_RUBY_MEMORY_VIEW_H
|
||||||
|
|
||||||
#include <stdbool.h>
|
#include <stdbool.h>
|
||||||
#include <ruby/ruby.h>
|
#include <ruby/ruby.h>
|
||||||
|
@ -318,4 +318,4 @@ Init_fiddle_memory_view(void)
|
||||||
rb_define_method(rb_cMemoryView, "to_s", rb_fiddle_memview_to_s, 0);
|
rb_define_method(rb_cMemoryView, "to_s", rb_fiddle_memview_to_s, 0);
|
||||||
}
|
}
|
||||||
|
|
||||||
#endif /* FIDDLE_MEMORY_VIEW */
|
#endif /* HAVE_RUBY_MEMORY_VIEW_H */
|
||||||
|
|
|
@ -9,7 +9,7 @@
|
||||||
#include <ctype.h>
|
#include <ctype.h>
|
||||||
#include <fiddle.h>
|
#include <fiddle.h>
|
||||||
|
|
||||||
#ifdef FIDDLE_MEMORY_VIEW
|
#ifdef HAVE_RUBY_MEMORY_VIEW_H
|
||||||
# include <ruby/memory_view.h>
|
# include <ruby/memory_view.h>
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
@ -92,7 +92,7 @@ static const rb_data_type_t fiddle_ptr_data_type = {
|
||||||
{fiddle_ptr_mark, fiddle_ptr_free, fiddle_ptr_memsize,},
|
{fiddle_ptr_mark, fiddle_ptr_free, fiddle_ptr_memsize,},
|
||||||
};
|
};
|
||||||
|
|
||||||
#ifdef FIDDLE_MEMORY_VIEW
|
#ifdef HAVE_RUBY_MEMORY_VIEW_H
|
||||||
static struct ptr_data *
|
static struct ptr_data *
|
||||||
fiddle_ptr_check_memory_view(VALUE obj)
|
fiddle_ptr_check_memory_view(VALUE obj)
|
||||||
{
|
{
|
||||||
|
@ -841,7 +841,7 @@ Init_fiddle_pointer(void)
|
||||||
rb_define_method(rb_cPointer, "size", rb_fiddle_ptr_size_get, 0);
|
rb_define_method(rb_cPointer, "size", rb_fiddle_ptr_size_get, 0);
|
||||||
rb_define_method(rb_cPointer, "size=", rb_fiddle_ptr_size_set, 1);
|
rb_define_method(rb_cPointer, "size=", rb_fiddle_ptr_size_set, 1);
|
||||||
|
|
||||||
#ifdef FIDDLE_MEMORY_VIEW
|
#ifdef HAVE_RUBY_MEMORY_VIEW_H
|
||||||
rb_memory_view_register(rb_cPointer, &fiddle_ptr_memory_view_entry);
|
rb_memory_view_register(rb_cPointer, &fiddle_ptr_memory_view_entry);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
|
|
Loading…
Reference in a new issue