fix bugs on building extensions

This commit is contained in:
Ishotihadus
2019-12-10 19:22:00 +09:00
parent 857a0c3fae
commit 2271b33cdd
5 changed files with 30 additions and 7 deletions
+1 -1
View File
@@ -147,7 +147,7 @@ void Init_crunch()
VALUE mMikunyan = rb_define_module("Mikunyan");
VALUE mDecodeHelper = rb_define_module_under(mMikunyan, "DecodeHelper");
VALUE cCrunchStream = rb_define_class_under(mDecodeHelper, "CrunchStream", rb_cObject);
rb_attr(cCrunchStream, rb_intern("data"), TRUE, FALSE, TRUE);
rb_attr(cCrunchStream, rb_intern("data"), 1, 0, 1);
const char* stFileInfoStr[] = {"struct_size", "actual_data_size", "header_size", "total_palette_size", "tables_size", "levels", "level_compressed_size", "color_endpoint_palette_entries", "color_selector_palette_entries", "alpha_endpoint_palette_entries", "alpha_selector_palette_entries"};
stFileInfo = create_rb_struct(sizeof(stFileInfoStr) / sizeof(char*), stFileInfoStr);
+22 -3
View File
@@ -7,11 +7,30 @@
#elif !defined BYTE_ORDER
#include <endian.h>
#endif
#ifndef LITTLE_ENDIAN
#define LITTLE_ENDIAN __LITTLE_ENDIAN
#ifndef BYTE_ORDER
#if defined(__BYTE_ORDER__)
#define BYTE_ORDER __BYTE_ORDER__
#elif defined(__BYTE_ORDER)
#define BYTE_ORDER __BYTE_ORDER
#else
#error "Neither BYTE_ORDER nor __BYTE_ORDER__ is defined."
#endif
#ifndef BIG_ENDIAN
#endif
#ifndef LITTLE_ENDIAN
#if defined(__LITTLE_ENDIAN)
#define LITTLE_ENDIAN __LITTLE_ENDIAN
#define BIG_ENDIAN __BIG_ENDIAN
#elif defined(__LITTLE_ENDIAN__)
#define LITTLE_ENDIAN __LITTLE_ENDIAN__
#define BIG_ENDIAN __BIG_ENDIAN__
#elif defined(__ORDER_LITTLE_ENDIAN__)
#define LITTLE_ENDIAN __ORDER_LITTLE_ENDIAN__
#define BIG_ENDIAN __ORDER_BIG_ENDIAN__
#else
#error "Neither LITTLE_ENDIAN, __LITTLE_ENDIAN, nor __ORDER_LITTLE_ENDIAN__ is defined."
#endif
#endif
#if BYTE_ORDER == LITTLE_ENDIAN
+1 -1
View File
@@ -1,7 +1,7 @@
require 'mkmf'
append_cppflags('-std=c11')
append_cppflags('-O3')
append_cppflags('-O2')
append_cppflags('-Wall')
append_cppflags('-Wextra')
append_cppflags('-Wvla')