summaryrefslogtreecommitdiff
path: root/lib/mkmf.rb
AgeCommit message (Collapse)Author
2022-05-12mkmf: Add a configure option to set verbose mode (V=1 or 0) in mkmf.rb.Jun Aruga
Note this change is only for `configure.ac`, not for Windows using `win32/configure.bat`. ``` $ ./configure --help | grep mkmf --enable-mkmf-verbose enable verbose in mkmf ``` Run the following command to enable the mkmf verbose mode. ``` $ ./configure --enable-mkmf-verbose $ grep MKMF_VERBOSE config.status S["MKMF_VERBOSE"]="1" ``` In this mkmf verbose mode, when compiling a native extension, the `rake compile` prints the compiling commands such as "gcc -I. <...> path/to/file" instead of "compiling path/to/file". ``` $ git clone https://github.com/deivid-rodriguez/byebug.git $ cd byebug $ bundle install --standalone $ bundle exec rake compile ... gcc -I. <...> path/to/file ... ``` Notes: Merged: https://github.com/ruby/ruby/pull/5879
2022-04-26Use compiled instead of compliedKaíque Kandy Koga
Capitalize creates Notes: Merged: https://github.com/ruby/ruby/pull/5848
2022-04-23Remove unnecessary sortKazuhiro NISHIYAMA
Because `Dir.[]` returns the sorted results since Ruby 3.0. Notes: Merged: https://github.com/ruby/ruby/pull/5832
2022-04-05Document MakeMakefile#append_cflagsAlan Wu
This method is at least 7 years old and is widely used in the wild. Since we need to support it, let's document it to make it discoverable. Add docs and move it out of the `# :stopdoc:` zone. Notes: Merged: https://github.com/ruby/ruby/pull/5760
2022-03-20[DOC] make internally used classes/methods nodocNobuyoshi Nakada
Empty class documents are generated even with `:stopdoc:`.
2022-03-17Make implicit function declaration error [Feature #18615]Nobuyoshi Nakada
Enable `-Werror=implicit-function-declaration` by default for building C extensions for early failures.
2022-01-29mkmf: unify duplicate code in pkg_configNobuyoshi Nakada
2022-01-29mkmf: pkg_config accepts multiple optionsMike Dalessio
Notes: Merged: https://github.com/ruby/ruby/pull/5436
2021-12-10Prefer flat_mapNobuyoshi Nakada
2021-11-26mkmf: take `PKG_CONFIG_PATH` from `dir_config` library pathNobuyoshi Nakada
So that version dependent pkg-config files can override files in the default locations. Notes: Merged: https://github.com/ruby/ruby/pull/5182
2021-11-26mkmf: deal with environment variables in MakeMakefile#xpopenNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/5182
2021-11-26mkmf: MakeMakefile#xpopen may be passed an option hashNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/5182
2021-10-15Make explicit opening filesNobuyoshi Nakada
2021-10-03Revert "mkmf.rb: try linking at try_var" [Bug #18235]Nobuyoshi Nakada
This reverts commit 524513be399e81bb170ec88aa0d501f33cbde8c3, which can return false positive by existing but unusable symbol, including functions.
2021-09-02Get rid of incompatible-pointer-types-discards-qualifiers warningNobuyoshi Nakada
2021-07-08mkmf.rb: try linking at try_varNobuyoshi Nakada
To check for variables accessible but not declared.
2021-07-03Library arguments to VC are bare file namesNobuyoshi Nakada
2021-07-03Use $ignore_error defined in mkmf.rbNobuyoshi Nakada
2021-06-24Remove also debug symbol directory at clean on macOSNobuyoshi Nakada
2021-06-24Prefer configured command as RM_RFNobuyoshi Nakada
2021-04-11mkmf.rb: convert also arch_hdrdir [Bug #16651]Nobuyoshi Nakada
2021-03-30mkmf: fixed install directories of header files in extension libraries [Bug ↵Nobuyoshi Nakada
#17761] When installing an extension library which provides a header, that header should be installed under site_ruby (or vendor_ruby when "--vendor" option was given to extconf.rb). However, currently this file is about to be installed in the core include directory. Notes: Merged: https://github.com/ruby/ruby/pull/4339 Merged-By: nobu <nobu@ruby-lang.org>
2021-02-20MSys is a variant of CygwinNobuyoshi Nakada
2021-01-19Replace "iff" with "if and only if"Gannon McGibbon
iff means if and only if, but readers without that knowledge might assume this to be a spelling mistake. To me, this seems like exclusionary language that is unnecessary. Simply using "if and only if" instead should suffice. Notes: Merged: https://github.com/ruby/ruby/pull/4035
2021-01-14mkmf.rb: remove exts.mk at distcleanNobuyoshi Nakada
2021-01-02mkmf.rb: always try_compile as try_headerNobuyoshi Nakada
Get rid of "present but cannot be compiled" headers, on some multi-architecture platforms.
2020-12-29transcode-tblgen.rb: make silent a little when just -vNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/4011
2020-10-27Separate `send` into `public_send` and `__send__`Nobuyoshi Nakada
2020-07-13Make the mkmf methods private in the global [Bug #16896]Nobuyoshi Nakada
2020-04-05Added tooldir variableNobuyoshi Nakada
Notes: Merged: https://github.com/ruby/ruby/pull/3003
2020-03-08Specify explicit separator not to be affected by $;Nobuyoshi Nakada
2019-09-19Added link_command for C++Nobuyoshi Nakada
2019-09-19Separate @have_devel for C++Nobuyoshi Nakada
2019-09-19Look up the language moduleNobuyoshi Nakada
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.
2019-09-18Removed MakeMakefile::CNobuyoshi Nakada
It is exposed to the topleven namespace via included MakeMakefile.
2019-09-18Removed a debug print [ci skip]Nobuyoshi Nakada
2019-09-18[EXPERIMENTAL] MakeMakefile::CXX for C++Nobuyoshi Nakada
2019-07-23Make pkg_config in mkmf include -I cflags in return valueJeremy Evans
This was the historical behavior, it was modified unintentionally by 097c3e9cbbf23718371f08c24b2d2297b039f63f, which started storing these flags in a different global variable. Also, include the incflags when logging, and document that the method modifies $INCFLAGS. Fixes [Bug #10651]
2019-05-23Suppress paranoid warnings for external/3rd-party librariesNobuyoshi Nakada
[Feature #15665]
2019-05-08Configure directories for headers and libraries automaticallyNobuyoshi Nakada
[EXPERIMENTAL]
2019-02-08Removed moving toplevel header since r12501nobu
Moving public headers was 12-years ago, no depend files would expect ruby.h in the top source directory now. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67033 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-12-04Use delete_prefix instead of `sub(/\Afixed-pattern/, '')`kazu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66189 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-11-07Clear CC_WRAPPER in other than the toplevelnobu
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65611 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-10-26Do not :stopdoc: entire classes/modulesnobu
It disables cross-references to the classes/modules, even if those are defined in other places. I suspect this is not an intentional behavior, however make a workaround for the time being. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65380 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-05-11mkmf.rb: set cppflagsngoto
* ext/mkmf.rb (configuration): set the default cppflags, which is referred from the default CPPFLAGS, for extension libraries. This fixes build failure of ext/zlib on Solaris 10. [Bug #14746] [ruby-dev:50539] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63398 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-04-02Improve mkmf error messagenobu
* lib/mkmf.rb: Improve the error message when ruby.h is missing, to suggest installing separate packages. [Feature #14656] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@63061 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-01-24mkmf.rb: werror on mswinnobu
* lib/mkmf.rb (MakeMakefile#try_ldflags): enable warning checking on mswin, link.exe warns -l options but does not fail. [Bug #13069] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62024 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-01-22mkmf.rb: ignore linker warningsnobu
* lib/mkmf.rb (try_ldflags): ignore linker warnings. they cause unexpected failures on OpenBSD. [ruby-core:78827] [Bug #13069] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62007 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2018-01-02int (*)(void) is incompatible with void*shyouhei
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
2017-12-11bccwin is no longer supportedusa
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61108 b2dd03c8-39d4-4d8f-98ff-823fe69b080e