Skip to content

Instantly share code, notes, and snippets.

@splhack
Created December 16, 2010 12:33
Show Gist options
  • Star 1 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save splhack/743346 to your computer and use it in GitHub Desktop.
Save splhack/743346 to your computer and use it in GitHub Desktop.
diff --git a/common.mk b/common.mk
index 3582c70..da3ae6d 100644
--- a/common.mk
+++ b/common.mk
@@ -126,9 +126,9 @@ BOOTSTRAPRUBY = $(BASERUBY)
COMPILE_PRELUDE = $(MINIRUBY) -I$(srcdir) $(srcdir)/tool/compile_prelude.rb
-all: main docs
+all: main
-main: encs exts
+main: exts
@$(RUNCMD) $(MKMAIN_CMD) $(MAKE)
exts: $(MKMAIN_CMD)
@@ -138,6 +138,10 @@ $(MKMAIN_CMD): $(MKFILES) incs $(PREP) $(RBCONFIG) $(LIBRUBY)
prog: $(PROGRAM) $(WPROGRAM)
+STATIC_EXTOBJS = $(shell find ext -name "*.o")
+staticlib: ext/extinit.o $(STATIC_EXTOBJS)
+ @$(AR) rcu $(LIBRUBY_A) $(STATIC_EXTOBJS)
+
loadpath: $(PREP) PHONY
$(MINIRUBY) -e 'p $$:'
diff --git a/configure b/configure
index f66a003..13808a4 100755
--- a/configure
+++ b/configure
@@ -4575,6 +4575,9 @@ $as_echo_n "checking for real target cpu... " >&6; }
#ifdef __ppc64__
"processor-name=powerpc64"
#endif
+#ifdef __arm__
+"processor-name=arm"
+#endif
EOF
sed -n 's/^"processor-name=\(.*\)"/\1/p'`
target="$target_cpu${target}"
diff --git a/dmyext.c b/dmyext.c
index 4d273f7..be18e88 100644
--- a/dmyext.c
+++ b/dmyext.c
@@ -1,4 +1,6 @@
+#if 0
void
Init_ext(void)
{
}
+#endif
diff --git a/ext/Setup b/ext/Setup
index b0f29b9..dc9d573 100644
--- a/ext/Setup
+++ b/ext/Setup
@@ -1,32 +1,48 @@
-#option nodynamic
+option nodynamic
-#Win32API
+#-test-/bug-3662
#bigdecimal
+#continuation
+#coverage
#curses
#dbm
+#digest/bubblebabble
#digest
#digest/md5
#digest/rmd160
#digest/sha1
#digest/sha2
+#dl/callback
#dl
-#etc
-#fcntl
+#dl/win32
+etc
+fcntl
+fiber
+#fiddle
#gdbm
#iconv
+#io/nonblock
#io/wait
-#nkf
+json
+json/generator
+json/parser
+#mathn/complex
+#mathn/rational
+nkf
+#objspace
#openssl
+#psych
#pty
#racc/cparse
#readline
#ripper
#sdbm
-#socket
-#stringio
-#strscan
+socket
+stringio
+strscan
#syck
#syslog
#tk
+#tk/tkutil
#win32ole
-#zlib
+zlib
diff --git a/ext/extmk.rb b/ext/extmk.rb
index ab48634..f6c501a 100644
--- a/ext/extmk.rb
+++ b/ext/extmk.rb
@@ -89,6 +89,7 @@ def extract_makefile(makefile, keep = true)
end
def extmake(target)
+ return true if $static and !$static_ext.empty? and !$static_ext[target]
print "#{$message} #{target}\n"
$stdout.flush
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment