SConscript(['xmllexer/SConscript'])

Import('*')

makelexer = env.Program('makelexer', 'lexcode.cpp',
CPPPATH = env.Dictionary()['CPPPATH'] + ['#lexgen'],
LIBPATH = '#lexgen',
LIBS = 'lexgen'
)

lib_cpppath = ['.'] + env.Dictionary()['CPPPATH'] + [
	'#foundation', '#boost', '#main', '#main/confio/xmllexer',
	'#../ACE_wrappers'
]

pch = env.PCH('pch.cpp', CPPPATH = lib_cpppath)[0];

env.Command(['ConfLexerCore.h', 'ConfLexerCore.cpp'], makelexer,
makelexer[0].abspath+' ConfLexerCore ${TARGETS[0]} ${TARGETS[1]} '
'ConfLexerDefinitions ConfLexerDefinitions.h ConfIO ConfIO.h'
)

ConfLexerCore = env.Object('ConfLexerCore.cpp',
CPPPATH = lib_cpppath
)

env.StaticLibrary('confio', [
ConfLexerCore, 'PortSet.cpp', 'Conf.cpp', 'ConfIO.cpp',
'ConfigFileStructure.cpp', 'IPv4SubnetParser.cpp', 'Forwarding.cpp',
'UrlPatterns.cpp', 'CombinedUrlPatterns.cpp', 'UrlsFileStructure.cpp',
'RegexFilterDescriptor.cpp', 'ContentFilterList.cpp',
'FilterFileStructure.cpp', 'TextPattern.cpp', 'pch.obj'
],
CPPPATH = lib_cpppath,
PCH = pch,
PCHSTOP = 'pch.h'
)
