PROJECT(htmllexer)

ADD_EXECUTABLE(make_htmllexer lexcode.cpp)
TARGET_LINK_LIBRARIES(make_htmllexer lexgen)

GET_TARGET_PROPERTY(make_htmllexer_exe make_htmllexer LOCATION)

ADD_CUSTOM_COMMAND(
	OUTPUT "${htmllexer_BINARY_DIR}/HtmlLexerCore.h"
	       "${htmllexer_BINARY_DIR}/HtmlLexerCore.cpp"
	COMMAND "${make_htmllexer_exe}" HtmlLexerCore
		"${htmllexer_BINARY_DIR}/HtmlLexerCore.h"
		"${htmllexer_BINARY_DIR}/HtmlLexerCore.cpp"
		HtmlLexerDefinitions HtmlLexerDefinitions.h
		HtmlLexer HtmlLexer.h
	DEPENDS make_htmllexer HtmlLexerDefinitions.h
)

SET(
	built_sources
	"${htmllexer_BINARY_DIR}/HtmlLexerCore.h"
	"${htmllexer_BINARY_DIR}/HtmlLexerCore.cpp"
)

SET_SOURCE_FILES_PROPERTIES(
	${built_sources} PROPERTIES
	GENERATED TRUE
)

INCLUDE_DIRECTORIES(
	"${htmllexer_BINARY_DIR}"
	"${htmllexer_SOURCE_DIR}"
	"${lexgen_SOURCE_DIR}"
)

ADD_LIBRARY(
	htmllexer STATIC
	HtmlLexer.h HtmlLexerDefinitions.h
	${built_sources}
)
