mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-11-27 03:36:39 +00:00
Scons: add SIZEOF_WCHAR_T
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@14997 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
5889f636c0
commit
dd0e06b339
@ -653,6 +653,7 @@ conf = Configure(env,
|
|||||||
'CheckCXXGlobalCstd' : utils.checkCXXGlobalCstd,
|
'CheckCXXGlobalCstd' : utils.checkCXXGlobalCstd,
|
||||||
'CheckLC_MESSAGES' : utils.checkLC_MESSAGES,
|
'CheckLC_MESSAGES' : utils.checkLC_MESSAGES,
|
||||||
'CheckIconvConst' : utils.checkIconvConst,
|
'CheckIconvConst' : utils.checkIconvConst,
|
||||||
|
'CheckSizeOfWChar' : utils.checkSizeOfWChar,
|
||||||
}
|
}
|
||||||
)
|
)
|
||||||
|
|
||||||
@ -981,6 +982,13 @@ if not fast_start or not os.path.isfile(boost_config_h) \
|
|||||||
# check arg types of select function
|
# check arg types of select function
|
||||||
(select_arg1, select_arg234, select_arg5) = conf.CheckSelectArgType()
|
(select_arg1, select_arg234, select_arg5) = conf.CheckSelectArgType()
|
||||||
|
|
||||||
|
# check the size of wchar_t
|
||||||
|
sizeof_wchar_t = conf.CheckSizeOfWChar()
|
||||||
|
# something wrong
|
||||||
|
if sizeof_wchar_t == 0:
|
||||||
|
print 'Error: Can not determine the size of wchar_t.'
|
||||||
|
Exit(1)
|
||||||
|
|
||||||
#
|
#
|
||||||
# create config.h
|
# create config.h
|
||||||
result = utils.createConfigFile(conf,
|
result = utils.createConfigFile(conf,
|
||||||
@ -1148,6 +1156,8 @@ int count()
|
|||||||
"Define to the type of arg 2, 3, 4 for `select'."),
|
"Define to the type of arg 2, 3, 4 for `select'."),
|
||||||
('#define SELECT_TYPE_ARG5 %s' % select_arg5,
|
('#define SELECT_TYPE_ARG5 %s' % select_arg5,
|
||||||
"Define to the type of arg 5 for `select'."),
|
"Define to the type of arg 5 for `select'."),
|
||||||
|
('#define SIZEOF_WCHAR_T %d' % sizeof_wchar_t,
|
||||||
|
'Define to be the size of type wchar_t'),
|
||||||
],
|
],
|
||||||
config_post = '''/************************************************************
|
config_post = '''/************************************************************
|
||||||
** You should not need to change anything beyond this point */
|
** You should not need to change anything beyond this point */
|
||||||
@ -1281,7 +1291,9 @@ int mkstemp(char*);
|
|||||||
),
|
),
|
||||||
],
|
],
|
||||||
extra_items = [
|
extra_items = [
|
||||||
('#define HAVE_ICONV 1', 'Define if iconv or libiconv is found')
|
('#define HAVE_ICONV 1', 'Define if iconv or libiconv is found'),
|
||||||
|
('#define SIZEOF_WCHAR_T %d' % sizeof_wchar_t,
|
||||||
|
'Define to be the size of type wchar_t'),
|
||||||
],
|
],
|
||||||
config_post = '#endif'
|
config_post = '#endif'
|
||||||
)
|
)
|
||||||
|
@ -255,6 +255,26 @@ int main() {
|
|||||||
return ret
|
return ret
|
||||||
|
|
||||||
|
|
||||||
|
def checkSizeOfWChar(conf):
|
||||||
|
''' check the size of wchar '''
|
||||||
|
check_sizeof_wchar = '''
|
||||||
|
int i[ ( sizeof(wchar_t)==%d ? 1 : -1 ) ];
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
return 0;
|
||||||
|
}
|
||||||
|
'''
|
||||||
|
conf.Message('Check the size of wchar_t... ')
|
||||||
|
if conf.TryLink(check_sizeof_wchar % 2, '.cpp'):
|
||||||
|
ret = 2
|
||||||
|
elif conf.TryLink(check_sizeof_wchar % 4, '.cpp'):
|
||||||
|
ret = 4
|
||||||
|
else:
|
||||||
|
ret = 0
|
||||||
|
conf.Result(str(ret))
|
||||||
|
return ret
|
||||||
|
|
||||||
|
|
||||||
def createConfigFile(conf, config_file,
|
def createConfigFile(conf, config_file,
|
||||||
config_pre = '', config_post = '',
|
config_pre = '', config_post = '',
|
||||||
headers = [], functions = [], types = [], libs = [],
|
headers = [], functions = [], types = [], libs = [],
|
||||||
|
Loading…
Reference in New Issue
Block a user