mirror of
https://git.lyx.org/repos/lyx.git
synced 2024-12-23 05:25:26 +00:00
Scons: get version info from configure.ac, add fonts and postinstall script for cygwin
git-svn-id: svn://svn.lyx.org/lyx/lyx-devel/trunk@15158 a592a061-630c-0410-9148-cb99ea01b6c8
This commit is contained in:
parent
a9ddcfc77c
commit
a8354d3db7
@ -53,8 +53,10 @@ else:
|
||||
|
||||
# some global settings
|
||||
#
|
||||
package_version = '1.5.0svn'
|
||||
package_cygwin_version = '1.5.0svn-1'
|
||||
# get version number from configure.ac so that JMarc does
|
||||
# not have to change SConstruct during lyx release
|
||||
package_version = utils.getVerFromConfigure(top_src_dir)
|
||||
package_cygwin_version = '%s-1' % package_version
|
||||
boost_version = '1_33_1'
|
||||
|
||||
devel_version = True
|
||||
@ -2252,6 +2254,15 @@ if 'install' in targets:
|
||||
env.Install(Cygwin_Doc, [os.path.join(env.subst('$TOP_SRCDIR'), x) for x in \
|
||||
['INSTALL', 'README', 'README.Cygwin', 'RELEASE-NOTES', 'COPYING', 'ANNOUNCE']])
|
||||
Alias('install', Cygwin_Doc)
|
||||
# cygwin fonts also need to be installed
|
||||
env.Install(os.path.join(share_dest_dir, 'font'),
|
||||
[env.subst('$TOP_SRC_DIR/development/Win32/packaging/bakoma/%s' % file) \
|
||||
for file in win32_bakoma_fonts])
|
||||
# we also need a post installation script
|
||||
tmp_script = utils.installCygwinPostinstallScript('/tmp')
|
||||
postinstall_script = os.path.join(dest_dir, 'etc', 'postinstall', 'lyx.sh')
|
||||
env.Install(postinstall_script, tmp_script)
|
||||
Alias('install', postinstall_script)
|
||||
|
||||
# lyx1.4.x does not have lyx2lyx_version.py.in
|
||||
if os.path.isfile(env.subst('$TOP_SRCDIR/lib/lyx2lyx/lyx2lyx_version.py.in')):
|
||||
|
@ -2658,3 +2658,15 @@ lib_lyx2lyx_files = Split('''
|
||||
test_parser_tools.py
|
||||
''')
|
||||
|
||||
win32_bakoma_fonts = Split('''
|
||||
Readme.txt
|
||||
Licence.txt
|
||||
cmex10.ttf
|
||||
cmr10.ttf
|
||||
eufm10.ttf
|
||||
msbm10.ttf
|
||||
cmmi10.ttf
|
||||
cmsy10.ttf
|
||||
msam10.ttf
|
||||
wasy10.ttf
|
||||
''')
|
||||
|
@ -16,6 +16,24 @@ import os, sys, re, shutil, glob
|
||||
from SCons.Util import WhereIs
|
||||
|
||||
|
||||
def getVerFromConfigure(path):
|
||||
" get lyx version from the AC_INIT line of configure.ac "
|
||||
try:
|
||||
config = open(os.path.join(path, 'configure.ac'))
|
||||
except:
|
||||
print "Can not open configure.ac. "
|
||||
return 'x.x.x'
|
||||
# find a line like follows
|
||||
# AC_INIT(LyX,1.4.4svn,[lyx-devel@lists.lyx.org],[lyx])
|
||||
pat = re.compile('AC_INIT\([^,]+,([^,]+),')
|
||||
for line in config.readlines():
|
||||
if pat.match(line):
|
||||
(version,) = pat.match(line).groups()
|
||||
return version.strip()
|
||||
return 'x.x.x'
|
||||
|
||||
|
||||
|
||||
def writeToFile(filename, lines, append = False):
|
||||
" utility function: write or append lines to filename "
|
||||
# create directory if needed
|
||||
@ -601,6 +619,27 @@ SECTIONS
|
||||
return(ld_script)
|
||||
|
||||
|
||||
def installCygwinPostinstallScript(path):
|
||||
''' Install lyx.sh '''
|
||||
postinstall_script = os.path.join(path, 'lyx.sh')
|
||||
script = open(postinstall_script, 'w')
|
||||
script.write('''#!/bin/sh
|
||||
|
||||
# Add /usr/share/lyx/fonts to /etc/fonts/local.conf
|
||||
# if it is not already there.
|
||||
if [ -f /etc/fonts/local.conf ]; then
|
||||
grep -q /usr/share/lyx/fonts /etc/fonts/local.conf
|
||||
if [ $? -ne 0 ]; then
|
||||
sed 's/^<\/fontconfig>/<dir>\/usr\/share\/lyx\/fonts<\/dir>\n<\/fontconfig>/' /etc/fonts/local.conf > /etc/fonts/local.conf.tmp
|
||||
mv -f /etc/fonts/local.conf.tmp /etc/fonts/local.conf
|
||||
fc-cache /usr/share/lyx/fonts
|
||||
fi
|
||||
fi
|
||||
''')
|
||||
script.close()
|
||||
return(postinstall_script)
|
||||
|
||||
|
||||
try:
|
||||
# these will be used under win32
|
||||
import win32file
|
||||
|
Loading…
Reference in New Issue
Block a user