summaryrefslogtreecommitdiff
path: root/include
diff options
context:
space:
mode:
authornobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-07-21 21:38:25 +0000
committernobu <nobu@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2010-07-21 21:38:25 +0000
commit0bd71ff35455d308c838c00a7e16fd093d36e4d7 (patch)
treea010959775d708f50770d5bbf72cf053c6c56d3e /include
parent6abe539cfc9b91178be7e1d75173165dcf6ca1bc (diff)
* configure.in (XCFLAGS): use -fvisibility=hidden if possible.
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@28709 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'include')
-rw-r--r--include/ruby/defines.h8
-rw-r--r--include/ruby/encoding.h8
-rw-r--r--include/ruby/intern.h8
-rw-r--r--include/ruby/io.h8
-rw-r--r--include/ruby/missing.h8
-rw-r--r--include/ruby/oniguruma.h8
-rw-r--r--include/ruby/re.h9
-rw-r--r--include/ruby/regex.h8
-rw-r--r--include/ruby/ruby.h8
-rw-r--r--include/ruby/st.h8
-rw-r--r--include/ruby/util.h8
-rw-r--r--include/ruby/version.h10
-rw-r--r--include/ruby/vm.h8
-rw-r--r--include/ruby/win32.h8
14 files changed, 115 insertions, 0 deletions
diff --git a/include/ruby/defines.h b/include/ruby/defines.h
index 7bb2788aaf..45b19bdc58 100644
--- a/include/ruby/defines.h
+++ b/include/ruby/defines.h
@@ -49,6 +49,10 @@ extern "C" {
#define ANYARGS
#endif
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility push(default)
+#endif
+
#define xmalloc ruby_xmalloc
#define xmalloc2 ruby_xmalloc2
#define xcalloc ruby_xcalloc
@@ -311,6 +315,10 @@ void rb_ia64_flushrs(void);
RUBY_ALIAS_FUNCTION_TYPE(VALUE, prot, name, args)
#endif
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility pop
+#endif
+
#if defined(__cplusplus)
#if 0
{ /* satisfy cc-mode */
diff --git a/include/ruby/encoding.h b/include/ruby/encoding.h
index 88f5e52101..2527427b1b 100644
--- a/include/ruby/encoding.h
+++ b/include/ruby/encoding.h
@@ -22,6 +22,10 @@ extern "C" {
#include <stdarg.h>
#include "ruby/oniguruma.h"
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility push(default)
+#endif
+
#define ENCODING_INLINE_MAX 1023
#define ENCODING_SHIFT (FL_USHIFT+10)
#define ENCODING_MASK (((VALUE)ENCODING_INLINE_MAX)<<ENCODING_SHIFT)
@@ -312,6 +316,10 @@ void rb_econv_binmode(rb_econv_t *ec);
#define ECONV_AFTER_OUTPUT 0x00020000
/* end of flags for rb_econv_convert */
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility pop
+#endif
+
#if defined(__cplusplus)
#if 0
{ /* satisfy cc-mode */
diff --git a/include/ruby/intern.h b/include/ruby/intern.h
index 98a194d2a6..46b4fe7752 100644
--- a/include/ruby/intern.h
+++ b/include/ruby/intern.h
@@ -28,6 +28,10 @@ extern "C" {
#endif
#include "ruby/st.h"
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility push(default)
+#endif
+
/*
* Functions and variables that are used by more than one source file of
* the kernel.
@@ -841,6 +845,10 @@ VALUE rb_time_succ(VALUE);
void rb_frame_pop(void);
int rb_frame_method_id_and_class(ID *idp, VALUE *klassp);
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility pop
+#endif
+
#if defined(__cplusplus)
#if 0
{ /* satisfy cc-mode */
diff --git a/include/ruby/io.h b/include/ruby/io.h
index f0f83fc329..ba166f8c9a 100644
--- a/include/ruby/io.h
+++ b/include/ruby/io.h
@@ -27,6 +27,10 @@ extern "C" {
#include <stdio_ext.h>
#endif
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility push(default)
+#endif
+
typedef struct rb_io_t {
int fd; /* file descriptor */
FILE *stdio_file; /* stdio ptr for read/write if available */
@@ -165,6 +169,10 @@ void rb_io_read_check(rb_io_t*);
int rb_io_read_pending(rb_io_t*);
DEPRECATED(void rb_read_check(FILE*));
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility pop
+#endif
+
#if defined(__cplusplus)
#if 0
{ /* satisfy cc-mode */
diff --git a/include/ruby/missing.h b/include/ruby/missing.h
index 5b147de6db..f4a5556ddf 100644
--- a/include/ruby/missing.h
+++ b/include/ruby/missing.h
@@ -49,6 +49,10 @@ struct timezone {
#define RUBY_EXTERN extern
#endif
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility push(default)
+#endif
+
#ifndef HAVE_ACOSH
RUBY_EXTERN double acosh(double);
RUBY_EXTERN double asinh(double);
@@ -169,6 +173,10 @@ RUBY_EXTERN int signbit(double x);
RUBY_EXTERN int ffs(int);
#endif
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility pop
+#endif
+
#if defined(__cplusplus)
#if 0
{ /* satisfy cc-mode */
diff --git a/include/ruby/oniguruma.h b/include/ruby/oniguruma.h
index 41628ed4af..2674b010e7 100644
--- a/include/ruby/oniguruma.h
+++ b/include/ruby/oniguruma.h
@@ -97,6 +97,10 @@ extern "C" {
#define ONIG_EXTERN extern
#endif
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility push(default)
+#endif
+
/* PART: character encoding */
#ifndef ONIG_ESCAPE_UCHAR_COLLISION
@@ -789,6 +793,10 @@ const char* onig_version P_((void));
ONIG_EXTERN
const char* onig_copyright P_((void));
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility pop
+#endif
+
#ifdef __cplusplus
#if 0
{ /* satisfy cc-mode */
diff --git a/include/ruby/re.h b/include/ruby/re.h
index c60ab96016..4039ba1800 100644
--- a/include/ruby/re.h
+++ b/include/ruby/re.h
@@ -24,6 +24,10 @@ extern "C" {
#include "ruby/regex.h"
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility push(default)
+#endif
+
typedef struct re_pattern_buffer Regexp;
struct rmatch_offset {
@@ -55,6 +59,11 @@ VALUE rb_reg_regsub(VALUE, VALUE, struct re_registers *, VALUE);
long rb_reg_adjust_startpos(VALUE, VALUE, long, int);
void rb_match_busy(VALUE);
VALUE rb_reg_quote(VALUE);
+regex_t *rb_reg_prepare_re(VALUE re, VALUE str);
+
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility pop
+#endif
#if defined(__cplusplus)
#if 0
diff --git a/include/ruby/regex.h b/include/ruby/regex.h
index a63e2f6a4c..aeb6418d0a 100644
--- a/include/ruby/regex.h
+++ b/include/ruby/regex.h
@@ -24,6 +24,10 @@ extern "C" {
#include "oniguruma.h"
#endif
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility push(default)
+#endif
+
#ifndef ONIG_RUBY_M17N
ONIG_EXTERN OnigEncoding OnigEncDefaultCharEncoding;
@@ -32,6 +36,10 @@ ONIG_EXTERN OnigEncoding OnigEncDefaultCharEncoding;
#endif /* ifndef ONIG_RUBY_M17N */
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility pop
+#endif
+
#if defined(__cplusplus)
#if 0
{ /* satisfy cc-mode */
diff --git a/include/ruby/ruby.h b/include/ruby/ruby.h
index 936493c028..c01d617ba3 100644
--- a/include/ruby/ruby.h
+++ b/include/ruby/ruby.h
@@ -73,6 +73,10 @@ extern "C" {
#include "defines.h"
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility push(default)
+#endif
+
#if defined(HAVE_ALLOCA_H)
#include <alloca.h>
#else
@@ -1447,6 +1451,10 @@ int ruby_vsnprintf(char *str, size_t n, char const *fmt, va_list ap);
#define close ruby_close
#endif
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility pop
+#endif
+
#if defined(__cplusplus)
#if 0
{ /* satisfy cc-mode */
diff --git a/include/ruby/st.h b/include/ruby/st.h
index 27e47b816c..53e82618f1 100644
--- a/include/ruby/st.h
+++ b/include/ruby/st.h
@@ -33,6 +33,10 @@ extern "C" {
# include <inttypes.h>
#endif
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility push(default)
+#endif
+
#if SIZEOF_LONG == SIZEOF_VOIDP
typedef unsigned long st_data_t;
#elif SIZEOF_LONG_LONG == SIZEOF_VOIDP
@@ -125,6 +129,10 @@ st_index_t st_hash_end(st_index_t h);
st_index_t st_hash_start(st_index_t h);
#define st_hash_start(h) ((st_index_t)(h))
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility pop
+#endif
+
#if defined(__cplusplus)
#if 0
{ /* satisfy cc-mode */
diff --git a/include/ruby/util.h b/include/ruby/util.h
index 0c1e1c4ebc..ee8e726572 100644
--- a/include/ruby/util.h
+++ b/include/ruby/util.h
@@ -40,6 +40,10 @@ extern "C" {
#endif
#endif
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility push(default)
+#endif
+
#define scan_oct(s,l,e) (int)ruby_scan_oct(s,l,e)
unsigned long ruby_scan_oct(const char *, size_t, size_t *);
#define scan_hex(s,l,e) (int)ruby_scan_hex(s,l,e)
@@ -80,6 +84,10 @@ double ruby_strtod(const char *, char **);
void ruby_each_words(const char *, void (*)(const char*, int, void*), void *);
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility pop
+#endif
+
#if defined(__cplusplus)
#if 0
{ /* satisfy cc-mode */
diff --git a/include/ruby/version.h b/include/ruby/version.h
index 32b09b3f52..101b5d9c63 100644
--- a/include/ruby/version.h
+++ b/include/ruby/version.h
@@ -36,6 +36,11 @@ extern "C" {
} /* satisfy cc-mode */
#endif
#endif
+
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility push(default)
+#endif
+
/*
* Interfaces from extension libraries.
*
@@ -50,6 +55,11 @@ RUBY_EXTERN const int ruby_patchlevel;
RUBY_EXTERN const char ruby_description[];
RUBY_EXTERN const char ruby_copyright[];
RUBY_EXTERN const char ruby_engine[];
+
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility pop
+#endif
+
#if defined(__cplusplus)
#if 0
{ /* satisfy cc-mode */
diff --git a/include/ruby/vm.h b/include/ruby/vm.h
index ac8e599e90..072d7d6f19 100644
--- a/include/ruby/vm.h
+++ b/include/ruby/vm.h
@@ -19,6 +19,10 @@ extern "C" {
#endif
#endif
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility push(default)
+#endif
+
/* Place holder.
*
* We will prepare VM creation/control APIs on 1.9.2 or later.
@@ -32,6 +36,10 @@ typedef struct rb_vm_struct ruby_vm_t;
/* core API */
int ruby_vm_destruct(ruby_vm_t *vm);
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility pop
+#endif
+
#if defined(__cplusplus)
#if 0
{ /* satisfy cc-mode */
diff --git a/include/ruby/win32.h b/include/ruby/win32.h
index 47a85270a5..b9299883bc 100644
--- a/include/ruby/win32.h
+++ b/include/ruby/win32.h
@@ -8,6 +8,10 @@ extern "C" {
#endif
#endif
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility push(default)
+#endif
+
/*
* Copyright (c) 1993, Intergraph Corporation
*
@@ -662,6 +666,10 @@ in asynchronous_func_t.
typedef uintptr_t (*asynchronous_func_t)(uintptr_t self, int argc, uintptr_t* argv);
uintptr_t rb_w32_asynchronize(asynchronous_func_t func, uintptr_t self, int argc, uintptr_t* argv, uintptr_t intrval);
+#if defined __GNUC__ && __GNUC__ >= 4
+#pragma GCC visibility pop
+#endif
+
#if defined(__cplusplus)
#if 0
{ /* satisfy cc-mode */