project(libtwinkle-parser)

BISON_TARGET(MyParser parser.yxx ${CMAKE_CURRENT_BINARY_DIR}/parser.cxx)
FLEX_TARGET(MyScanner scanner.lxx ${CMAKE_CURRENT_BINARY_DIR}/scanner.cxx)
ADD_FLEX_BISON_DEPENDENCY(MyScanner MyParser)

include_directories(${CMAKE_CURRENT_SOURCE_DIR})

set(LIBTWINKLE_PARSER-SRCS
	challenge.cpp
	coding.cpp
	credentials.cpp
	definitions.cpp
	hdr_accept.cpp
	hdr_accept_encoding.cpp
	hdr_accept_language.cpp
	hdr_alert_info.cpp
	hdr_allow.cpp
	hdr_allow_events.cpp
	hdr_auth_info.cpp
	hdr_authorization.cpp
	hdr_call_id.cpp
	hdr_call_info.cpp
	hdr_contact.cpp
	hdr_content_disp.cpp
	hdr_content_encoding.cpp
	hdr_content_language.cpp
	hdr_content_length.cpp
	hdr_content_type.cpp
	hdr_cseq.cpp
	hdr_date.cpp
	hdr_error_info.cpp
	hdr_event.cpp
	hdr_expires.cpp
	hdr_from.cpp
	hdr_in_reply_to.cpp
	hdr_max_forwards.cpp
	hdr_min_expires.cpp
	hdr_mime_version.cpp
	hdr_organization.cpp
	hdr_priority.cpp
	hdr_privacy.cpp
	hdr_p_asserted_identity.cpp
	hdr_p_preferred_identity.cpp
	hdr_proxy_authenticate.cpp
	hdr_proxy_authorization.cpp
	hdr_proxy_require.cpp
	hdr_rack.cpp
	hdr_record_route.cpp
	hdr_refer_sub.cpp
	hdr_refer_to.cpp
	hdr_referred_by.cpp
	hdr_replaces.cpp
	hdr_reply_to.cpp
	hdr_require.cpp
	hdr_request_disposition.cpp
	hdr_retry_after.cpp
	hdr_route.cpp
	hdr_rseq.cpp
	hdr_server.cpp
	hdr_service_route.cpp
	hdr_sip_etag.cpp
	hdr_sip_if_match.cpp
	hdr_subject.cpp
	hdr_subscription_state.cpp
	hdr_supported.cpp
	hdr_timestamp.cpp
	hdr_to.cpp
	hdr_unsupported.cpp
	hdr_user_agent.cpp
	hdr_via.cpp
	hdr_warning.cpp
	hdr_www_authenticate.cpp
	header.cpp
	identity.cpp
	media_type.cpp
	milenage.cpp
	parameter.cpp
	parse_ctrl.cpp
	${CMAKE_CURRENT_BINARY_DIR}/parser.cxx
	request.cpp
	response.cpp
	rijndael.cpp
	route.cpp
	${CMAKE_CURRENT_BINARY_DIR}/scanner.cxx
	sip_body.cpp
	sip_message.cpp
)

add_library(libtwinkle-parser OBJECT ${LIBTWINKLE_PARSER-SRCS})
