mirror of
https://github.com/ruby/ruby.git
synced 2022-11-09 12:17:21 -05:00

Look up language module with `MakeMakefile.[]`, insted of a accessing constant under that module directly, to get rid of expose the constant to the toplevel inadvertently.
26 lines
588 B
Ruby
26 lines
588 B
Ruby
# frozen_string_literal: false
|
|
|
|
cxx = MakeMakefile["C++"]
|
|
|
|
ok = cxx.try_compile(<<~'begin', "") do |x|
|
|
#include "ruby/config.h"
|
|
|
|
namespace {
|
|
typedef int conftest[SIZEOF_LONG == sizeof(long) ? 1 : -1];
|
|
typedef int conftest[SIZEOF_VOIDP == sizeof(void*) ? 1 : -1];
|
|
}
|
|
|
|
int
|
|
main(int argc, const char** argv)
|
|
{
|
|
return !!argv[argc];
|
|
}
|
|
begin
|
|
# We are wiping ruby.h from the source because that header file is the
|
|
# subject we are going to test in this extension library.
|
|
x.sub! %<#include "ruby.h">, ''
|
|
end
|
|
|
|
if ok
|
|
create_makefile("-test-/cxxanyargs")
|
|
end
|