summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-10-10 09:19:05 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2009-10-10 09:19:05 +0000
commit4d53704a7ed802432b85bb4500ba3e40005d0ab3 (patch)
treec5c4bdc9a41edee10e99414032ae587c8c8b3d4f
parent9ae9668ec9b9330c3656884667fa044d74f9fc61 (diff)
downloadruby-4d53704a7ed802432b85bb4500ba3e40005d0ab3.tar.gz
ruby-4d53704a7ed802432b85bb4500ba3e40005d0ab3.tar.xz
ruby-4d53704a7ed802432b85bb4500ba3e40005d0ab3.zip
* configure.in, Makefile.in (LIBRUBY_SO), common.mk (ruby.imp),
win32/mkexports.rb (each_export): exclude _threadptr_ functions. git-svn-id: http://svn.ruby-lang.org/repos/ruby/trunk@25284 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r--ChangeLog5
-rw-r--r--Makefile.in2
-rw-r--r--common.mk2
-rw-r--r--configure.in4
-rwxr-xr-xwin32/mkexports.rb2
5 files changed, 11 insertions, 4 deletions
diff --git a/ChangeLog b/ChangeLog
index cc9b814cc..c5a9f8af6 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,8 @@
+Sat Oct 10 18:19:03 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
+
+ * configure.in, Makefile.in (LIBRUBY_SO), common.mk (ruby.imp),
+ win32/mkexports.rb (each_export): exclude _threadptr_ functions.
+
Sat Oct 10 17:55:57 2009 Nobuyoshi Nakada <nobu@ruby-lang.org>
* eval.c (rb_threadptr_errinfo): renamed.
diff --git a/Makefile.in b/Makefile.in
index 883d9ad48..5ba6f0752 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -155,7 +155,7 @@ $(LIBRUBY_A):
$(LIBRUBY_SO):
@-$(PRE_LIBRUBY_UPDATE)
$(LDSHARED) $(DLDFLAGS) $(OBJS) $(DLDOBJS) $(SOLIBS) $(OUTFLAG)$@
- -$(OBJCOPY) -w -L '@EXPORT_PREFIX@Init_*' $@
+ -$(OBJCOPY) -w -L '@EXPORT_PREFIX@Init_*' -L '@EXPORT_PREFIX@*_threadptr_*' $@
@-$(MINIRUBY) -e 'ARGV.each{|link| File.delete link if File.exist? link; \
File.symlink "$(LIBRUBY_SO)", link}' \
$(LIBRUBY_ALIASES) || true
diff --git a/common.mk b/common.mk
index d077ad1c2..c8e535d46 100644
--- a/common.mk
+++ b/common.mk
@@ -171,7 +171,7 @@ $(STATIC_RUBY)$(EXEEXT): $(MAINOBJ) $(DLDOBJS) $(EXTOBJS) $(LIBRUBY_A)
ruby.imp: $(EXPORTOBJS)
@$(NM) -Pgp $(EXPORTOBJS) | \
- awk 'BEGIN{print "#!"}; $$2~/^[BDT]$$/&&$$1!~/^(Init_|\.)/{print $$1}' | \
+ awk 'BEGIN{print "#!"}; $$2~/^[BDT]$$/&&$$1!~/^(Init_|.*_threadptr_|\.)/{print $$1}' | \
sort -u -o $@
install: install-$(INSTALLDOC)
diff --git a/configure.in b/configure.in
index 151970d22..22b056a30 100644
--- a/configure.in
+++ b/configure.in
@@ -2089,7 +2089,9 @@ if test "$enable_shared" = 'yes'; then
LIBRUBY_DLDFLAGS="$LIBRUBY_DLDFLAGS "'-install_name '${libprefix}'/$(LIBRUBY_SO)'
LIBRUBY_DLDFLAGS="$LIBRUBY_DLDFLAGS "'-current_version $(MAJOR).$(MINOR).$(TEENY)'
LIBRUBY_DLDFLAGS="$LIBRUBY_DLDFLAGS "'-compatibility_version $(ruby_version)'
- LIBRUBY_DLDFLAGS="$LIBRUBY_DLDFLAGS "'-Wl,-unexported_symbol,_Init_* $(XLDFLAGS)'
+ LIBRUBY_DLDFLAGS="$LIBRUBY_DLDFLAGS "'-Wl,-unexported_symbol,_Init_*'
+ LIBRUBY_DLDFLAGS="$LIBRUBY_DLDFLAGS "'-Wl,-unexported_symbol,*_threadptr_*'
+ LIBRUBY_DLDFLAGS="$LIBRUBY_DLDFLAGS "' $(XLDFLAGS)'
LIBRUBY_SO='lib$(RUBY_SO_NAME).dylib'
LIBRUBY_ALIASES='lib$(RUBY_BASE_NAME).$(MAJOR).$(MINOR).dylib lib$(RUBY_INSTALL_NAME).dylib'
;;
diff --git a/win32/mkexports.rb b/win32/mkexports.rb
index 36c04d8e4..6ef20eab6 100755
--- a/win32/mkexports.rb
+++ b/win32/mkexports.rb
@@ -144,7 +144,7 @@ class Exports::Cygwin < Exports
def each_export(objs)
objdump(objs) do |l|
next if /@.*@/ =~ l
- yield $2, !$1 if /\s(?:(T)|[[:upper:]])\s_((?!Init_|DllMain@).*)$/ =~ l
+ yield $2, !$1 if /\s(?:(T)|[[:upper:]])\s_((?!Init_|.*_threadptr_|DllMain@).*)$/ =~ l
end
end
end