ENH: Adding C++-only test.

This commit is contained in:
Brad King 2006-07-21 11:43:26 -04:00
parent 0189ce3424
commit 673e3f8964
6 changed files with 59 additions and 0 deletions

View File

@ -0,0 +1,8 @@
# a simple CXX only test case
project (cxxonly CXX)
set(CMAKE_DEBUG_POSTFIX "_test_debug_postfix")
add_library(testcxx1 STATIC libcxx1.cxx)
add_library(testcxx2 SHARED libcxx2.cxx)
add_executable (cxxonly cxxonly.cxx)
target_link_libraries(cxxonly testcxx1 testcxx2)

19
Tests/CxxOnly/cxxonly.cxx Normal file
View File

@ -0,0 +1,19 @@
#include "libcxx1.h"
#include "libcxx2.h"
#include <stdio.h>
int main ()
{
if ( LibCxx1Class::Method() != 2.0 )
{
printf("Problem with libcxx1\n");
return 1;
}
if ( LibCxx2Class::Method() != 1.0 )
{
printf("Problem with libcxx2\n");
return 1;
}
return 0;
}

View File

@ -0,0 +1,6 @@
#include "libcxx1.h"
float LibCxx1Class::Method()
{
return 2.0;
}

5
Tests/CxxOnly/libcxx1.h Normal file
View File

@ -0,0 +1,5 @@
class LibCxx1Class
{
public:
static float Method();
};

View File

@ -0,0 +1,6 @@
#include "libcxx2.h"
float LibCxx2Class::Method()
{
return 1.0;
}

15
Tests/CxxOnly/libcxx2.h Normal file
View File

@ -0,0 +1,15 @@
#ifdef _WIN32
# ifdef testcxx2_EXPORTS
# define CM_TEST_LIB_EXPORT __declspec( dllexport )
# else
# define CM_TEST_LIB_EXPORT __declspec( dllimport )
# endif
#else
# define CM_TEST_LIB_EXPORT
#endif
class CM_TEST_LIB_EXPORT LibCxx2Class
{
public:
static float Method();
};