From: Ilias Lazaridis Date: 2005-05-13T01:07:40+09:00 Subject: Re: [THIN] - Need to reduce Ruby Sources to the Minimal Francois GORET wrote: > On Thursday 12 May 2005 22:09, Ilias Lazaridis wrote: >>This is a development list. >> >>Please move your whining elsewhere, e.g. ruby-talk. > > Readers of development list should know about 'make' if the project encapsulates the "make" domain-knowledge correctly, developers don't need to know about make. and: subsystems of the sources should be detectable without the need of make (e.g. with folder-hierarchy). > Make can explain what it does to build the program on your platform. The > following looks like you are asking for, no ? yes, this comes close. > fg@moo:~/install/ruby/ruby-1.8.2$ make -n miniruby > gcc -g -O2 -I. -I. -c array.c > gcc -g -O2 -I. -I. -c bignum.c > gcc -g -O2 -I. -I. -c class.c > gcc -g -O2 -I. -I. -c compar.c > gcc -g -O2 -I. -I. -c dir.c > gcc -g -O2 -I. -I. -c dln.c > gcc -g -O2 -I. -I. -c enum.c > gcc -g -O2 -I. -I. -c error.c > gcc -g -O2 -I. -I. -c eval.c > gcc -g -O2 -I. -I. -c file.c > gcc -g -O2 -I. -I. -c gc.c > gcc -g -O2 -I. -I. -c hash.c > gcc -g -O2 -I. -I. -c inits.c > gcc -g -O2 -I. -I. -c io.c > gcc -g -O2 -I. -I. -c marshal.c > gcc -g -O2 -I. -I. -c math.c > gcc -g -O2 -I. -I. -c numeric.c > gcc -g -O2 -I. -I. -c object.c > gcc -g -O2 -I. -I. -c pack.c > gcc -g -O2 -I. -I. -c parse.c > gcc -g -O2 -I. -I. -c process.c > gcc -g -O2 -I. -I. -c prec.c > gcc -g -O2 -I. -I. -c random.c > gcc -g -O2 -I. -I. -c range.c > gcc -g -O2 -I. -I. -c re.c > gcc -g -O2 -I. -I. -c regex.c > gcc -g -O2 -I. -I. -c ruby.c > gcc -g -O2 -I. -I. -c signal.c > gcc -g -O2 -I. -I. -c sprintf.c > gcc -g -O2 -I. -I. -c st.c > gcc -g -O2 -I. -I. -c string.c > gcc -g -O2 -I. -I. -c struct.c > gcc -g -O2 -I. -I. -c time.c > gcc -g -O2 -I. -I. -c util.c > gcc -g -O2 -I. -I. -c variable.c > gcc -g -O2 -I. -I. -c version.c > gcc -g -O2 -I. -I. -c dmyext.c ok, compiled to object-files. > rm -f libruby-static.a making "libruby-static.a"... > ar rcu libruby-static.a array.o bignum.o class.o compar.o dir.o dln.o enum.o > error.o eval.o file.o gc.o hash.o inits.o io.o marshal.o math.o numeric.o > object.o pack.o parse.o process.o prec.o random.o range.o re.o regex.o ruby.o > signal.o sprintf.o st.o string.o struct.o time.o util.o variable.o version.o > dmyext.o ...whilst linking all the above files. > ranlib libruby-static.a 2> /dev/null || true ? > gcc -g -O2 -I. -I. -c main.c compile main.c > rm -f miniruby making "miniruby" > gcc -g -O2 -rdynamic -Wl,-export-dynamic main.o dmyext.o libruby-static.a > -ldl -lcrypt -lm -o miniruby why is "dmyext.o" used again (already within "libruby-static.a")? . -- http://lazaridis.com