ÿØÿà JFIF ÿÛ „ ( %!1!%*+...983,7(-.-
have_macro-i.ri 0000644 00000001036 15235351300 0007427 0 ustar 00 U:RDoc::AnyMethod[iI"have_macro:ETI"MakeMakefile#have_macro;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"KReturns whether or not +macro+ is defined either in the common header ;TI"/files or within any +headers+ you provide.;To:RDoc::Markup::BlankLine o;
; [I"DAny options you pass to +opt+ are passed along to the compiler.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I")(macro, headers = nil, opt = "", &b);T@FI"MakeMakefile;TcRDoc::NormalModule00 with_config-i.ri 0000644 00000001537 15235351300 0007631 0 ustar 00 U:RDoc::AnyMethod[iI"with_config:ETI"MakeMakefile#with_config;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [ I"=Tests for the presence of a --with-_config_ or ;TI"O--without-_config_ option. Returns +true+ if the with option is ;TI"Jgiven, +false+ if the without option is given, and the default value ;TI"otherwise.;To:RDoc::Markup::BlankLine o;
; [I"EThis can be useful for adding custom definitions, such as debug ;TI"information.;T@o;
; [I"
Example:;T@o:RDoc::Markup::Verbatim; [I"if with_config("debug")
;TI"H $defs.push("-DOSSL_DEBUG") unless $defs.include? "-DOSSL_DEBUG"
;TI"end;T:@format0:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below00I"config, default;T[ I"(config, default=nil);T@FI"MakeMakefile;TcRDoc::NormalModule00 append_cflags-i.ri 0000644 00000001127 15235351300 0010112 0 ustar 00 U:RDoc::AnyMethod[iI"append_cflags:ETI"MakeMakefile#append_cflags;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"JCheck whether each given C compiler flag is acceptable and append it ;TI"to $CFLAGS if so.;To:RDoc::Markup::BlankLine o:RDoc::Markup::List:
@type:
LABEL:@items[o:RDoc::Markup::ListItem:@label[I"+flags+;T; [o;
; [I":a C compiler flag as a +String+ or an +Array+ of them;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(flags, *opts);T@FI"MakeMakefile;TcRDoc::NormalModule00 conftest_source-i.ri 0000644 00000000400 15235351300 0010522 0 ustar 00 U:RDoc::AnyMethod[iI"conftest_source:ETI"!MakeMakefile#conftest_source;TF:privateo:RDoc::Markup::Document:@parts[ :
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"MakeMakefile;TcRDoc::NormalModule00 %5b%5d%3d-c.ri 0000644 00000000362 15235351300 0006463 0 ustar 00 U:RDoc::AnyMethod[iI"[]=:ETI"MakeMakefile::[]=;TT:privateo:RDoc::Markup::Document:@parts[ :
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(name, mod);T@FI"MakeMakefile;TcRDoc::NormalModule00 cdesc-MakeMakefile.ri 0000644 00000010763 15235351300 0010476 0 ustar 00 U:RDoc::NormalModule[iI"MakeMakefile:ET@0o:RDoc::Markup::Document:@parts[o;;[o:RDoc::Markup::Paragraph;[I"Lmkmf.rb is used by Ruby C extensions to generate a Makefile which will ;TI"Jcorrectly compile and link the C extension to Ruby and a third-party ;TI"
library.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below0;
0;0[ [U:RDoc::Constant[i I"CONFIG;TI"MakeMakefile::CONFIG;T:public0o;;[o; ;[I"LThe makefile configuration using the defaults from when Ruby was built.;T;
@;0@@cRDoc::NormalModule0U;[i I"ORIG_LIBPATH;TI"MakeMakefile::ORIG_LIBPATH;T;
0o;;[ ;
@;0@@@0U;[i I"
C_EXT;TI"MakeMakefile::C_EXT;T;
0o;;[o; ;[I"4Extensions for files compiled with a C compiler;T;
@;0@@@0U;[i I"CXX_EXT;TI"MakeMakefile::CXX_EXT;T;
0o;;[o; ;[I"6Extensions for files compiled with a C++ compiler;T;
@;0@@@0U;[i I"SRC_EXT;TI"MakeMakefile::SRC_EXT;T;
0o;;[o; ;[I" Extensions for source files;T;
@;0@@@0U;[i I"HDR_EXT;TI"MakeMakefile::HDR_EXT;T;
0o;;[o; ;[I" Extensions for header files;T;
@;0@@@0U;[i I"EXPORT_PREFIX;TI" MakeMakefile::EXPORT_PREFIX;T;
0o;;[ ;
@;0@@@0U;[i I"COMMON_HEADERS;TI"!MakeMakefile::COMMON_HEADERS;T;
0o;;[o; ;[I")Common headers for Ruby C extensions;T;
@;0@@@0U;[i I"COMMON_LIBS;TI"MakeMakefile::COMMON_LIBS;T;
0o;;[o; ;[I"+Common libraries for Ruby C extensions;T;
@;0@@@0U;[i I"COMPILE_RULES;TI" MakeMakefile::COMPILE_RULES;T;
0o;;[o; ;[I"make compile rules;T;
@;0@@@0U;[i I"RULE_SUBST;TI"MakeMakefile::RULE_SUBST;T;
0o;;[ ;
@;0@@@0U;[i I"COMPILE_C;TI"MakeMakefile::COMPILE_C;T;
0o;;[o; ;[I"ACommand which will compile C files in the generated Makefile;T;
@;0@@@0U;[i I"COMPILE_CXX;TI"MakeMakefile::COMPILE_CXX;T;
0o;;[o; ;[I"CCommand which will compile C++ files in the generated Makefile;T;
@;0@@@0U;[i I"ASSEMBLE_C;TI"MakeMakefile::ASSEMBLE_C;T;
0o;;[o; ;[I"XCommand which will translate C files to assembler sources in the generated Makefile;T;
@;0@@@0U;[i I"ASSEMBLE_CXX;TI"MakeMakefile::ASSEMBLE_CXX;T;
0o;;[o; ;[I"ZCommand which will translate C++ files to assembler sources in the generated Makefile;T;
@;0@@@0U;[i I"
TRY_LINK;TI"MakeMakefile::TRY_LINK;T;
0o;;[o; ;[I"LCommand which will compile a program in order to test linking a library;T;
@;0@@@0U;[i I"LINK_SO;TI"MakeMakefile::LINK_SO;T;
0o;;[o; ;[I"-Command which will link a shared library;T;
@;0@@@0U;[i I"LIBPATHFLAG;TI"MakeMakefile::LIBPATHFLAG;T;
0o;;[o; ;[I"9Argument which will add a library path to the linker;T;
@;0@@@0U;[i I"RPATHFLAG;TI"MakeMakefile::RPATHFLAG;T;
0o;;[ ;
@;0@@@0U;[i I"LIBARG;TI"MakeMakefile::LIBARG;T;
0o;;[o; ;[I"4Argument which will add a library to the linker;T;
@;0@@@0U;[i I"MAIN_DOES_NOTHING;TI"$MakeMakefile::MAIN_DOES_NOTHING;T;
0o;;[o; ;[I")A C main function which does no work;T;
@;0@@@0U;[i I"UNIVERSAL_INTS;TI"!MakeMakefile::UNIVERSAL_INTS;T;
0o;;[ ;
@;0@@@0U;[i I"CLEANINGS;TI"MakeMakefile::CLEANINGS;T;
0o;;[o; ;[I"AMakefile rules that will clean the extension build directory;T;
@;0@@@0U;[i I"CONFTEST_CXX;TI"MakeMakefile::CONFTEST_CXX;T;
0o;;[ ;
@;0@@@0U;[i I"TRY_LINK_CXX;TI"MakeMakefile::TRY_LINK_CXX;T;
0o;;[ ;
@;0@@@0[[I"MakeMakefile;To;;[ ;
@;0I"lib/mkmf.rb;T[[I"
class;T[[;
[ [:protected[ [:private[[I"[];T@á[I"[]=;T@á[I"
instance;T[[;
[ [;[ [;[$[I"append_cflags;T@á[I"cc_command;T@á[I"check_signedness;T@á[I"check_sizeof;T@á[I"conftest_source;T@á[I"convertible_int;T@á[I"create_header;T@á[I"create_makefile;T@á[I"depend_rules;T@á[I"dir_config;T@á[I"dummy_makefile;T@á[I"enable_config;T@á[I"find_executable;T@á[I"find_header;T@á[I"find_library;T@á[I"find_type;T@á[I"have_const;T@á[I"have_devel?;T@á[I"have_framework;T@á[I"have_func;T@á[I"have_header;T@á[I"have_library;T@á[I"have_macro;T@á[I"have_struct_member;T@á[I"have_type;T@á[I"
have_var;T@á[I"link_command;T@á[I"pkg_config;T@á[I"try_const;T@á[I"
try_type;T@á[I"with_config;T@á[ [U:RDoc::Context::Section[i 0o;;[ ;
0;0[I"lib/mkmf.rb;T@cRDoc::TopLevel depend_rules-i.ri 0000644 00000000762 15235351300 0010001 0 ustar 00 U:RDoc::AnyMethod[iI"depend_rules:ETI"MakeMakefile#depend_rules;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"OProcesses the data contents of the "depend" file. Each line of this file ;TI"#is expected to be a file name.;To:RDoc::Markup::BlankLine o;
; [I"8Returns the output of findings, in Makefile format.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"
(depend);T@FI"MakeMakefile;TcRDoc::NormalModule00 %5b%5d-c.ri 0000644 00000000353 15235351300 0006167 0 ustar 00 U:RDoc::AnyMethod[iI"[]:ETI"MakeMakefile::[];TT:privateo:RDoc::Markup::Document:@parts[ :
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(name);T@FI"MakeMakefile;TcRDoc::NormalModule00 have_header-i.ri 0000644 00000001341 15235351300 0007555 0 ustar 00 U:RDoc::AnyMethod[iI"have_header:ETI"MakeMakefile#have_header;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"QReturns whether or not the given +header+ file can be found on your system. ;TI"LIf found, a macro is passed as a preprocessor constant to the compiler ;TI"Fusing the header file name, in uppercase, prepended with +HAVE_+.;To:RDoc::Markup::BlankLine o;
; [I"OFor example, if have_header('foo.h') returned true, then the ;TI"E+HAVE_FOO_H+ preprocessor macro would be passed to the compiler.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"-(header, preheaders = nil, opt = "", &b);T@FI"MakeMakefile;TcRDoc::NormalModule00 have_devel%3f-i.ri 0000644 00000000370 15235351300 0007723 0 ustar 00 U:RDoc::AnyMethod[iI"have_devel?:ETI"MakeMakefile#have_devel?;TF:privateo:RDoc::Markup::Document:@parts[ :
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"();T@FI"MakeMakefile;TcRDoc::NormalModule00 find_library-i.ri 0000644 00000001340 15235351300 0007765 0 ustar 00 U:RDoc::AnyMethod[iI"find_library:ETI"MakeMakefile#find_library;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [ I"KReturns whether or not the entry point +func+ can be found within the ;TI"Nlibrary +lib+ in one of the +paths+ specified, where +paths+ is an array ;TI"Pof strings. If +func+ is +nil+ , then the main() function is ;TI"used as the entry point.;To:RDoc::Markup::BlankLine o;
; [I"NIf +lib+ is found, then the path it was found on is added to the list of ;TI"/library paths searched and linked against.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(lib, func, *paths, &b);T@FI"MakeMakefile;TcRDoc::NormalModule00 create_makefile-i.ri 0000644 00000005575 15235351300 0010437 0 ustar 00 U:RDoc::AnyMethod[iI"create_makefile:ETI"!MakeMakefile#create_makefile;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"NGenerates the Makefile for your extension, passing along any options and ;TI"Npreprocessor constants that you may have generated through other methods.;To:RDoc::Markup::BlankLine o;
; [ I"NThe +target+ name should correspond the name of the global function name ;TI"Odefined within your C extension, minus the +Init_+. For example, if your ;TI"LC extension is defined as +Init_foo+, then your target would simply be ;TI""foo".;T@o;
; [ I"NIf any "/" characters are present in the target name, only the last name ;TI"Mis interpreted as the target name, and the rest are considered toplevel ;TI"Pdirectory names, and the generated Makefile will be altered accordingly to ;TI"%follow that directory structure.;T@o;
; [ I"OFor example, if you pass "test/foo" as a target name, your extension will ;TI"Kbe installed under the "test" directory. This means that in order to ;TI"Nload the file within a Ruby program later, that directory structure will ;TI"?have to be followed, e.g. require 'test/foo'.;T@o;
; [
I"OThe +srcprefix+ should be used when your source files are not in the same ;TI"Odirectory as your build script. This will not only eliminate the need for ;TI"Kyou to manually copy the source files into the same directory as your ;TI"Pbuild script, but it also sets the proper +target_prefix+ in the generated ;TI"Makefile.;T@o;
; [I"PSetting the +target_prefix+ will, in turn, install the generated binary in ;TI"Na directory under your RbConfig::CONFIG['sitearchdir'] that ;TI"Imimics your local filesystem when you run make install.;T@o;
; [I"0For example, given the following file tree:;T@o:RDoc::Markup::Verbatim; [ I"
ext/
;TI" extconf.rb
;TI"
test/
;TI" foo.c
;T:@format0o;
; [I""And given the following code:;T@o;; [I")create_makefile('test/foo', 'test')
;T;
0o;
; [I"LThat will set the +target_prefix+ in the generated Makefile to "test". ;TI"OThat, in turn, will create the following file tree when installed via the ;TI"'make install command:;T@o;; [I"+/path/to/ruby/sitearchdir/test/foo.so
;T;
0o;
; [I"NIt is recommended that you use this approach to generate your makefiles, ;TI"Hinstead of copying files around manually, because some third party ;TI"Dlibraries may depend on the +target_prefix+ being set properly.;T@o;
; [I"IThe +srcprefix+ argument can be used to override the default source ;TI"Kdirectory, i.e. the current directory. It is included as part of the ;TI"1+VPATH+ and added to the list of +INCFLAGS+.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below00I" conf;T[ I"(target, srcprefix = nil);T@OFI"MakeMakefile;TcRDoc::NormalModule00 check_signedness-i.ri 0000644 00000002300 15235351300 0010615 0 ustar 00 U:RDoc::AnyMethod[iI"check_signedness:ETI""MakeMakefile#check_signedness;TF:privateo:RDoc::Markup::Document:@parts[
o:RDoc::Markup::Paragraph; [I"MReturns the signedness of the given +type+. You may optionally specify ;TI"6additional +headers+ to search in for the +type+.;To:RDoc::Markup::BlankLine o;
; [
I"JIf the +type+ is found and is a numeric type, a macro is passed as a ;TI"Ppreprocessor constant to the compiler using the +type+ name, in uppercase, ;TI"Oprepended with +SIGNEDNESS_OF_+, followed by the +type+ name, followed by ;TI"M=X where "X" is positive integer if the +type+ is unsigned ;TI"4and a negative integer if the +type+ is signed.;T@o;
; [
I";For example, if +size_t+ is defined as unsigned, then ;TI"Echeck_signedness('size_t') would return +1 and the ;TI"PSIGNEDNESS_OF_SIZE_T=+1 preprocessor macro would be passed to ;TI"Mthe compiler. The SIGNEDNESS_OF_INT=-1 macro would be set ;TI"-for check_signedness('int');T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"*(type, headers = nil, opts = nil, &b);T@FI"MakeMakefile;TcRDoc::NormalModule00 find_header-i.ri 0000644 00000001223 15235351300 0007551 0 ustar 00 U:RDoc::AnyMethod[iI"find_header:ETI"MakeMakefile#find_header;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"KInstructs mkmf to search for the given +header+ in any of the +paths+ ;TI"Fprovided, and returns whether or not it was found in those paths.;To:RDoc::Markup::BlankLine o;
; [I"OIf the header is found then the path it was found on is added to the list ;TI"Dof included directories that are sent to the compiler (via the ;TI"-I switch).;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(header, *paths);T@FI"MakeMakefile;TcRDoc::NormalModule00 have_const-i.ri 0000644 00000002164 15235351300 0007457 0 ustar 00 U:RDoc::AnyMethod[iI"have_const:ETI"MakeMakefile#have_const;TF:privateo:RDoc::Markup::Document:@parts[
o:RDoc::Markup::Paragraph; [I"FReturns whether or not the constant +const+ is defined. You may ;TI"Joptionally pass the +type+ of +const+ as [const, type], ;TI"
such as:;To:RDoc::Markup::BlankLine o:RDoc::Markup::Verbatim; [I"Lhave_const(%w[PTHREAD_MUTEX_INITIALIZER pthread_mutex_t], "pthread.h")
;T:@format0o;
; [I"PYou may also pass additional +headers+ to check against in addition to the ;TI"Ncommon header files, and additional flags to +opt+ which are then passed ;TI"along to the compiler.;T@o;
; [I"LIf found, a macro is passed as a preprocessor constant to the compiler ;TI"Eusing the type name, in uppercase, prepended with +HAVE_CONST_+.;T@o;
; [I"LFor example, if have_const('foo') returned true, then the ;TI"I+HAVE_CONST_FOO+ preprocessor macro would be passed to the compiler.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I")(const, headers = nil, opt = "", &b);T@!FI"MakeMakefile;TcRDoc::NormalModule00 try_type-i.ri 0000644 00000000660 15235351300 0007204 0 ustar 00 U:RDoc::AnyMethod[iI"
try_type:ETI"MakeMakefile#try_type;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I">Returns whether or not the static type +type+ is defined.;To:RDoc::Markup::BlankLine o;
; [I"See also +have_type+;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"((type, headers = nil, opt = "", &b);T@FI"MakeMakefile;TcRDoc::NormalModule00 cc_command-i.ri 0000644 00000000374 15235351300 0007412 0 ustar 00 U:RDoc::AnyMethod[iI"cc_command:ETI"MakeMakefile#cc_command;TF:privateo:RDoc::Markup::Document:@parts[ :
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"
(opt="");T@FI"MakeMakefile;TcRDoc::NormalModule00 pkg_config-i.ri 0000644 00000002545 15235351300 0007437 0 ustar 00 U:RDoc::AnyMethod[iI"pkg_config:ETI"MakeMakefile#pkg_config;TF:privateo:RDoc::Markup::Document:@parts[
o:RDoc::Markup::Paragraph; [I"^Returns compile/link information about an installed library in a tuple of [cflags, ;TI"Wldflags, libs], by using the command found first in the following commands:;To:RDoc::Markup::BlankLine o:RDoc::Markup::List:
@type:NUMBER:@items[o:RDoc::Markup::ListItem:@label0; [o;
; [I"@If --with-{pkg}-config={command} is given via ;TI":command line option: {command} {options};T@o;;0; [o;
; [I"({pkg}-config {options};T@o;;0; [o;
; [I",pkg-config {options} {pkg};T@o;
; [I"cWhere +options+ is the option name without dashes, for instance "cflags" for the ;TI" --cflags flag.;T@o;
; [I"WThe values obtained are appended to $INCFLAGS, $CFLAGS, ;TI"2$LDFLAGS and $libs.;T@o;
; [I"RIf one or more options argument is given, the config command is ;TI"Oinvoked with the options and a stripped output string is returned without ;TI"8modifying any of the global values mentioned above.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(pkg, *options);T@/FI"MakeMakefile;TcRDoc::NormalModule00 dir_config-i.ri 0000644 00000002756 15235351300 0007440 0 ustar 00 U:RDoc::AnyMethod[iI"dir_config:ETI"MakeMakefile#dir_config;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"BSets a +target+ name that the user can then use to configure ;TI"Cvarious "with" options with on the command line by using that ;TI"Fname. For example, if the target is set to "foo", then the user ;TI"7could use the --with-foo-dir=prefix, ;TI"---with-foo-include=dir and ;TI"H--with-foo-lib=dir command line options to tell where ;TI"(to search for header/library files.;To:RDoc::Markup::BlankLine o;
; [ I"AYou may pass along additional parameters to specify default ;TI"Fvalues. If one is given it is taken as default +prefix+, and if ;TI"Etwo are given they are taken as "include" and "lib" defaults in ;TI"that order.;T@o;
; [ I"BIn any case, the return value will be an array of determined ;TI"G"include" and "lib" directories, either of which can be nil if no ;TI"Fcorresponding command line option is given when no default value ;TI"is specified.;T@o;
; [I"HNote that dir_config only adds to the list of places to search for ;TI"Llibraries and include files. It does not link the libraries into your ;TI"application.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below0I"Zdir_config(target)
dir_config(target, prefix)
dir_config(target, idefault, ldefault)
;T0[ I")(target, idefault=nil, ldefault=nil);T@&FI"MakeMakefile;TcRDoc::NormalModule00 convertible_int-i.ri 0000644 00000003145 15235351300 0010514 0 ustar 00 U:RDoc::AnyMethod[iI"convertible_int:ETI"!MakeMakefile#convertible_int;TF:privateo:RDoc::Markup::Document:@parts[
o:RDoc::Markup::Paragraph; [ I"HReturns the convertible integer type of the given +type+. You may ;TI"Joptionally specify additional +headers+ to search in for the +type+. ;TI"L_convertible_ means actually the same type, or typedef'd from the same ;TI"
type.;To:RDoc::Markup::BlankLine o;
; [I"KIf the +type+ is an integer type and the _convertible_ type is found, ;TI"Othe following macros are passed as preprocessor constants to the compiler ;TI")using the +type+ name, in uppercase.;T@o:RDoc::Markup::List:
@type:BULLET:@items[o:RDoc::Markup::ListItem:@label0; [o;
; [I"I+TYPEOF_+, followed by the +type+ name, followed by =X ;TI"4where "X" is the found _convertible_ type name.;To;;0; [o;
; [ I"+TYP2NUM+ and +NUM2TYP+, ;TI"Hwhere +TYP+ is the +type+ name in uppercase with replacing an +_t+ ;TI"Nsuffix with "T", followed by =X where "X" is the macro name ;TI"convertible_int("foobar_t") would return "unsigned long", and ;TI"define these macros:;T@o:RDoc::Markup::Verbatim; [I"+#define TYPEOF_FOOBAR_T unsigned long
;TI"##define FOOBART2NUM ULONG2NUM
;TI""#define NUM2FOOBART NUM2ULONG;T:@format0:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"*(type, headers = nil, opts = nil, &b);T@1FI"MakeMakefile;TcRDoc::NormalModule00 enable_config-i.ri 0000644 00000001551 15235351300 0010100 0 ustar 00 U:RDoc::AnyMethod[iI"enable_config:ETI"MakeMakefile#enable_config;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [ I"@Tests for the presence of an --enable-_config_ or ;TI"P--disable-_config_ option. Returns +true+ if the enable option is ;TI"Jgiven, +false+ if the disable option is given, and the default value ;TI"otherwise.;To:RDoc::Markup::BlankLine o;
; [I"EThis can be useful for adding custom definitions, such as debug ;TI"information.;T@o;
; [I"
Example:;T@o:RDoc::Markup::Verbatim; [I"if enable_config("debug")
;TI"H $defs.push("-DOSSL_DEBUG") unless $defs.include? "-DOSSL_DEBUG"
;TI"end;T:@format0:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below00I"config, default;T[ I"(config, default=nil);T@FI"MakeMakefile;TcRDoc::NormalModule00 have_type-i.ri 0000644 00000001661 15235351300 0007313 0 ustar 00 U:RDoc::AnyMethod[iI"have_type:ETI"MakeMakefile#have_type;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"HReturns whether or not the static type +type+ is defined. You may ;TI"Noptionally pass additional +headers+ to check against in addition to the ;TI"common header files.;To:RDoc::Markup::BlankLine o;
; [I"PYou may also pass additional flags to +opt+ which are then passed along to ;TI"the compiler.;T@o;
; [I"LIf found, a macro is passed as a preprocessor constant to the compiler ;TI"Dusing the type name, in uppercase, prepended with +HAVE_TYPE_+.;T@o;
; [I"KFor example, if have_type('foo') returned true, then the ;TI"H+HAVE_TYPE_FOO+ preprocessor macro would be passed to the compiler.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"((type, headers = nil, opt = "", &b);T@FI"MakeMakefile;TcRDoc::NormalModule00 have_func-i.ri 0000644 00000001756 15235351300 0007272 0 ustar 00 U:RDoc::AnyMethod[iI"have_func:ETI"MakeMakefile#have_func;TF:privateo:RDoc::Markup::Document:@parts[
o:RDoc::Markup::Paragraph; [ I"KReturns whether or not the function +func+ can be found in the common ;TI"Pheader files, or within any +headers+ that you provide. If found, a macro ;TI"Mis passed as a preprocessor constant to the compiler using the function ;TI"0name, in uppercase, prepended with +HAVE_+.;To:RDoc::Markup::BlankLine o;
; [I"ITo check functions in an additional library, you need to check that ;TI"Klibrary first using have_library(). The +func+ shall be ;TI"?either mere function name or function name with arguments.;T@o;
; [I"MFor example, if have_func('foo') returned +true+, then the ;TI"C+HAVE_FOO+ preprocessor macro would be passed to the compiler.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"((func, headers = nil, opt = "", &b);T@FI"MakeMakefile;TcRDoc::NormalModule00 have_library-i.ri 0000644 00000001605 15235351300 0007774 0 ustar 00 U:RDoc::AnyMethod[iI"have_library:ETI"MakeMakefile#have_library;TF:privateo:RDoc::Markup::Document:@parts[
o:RDoc::Markup::Paragraph; [ I"MReturns whether or not the given entry point +func+ can be found within ;TI"P+lib+. If +func+ is +nil+, the main() entry point is used by ;TI"Mdefault. If found, it adds the library to list of libraries to be used ;TI"!when linking your extension.;To:RDoc::Markup::BlankLine o;
; [I"JIf +headers+ are provided, it will include those header files as the ;TI"8header files it looks in when searching for +func+.;T@o;
; [I"AThe real name of the library to be linked can be altered by ;TI"5--with-FOOlib configuration option.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"3(lib, func = nil, headers = nil, opt = "", &b);T@FI"MakeMakefile;TcRDoc::NormalModule00 Logging/cdesc-Logging.ri 0000644 00000000561 15235351300 0011132 0 ustar 00 U:RDoc::NormalModule[iI"Logging:ETI"MakeMakefile::Logging;T0o:RDoc::Markup::Document:@parts[ :
@file0:0@omit_headings_from_table_of_contents_below0[ [ [ [[I"
class;T[[:public[ [:protected[ [:private[ [I"
instance;T[[;[ [;[ [;
[ [ [U:RDoc::Context::Section[i 0o;;[ ; 0;
0[I"lib/mkmf.rb;TI"MakeMakefile;TcRDoc::NormalModule have_var-i.ri 0000644 00000001620 15235351300 0007115 0 ustar 00 U:RDoc::AnyMethod[iI"
have_var:ETI"MakeMakefile#have_var;TF:privateo:RDoc::Markup::Document:@parts[
o:RDoc::Markup::Paragraph; [ I"JReturns whether or not the variable +var+ can be found in the common ;TI"Pheader files, or within any +headers+ that you provide. If found, a macro ;TI"Mis passed as a preprocessor constant to the compiler using the variable ;TI"0name, in uppercase, prepended with +HAVE_+.;To:RDoc::Markup::BlankLine o;
; [I"ITo check variables in an additional library, you need to check that ;TI"5library first using have_library().;T@o;
; [I"JFor example, if have_var('foo') returned true, then the ;TI"C+HAVE_FOO+ preprocessor macro would be passed to the compiler.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"'(var, headers = nil, opt = "", &b);T@FI"MakeMakefile;TcRDoc::NormalModule00 check_sizeof-i.ri 0000644 00000001612 15235351300 0007757 0 ustar 00 U:RDoc::AnyMethod[iI"check_sizeof:ETI"MakeMakefile#check_sizeof;TF:privateo:RDoc::Markup::Document:@parts[
o:RDoc::Markup::Paragraph; [I"GReturns the size of the given +type+. You may optionally specify ;TI"6additional +headers+ to search in for the +type+.;To:RDoc::Markup::BlankLine o;
; [I"LIf found, a macro is passed as a preprocessor constant to the compiler ;TI"Nusing the type name, in uppercase, prepended with +SIZEOF_+, followed by ;TI"Mthe type name, followed by =X where "X" is the actual size.;T@o;
; [I"MFor example, if check_sizeof('mystruct') returned 12, then ;TI"Othe SIZEOF_MYSTRUCT=12 preprocessor macro would be passed to ;TI"the compiler.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I")(type, headers = nil, opts = "", &b);T@FI"MakeMakefile;TcRDoc::NormalModule00 have_framework-i.ri 0000644 00000001652 15235351300 0010327 0 ustar 00 U:RDoc::AnyMethod[iI"have_framework:ETI" MakeMakefile#have_framework;TF:privateo:RDoc::Markup::Document:@parts[
o:RDoc::Markup::Paragraph; [I"OReturns whether or not the given +framework+ can be found on your system. ;TI"LIf found, a macro is passed as a preprocessor constant to the compiler ;TI"Nusing the framework name, in uppercase, prepended with +HAVE_FRAMEWORK_+.;To:RDoc::Markup::BlankLine o;
; [I"MFor example, if have_framework('Ruby') returned true, then ;TI"Ithe +HAVE_FRAMEWORK_RUBY+ preprocessor macro would be passed to the ;TI"compiler.;T@o;
; [I"FIf +fw+ is a pair of the framework name and its header file name ;TI"Fthat header file is checked, instead of the normally used header ;TI"/file which is named same as the framework.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"
(fw, &b);T@FI"MakeMakefile;TcRDoc::NormalModule00 find_type-i.ri 0000644 00000001020 15235351300 0007275 0 ustar 00 U:RDoc::AnyMethod[iI"find_type:ETI"MakeMakefile#find_type;TF:privateo:RDoc::Markup::Document:@parts[
o:RDoc::Markup::Paragraph; [I"5Returns where the static type +type+ is defined.;To:RDoc::Markup::BlankLine o;
; [I"PYou may also pass additional flags to +opt+ which are then passed along to ;TI"the compiler.;T@o;
; [I"See also +have_type+.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(type, opt, *headers, &b);T@FI"MakeMakefile;TcRDoc::NormalModule00 link_command-i.ri 0000644 00000000410 15235351300 0007751 0 ustar 00 U:RDoc::AnyMethod[iI"link_command:ETI"MakeMakefile#link_command;TF:privateo:RDoc::Markup::Document:@parts[ :
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(ldflags, *opts);T@FI"MakeMakefile;TcRDoc::NormalModule00 RbConfig/cdesc-RbConfig.ri 0000644 00000000563 15235351300 0011342 0 ustar 00 U:RDoc::NormalModule[iI"
RbConfig:ETI"MakeMakefile::RbConfig;T0o:RDoc::Markup::Document:@parts[ :
@file0:0@omit_headings_from_table_of_contents_below0[ [ [ [[I"
class;T[[:public[ [:protected[ [:private[ [I"
instance;T[[;[ [;[ [;
[ [ [U:RDoc::Context::Section[i 0o;;[ ; 0;
0[I"lib/mkmf.rb;TI"MakeMakefile;TcRDoc::NormalModule find_executable-i.ri 0000644 00000001353 15235351300 0010446 0 ustar 00 U:RDoc::AnyMethod[iI"find_executable:ETI"!MakeMakefile#find_executable;TF:privateo:RDoc::Markup::Document:@parts[
o:RDoc::Markup::Paragraph; [I"LSearches for the executable +bin+ on +path+. The default path is your ;TI"K+PATH+ environment variable. If that isn't defined, it will resort to ;TI";searching /usr/local/bin, /usr/ucb, /usr/bin and /bin.;To:RDoc::Markup::BlankLine o;
; [I"OIf found, it will return the full path, including the executable name, of ;TI"where it was found.;T@o;
; [I"KNote that this method does not actually affect the generated Makefile.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(bin, path = nil);T@FI"MakeMakefile;TcRDoc::NormalModule00 create_header-i.ri 0000644 00000002372 15235351300 0010102 0 ustar 00 U:RDoc::AnyMethod[iI"create_header:ETI"MakeMakefile#create_header;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [ I"IGenerates a header file consisting of the various macro definitions ;TI"Mgenerated by other methods such as have_func and have_header. These are ;TI"Nthen wrapped in a custom #ifndef based on the +header+ file ;TI")name, which defaults to "extconf.h".;To:RDoc::Markup::BlankLine o;
; [I"For example:;T@o:RDoc::Markup::Verbatim; [I"# extconf.rb
;TI"require 'mkmf'
;TI"have_func('realpath')
;TI" have_header('sys/utime.h')
;TI"create_header
;TI"create_makefile('foo')
;T:@format0o;
; [I"BThe above script would generate the following extconf.h file:;T@o;; [
I"#ifndef EXTCONF_H
;TI"#define EXTCONF_H
;TI"#define HAVE_REALPATH 1
;TI" #define HAVE_SYS_UTIME_H 1
;TI"#endif
;T;
0o;
; [I"OGiven that the create_header method generates a file based on definitions ;TI"Nset earlier in your extconf.rb file, you will probably want to make this ;TI"5one of the last methods you call in your script.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"(header = "extconf.h");T@,FI"MakeMakefile;TcRDoc::NormalModule00 have_struct_member-i.ri 0000644 00000002117 15235351300 0011202 0 ustar 00 U:RDoc::AnyMethod[iI"have_struct_member:ETI"$MakeMakefile#have_struct_member;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [ I"MReturns whether or not the struct of type +type+ contains +member+. If ;TI"Mit does not, or the struct type can't be found, then false is returned. ;TI"NYou may optionally specify additional +headers+ in which to look for the ;TI"5struct (in addition to the common header files).;To:RDoc::Markup::BlankLine o;
; [I"LIf found, a macro is passed as a preprocessor constant to the compiler ;TI"Kusing the type name and the member name, in uppercase, prepended with ;TI"
+HAVE_+.;T@o;
; [I"JFor example, if have_struct_member('struct foo', 'bar') ;TI"Oreturned true, then the +HAVE_STRUCT_FOO_BAR+ preprocessor macro would be ;TI"passed to the compiler.;T@o;
; [I">+HAVE_ST_BAR+ is also defined for backward compatibility.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"0(type, member, headers = nil, opt = "", &b);T@FI"MakeMakefile;TcRDoc::NormalModule00 dummy_makefile-i.ri 0000644 00000000502 15235351300 0010310 0 ustar 00 U:RDoc::AnyMethod[iI"dummy_makefile:ETI" MakeMakefile#dummy_makefile;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"Creates a stub Makefile.;T:
@fileI"lib/mkmf.rb;T:0@omit_headings_from_table_of_contents_below000[ I"
(srcdir);T@FI"MakeMakefile;TcRDoc::NormalModule00 try_const-i.ri 0000644 00000000662 15235351300 0007353 0 ustar 00 U:RDoc::AnyMethod[iI"try_const:ETI"MakeMakefile#try_const;TF:privateo:RDoc::Markup::Document:@parts[o:RDoc::Markup::Paragraph; [I"