diff options
author | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-05-16 05:39:06 +0000 |
---|---|---|
committer | yugui <yugui@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2012-05-16 05:39:06 +0000 |
commit | 3fa3f9abb9a187a12089c2c5a650a62dbd82a3dd (patch) | |
tree | 5a7f6c9f348469863b60010b02375c06b6704951 /enc/trans | |
parent | 0923ae5ed1711d699ef2923c2223163646634a66 (diff) | |
download | ruby-3fa3f9abb9a187a12089c2c5a650a62dbd82a3dd.tar.gz |
Supports static linking of extensions and encodings again.
Fixes --with-static-linked-ext.
Patch by Google Inc. [ruby-core:45073].
* Makefile.in (ENCOBJS, EXTOBJS): New variables to specify static
linked libraries. Also reintroduces extinit.o, introduces encinit.o
introduces encinit.o
* common.mk: Builds static libraries rather than shared objects if
specified.
* configure.in (LD): new substitution.
Avoids PIE if s
* enc/depend: Supports static linked libraries
(libencs, libenc, libtrans): New target.
* enc/encinit.c.erb: new template to generate the initialization of
statically linked encodings.
* enc/make_encmake.rb (--module): new flag to specify whether static
or dynamic.
* transcode_data.h (TRANS_INIT): New macro to get rid of the name
collision of encoding initializers and transcoder initializers.
* ext/extmk.rb: Fixes the behavior on $extstatic is true.
* lib/mkmf.rb (clean-static): new target to clean up static linked
libraries.
* ruby.c (process_options): New initializes statically linked
encodings here.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@35662 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'enc/trans')
-rw-r--r-- | enc/trans/big5.trans | 3 | ||||
-rw-r--r-- | enc/trans/chinese.trans | 3 | ||||
-rw-r--r-- | enc/trans/emoji.trans | 3 | ||||
-rw-r--r-- | enc/trans/emoji_iso2022_kddi.trans | 3 | ||||
-rw-r--r-- | enc/trans/emoji_sjis_docomo.trans | 3 | ||||
-rw-r--r-- | enc/trans/emoji_sjis_kddi.trans | 3 | ||||
-rw-r--r-- | enc/trans/emoji_sjis_softbank.trans | 3 | ||||
-rw-r--r-- | enc/trans/escape.trans | 3 | ||||
-rw-r--r-- | enc/trans/gb18030.trans | 3 | ||||
-rw-r--r-- | enc/trans/gbk.trans | 3 | ||||
-rw-r--r-- | enc/trans/iso2022.trans | 3 | ||||
-rw-r--r-- | enc/trans/japanese.trans | 3 | ||||
-rw-r--r-- | enc/trans/japanese_euc.trans | 3 | ||||
-rw-r--r-- | enc/trans/japanese_sjis.trans | 3 | ||||
-rw-r--r-- | enc/trans/korean.trans | 3 | ||||
-rw-r--r-- | enc/trans/single_byte.trans | 3 | ||||
-rw-r--r-- | enc/trans/utf8_mac.trans | 3 | ||||
-rw-r--r-- | enc/trans/utf_16_32.trans | 3 |
18 files changed, 18 insertions, 36 deletions
diff --git a/enc/trans/big5.trans b/enc/trans/big5.trans index 9dacfd1f7e..c85ada3731 100644 --- a/enc/trans/big5.trans +++ b/enc/trans/big5.trans @@ -26,8 +26,7 @@ <%= transcode_generated_code %> -void -Init_big5(void) +TRANS_INIT(big5) { <%= transcode_register_code %> } diff --git a/enc/trans/chinese.trans b/enc/trans/chinese.trans index 0662a3bebc..282c91aba7 100644 --- a/enc/trans/chinese.trans +++ b/enc/trans/chinese.trans @@ -25,8 +25,7 @@ <%= transcode_generated_code %> -void -Init_chinese(void) +TRANS_INIT(chinese) { <%= transcode_register_code %> } diff --git a/enc/trans/emoji.trans b/enc/trans/emoji.trans index 1cf13743a2..25d9fdd4d8 100644 --- a/enc/trans/emoji.trans +++ b/enc/trans/emoji.trans @@ -30,8 +30,7 @@ <%= transcode_generated_code %> -void -Init_emoji(void) +TRANS_INIT(emoji) { <%= transcode_register_code %> } diff --git a/enc/trans/emoji_iso2022_kddi.trans b/enc/trans/emoji_iso2022_kddi.trans index ccf3139d3c..ea180c1e42 100644 --- a/enc/trans/emoji_iso2022_kddi.trans +++ b/enc/trans/emoji_iso2022_kddi.trans @@ -208,8 +208,7 @@ rb_iso2022jp_kddi_encoder = { iso2022jp_kddi_encoder_reset_sequence_size, finish_iso2022jp_kddi_encoder }; -void -Init_emoji_iso2022_kddi(void) +TRANS_INIT(emoji_iso2022_kddi) { rb_register_transcoder(&rb_iso2022jp_kddi_decoder); rb_register_transcoder(&rb_iso2022jp_kddi_encoder); diff --git a/enc/trans/emoji_sjis_docomo.trans b/enc/trans/emoji_sjis_docomo.trans index 36e6e20339..5dd9c7a1e3 100644 --- a/enc/trans/emoji_sjis_docomo.trans +++ b/enc/trans/emoji_sjis_docomo.trans @@ -26,8 +26,7 @@ <%= transcode_generated_code %> -void -Init_emoji_sjis_docomo(void) +TRANS_INIT(emoji_sjis_docomo) { <%= transcode_register_code %> } diff --git a/enc/trans/emoji_sjis_kddi.trans b/enc/trans/emoji_sjis_kddi.trans index 654bed134e..6df62f14d1 100644 --- a/enc/trans/emoji_sjis_kddi.trans +++ b/enc/trans/emoji_sjis_kddi.trans @@ -27,8 +27,7 @@ <%= transcode_generated_code %> -void -Init_emoji_sjis_kddi(void) +TRANS_INIT(emoji_sjis_kddi) { <%= transcode_register_code %> } diff --git a/enc/trans/emoji_sjis_softbank.trans b/enc/trans/emoji_sjis_softbank.trans index c152d99c76..c520035347 100644 --- a/enc/trans/emoji_sjis_softbank.trans +++ b/enc/trans/emoji_sjis_softbank.trans @@ -26,8 +26,7 @@ <%= transcode_generated_code %> -void -Init_emoji_sjis_softbank(void) +TRANS_INIT(emoji_sjis_softbank) { <%= transcode_register_code %> } diff --git a/enc/trans/escape.trans b/enc/trans/escape.trans index a2fbebac33..550e4ac767 100644 --- a/enc/trans/escape.trans +++ b/enc/trans/escape.trans @@ -85,8 +85,7 @@ rb_escape_xml_attr_quote = { escape_xml_attr_quote_finish }; -void -Init_escape(void) +TRANS_INIT(escape) { <%= transcode_register_code %> rb_register_transcoder(&rb_escape_xml_attr_quote); diff --git a/enc/trans/gb18030.trans b/enc/trans/gb18030.trans index c7da4c64b4..94c866eb39 100644 --- a/enc/trans/gb18030.trans +++ b/enc/trans/gb18030.trans @@ -176,8 +176,7 @@ rb_to_GB18030 = { }; -void -Init_gb18030(void) +TRANS_INIT(gb18030) { rb_register_transcoder(&rb_from_GB18030); rb_register_transcoder(&rb_to_GB18030); diff --git a/enc/trans/gbk.trans b/enc/trans/gbk.trans index 0df148198e..3c2cf0c1af 100644 --- a/enc/trans/gbk.trans +++ b/enc/trans/gbk.trans @@ -9,8 +9,7 @@ <%= transcode_generated_code %> -void -Init_gbk(void) +TRANS_INIT(gbk) { <%= transcode_register_code %> } diff --git a/enc/trans/iso2022.trans b/enc/trans/iso2022.trans index 3f40cce3c8..a441f1596d 100644 --- a/enc/trans/iso2022.trans +++ b/enc/trans/iso2022.trans @@ -553,8 +553,7 @@ rb_cp50220_encoder = { iso2022jp_encoder_reset_sequence_size, finish_cp50220_encoder }; -void -Init_iso2022(void) +TRANS_INIT(iso2022) { rb_register_transcoder(&rb_iso2022jp_decoder); rb_register_transcoder(&rb_iso2022jp_encoder); diff --git a/enc/trans/japanese.trans b/enc/trans/japanese.trans index ce5d0bb70f..7ff024fa8d 100644 --- a/enc/trans/japanese.trans +++ b/enc/trans/japanese.trans @@ -90,8 +90,7 @@ rb_sjis2eucjp = { NULL, NULL, NULL, fun_so_sjis2eucjp }; -void -Init_japanese(void) +TRANS_INIT(japanese) { rb_register_transcoder(&rb_eucjp2sjis); rb_register_transcoder(&rb_sjis2eucjp); diff --git a/enc/trans/japanese_euc.trans b/enc/trans/japanese_euc.trans index ff976e4dd0..0f63272321 100644 --- a/enc/trans/japanese_euc.trans +++ b/enc/trans/japanese_euc.trans @@ -51,8 +51,7 @@ <%= transcode_generated_code %> -void -Init_japanese_euc(void) +TRANS_INIT(japanese_euc) { <%= transcode_register_code %> } diff --git a/enc/trans/japanese_sjis.trans b/enc/trans/japanese_sjis.trans index 00eace27a3..8e1e13056d 100644 --- a/enc/trans/japanese_sjis.trans +++ b/enc/trans/japanese_sjis.trans @@ -27,8 +27,7 @@ <%= transcode_generated_code %> -void -Init_japanese_sjis(void) +TRANS_INIT(japanese_sjis) { <%= transcode_register_code %> } diff --git a/enc/trans/korean.trans b/enc/trans/korean.trans index ef1cdfcb8e..fda1a3eeda 100644 --- a/enc/trans/korean.trans +++ b/enc/trans/korean.trans @@ -12,8 +12,7 @@ <%= transcode_generated_code %> -void -Init_korean(void) +TRANS_INIT(korean) { <%= transcode_register_code %> } diff --git a/enc/trans/single_byte.trans b/enc/trans/single_byte.trans index 2293bf6faf..50f568cb94 100644 --- a/enc/trans/single_byte.trans +++ b/enc/trans/single_byte.trans @@ -84,8 +84,7 @@ <%= transcode_generated_code %> -void -Init_single_byte(void) +TRANS_INIT(single_byte) { <%= transcode_register_code %> } diff --git a/enc/trans/utf8_mac.trans b/enc/trans/utf8_mac.trans index 8ea0afd73f..11ce35e212 100644 --- a/enc/trans/utf8_mac.trans +++ b/enc/trans/utf8_mac.trans @@ -233,8 +233,7 @@ rb_from_UTF8_MAC = { from_utf8_mac_finish }; -void -Init_utf8_mac(void) +TRANS_INIT(utf8_mac) { <%= transcode_register_code %> rb_register_transcoder(&rb_from_UTF8_MAC); diff --git a/enc/trans/utf_16_32.trans b/enc/trans/utf_16_32.trans index c841df035f..632c8808ef 100644 --- a/enc/trans/utf_16_32.trans +++ b/enc/trans/utf_16_32.trans @@ -539,8 +539,7 @@ rb_to_UTF_32 = { NULL, NULL, NULL, fun_so_to_utf_32 }; -void -Init_utf_16_32(void) +TRANS_INIT(utf_16_32) { rb_register_transcoder(&rb_from_UTF_16BE); rb_register_transcoder(&rb_to_UTF_16BE); |