summaryrefslogtreecommitdiff
path: root/lib/mkmf.rb
Commit message (Collapse)AuthorAgeFilesLines
* Added link_command for C++Nobuyoshi Nakada2019-09-191-0/+10
|
* Separate @have_devel for C++Nobuyoshi Nakada2019-09-191-0/+8
|
* Look up the language moduleNobuyoshi Nakada2019-09-191-1/+11
| | | | | | 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.
* Removed MakeMakefile::CNobuyoshi Nakada2019-09-181-2/+0
| | | | It is exposed to the topleven namespace via included MakeMakefile.
* Removed a debug print [ci skip]Nobuyoshi Nakada2019-09-181-2/+0
|
* [EXPERIMENTAL] MakeMakefile::CXX for C++Nobuyoshi Nakada2019-09-181-7/+40
|
* Make pkg_config in mkmf include -I cflags in return valueJeremy Evans2019-07-231-4/+4
| | | | | | | | | | | 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]
* Suppress paranoid warnings for external/3rd-party librariesNobuyoshi Nakada2019-05-231-1/+1
| | | | [Feature #15665]
* Configure directories for headers and libraries automaticallyNobuyoshi Nakada2019-05-081-1/+11
| | | | [EXPERIMENTAL]
* Removed moving toplevel header since r12501nobu2019-02-081-1/+0
| | | | | | | 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
* Use delete_prefix instead of `sub(/\Afixed-pattern/, '')`kazu2018-12-041-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@66189 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Clear CC_WRAPPER in other than the toplevelnobu2018-11-071-0/+4
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65611 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Do not :stopdoc: entire classes/modulesnobu2018-10-261-2/+8
| | | | | | | | 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
* mkmf.rb: set cppflagsngoto2018-05-111-0/+1
| | | | | | | | | | * 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
* Improve mkmf error messagenobu2018-04-021-1/+6
| | | | | | | * 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
* mkmf.rb: werror on mswinnobu2018-01-241-0/+1
| | | | | | | | * 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
* mkmf.rb: ignore linker warningsnobu2018-01-221-1/+1
| | | | | | | * 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
* int (*)(void) is incompatible with void*shyouhei2018-01-021-1/+2
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61544 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bccwin is no longer supportedusa2017-12-111-1/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61108 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* depend on win32.h on Windowsusa2017-12-111-1/+4
| | | | | | | * lib/mkmf.rb (depend_rules): all objs should depend on win32.h on Windows. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61107 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: get rid of error messagesnobu2017-02-271-1/+1
| | | | | | | | * lib/mkmf.rb (create_makefile): add TARGET_SO to CLEANLIBS only when the extension library will be build, to get rid of trying to remove $(TARGET_SO_DIR). git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57727 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: clean generated filesnobu2017-02-271-6/+9
| | | | | | | * lib/mkmf.rb (try_link0): remove generated files other than the executable file. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57723 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Makefile.in: verify-static-librarynobu2017-02-271-2/+2
| | | | | | | | | | | | | * Makefile.in (verify-static-library): separate from LIBRUBY_A. no check every times by default. * lib/mkmf.rb (try_link): remove debugging symbol directory after linking, instead of try_do. * lib/mkmf.rb (try_link): bccwin32 support has been removed long ago. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57722 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: message format stringnobu2017-01-311-3/+3
| | | | | | * lib/mkmf.rb (checking_for): message needs format string. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57480 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: fix script installationnobu2017-01-281-1/+1
| | | | | | | * lib/mkmf.rb (MakeMakefile): fix condition to install script files. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57446 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* fid typos [ci skip]nobu2016-09-241-1/+1
| | | | | | * fix typos, "a" before "Integer" to "an". [Fix GH-1438] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56225 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: fix for bundled gemsnobu2016-09-181-2/+2
| | | | | | | | | * lib/mkmf.rb (install_dirs): enable extout in RUBYARCHDIR only when extmk. * lib/mkmf.rb (create_makefile): ditto for TIMESTAMP_DIR. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56180 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* extmk.rb: fix conflict of timestamp filesnobu2016-09-011-1/+1
| | | | | | | | * ext/extmk.rb (timestamp_file): move extmk.rb specific tricks from lib/mkmf.rb. keep RUBYCOMMONDIR prefix not to conflict with a timestamp file in the toplevel. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56057 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: architecture timestamp directoriesnobu2016-09-011-2/+3
| | | | | | | | | * lib/mkmf.rb (timestamp_file): substitute TARGET_SO_DIR with RUBYARCHDIR seprately from other normal paths, to make timestamp files for architecture dependent directories separately. and remove RUBYCOMMONDIR prefix. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56056 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: fix up r56053nobu2016-09-011-1/+1
| | | | | | | * lib/mkmf.rb (timestamp_file): TARGET_SO_DIR is defaulted to RUBYARCHDIR but different for each extension libraries. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56054 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* extmk.rb: hacks for bundled gemsnobu2016-09-011-11/+11
| | | | | | | | * ext/extmk.rb (gems): move dirty hacks for bundled gems from mkmf.rb. * lib/mkmf.rb (create_makefile): yield all configuration strings. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56053 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* no Borland make [ci skip]nobu2016-09-011-10/+0
| | | | | | | | | * ext/extmk.rb: remove Borland make support. Borland C++ has not been supported since years ago. * lib/mkmf.rb: ditto. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56051 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: fix up r56047nobu2016-08-311-1/+1
| | | | | | | * lib/mkmf.rb (create_makefile): install to $(RUBYARCHDIR) other than bundled extension libraries. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56050 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: fix up r56047nobu2016-08-311-1/+1
| | | | | | | * lib/mkmf.rb (create_makefile): TARGET_SO_DIR should not be the root directory when sodir is empty. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56049 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: TARGET_SO_DIRnobu2016-08-311-4/+8
| | | | | | | | | * ext/extmk.rb: move TARGET_SO_DIR stuffs to mkmf.rb. * lib/mkmf.rb (create_makefile): create target shared object files under $(TARGET_SO_DIR) which is $sodir if it is defined with $extout. [ruby-core:77058] [Bug #12681] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56047 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: separate timestamp filesnobu2016-08-311-8/+9
| | | | | | | * lib/mkmf.rb (timestamp_file): separate timestamp files for each architectures. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@56046 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: use TARGET_SOnobu2016-08-171-5/+4
| | | | | | * lib/mkmf.rb (create_makefile): use TARGET_SO consistently. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55949 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * configure.in, lib/mkmf.rb, win32/Makefile.sub (CSRCFLAG): make theusa2016-07-111-2/+4
| | | | | | | | | | | | compiler option replacable in Makefile. * win32/Makefile.sub (OUTFLAG, COUTFLAG): ditto. * win32/Makeile.sub, win32/setup.mak (CC): should not append `-nologo` option forcely. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55638 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Local header dependenciesnobu2016-07-061-0/+4
| | | | | | | | | | | * lib/mkmf.rb (create_makefile): store $headers in LOCAL_HDRS for depend files. * ext/digest/digest_conf.rb (digest_conf): add implementation specific headers to $header. * ext/digest/{md5,rmd160,sha1,sha2}/depend: add LOCAL_HDRS to the dependencies. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55588 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: sort lists of source and object filesnobu2016-06-031-3/+7
| | | | | | | | | | | | | | * lib/mkmf.rb (create_makefile): sort lists of source and object files in generated Makefile, unless given by extconf.rb. [Fix GH-1367] Without sorting the list of object files explicitely, its order is indeterministic, because readdir() is also not deterministic. When the list of object files varies between builds, they are linked in a different order, which results in an unreproducible build. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55265 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* lib/mkmf.rb: use xsystem to pkg-config --existsnobu2016-05-141-1/+1
| | | | | | | | * lib/mkmf.rb (pkg_config): use xsystem consistently to set up library path environment variable as well as latter pkg-config calls. [ruby-dev:49619] [Bug #12379] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54999 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: fix conflict in have_librarynobu2016-05-111-5/+8
| | | | | | | * lib/mkmf.rb (try_func): get rid of conflict of declarations of main(). checking local symbol reference does not make sense. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54982 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf: Unquote directory stringsnobu2016-03-241-0/+1
| | | | | | | | | | * lib/mkmf.rb (find_executable0): On Windows, it is actually valid to surround individual PATH directory entries with double quotes. Remove these before joining the path as otherwise the literal quotes would become part of the path, resulting in the executable not to be found. [Fix GH-1305] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@54255 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: Do not modify caller stringsnobu2016-02-141-3/+3
| | | | | | | | * lib/mkmf.rb (with_{cpp,c,ld}flags): copy caller strings not to be modified, in append_{cpp,c,ld}flags respectively. [Fix GH-1246] git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53821 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* * configure.in: improve ICC (Intel C Compiler) support.naruse2016-01-171-0/+3
| | | | | | | | | | | | | | | | * configure.in (CXX): The name of icc's c++ compiler is `icpc`. * configure.in (warnings): Add `-diag-disable=2259` to suppress noisy warnings: "non-pointer conversion from "..." to "..." may lose significant bits". * configure.in (optflags): Add `-fp-model precise` like -fno-fast-math. * lib/mkmf.rb: icc supports -Werror=division-by-zero and -Werror=deprecated-declarations, but doesn't support -Wdivision-by-zero and -Wdeprecated-declarations. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53566 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Additional fix of r53450naruse2016-01-071-1/+1
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53451 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: fix for ODE makenobu2016-01-071-1/+1
| | | | | | | | | * lib/mkmf.rb (create_makefile): get rid of placing @ at the beginning of replacement, which is the loop expansion mechanism from the OSF Development Environment (ODE) make. fix failures with bmake by r53448. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53450 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* mkmf.rb: library installation messagesnobu2016-01-071-6/+15
| | | | | | | | * lib/mkmf.rb (configuration, dummy_makefile, create_makefile): show library installation messages only when any files need to be updated. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53448 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* remove duplicated frozen_string_literal magic commentnaruse2015-12-161-1/+0
| | | | git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53151 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* Add frozen_string_literal: false for all filesnaruse2015-12-161-0/+1
| | | | | | When you change this to true, you may need to add more tests. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53141 b2dd03c8-39d4-4d8f-98ff-823fe69b080e