A kovetkezo a problemam:
Tobb kulonallo xls-bol egy, amolyan compiler programmal letre kell egy-egy egyedi formatumu filet. Ezek .slc kiterjesztest kapnak. Az .slc fileokat egy masik program dolgozza fel, ugyanugy mint egy linker. A linker egyetlen filet ad ki magabol. Ahogyan ez C/C++ eseten megszokott. Ezeknek a lepeseknek az automatizalasara szeretnek irni egy SConstruct filet. Magamtol ennyire jutottam:
env = Environment()
cmplr = Builder(action = 'cat < $SOURCE > $TARGET',
suffix = '.slc',
src_suffix = '.xls')
lnkr = Builder(action = 'cat $SOURCES >> $TARGET',
suffix = '.kdb',
src_suffix = '.slc')
env['BUILDERS']['MyCompiler'] = cmplr
env['BUILDERS']['MyLinker'] = lnkr
srcs = [File('file1.xls'), File('file2.xls')]
slces = env.MyCompiler(source = srcs)
print slces
env.MyLinker(target = 'final.kdb', source = slces)
A compilert is, es a linkert is a cat helyettesiti az egyszeruseg kedveert. A problemam az, hogy csak a file1.xls-re fut le compile resz. Hogyan lehetne ezt orvosolni?
- 919 megtekintés
Hozzászólások
Igy mukodik.
env = Environment()
cmplr = Builder(action = 'cat < $SOURCE > $TARGET')
lnkr = Builder(action = 'cat $SOURCES >> $TARGET')
env['BUILDERS']['MyCompiler'] = cmplr
env['BUILDERS']['MyLinker'] = lnkr
slcs = env.MyCompiler('file1.slc', 'file1.xls')
slcs = slcs + env.MyCompiler('file2.slc', 'file2.xls')
env.MyLinker(target = 'final.kdb', source = slcs)
Mivel keves file-rol van szo, a szamuk nagyjabol allando, ezert tokeletesen elfogadhato ez a megoldas.
- A hozzászóláshoz be kell jelentkezni