fix where Boxed#new doesn't work for GLKKit structure.

http://hipbyte.myjetbrains.com/youtrack/issue/RM-293

GLKKit structures are declared as the following.
If use union type when generate bridgesupport,
it is not output the definition of a data structure using <struct> tag into bridgesupport file.
So, Boxed#new does not work for these structure.

    #if defined(__STRICT_ANSI__)
    struct _GLKMatrix4
    {
        float m[16];
    } __attribute__((aligned(16)));
    typedef struct _GLKMatrix4 GLKMatrix4;
    #else
    union _GLKMatrix4
    {
        struct
        {
            float m00, m01, m02, m03;
            float m10, m11, m12, m13;
            float m20, m21, m22, m23;
            float m30, m31, m32, m33;
        };
        float m[16];
    } __attribute__((aligned(16)));
    typedef union _GLKMatrix4 GLKMatrix4;
    #endif
This commit is contained in:
Watson
2013-10-22 13:22:52 +09:00
parent 93d4c37408
commit 6d3ef3ecd4

View File

@@ -307,7 +307,7 @@ EOS
(OSX_VERSION >= 10.7 && sdk_version < '7.0') ? '--no-64-bit' : ''
end
end
sh "RUBYOPT='' '#{File.join(bindir, 'gen_bridge_metadata')}' --format complete #{extra_flags} --cflags \" #{c_flags} -isysroot \"#{sdk_path}\" -miphoneos-version-min=#{sdk_version} -D__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__=#{sdk_version_headers} -I. #{includes.join(' ')}\" #{headers.map { |x| "\"#{x}\"" }.join(' ')} -o \"#{bs_file}\" #{ "-e #{exceptions}" if exceptions.length != 0}"
sh "RUBYOPT='' '#{File.join(bindir, 'gen_bridge_metadata')}' --format complete #{extra_flags} --cflags \" #{c_flags} -isysroot \"#{sdk_path}\" -miphoneos-version-min=#{sdk_version} -D__ENVIRONMENT_IPHONE_OS_VERSION_MIN_REQUIRED__=#{sdk_version_headers} -D__STRICT_ANSI__ -I. #{includes.join(' ')}\" #{headers.map { |x| "\"#{x}\"" }.join(' ')} -o \"#{bs_file}\" #{ "-e #{exceptions}" if exceptions.length != 0}"
end
def define_global_env_txt