amxmodx/modules/mysqlx/AMBuilder
SW ff2b5142f9
fix gcc 12.1 compilation (#1056)
Co-authored-by: Flummi <git@srv.fail>
2022-07-17 18:05:27 -07:00

73 lines
1.9 KiB
Python

# vim: set sts=2 ts=8 sw=2 tw=99 et ft=python:
import os.path
if AMXX.mysql_path:
binary = AMXX.MetaModule(builder, 'mysql')
binary.compiler.cxxincludes += [
os.path.join(AMXX.mysql_path, 'include'),
os.path.join(builder.currentSourcePath, 'mysql'),
os.path.join(builder.currentSourcePath, 'thread'),
]
binary.compiler.defines += [
'SM_DEFAULT_THREADER',
'HAVE_STDINT_H',
]
binary.sources = []
if builder.target_platform == 'linux' or builder.target_platform == 'mac':
binary.compiler.defines += ['stricmp=strcasecmp']
binary.compiler.linkflags += [
os.path.join(AMXX.mysql_path, 'lib', 'libmysqlclient_r.a'),
'-lpthread',
'-lm',
]
if builder.target_platform == 'linux':
binary.compiler.linkflags += [
'-lrt'
]
elif builder.target_platform == 'windows':
binary.compiler.linkflags += [
os.path.join(AMXX.mysql_path, 'lib', 'mysqlclient.lib'),
'ws2_32.lib',
'/EXPORT:GiveFnptrsToDll=_GiveFnptrsToDll@8,@1',
'/SECTION:.data,RW'
]
if binary.compiler.vendor == 'msvc' and binary.compiler.version >= 1900:
binary.sources += [
'../../public/msvc/msvc15hack.c'
]
binary.compiler.linkflags += [AMXX.zlib.binary]
binary.sources += [
'basic_sql.cpp',
'handles.cpp',
'module.cpp',
'threading.cpp',
'../../public/sdk/amxxmodule.cpp',
'oldcompat_sql.cpp',
'thread/BaseWorker.cpp',
'thread/ThreadWorker.cpp',
'mysql/MysqlQuery.cpp',
'mysql/MysqlResultSet.cpp',
'mysql/MysqlDatabase.cpp',
'mysql/MysqlDriver.cpp',
]
if builder.target_platform == 'windows':
binary.sources += ['version.rc']
if builder.target_platform == 'windows':
binary.sources += [
'thread/WinThreads.cpp',
]
else:
binary.sources += [
'thread/PosixThreads.cpp',
]
AMXX.modules += [builder.Add(binary)]