
INSOURCE_MAKEFILE() # create an in source makefile for us

INCLUDE_DIRECTORIES(
	${CMAKE_CURRENT_BINARY_DIR}
)

###############################################################################

MIRA_ADD_TEST(SerializationVeryBasicTest
	SOURCE
		SerializationVeryBasicTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(SerializationBasicTest
	SOURCE
		SerializationBasicTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(SerializationPolymorphicTest
	SOURCE
		SerializationPolymorphicTest.C
	LINK_LIBS
		MIRABase
)


MIRA_ADD_LIBRARY(SerializationPolymorphicTestLib
	SHARED
	PACKAGE
		MIRABase
	SOURCE
		SerializationPolymorphicTestLib.C
	LINK_LIBS
		MIRABase
		${BOOST_UNIT_TEST_FRAMEWORK_LIBRARY}
)


MIRA_ADD_TEST(SerializationPolymorphicTestWithLib
	SOURCE
		SerializationPolymorphicTestWithLib.C
	LINK_LIBS
		MIRABase
		SerializationPolymorphicTestLib
		
)

###############################################################################

MIRA_ADD_TEST(SerializationPointerTest
	SOURCE
		SerializationPointerTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(SerializationMultiInheritanceTest
	SOURCE
		SerializationMultiInheritanceTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(SerializationSpecialCasesTest
	SOURCE
		SerializationSpecialCasesTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(SerializationVariantTest
	SOURCE
		SerializationVariantTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(SerializationContainerTest
	SOURCE
		SerializationContainerTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(SerializationContainerExportTest
	SOURCE
		SerializationContainerExportTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(SerializationContainerImportTest
	SOURCE
		SerializationContainerImportTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(SerializationVectorDefaultTest
	SOURCE
		SerializationVectorDefaultTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(SerializationDataTest
	SOURCE
		SerializationDataTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(SerializationEigenTest
	SOURCE
		SerializationEigenTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(SerializationCvMatTest
	SOURCE
		SerializationCvMatTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(SerializationNonIntrusiveTest
	SOURCE
		SerializationNonIntrusiveTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(Benchmark
	SOURCE
		Benchmark.C
	LINK_LIBS
		MIRABase
		${BOOST_SERIALIZATION_LIBRARY}
)

###############################################################################

ADD_EXECUTABLE(BugTests
	BugTests.C
)
TARGET_LINK_LIBRARIES(BugTests
	MIRABase
)

###############################################################################

MIRA_ADD_TEST(PropertyHintTest
	SOURCE
		PropertyHintTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(PropertyTest
	SOURCE
		PropertyTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(RemotePropertyTest
	SOURCE
		RemotePropertyTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(BigJSONTest
	SOURCE
		BigJSONTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(BigXMLTest
	SOURCE
		BigXMLTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(MetaSerializerTest
	SOURCE
		MetaSerializerTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(BinaryJSONConverterTest
	SOURCE
		BinaryJSONConverterTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(SerializationVersionTest
	SOURCE
		SerializationVersionTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(SerializationCompatibilityForceV0Test
	SOURCE
		SerializationCompatibilityForceV0Test.C
	LINK_LIBS
		MIRABase
)

MIRA_ADD_TEST(SerializationCompatibilityForceV2Test
	SOURCE
		SerializationCompatibilityForceV2Test.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(PrintTest
	SOURCE
		PrintTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(SerializationDesireVersionTest
	SOURCE
		SerializationDesireVersionTest.C
	LINK_LIBS
		MIRABase
)

###############################################################################

MIRA_ADD_TEST(IgnoredXMLTagsTest
	SOURCE
		IgnoredXMLTagsTest.C
	LINK_LIBS
		MIRABase
)

