import os
import sys
+from os.path import isdir
# This file defines how to build a particular configuration of M5
# based on variable settings in the 'env' build environment.
extra_libraries = []
env.Append(LIBS=['z'])
-if env['USE_MYSQL']:
+if isdir('/usr/lib64/mysql') or isdir('/usr/lib/mysql') or \
+ isdir('/usr/local/lib/mysql'):
+ print 'Compiling with MySQL support!'
+ env.Append(LIBPATH=['/usr/lib64/mysql', '/usr/local/lib/mysql/',
+ '/usr/lib/mysql'])
+ env.Append(CPPPATH=['/usr/local/include/mysql', '/usr/include/mysql'])
sources += mysql_sources
env.Append(CPPDEFINES = 'USE_MYSQL')
env.Append(CPPDEFINES = 'STATS_BINNING')
- env.Append(CPPPATH=['/usr/local/include/mysql', '/usr/include/mysql'])
- if os.path.isdir('/usr/lib64'):
- env.Append(LIBPATH=['/usr/lib64/mysql'])
- else:
- env.Append(LIBPATH=['/usr/lib/mysql/'])
env.Append(LIBS=['mysqlclient'])
-
###################################################
#
# Special build rules.
'KERNEL' : KernelConfig
}
-# Enable detailed full-system binning.
-def MeasureOpt(env):
- env.Replace(USE_MYSQL = True)
- env.Append(CPPDEFINES = 'FS_MEASURE')
-
-# Enable MySql database output for stats.
-def MySqlOpt(env):
- env.Replace(USE_MYSQL = True)
-
# Disable FastAlloc object allocation.
def NoFastAllocOpt(env):
env.Append(CPPDEFINES = 'NO_FAST_ALLOC')
# Configuration options map.
options_map = {
- 'MEASURE' : MeasureOpt,
- 'MYSQL' : MySqlOpt,
'NO_FAST_ALLOC' : NoFastAllocOpt
}