| Index: SConstruct
|
| ===================================================================
|
| --- SConstruct (revision 13219)
|
| +++ SConstruct (working copy)
|
| @@ -234,6 +234,9 @@
|
| 'gdbjit:on': {
|
| 'CPPDEFINES': ['ENABLE_GDB_JIT_INTERFACE']
|
| },
|
| + 'vtunejit:on': {
|
| + 'CPPDEFINES': ['ENABLE_VTUNE_JIT_INTERFACE']
|
| + },
|
| 'compress_startup_data:bz2': {
|
| 'CPPDEFINES': ['COMPRESS_STARTUP_DATA_BZ2']
|
| }
|
| @@ -293,6 +296,9 @@
|
| 'LINKFLAGS': ['/LTCG:PGO']
|
| }
|
| }
|
| + },
|
| + 'vtunejit:on': {
|
| + 'CPPDEFINES': ['ENABLE_VTUNE_JIT_INTERFACE']
|
| }
|
| }
|
| }
|
| @@ -488,6 +494,9 @@
|
| 'CXXFLAGS': ['-fno-rtti', '-fno-exceptions'],
|
| 'LINKFLAGS': ['$CCFLAGS'],
|
| },
|
| + 'vtunejit:on': {
|
| + 'LIBS': ['jitprofiling'],
|
| + },
|
| 'os:linux': {
|
| 'LIBS': ['pthread'],
|
| },
|
| @@ -611,6 +620,10 @@
|
| 'all': {
|
| 'LIBS': ['winmm', 'ws2_32']
|
| },
|
| + 'vtunejit:on': {
|
| + 'LIBS': ['jitprofiling'],
|
| + 'LINKFLAGS': ['/DEBUG']
|
| + },
|
| 'verbose:off': {
|
| 'CCFLAGS': ['/nologo'],
|
| 'LINKFLAGS': ['/NOLOGO']
|
| @@ -1031,6 +1044,11 @@
|
| 'default': 'off',
|
| 'help': 'enable GDB JIT interface'
|
| },
|
| + 'vtunejit': {
|
| + 'values': ['on', 'off'],
|
| + 'default': 'off',
|
| + 'help': 'enable VTune JIT interface'
|
| + },
|
| 'library': {
|
| 'values': ['static', 'shared'],
|
| 'default': 'static',
|
| @@ -1301,6 +1319,8 @@
|
| Abort("Profiling on windows only supported for static library.")
|
| if env['gdbjit'] == 'on' and ((env['os'] != 'linux' and env['os'] != 'macos') or (env['arch'] != 'ia32' and env['arch'] != 'x64' and env['arch'] != 'arm')):
|
| Abort("GDBJIT interface is supported only for Intel-compatible (ia32 or x64) Linux/OSX target.")
|
| + if env['vtunejit'] == 'on' and (env['arch'] != 'ia32' and env['arch'] != 'x64'):
|
| + Abort("VTUNEJIT interface is supported only for Intel architectures (ia32 or x64)")
|
| if env['os'] == 'win32' and env['soname'] == 'on':
|
| Abort("Shared Object soname not applicable for Windows.")
|
| if env['soname'] == 'on' and env['library'] == 'static':
|
|
|