A pull request based on an old commit may rewind too many files,
even if unnecessary. As rewinding some files, e.g., common header
files, configure.ac, will result in full-rebuild, rebase in a
separate directory to get rid of such rewind.
`make update-src` shows latest commit hash for convinience.
However, `rev-parse --short` option shows different length
(maybe) between git versions. This fix force 10 chars
with `--short=10`.
* common.mk, defs/gmake.mk: rid of unicode normalization tables
timestamp. update the target tables file only when only it
exists.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@67438 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Add `clean-srcs` target to clean sources in the build directory,
and `realclean-srcs` target to clean autogenerated sources in the
source directory. Also `realclean-srcs-extra` target to clean
sources which are generatable but need to install extra commands,
in addition.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65947 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Since `.revision.time` recipe needs `$(BASERUBY)`, it should not
try to get updated unconditionally, or tarballs fail to build on
environments where BASERUBY is not available.
All developers who build frequently use GNU make anyway, don't
you?
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65695 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
by making .revision.time PHONY. Prior to this commit, RUBY_DESCRIPTION
has been updated only when version.h (or tool/file2lastrev.rb) is updated.
.revision.time (REVISION_H) target internally has IFCHANGE to update
revision.h. So it doesn't touch revision.h when it's not updated,
and thus it's safe to run every time.
defs/gmake.mk: drop obsoleted reference to REVISION_FORCE
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65692 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* bin/*, lib/bundler/*, lib/bundler.rb, spec/bundler, man/*:
Merge from latest stable branch of bundler/bundler repository and
added workaround patches. I will backport them into upstream.
* common.mk, defs/gmake.mk: Added `test-bundler` task for test suite
of bundler.
* tool/sync_default_gems.rb: Added sync task for bundler.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@65509 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (commit): pass CONFIGURE and fix dependency of
`reconfig` target, not to try to make config.status newer than
the source directory. and remove configure_args in common.mk,
which is a garbage argument.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@64257 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk (MJIT_HEADER, MJIT_MIN_HEADER): added hook to separate
intermediate headers per archs.
* defs/gmake.mk: build mjit headers per -arch options, and then
merge the headers with `#ifdef`s.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@62245 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (commit): update source files under the sources
directory after commit.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61703 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
I faced a big issue about Bundler with ruby core.
I have no time to resolve it issue before 2.5 final release.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61416 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (ORDERED_TEST_TARGETS): order test-bundler too to
get rid of mixing outputs.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59985 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (extract-gems): should wait for update-gems to
finish when doing both.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@59350 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (TEST_DEPENDS): check and more tests targets need
all to be built.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58762 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (TEST_DEPENDS): remove targets expanded as
TEST_TARGETS, to get rid of circular dependencies.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57695 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (mflags): override the definition in common.mk
without -jN option.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57635 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (gnumake_recursive): do not invoke tests if -n
option is given.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57612 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk (mflags): pass make flags to sub-makes, for nmake
which cannot pass them by the environment variable.
* defs/gmake.mk (mflags): filter out -j option for sub-makes.
* template/exts.mk.tmpl (MFLAGS): extract MFLAGS from sub extmk
files for nmake.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@57594 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (sudo-precheck): test the test-framework before
installation by love.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55760 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (test-almost): depends on install when making
love.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (missing/des_tables.c): move the recipe from
common.mk. this is less common.
* missing/crypt.c (init_des): if des_tables.c is empty, initialize
DES tables at runtime.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@55274 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (yes-test-basic): update the target name and the
order of tests. [Feature #11982]
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@53540 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk (showflags): do not show flags from recursive make.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52221 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk (check): separate test-testframework from test-all
only when building check.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52096 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* common.mk (test-almost): rename target to test other than
test-frameworks.
* defs/gmake.mk (test-almost): run after test-testframework.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@52022 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (TEST_DEPENDS): make docs only when checking, but
not only btest and test.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@51734 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (TEST_DEPENDS): all check targets need the main,
programs and extensions have been built.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50156 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (CHECK_TARGETS): goals depending on test and
test-all.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@50147 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* ext/extmk.rb: use -C option for GNU make instead of shell.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@46664 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (XCFLAGS): remove _FORTIFY_SOURCE if optimization is
disabled as it requires compiling with optimization.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@45402 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (test-all, test-ruby): depends on test-knownbug if
check is given or with test-knownbug.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39964 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
* defs/gmake.mk (test-all): no needs to depend on test-knownbug
always. it is included in TEST_TARGETS if it is given.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@39957 b2dd03c8-39d4-4d8f-98ff-823fe69b080e