зеркало из https://github.com/github/ruby.git
* common.mk: dependencies updated.
* tool/update-deps: new file to assist update dependencies in common.mk. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@32157 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
Родитель
e7996eb3cc
Коммит
c6575865aa
|
@ -1,3 +1,10 @@
|
|||
Sat Jun 18 08:12:54 2011 Tanaka Akira <akr@fsij.org>
|
||||
|
||||
* common.mk: dependencies updated.
|
||||
|
||||
* tool/update-deps: new file to assist update dependencies in
|
||||
common.mk.
|
||||
|
||||
Sat Jun 18 07:27:27 2011 Tanaka Akira <akr@fsij.org>
|
||||
|
||||
* internal.h: declare internal functions here.
|
||||
|
|
126
common.mk
126
common.mk
|
@ -580,78 +580,93 @@ RUBY_H_INCLUDES = {$(VPATH)}ruby.h {$(VPATH)}config.h {$(VPATH)}defines.h \
|
|||
ENCODING_H_INCLUDES= {$(VPATH)}encoding.h {$(VPATH)}oniguruma.h
|
||||
ID_H_INCLUDES = {$(VPATH)}id.h {$(VPATH)}vm_opts.h
|
||||
VM_CORE_H_INCLUDES = {$(VPATH)}vm_core.h {$(VPATH)}thread_$(THREAD_MODEL).h \
|
||||
{$(VPATH)}node.h {$(VPATH)}method.h $(ID_H_INCLUDES)
|
||||
{$(VPATH)}node.h {$(VPATH)}method.h {$(VPATH)}atomic.h \
|
||||
$(ID_H_INCLUDES)
|
||||
|
||||
array.$(OBJEXT): {$(VPATH)}array.c $(RUBY_H_INCLUDES) {$(VPATH)}util.h
|
||||
bignum.$(OBJEXT): {$(VPATH)}bignum.c $(RUBY_H_INCLUDES) {$(VPATH)}util.h
|
||||
class.$(OBJEXT): {$(VPATH)}class.c $(RUBY_H_INCLUDES) \
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}debug.h {$(VPATH)}internal.h
|
||||
compar.$(OBJEXT): {$(VPATH)}compar.c $(RUBY_H_INCLUDES)
|
||||
complex.$(OBJEXT): {$(VPATH)}complex.c $(RUBY_H_INCLUDES)
|
||||
dir.$(OBJEXT): {$(VPATH)}dir.c $(RUBY_H_INCLUDES) {$(VPATH)}util.h \
|
||||
array.$(OBJEXT): {$(VPATH)}array.c $(RUBY_H_INCLUDES) {$(VPATH)}util.h \
|
||||
$(ENCODING_H_INCLUDES)
|
||||
bignum.$(OBJEXT): {$(VPATH)}bignum.c $(RUBY_H_INCLUDES) {$(VPATH)}util.h \
|
||||
{$(VPATH)}internal.h
|
||||
class.$(OBJEXT): {$(VPATH)}class.c $(RUBY_H_INCLUDES) \
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}debug.h {$(VPATH)}internal.h \
|
||||
{$(VPATH)}constant.h
|
||||
compar.$(OBJEXT): {$(VPATH)}compar.c $(RUBY_H_INCLUDES)
|
||||
complex.$(OBJEXT): {$(VPATH)}complex.c $(RUBY_H_INCLUDES) \
|
||||
{$(VPATH)}internal.h
|
||||
dir.$(OBJEXT): {$(VPATH)}dir.c $(RUBY_H_INCLUDES) {$(VPATH)}util.h \
|
||||
$(ENCODING_H_INCLUDES) \
|
||||
{$(VPATH)}internal.h
|
||||
dln.$(OBJEXT): {$(VPATH)}dln.c {$(VPATH)}dln.h $(RUBY_H_INCLUDES)
|
||||
dln_find.$(OBJEXT): {$(VPATH)}dln_find.c {$(VPATH)}dln.h $(RUBY_H_INCLUDES)
|
||||
dmydln.$(OBJEXT): {$(VPATH)}dmydln.c $(RUBY_H_INCLUDES)
|
||||
dmyext.$(OBJEXT): {$(VPATH)}dmyext.c
|
||||
dmyencoding.$(OBJEXT): {$(VPATH)}dmyencoding.c $(RUBY_H_INCLUDES) \
|
||||
{$(VPATH)}regenc.h {$(VPATH)}util.h $(ENCODING_H_INCLUDES) \
|
||||
{$(VPATH)}encoding.c
|
||||
{$(VPATH)}encoding.c {$(VPATH)}internal.h
|
||||
encoding.$(OBJEXT): {$(VPATH)}encoding.c $(RUBY_H_INCLUDES) \
|
||||
$(ENCODING_H_INCLUDES) {$(VPATH)}regenc.h {$(VPATH)}util.h
|
||||
$(ENCODING_H_INCLUDES) {$(VPATH)}regenc.h {$(VPATH)}util.h \
|
||||
{$(VPATH)}internal.h
|
||||
enum.$(OBJEXT): {$(VPATH)}enum.c $(RUBY_H_INCLUDES) {$(VPATH)}node.h \
|
||||
{$(VPATH)}util.h $(ID_H_INCLUDES)
|
||||
enumerator.$(OBJEXT): {$(VPATH)}enumerator.c $(RUBY_H_INCLUDES)
|
||||
error.$(OBJEXT): {$(VPATH)}error.c {$(VPATH)}known_errors.inc \
|
||||
$(RUBY_H_INCLUDES) $(VM_CORE_H_INCLUDES) $(ENCODING_H_INCLUDES) \
|
||||
{$(VPATH)}debug.h
|
||||
{$(VPATH)}debug.h \
|
||||
{$(VPATH)}internal.h
|
||||
eval.$(OBJEXT): {$(VPATH)}eval.c {$(VPATH)}eval_intern.h {$(VPATH)}vm.h \
|
||||
$(RUBY_H_INCLUDES) $(VM_CORE_H_INCLUDES) {$(VPATH)}eval_error.c \
|
||||
{$(VPATH)}eval_jump.c {$(VPATH)}debug.h {$(VPATH)}gc.h {$(VPATH)}iseq.h
|
||||
{$(VPATH)}eval_jump.c {$(VPATH)}debug.h {$(VPATH)}gc.h {$(VPATH)}iseq.h \
|
||||
$(ENCODING_H_INCLUDES) {$(VPATH)}internal.h
|
||||
load.$(OBJEXT): {$(VPATH)}load.c {$(VPATH)}eval_intern.h \
|
||||
{$(VPATH)}util.h $(RUBY_H_INCLUDES) $(VM_CORE_H_INCLUDES) \
|
||||
{$(VPATH)}dln.h {$(VPATH)}debug.h
|
||||
{$(VPATH)}dln.h {$(VPATH)}debug.h \
|
||||
{$(VPATH)}internal.h
|
||||
file.$(OBJEXT): {$(VPATH)}file.c $(RUBY_H_INCLUDES) {$(VPATH)}io.h \
|
||||
$(ENCODING_H_INCLUDES) {$(VPATH)}util.h {$(VPATH)}dln.h
|
||||
$(ENCODING_H_INCLUDES) {$(VPATH)}util.h {$(VPATH)}dln.h \
|
||||
{$(VPATH)}internal.h
|
||||
gc.$(OBJEXT): {$(VPATH)}gc.c $(RUBY_H_INCLUDES) {$(VPATH)}re.h \
|
||||
{$(VPATH)}regex.h $(ENCODING_H_INCLUDES) $(VM_CORE_H_INCLUDES) \
|
||||
{$(VPATH)}gc.h {$(VPATH)}io.h {$(VPATH)}eval_intern.h {$(VPATH)}util.h \
|
||||
{$(VPATH)}debug.h {$(VPATH)}internal.h {$(VPATH)}atomic.h
|
||||
hash.$(OBJEXT): {$(VPATH)}hash.c $(RUBY_H_INCLUDES) {$(VPATH)}util.h
|
||||
inits.$(OBJEXT): {$(VPATH)}inits.c $(RUBY_H_INCLUDES)
|
||||
{$(VPATH)}debug.h {$(VPATH)}internal.h {$(VPATH)}constant.h
|
||||
hash.$(OBJEXT): {$(VPATH)}hash.c $(RUBY_H_INCLUDES) {$(VPATH)}util.h \
|
||||
$(ENCODING_H_INCLUDES)
|
||||
inits.$(OBJEXT): {$(VPATH)}inits.c $(RUBY_H_INCLUDES) \
|
||||
{$(VPATH)}internal.h
|
||||
io.$(OBJEXT): {$(VPATH)}io.c $(RUBY_H_INCLUDES) {$(VPATH)}io.h \
|
||||
{$(VPATH)}util.h $(ENCODING_H_INCLUDES) {$(VPATH)}dln.h
|
||||
{$(VPATH)}util.h $(ENCODING_H_INCLUDES) {$(VPATH)}dln.h {$(VPATH)}internal.h
|
||||
main.$(OBJEXT): {$(VPATH)}main.c $(RUBY_H_INCLUDES) {$(VPATH)}debug.h \
|
||||
{$(VPATH)}node.h
|
||||
marshal.$(OBJEXT): {$(VPATH)}marshal.c $(RUBY_H_INCLUDES) {$(VPATH)}io.h \
|
||||
$(ENCODING_H_INCLUDES) {$(VPATH)}util.h {$(VPATH)}internal.h
|
||||
math.$(OBJEXT): {$(VPATH)}math.c $(RUBY_H_INCLUDES)
|
||||
node.$(OBJEXT): {$(VPATH)}node.c $(RUBY_H_INCLUDES) \
|
||||
$(VM_CORE_H_INCLUDES)
|
||||
numeric.$(OBJEXT): {$(VPATH)}numeric.c $(RUBY_H_INCLUDES) \
|
||||
{$(VPATH)}util.h $(ENCODING_H_INCLUDES)
|
||||
object.$(OBJEXT): {$(VPATH)}object.c $(RUBY_H_INCLUDES) {$(VPATH)}util.h \
|
||||
math.$(OBJEXT): {$(VPATH)}math.c $(RUBY_H_INCLUDES) \
|
||||
{$(VPATH)}internal.h
|
||||
node.$(OBJEXT): {$(VPATH)}node.c $(RUBY_H_INCLUDES) \
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}debug.h
|
||||
numeric.$(OBJEXT): {$(VPATH)}numeric.c $(RUBY_H_INCLUDES) \
|
||||
{$(VPATH)}util.h $(ENCODING_H_INCLUDES) {$(VPATH)}internal.h
|
||||
object.$(OBJEXT): {$(VPATH)}object.c $(RUBY_H_INCLUDES) {$(VPATH)}util.h \
|
||||
{$(VPATH)}internal.h {$(VPATH)}constant.h
|
||||
pack.$(OBJEXT): {$(VPATH)}pack.c $(RUBY_H_INCLUDES) {$(VPATH)}encoding.h \
|
||||
{$(VPATH)}oniguruma.h
|
||||
parse.$(OBJEXT): {$(VPATH)}parse.c $(RUBY_H_INCLUDES) {$(VPATH)}node.h \
|
||||
$(ENCODING_H_INCLUDES) $(ID_H_INCLUDES) {$(VPATH)}regenc.h \
|
||||
{$(VPATH)}regex.h {$(VPATH)}util.h {$(VPATH)}lex.c \
|
||||
{$(VPATH)}defs/keywords {$(VPATH)}id.c {$(VPATH)}parse.y \
|
||||
{$(VPATH)}parse.h
|
||||
{$(VPATH)}parse.h \
|
||||
{$(VPATH)}internal.h
|
||||
proc.$(OBJEXT): {$(VPATH)}proc.c {$(VPATH)}eval_intern.h \
|
||||
$(RUBY_H_INCLUDES) {$(VPATH)}gc.h $(VM_CORE_H_INCLUDES) \
|
||||
{$(VPATH)}debug.h {$(VPATH)}internal.h
|
||||
{$(VPATH)}debug.h {$(VPATH)}internal.h {$(VPATH)}iseq.h
|
||||
process.$(OBJEXT): {$(VPATH)}process.c $(RUBY_H_INCLUDES) \
|
||||
{$(VPATH)}util.h {$(VPATH)}io.h $(ENCODING_H_INCLUDES) {$(VPATH)}dln.h \
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}debug.h
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}debug.h {$(VPATH)}internal.h
|
||||
random.$(OBJEXT): {$(VPATH)}random.c $(RUBY_H_INCLUDES)
|
||||
range.$(OBJEXT): {$(VPATH)}range.c $(RUBY_H_INCLUDES) \
|
||||
$(ENCODING_H_INCLUDES)
|
||||
rational.$(OBJEXT): {$(VPATH)}rational.c $(RUBY_H_INCLUDES)
|
||||
$(ENCODING_H_INCLUDES) {$(VPATH)}internal.h
|
||||
rational.$(OBJEXT): {$(VPATH)}rational.c $(RUBY_H_INCLUDES) {$(VPATH)}internal.h
|
||||
re.$(OBJEXT): {$(VPATH)}re.c $(RUBY_H_INCLUDES) {$(VPATH)}re.h \
|
||||
{$(VPATH)}regex.h $(ENCODING_H_INCLUDES) {$(VPATH)}util.h \
|
||||
{$(VPATH)}regint.h {$(VPATH)}regenc.h
|
||||
{$(VPATH)}regint.h {$(VPATH)}regenc.h {$(VPATH)}internal.h
|
||||
regcomp.$(OBJEXT): {$(VPATH)}regcomp.c {$(VPATH)}regparse.h \
|
||||
{$(VPATH)}regint.h {$(VPATH)}regenc.h {$(VPATH)}oniguruma.h \
|
||||
$(RUBY_H_INCLUDES)
|
||||
|
@ -668,35 +683,34 @@ regsyntax.$(OBJEXT): {$(VPATH)}regsyntax.c {$(VPATH)}regint.h \
|
|||
{$(VPATH)}regenc.h {$(VPATH)}oniguruma.h $(RUBY_H_INCLUDES)
|
||||
ruby.$(OBJEXT): {$(VPATH)}ruby.c $(RUBY_H_INCLUDES) {$(VPATH)}util.h \
|
||||
$(ENCODING_H_INCLUDES) {$(VPATH)}eval_intern.h $(VM_CORE_H_INCLUDES) \
|
||||
{$(VPATH)}dln.h {$(VPATH)}debug.h
|
||||
{$(VPATH)}dln.h {$(VPATH)}debug.h {$(VPATH)}internal.h
|
||||
safe.$(OBJEXT): {$(VPATH)}safe.c $(RUBY_H_INCLUDES) \
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}debug.h
|
||||
signal.$(OBJEXT): {$(VPATH)}signal.c $(RUBY_H_INCLUDES) \
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}debug.h {$(VPATH)}atomic.h
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}debug.h
|
||||
sprintf.$(OBJEXT): {$(VPATH)}sprintf.c $(RUBY_H_INCLUDES) {$(VPATH)}re.h \
|
||||
{$(VPATH)}regex.h {$(VPATH)}vsnprintf.c $(ENCODING_H_INCLUDES)
|
||||
st.$(OBJEXT): {$(VPATH)}st.c {$(VPATH)}config.h {$(VPATH)}defines.h \
|
||||
{$(VPATH)}st.h {$(VPATH)}ruby.h {$(VPATH)}missing.h {$(VPATH)}intern.h
|
||||
strftime.$(OBJEXT): {$(VPATH)}strftime.c {$(VPATH)}ruby.h \
|
||||
{$(VPATH)}config.h {$(VPATH)}defines.h {$(VPATH)}missing.h \
|
||||
{$(VPATH)}intern.h {$(VPATH)}st.h {$(VPATH)}timev.h
|
||||
st.$(OBJEXT): {$(VPATH)}st.c $(RUBY_H_INCLUDES)
|
||||
strftime.$(OBJEXT): {$(VPATH)}strftime.c $(RUBY_H_INCLUDES) \
|
||||
{$(VPATH)}timev.h
|
||||
string.$(OBJEXT): {$(VPATH)}string.c $(RUBY_H_INCLUDES) {$(VPATH)}re.h \
|
||||
{$(VPATH)}regex.h $(ENCODING_H_INCLUDES)
|
||||
{$(VPATH)}regex.h $(ENCODING_H_INCLUDES) {$(VPATH)}internal.h
|
||||
struct.$(OBJEXT): {$(VPATH)}struct.c $(RUBY_H_INCLUDES) {$(VPATH)}internal.h
|
||||
thread.$(OBJEXT): {$(VPATH)}thread.c {$(VPATH)}eval_intern.h \
|
||||
$(RUBY_H_INCLUDES) {$(VPATH)}gc.h $(VM_CORE_H_INCLUDES) \
|
||||
{$(VPATH)}debug.h {$(VPATH)}thread_$(THREAD_MODEL).c {$(VPATH)}atomic.h
|
||||
{$(VPATH)}debug.h {$(VPATH)}thread_$(THREAD_MODEL).c $(ENCODING_H_INCLUDES) \
|
||||
{$(VPATH)}internal.h {$(VPATH)}io.h
|
||||
transcode.$(OBJEXT): {$(VPATH)}transcode.c $(RUBY_H_INCLUDES) \
|
||||
$(ENCODING_H_INCLUDES) {$(VPATH)}transcode_data.h
|
||||
$(ENCODING_H_INCLUDES) {$(VPATH)}transcode_data.h {$(VPATH)}internal.h
|
||||
cont.$(OBJEXT): {$(VPATH)}cont.c $(RUBY_H_INCLUDES) \
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}gc.h {$(VPATH)}eval_intern.h \
|
||||
{$(VPATH)}debug.h {$(VPATH)}atomic.h
|
||||
{$(VPATH)}debug.h {$(VPATH)}internal.h
|
||||
time.$(OBJEXT): {$(VPATH)}time.c $(RUBY_H_INCLUDES) \
|
||||
$(ENCODING_H_INCLUDES) {$(VPATH)}timev.h
|
||||
$(ENCODING_H_INCLUDES) {$(VPATH)}timev.h {$(VPATH)}internal.h
|
||||
util.$(OBJEXT): {$(VPATH)}util.c $(RUBY_H_INCLUDES) {$(VPATH)}util.h
|
||||
variable.$(OBJEXT): {$(VPATH)}variable.c $(RUBY_H_INCLUDES) \
|
||||
{$(VPATH)}node.h {$(VPATH)}util.h {$(VPATH)}encoding.h \
|
||||
{$(VPATH)}oniguruma.h {$(VPATH)}internal.h
|
||||
{$(VPATH)}oniguruma.h {$(VPATH)}internal.h {$(VPATH)}constant.h
|
||||
version.$(OBJEXT): {$(VPATH)}version.c $(RUBY_H_INCLUDES) \
|
||||
{$(VPATH)}version.h $(srcdir)/version.h $(srcdir)/revision.h {$(VPATH)}config.h
|
||||
dmyversion.$(OBJEXT): {$(VPATH)}dmyversion.c version.$(OBJEXT)
|
||||
|
@ -704,49 +718,51 @@ dmyversion.$(OBJEXT): {$(VPATH)}dmyversion.c version.$(OBJEXT)
|
|||
compile.$(OBJEXT): {$(VPATH)}compile.c {$(VPATH)}iseq.h \
|
||||
$(RUBY_H_INCLUDES) $(VM_CORE_H_INCLUDES) {$(VPATH)}insns.inc \
|
||||
{$(VPATH)}insns_info.inc {$(VPATH)}optinsn.inc {$(VPATH)}debug.h \
|
||||
{$(VPATH)}optunifs.inc {$(VPATH)}opt_sc.inc {$(VPATH)}insns.inc
|
||||
{$(VPATH)}optunifs.inc {$(VPATH)}opt_sc.inc {$(VPATH)}insns.inc \
|
||||
{$(VPATH)}internal.h
|
||||
iseq.$(OBJEXT): {$(VPATH)}iseq.c {$(VPATH)}gc.h {$(VPATH)}iseq.h \
|
||||
$(RUBY_H_INCLUDES) $(VM_CORE_H_INCLUDES) {$(VPATH)}insns.inc \
|
||||
{$(VPATH)}insns_info.inc {$(VPATH)}node_name.inc {$(VPATH)}debug.h
|
||||
{$(VPATH)}insns_info.inc {$(VPATH)}node_name.inc {$(VPATH)}debug.h {$(VPATH)}internal.h
|
||||
vm.$(OBJEXT): {$(VPATH)}vm.c {$(VPATH)}gc.h {$(VPATH)}iseq.h \
|
||||
{$(VPATH)}eval_intern.h $(RUBY_H_INCLUDES) $(ENCODING_H_INCLUDES) \
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}vm_method.c {$(VPATH)}vm_eval.c \
|
||||
{$(VPATH)}vm_insnhelper.c {$(VPATH)}vm_insnhelper.h {$(VPATH)}vm_exec.c \
|
||||
{$(VPATH)}vm_exec.h {$(VPATH)}insns.def {$(VPATH)}vmtc.inc \
|
||||
{$(VPATH)}vm.inc {$(VPATH)}insns.inc {$(VPATH)}debug.h \
|
||||
{$(VPATH)}internal.h
|
||||
{$(VPATH)}internal.h {$(VPATH)}vm.h {$(VPATH)}constant.h
|
||||
vm_dump.$(OBJEXT): {$(VPATH)}vm_dump.c $(RUBY_H_INCLUDES) \
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}debug.h
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}debug.h {$(VPATH)}addr2line.h
|
||||
debug.$(OBJEXT): {$(VPATH)}debug.c $(RUBY_H_INCLUDES) \
|
||||
$(ENCODING_H_INCLUDES) $(VM_CORE_H_INCLUDES) {$(VPATH)}eval_intern.h \
|
||||
{$(VPATH)}util.h {$(VPATH)}debug.h
|
||||
id.$(OBJEXT): {$(VPATH)}id.c $(RUBY_H_INCLUDES) $(ID_H_INCLUDES)
|
||||
miniprelude.$(OBJEXT): {$(VPATH)}miniprelude.c $(RUBY_H_INCLUDES) \
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}debug.h
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}debug.h {$(VPATH)}internal.h
|
||||
prelude.$(OBJEXT): {$(VPATH)}prelude.c $(RUBY_H_INCLUDES) \
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}debug.h
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}debug.h {$(VPATH)}internal.h
|
||||
golf_prelude.$(OBJEXT): {$(VPATH)}golf_prelude.c $(RUBY_H_INCLUDES) \
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}debug.h
|
||||
$(VM_CORE_H_INCLUDES) {$(VPATH)}debug.h {$(VPATH)}internal.h
|
||||
goruby.$(OBJEXT): {$(VPATH)}goruby.c {$(VPATH)}main.c $(RUBY_H_INCLUDES) \
|
||||
{$(VPATH)}debug.h {$(VPATH)}node.h
|
||||
|
||||
ascii.$(OBJEXT): {$(VPATH)}ascii.c {$(VPATH)}regenc.h {$(VPATH)}config.h \
|
||||
{$(VPATH)}defines.h {$(VPATH)}oniguruma.h
|
||||
{$(VPATH)}oniguruma.h {$(VPATH)}missing.h
|
||||
us_ascii.$(OBJEXT): {$(VPATH)}us_ascii.c {$(VPATH)}regenc.h \
|
||||
{$(VPATH)}config.h {$(VPATH)}defines.h {$(VPATH)}oniguruma.h
|
||||
{$(VPATH)}config.h {$(VPATH)}oniguruma.h {$(VPATH)}missing.h
|
||||
unicode.$(OBJEXT): {$(VPATH)}unicode.c {$(VPATH)}regint.h \
|
||||
{$(VPATH)}config.h {$(VPATH)}defines.h {$(VPATH)}regenc.h \
|
||||
{$(VPATH)}oniguruma.h {$(VPATH)}st.h {$(VPATH)}ruby.h \
|
||||
{$(VPATH)}missing.h {$(VPATH)}intern.h {$(VPATH)}enc/unicode/name2ctype.h
|
||||
{$(VPATH)}missing.h {$(VPATH)}intern.h {$(VPATH)}enc/unicode/name2ctype.h \
|
||||
{$(VPATH)}subst.h
|
||||
|
||||
utf_8.$(OBJEXT): {$(VPATH)}utf_8.c {$(VPATH)}regenc.h {$(VPATH)}config.h \
|
||||
{$(VPATH)}defines.h {$(VPATH)}oniguruma.h
|
||||
{$(VPATH)}oniguruma.h {$(VPATH)}missing.h
|
||||
|
||||
newline.c: $(srcdir)/enc/trans/newline.trans $(srcdir)/tool/transcode-tblgen.rb
|
||||
$(Q) $(BASERUBY) "$(srcdir)/tool/transcode-tblgen.rb" -vo newline.c $(srcdir)/enc/trans/newline.trans
|
||||
newline.$(OBJEXT): {$(VPATH)}newline.c {$(VPATH)}defines.h \
|
||||
{$(VPATH)}intern.h {$(VPATH)}missing.h {$(VPATH)}st.h \
|
||||
{$(VPATH)}transcode_data.h {$(VPATH)}ruby.h {$(VPATH)}config.h
|
||||
{$(VPATH)}transcode_data.h {$(VPATH)}ruby.h {$(VPATH)}config.h {$(VPATH)}subst.h
|
||||
|
||||
$(OBJS): {$(VPATH)}config.h {$(VPATH)}missing.h
|
||||
|
||||
|
|
|
@ -0,0 +1,139 @@
|
|||
#!/usr/bin/ruby
|
||||
|
||||
# tool/update-deps assists you to update dependencies in common.mk.
|
||||
|
||||
# This script uses preprocessed source files (*.i) to extract
|
||||
# dependencies.
|
||||
# It is possible to generate *.i using gcc with -save-temps option as:
|
||||
#
|
||||
# ./configure CFLAGS='-save-temps'
|
||||
# make all golf
|
||||
#
|
||||
# After that, tool/update-deps generate common.mk with up-to-date dependencies.
|
||||
# Currently, the result is not perfect around version.o, compile.o, etc.
|
||||
# So you must see each changes and incorporate right changes.
|
||||
#
|
||||
# ./tool/update-deps > z
|
||||
# wdiff =(sed -e 's/\\$//' common.mk ) =(sed -e 's/\\$//' z) |less -j 5 -p '\{\+|\+\}|\[-|-\]'
|
||||
# vi common.mk
|
||||
|
||||
src = File.read("common.mk")
|
||||
|
||||
includes_macro = {}
|
||||
src.scan(/^([A-Z_]+_H_INCLUDES)[ \t]*=(([^\\\n]|\\(.|\n))*)\n/) {
|
||||
name = $1
|
||||
vals = $2
|
||||
#STDERR.puts vals.inspect
|
||||
vals.gsub!(/\\\n/, ' ')
|
||||
vals.gsub!(/\{\$\(VPATH\)\}/, '')
|
||||
vals.gsub!(/thread_\$\(THREAD_MODEL\)/, 'thread_pthread')
|
||||
vals = vals.strip.split(/\s+/)
|
||||
includes_macro[name] = vals
|
||||
#STDERR.puts [name, vals].inspect
|
||||
}
|
||||
|
||||
begin
|
||||
again = false
|
||||
includes_macro.each {|name, vals|
|
||||
vals.map! {|val|
|
||||
if /\A\$\((.*_H_INCLUDES)\)\z/ =~ val
|
||||
again = true
|
||||
includes_macro.fetch($1)
|
||||
else
|
||||
val
|
||||
end
|
||||
}
|
||||
vals.flatten!
|
||||
}
|
||||
end while again
|
||||
|
||||
src.gsub!(/^([0-9a-z._]+)\.\$\(OBJEXT\):(.*\n(?:[ ].*\n)*)/) {
|
||||
#STDERR.puts $&.inspect
|
||||
matched = $&
|
||||
basename = $1
|
||||
deps = $2
|
||||
dd = deps.dup
|
||||
dd.gsub!(/\{\$\(VPATH\)\}/, '')
|
||||
dd.gsub!(/\\\n/, ' ')
|
||||
dd.gsub!(/thread_\$\(THREAD_MODEL\)/, 'thread_pthread')
|
||||
used_imacro = {}
|
||||
includes_macro.each {|k, v|
|
||||
if dd.sub!(/\$\(#{Regexp.escape k}\)/) { v.join(' ') }
|
||||
used_imacro[k] = true
|
||||
end
|
||||
}
|
||||
dd = dd.strip.split(/\s+/)
|
||||
if !File.file?("#{basename}.o")
|
||||
warn "#{basename}.o not found."
|
||||
else
|
||||
unless File.file? "#{basename}.i"
|
||||
puts "#{basename}.i not found."
|
||||
next
|
||||
end
|
||||
incs = []
|
||||
File.foreach("#{basename}.i") {|line|
|
||||
next unless /^# \d+ "([^"]*)"/ =~ line
|
||||
inc = $1
|
||||
next if %r{\A[/<]} =~ inc
|
||||
inc.sub!(%r{\A\./}, '')
|
||||
inc.sub!(%r{\Ainclude/ruby/}, '') or
|
||||
inc.sub!(%r{\Ainclude/}, '') or
|
||||
inc.sub!(%r{\A\.ext/include/[^/]+/ruby/}, '') or
|
||||
inc.sub!(%r{\Aenc/}, '') or
|
||||
inc.sub!(%r{\Amissing/}, '')
|
||||
#p inc
|
||||
incs << inc
|
||||
}
|
||||
incs.uniq!
|
||||
incs = incs.sort_by {|inc| [(dd.index(inc) || dd.length), incs.index(inc)] }
|
||||
add = incs - dd
|
||||
if !add.empty? || true
|
||||
if incs[0] != dd[0]
|
||||
raise "first file not matched: #{incs[0].inspect} v.s. #{dd[0].inspect}"
|
||||
end
|
||||
depline = "#{basename}.$(OBJEXT):"
|
||||
used_imacro.each_key {|k|
|
||||
if includes_macro[k].all? {|v| incs.include? v }
|
||||
im = "$(#{k})"
|
||||
incs.map! {|inc|
|
||||
if includes_macro[k].include? inc
|
||||
im0 = im
|
||||
im = nil
|
||||
im0
|
||||
else
|
||||
inc
|
||||
end
|
||||
}
|
||||
incs.compact!
|
||||
else
|
||||
needless = includes_macro[k].reject {|v| incs.include? v }
|
||||
STDERR.puts "#{basename}.$(OBJEXT) can't use #{k}. #{needless.join(' ')} is not used."
|
||||
end
|
||||
}
|
||||
|
||||
incs.each {|inc|
|
||||
inc = inc.sub(/\Athread_pthread/, 'thread_$(THREAD_MODEL)')
|
||||
if /_INCLUDES\)\z/ =~ inc
|
||||
# use $(RUBY_H_INCLUDES) as is.
|
||||
elsif inc == 'revision.h'
|
||||
inc = '$(srcdir)/revision.h'
|
||||
else
|
||||
inc = "{$(VPATH)}#{inc}"
|
||||
end
|
||||
depline << " #{inc}"
|
||||
}
|
||||
lines = []
|
||||
while 72 < depline.length && depline.sub!(/\A(.{0,72}|.{72}.*?) /, '')
|
||||
lines << $&
|
||||
end
|
||||
lines << depline
|
||||
matched = lines.join("\\\n ")
|
||||
matched << "\n"
|
||||
end
|
||||
end
|
||||
#STDERR.puts matched.inspect
|
||||
matched
|
||||
}
|
||||
|
||||
puts src
|
||||
|
Загрузка…
Ссылка в новой задаче