create symlinks in man using symlinkBuilder
This commit is contained in:
parent
ae2b73af10
commit
9e1cb9abdd
|
|
@ -14,9 +14,11 @@ env = Environment(CPPPATH='#/include', LIBPATH=['/usr/lib','/usr/local/lib'])
|
|||
|
||||
# Import GZip builder
|
||||
import gzipBuilder
|
||||
env.Append(BUILDERS = {'GZip' : Builder(action=gzipBuilder.GZip)})
|
||||
|
||||
#import environment
|
||||
# Import Symlink builder
|
||||
import symlinkBuilder
|
||||
env.Append(BUILDERS = {'GZip' : Builder(action=gzipBuilder.GZip),
|
||||
'Symlink': Builder(action=symlinkBuilder.Symlink)})
|
||||
# Import environment
|
||||
from importer import importEnvironment,importVariable
|
||||
importEnvironment(env,'HOME')
|
||||
importVariable(env,'CC')
|
||||
|
|
|
|||
|
|
@ -36,14 +36,7 @@ for page in MAN7:
|
|||
# install symlinks for man pages
|
||||
if 'install' in COMMAND_LINE_TARGETS:
|
||||
for pair in SYMLINKS:
|
||||
try:
|
||||
unlink(MANDIR+'/man1/'+pair[1]+'.1.gz')
|
||||
except OSError:
|
||||
pass
|
||||
try:
|
||||
symlink(MANDIR+'/man1/'+pair[0]+'.1.gz', MANDIR+'/man1/'+pair[1]+'.1.gz')
|
||||
except OSError:
|
||||
pass
|
||||
env.Symlink(MANDIR+'/man1/'+pair[1]+'.1.gz',MANDIR+'/man1/'+pair[0]+'.1.gz')
|
||||
|
||||
env.Alias("install",MANDIR)
|
||||
|
||||
|
|
|
|||
32
site_scons/symlinkBuilder.py
Normal file
32
site_scons/symlinkBuilder.py
Normal file
|
|
@ -0,0 +1,32 @@
|
|||
#
|
||||
# Symlink SCons builder
|
||||
#
|
||||
# Version 1.0
|
||||
# 02-Aug-2009
|
||||
#
|
||||
|
||||
def Symlink(target, source, env=None):
|
||||
"""Create symlink target pointing to source.
|
||||
|
||||
This builder creates symlinks named target pointing to source.
|
||||
Target is removed if exists.
|
||||
|
||||
Keyword arguments:
|
||||
target -- list of symlink targets
|
||||
source -- list of files to be compressed
|
||||
env -- SCons environment (not used)
|
||||
"""
|
||||
import os
|
||||
if not isinstance(target, list):
|
||||
raise TypeError,"target must be list"
|
||||
elif not isinstance(source, list):
|
||||
raise TypeError,"source must be list"
|
||||
if len(target) != len(source):
|
||||
raise ValueError,"target and source list must have same size"
|
||||
for i in range(0,len(target)):
|
||||
try:
|
||||
os.unlink(str(target[i]))
|
||||
except OSError:
|
||||
pass
|
||||
os.symlink(str(source[i]),str(target[i]))
|
||||
return None
|
||||
Loading…
Reference in New Issue
Block a user