Граф коммитов

309 Коммитов

Автор SHA1 Сообщение Дата
卜部昌平 21b3bc10d3 DEPRECATED_TYPE: is deprecated
Nobody uses this macro any longer.
2020-08-27 15:02:52 +09:00
卜部昌平 5af983af4f template/prelude.c.tmpl: suppress clang-12 warning
Clang 12 warns "suspicious concatenation of string literals in an array
initialization", which is rather annoying than useful in this context.
2020-08-11 16:51:07 +09:00
卜部昌平 acd8ee8dbc tool/prelude.c.tmpl: use RubyVM::CEscape
Do not repeat yourself.
2020-08-11 16:51:07 +09:00
Nobuyoshi Nakada ec9a9aaa51
Ignore configurations in un-built extension libraries
Exclude linker flags for external libraries used by no longer
built extension libraries when static-linked-ext.
2020-06-23 00:25:36 +09:00
Nobuyoshi Nakada f3e081c6b6
Build configured extension libraries only
Consider the libraries, which remain exts.mk but not listed in
ext/configure-ext.mk, removed.
2020-06-19 15:35:14 +09:00
Nobuyoshi Nakada aa21a775a6
Configure only directories having extconf.rb 2020-06-19 15:13:59 +09:00
Nobuyoshi Nakada 1e7c0ccb0d
Now bundled gems are extracted under .bundle/gems 2020-06-19 14:02:46 +09:00
Nobuyoshi Nakada 0d38a51ec4
Clean exts.mk under each extension library 2020-06-19 12:07:19 +09:00
Nobuyoshi Nakada 1f1b62fb7b
Added install-dbg
Scripts to run the interpreter via debugger.
2020-06-13 08:22:06 +09:00
Nobuyoshi Nakada 0c00a4176b
Hash marks in Makefile need to be escaped [Bug #16935] 2020-06-06 16:46:05 +09:00
Nobuyoshi Nakada 1c4eb70654
Build auxiliary program files early 2020-05-12 23:19:20 +09:00
Nobuyoshi Nakada dd830fab69
Fixed a typo 2020-05-10 18:40:47 +09:00
Nobuyoshi Nakada 42e8de8db9
Fix for cross_compiling
`RubyVM.each_builtin` is not defined when cross compiling.
2020-05-10 17:28:03 +09:00
卜部昌平 4fca592e8c delete mk_builtin_binary.rb
To generate what is necessary via generic_erb.rb instead.
2020-05-10 16:51:10 +09:00
卜部昌平 191cfcc407 delete mk_call_iseq_optimized.rb
To generate what is necessary via generic_erb.rb instead.
2020-05-10 16:51:10 +09:00
卜部昌平 9e6e39c351
Merge pull request #2991 from shyouhei/ruby.h
Split ruby.h
2020-04-08 13:28:13 +09:00
Nobuyoshi Nakada df275179bd
Revert "Moved aclocal.m4 to macro directory"
This reverts commit 4a6571dbc1,
because chkbuild does not follow.
2020-04-05 11:53:07 +09:00
Nobuyoshi Nakada 4a6571dbc1 Moved aclocal.m4 to macro directory 2020-04-05 09:26:57 +09:00
Nobuyoshi Nakada 21d0b40de2 Added tooldir variable 2020-04-05 09:26:57 +09:00
Nobuyoshi Nakada 03ca90c732
Share download cache with bundler 2020-03-31 17:36:52 +09:00
Takashi Kokubun 5b3157a511
Make file names and variable names consistent 2020-03-23 22:33:01 -07:00
Nobuyoshi Nakada 6ab3664635
Moved MJIT_WITHOUT_TABS default to configure.ac
And then the environment variable.
2020-03-24 13:46:00 +09:00
Nobuyoshi Nakada 88f4ebac83
Update and extract for each gem 2020-03-13 15:34:50 +09:00
卜部昌平 3b69552a5c add predefined macros for Doxygen
Predefined macros are practices not very well recommended, but can be
better than having no documents at all.  Without those predefined
macros, Doxygen confused for instace PUREFUNC(int foo()) to be a
declaration of PUREFUNC, not foo.
2020-02-06 11:46:51 +09:00
Jeremy Evans 9f99760daf
Get rid of use of special variables
Use `"\n"` and `IO#fileno` instead of `$/` and `$.` respectively.
[Feature #14240]
2020-01-20 16:58:58 +09:00
Nobuyoshi Nakada 93a51c15d9
Update clean-local [ci skip]
* Remove builtin_binary.inc which is generated for each time
  miniruby is built.

* dSYM is a directory, not a file.
2020-01-18 16:47:53 +09:00
卜部昌平 5e22f873ed decouple internal.h headers
Saves comitters' daily life by avoid #include-ing everything from
internal.h to make each file do so instead.  This would significantly
speed up incremental builds.

We take the following inclusion order in this changeset:

1.  "ruby/config.h", where _GNU_SOURCE is defined (must be the very
    first thing among everything).
2.  RUBY_EXTCONF_H if any.
3.  Standard C headers, sorted alphabetically.
4.  Other system headers, maybe guarded by #ifdef
5.  Everything else, sorted alphabetically.

Exceptions are those win32-related headers, which tend not be self-
containing (headers have inclusion order dependencies).
2019-12-26 20:45:12 +09:00
Koichi Sasada 9c2807b2df remove prelude.c
prelude.c is an automatically generated file by template/prelude.c.tmpl.
However it does not contain any required functions. So remove it from
dependency.

Also miniprelude.c is included by mini_builtin.c and does not need
to make miniprelude.o.
2019-12-11 11:24:42 +09:00
Koichi Sasada 2c5c60754c use compiled binary for gem_prelude.rb.
`gem_prelude.rb` is not compiled yet. This patch compile it to
compiled binary.
2019-12-11 11:24:42 +09:00
Koichi Sasada 9c1abe2a6c load prelude.rb by builtin features.
The script in prelude.rb was embed in MRI to load it (eval this
script at everyboot).
This commit change the loading process of prelude.rb. MRI doesn't
eval a script, but load from compiled binary with builtin feature.

So that Init_prelude() does not load `prelude.rb` now.
2019-11-15 03:55:46 +09:00
Dylan Thacker-Smith 7913daf36c Add missing Makefile dependencies for the tool/insns2vm.rb script 2019-11-13 15:36:58 +09:00
Nobuyoshi Nakada faa4f4f23f
Get rid of FreeBSD make incompatibility [Bug #16331]
FreeBSD make works differently with `-j` option.

> -j	max_jobs
> 	Specify the maximum number of jobs that `make` may have running
>	at any one time.  The value is saved in `.MAKE.JOBS.` Turns
>	compatibility mode off, unless the `B` flag is also specified.
>	When compatibility mode is off, all commands associated with a
>	target are executed in a single shell invocation as opposed to
>	the traditional one shell invocation per line.  This can break
>	traditional scripts which change directories on each command
>	invocation and then expect to start with a fresh environment on
>	the next line.  It is more efficient to correct the scripts
>	rather than turn backwards compatibility on.

Stop using exit, cd, exec in middle of commands.
2019-11-10 09:26:19 +09:00
Nobuyoshi Nakada dfaac2b372
Embed builtin ruby scripts in miniprelude.c
Instead of reading from the files by the full-path at runtime.  As
rbinc files need to be included in distributed tarballs, the
full-paths at the packaging are unavailable at compilation times.
2019-11-09 19:28:45 +09:00
Nobuyoshi Nakada 4dc4b18904
Fixed commit miss 2019-11-09 19:15:10 +09:00
Nobuyoshi Nakada 95aed94d2a
Fixed `#line` directives in miniprelude.c 2019-11-09 18:45:48 +09:00
Nobuyoshi Nakada 4e8336bae8
Share test-bundled-gems-run in common.mk 2019-11-05 00:05:38 +09:00
Nobuyoshi Nakada 07b5fec008
Clean mjit and timestamp directories 2019-10-28 18:15:12 +09:00
Kazuhiro NISHIYAMA 58e2ca31db
Use `_` instead of `_n_` 2019-10-18 20:24:36 +09:00
Nobuyoshi Nakada e50b8949fa
Suppress numbered parameter warnings 2019-10-18 14:59:26 +09:00
Benoit Daloze a27dc83113 Pass $(XRUBY) to test-bundled-gems.rb since RbConfig.ruby is incorrect for miniruby 2019-09-29 13:57:54 +02:00
Benoit Daloze 4096e4b08c Move the logic to test bundled gems to Ruby code
* Writing shell scripts in a Makefile is very error-prone.
* TEST_BUNDLED_GEMS_ALLOW_FAILURES seemed to not work before.
2019-09-29 13:57:54 +02:00
Nobuyoshi Nakada 8bfc46a9a3
Fixed wrong usage of file2lastrev.rb 2019-09-07 11:59:19 +09:00
卜部昌平 a569bc09e2 add include/ruby/backward/cxxanyargs.hpp
Compilation of extension libraries written in C++ are reportedly
broken due to https://github.com/ruby/ruby/pull/2404

The root cause of this issue was that the definition of ANYARGS
differ between C and C++, and that of C++ is incompatible with the
updated ones.

We are using the incompatibility against itself.  In C++ two distinct
function prototypes can be overloaded.  We provide the old, ANYARGSed
prototypes in addition to the current granular ones; and let the
older ones warn about types.
2019-09-06 15:50:58 +09:00
Nobuyoshi Nakada 2614653622
Moved INCFLAGS to XCFLAGS from CPPFLAGS as well as mswin
Rules which have used CPPFLAGS will need XCFLAGS or INCFLAGS now.
2019-08-26 16:54:10 +09:00
卜部昌平 48131a4673 rb_mjit_header.h is not worth documenting [ci skip]
This is an auto-generated header file that does not include anything
interesting.  Should skip generating CAPI documents.
2019-08-26 13:01:58 +09:00
Nobuyoshi Nakada 5108a5dd7f
test-bundled-gems-run: Respect -k option 2019-07-24 12:13:07 +09:00
Nobuyoshi Nakada a39f218f22
Reduced duplicate commands in test-bundled-gems-run 2019-07-24 11:56:17 +09:00
Samuel Williams 7291fef55c
Improve build process and coroutine implementation selection. 2019-07-18 20:54:54 +12:00
Nobuyoshi Nakada dcb8c41a1e
Added depend files 2019-07-14 01:31:29 +09:00
Nobuyoshi Nakada f28450c118
Substitue suffixes with dot 2019-07-01 21:31:18 +09:00