# to INSTALL.scons for detailed instructions.
#
-import os, sys, copy, cPickle, glob
+import os, sys, copy, cPickle, glob, time
# scons_utils.py defines a few utility function
sys.path.append('config')
# lib/lyx2lyx/lyx2lyx_version.py.in
# PACKAGE_VERSION
# src/version.C.in
-# PACKAGE_VERSION, VERSION_INFO
+# PACKAGE_VERSION, LYX_DATE, VERSION_INFO
# full path name is used to build msvs project files
# and to replace TOP_SRCDIR in package.C
env['TOP_SRCDIR'] = Dir(top_src_dir).abspath
# needed by src/version.C.in => src/version.C
env['PACKAGE_VERSION'] = package_version
+env['LYX_DATE'] = time.asctime()
# determine share_dir etc
packaging_method = env.get('packaging')
'CheckCXXGlobalCstd' : utils.checkCXXGlobalCstd,
'CheckLC_MESSAGES' : utils.checkLC_MESSAGES,
'CheckIconvConst' : utils.checkIconvConst,
+ 'CheckSizeOfWChar' : utils.checkSizeOfWChar,
}
)
or (use_vc and not conf.CheckLibWithHeader('zdll', 'zlib.h', 'C')):
print 'Did not find zdll.lib or zlib.h, exiting!'
Exit(1)
- has_iconv = conf.CheckLib('iconv')
- has_libiconv = conf.CheckLib('libiconv')
- if has_iconv:
- env['ICONV_LIB'] = 'iconv'
- elif has_libiconv:
- env['ICONV_LIB'] = 'libiconv'
+ if conf.CheckLib('iconv'):
+ env['ICONV_LIB'] = ['iconv']
+ elif conf.CheckLib('libiconv'):
+ env['ICONV_LIB'] = ['libiconv']
+ elif conf.CheckFunc('iconv_open'):
+ env['ICONV_LIB'] = []
else:
print 'Did not find iconv or libiconv, exiting!'
Exit(1)
'Define if you want assertions to be enabled in the code'
),
],
+ types = [
+ ('wchar_t', 'HAVE_WCHAR_T', None),
+ ],
config_post = '''
#if defined(HAVE_OSTREAM) && defined(HAVE_LOCALE) && defined(HAVE_SSTREAM)
#ifdef __CYGWIN__
# define BOOST_POSIX 1
+# define BOOST_POSIX_API 1
+# define BOOST_POSIX_PATH 1
#endif
#define BOOST_ALL_NO_LIB 1
# check arg types of select function
(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
result = utils.createConfigFile(conf,
],
types = [
('std::istreambuf_iterator<std::istream>', 'HAVE_DECL_ISTREAMBUF_ITERATOR',
- '#include <streambuf>\n#include <istream>')
+ '#include <streambuf>\n#include <istream>'),
+ ('wchar_t', 'HAVE_WCHAR_T', None),
],
libs = [
('gdi32', 'HAVE_LIBGDI32'),
'libstdc++ pedantic debug mode'
),
(os.name != 'nt', 'BOOST_POSIX',
- 'Indicates to boost which API to use (posix or windows).'
+ 'Indicates to boost < 1.34 which API to use (posix or windows).'
+ ),
+ (os.name != 'nt', 'BOOST_POSIX_API',
+ 'Indicates to boost 1.34 which API to use (posix or windows).'
+ ),
+ (os.name != 'nt', 'BOOST_POSIX_PATH',
+ 'Indicates to boost 1.34 which path style to use (posix or windows).'
),
(spell_engine is not None, spell_engine,
'Spell engine to use'
"Define to the type of arg 2, 3, 4 for `select'."),
('#define SELECT_TYPE_ARG5 %s' % select_arg5,
"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 = '''/************************************************************
** You should not need to change anything beyond this point */
),
],
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'
)
frontend_libs = [x + qt_lib_suffix for x in qt_libs]
+system_libs = env['ICONV_LIB']
if platform_name in ['win32', 'cygwin']:
# the final link step needs stdc++ to succeed under mingw
# FIXME: shouldn't g++ automatically link to stdc++?
if use_vc:
- system_libs = [env['ICONV_LIB'], 'ole32', 'shlwapi', 'shell32', 'advapi32', 'zdll']
+ system_libs += ['ole32', 'shlwapi', 'shell32', 'advapi32', 'zdll']
else:
- system_libs = [env['ICONV_LIB'], 'shlwapi', 'stdc++', 'z']
+ system_libs += ['shlwapi', 'stdc++', 'z']
elif platform_name == 'cygwin' and env['X11']:
- system_libs = [env['ICONV_LIB'], 'GL', 'Xmu', 'Xi', 'Xrender', 'Xrandr',
+ system_libs += ['GL', 'Xmu', 'Xi', 'Xrender', 'Xrandr',
'Xcursor', 'Xft', 'freetype', 'fontconfig', 'Xext', 'X11', 'SM', 'ICE',
'resolv', 'pthread', 'z']
else:
- system_libs = [env['ICONV_LIB'], 'z']
+ system_libs += ['z']
libs = [
('HAVE_LIBGDI32', 'gdi32'),