| Index: src/flag-definitions.h | 
| diff --git a/src/flag-definitions.h b/src/flag-definitions.h | 
| index 40a3f7dcdf09eb5a2a26b448e2172267c26deb22..59d6c24441013a759a451713e04db4845b521e9b 100644 | 
| --- a/src/flag-definitions.h | 
| +++ b/src/flag-definitions.h | 
| @@ -23,14 +23,21 @@ | 
| // this will just be an extern declaration, but for a readonly flag we let the | 
| // compiler make better optimizations by giving it the value. | 
| #if defined(FLAG_MODE_DECLARE) | 
| -#define FLAG_FULL(ftype, ctype, nam, def, cmt) extern ctype FLAG_##nam; | 
| +#define FLAG_FULL(ftype, ctype, nam, def, cmt) \ | 
| +  V8_EXPORT_PRIVATE extern ctype FLAG_##nam; | 
| #define FLAG_READONLY(ftype, ctype, nam, def, cmt) \ | 
| static ctype const FLAG_##nam = def; | 
|  | 
| // We want to supply the actual storage and value for the flag variable in the | 
| // .cc file.  We only do this for writable flags. | 
| #elif defined(FLAG_MODE_DEFINE) | 
| -#define FLAG_FULL(ftype, ctype, nam, def, cmt) ctype FLAG_##nam = def; | 
| +#ifdef USING_V8_SHARED | 
| +#define FLAG_FULL(ftype, ctype, nam, def, cmt) \ | 
| +  V8_EXPORT_PRIVATE extern ctype FLAG_##nam; | 
| +#else | 
| +#define FLAG_FULL(ftype, ctype, nam, def, cmt) \ | 
| +  V8_EXPORT_PRIVATE ctype FLAG_##nam = def; | 
| +#endif | 
|  | 
| // We need to define all of our default values so that the Flag structure can | 
| // access them by pointer.  These are just used internally inside of one .cc, | 
|  |