mirror of https://github.com/AxioDL/tinyxml2.git
Merge pull request #534 from jnguyen75/ref-test-resources
Refactor test resources: Use CMake to replace mkdir()
This commit is contained in:
commit
7b40ce1942
|
@ -29,25 +29,6 @@ set(GENERIC_LIB_SOVERSION "4")
|
||||||
|
|
||||||
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/.")
|
include_directories("${CMAKE_CURRENT_SOURCE_DIR}/.")
|
||||||
|
|
||||||
################################
|
|
||||||
# Add custom target to copy all data
|
|
||||||
|
|
||||||
set(TARGET_DATA_COPY DATA_COPY)
|
|
||||||
set(DATA_COPY_FILES)
|
|
||||||
if(NOT ${CMAKE_CURRENT_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_BINARY_DIR})
|
|
||||||
foreach(data dream.xml empty.xml utf8test.xml utf8testverify.xml)
|
|
||||||
set(DATA_COPY_SRC ${CMAKE_CURRENT_SOURCE_DIR}/resources/${data})
|
|
||||||
set(DATA_COPY_DEST ${CMAKE_CURRENT_BINARY_DIR}/resources/${data})
|
|
||||||
add_custom_command(
|
|
||||||
OUTPUT ${DATA_COPY_DEST}
|
|
||||||
COMMAND ${CMAKE_COMMAND}
|
|
||||||
ARGS -E copy ${DATA_COPY_SRC} ${DATA_COPY_DEST}
|
|
||||||
DEPENDS ${DATA_COPY_SRC})
|
|
||||||
list(APPEND DATA_COPY_FILES ${DATA_COPY_DEST})
|
|
||||||
endforeach(data)
|
|
||||||
endif(NOT ${CMAKE_CURRENT_SOURCE_DIR} STREQUAL ${CMAKE_CURRENT_BINARY_DIR})
|
|
||||||
add_custom_target(${TARGET_DATA_COPY} DEPENDS ${DATA_COPY_FILES})
|
|
||||||
|
|
||||||
################################
|
################################
|
||||||
# Add definitions
|
# Add definitions
|
||||||
|
|
||||||
|
@ -109,14 +90,18 @@ endif()
|
||||||
add_executable(xmltest xmltest.cpp)
|
add_executable(xmltest xmltest.cpp)
|
||||||
if(BUILD_SHARED_LIBS)
|
if(BUILD_SHARED_LIBS)
|
||||||
add_dependencies(xmltest tinyxml2)
|
add_dependencies(xmltest tinyxml2)
|
||||||
add_dependencies(xmltest ${TARGET_DATA_COPY})
|
|
||||||
target_link_libraries(xmltest tinyxml2)
|
target_link_libraries(xmltest tinyxml2)
|
||||||
else(BUILD_STATIC_LIBS)
|
else(BUILD_STATIC_LIBS)
|
||||||
add_dependencies(xmltest tinyxml2_static)
|
add_dependencies(xmltest tinyxml2_static)
|
||||||
add_dependencies(xmltest ${TARGET_DATA_COPY})
|
|
||||||
target_link_libraries(xmltest tinyxml2_static)
|
target_link_libraries(xmltest tinyxml2_static)
|
||||||
endif()
|
endif()
|
||||||
install(TARGETS DESTINATION ${CMAKE_INSTALL_BINDIR})
|
|
||||||
|
# Copy test resources and create test output directory
|
||||||
|
add_custom_command(TARGET xmltest POST_BUILD
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E copy_directory ${CMAKE_SOURCE_DIR}/resources $<TARGET_FILE_DIR:xmltest>/resources
|
||||||
|
COMMAND ${CMAKE_COMMAND} -E make_directory $<TARGET_FILE_DIR:xmltest>/resources/out
|
||||||
|
COMMENT "Configuring xmltest resources directory: ${CMAKE_BINARY_DIR}/resources"
|
||||||
|
)
|
||||||
|
|
||||||
install(FILES tinyxml2.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
install(FILES tinyxml2.h DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
|
||||||
|
|
||||||
|
|
|
@ -3,5 +3,5 @@ before_build:
|
||||||
|
|
||||||
build_script:
|
build_script:
|
||||||
- msbuild tinyxml2.sln /m /p:Configuration=Release /t:ALL_BUILD
|
- msbuild tinyxml2.sln /m /p:Configuration=Release /t:ALL_BUILD
|
||||||
- copy Release\xmltest.exe .\ && copy Release\tinyxml2.dll .\
|
- cd Release
|
||||||
- xmltest.exe
|
- xmltest.exe
|
||||||
|
|
17
xmltest.cpp
17
xmltest.cpp
|
@ -10,16 +10,10 @@
|
||||||
#include <ctime>
|
#include <ctime>
|
||||||
|
|
||||||
#if defined( _MSC_VER )
|
#if defined( _MSC_VER )
|
||||||
#include <direct.h> // _mkdir
|
|
||||||
#include <crtdbg.h>
|
#include <crtdbg.h>
|
||||||
#define WIN32_LEAN_AND_MEAN
|
#define WIN32_LEAN_AND_MEAN
|
||||||
#include <windows.h>
|
#include <windows.h>
|
||||||
_CrtMemState startMemState;
|
_CrtMemState startMemState;
|
||||||
_CrtMemState endMemState;
|
|
||||||
#elif defined(MINGW32) || defined(__MINGW32__)
|
|
||||||
#include <io.h> // mkdir
|
|
||||||
#else
|
|
||||||
#include <sys/stat.h> // mkdir
|
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
using namespace tinyxml2;
|
using namespace tinyxml2;
|
||||||
|
@ -299,17 +293,6 @@ int main( int argc, const char ** argv )
|
||||||
_CrtSetDbgFlag(_CrtSetDbgFlag(_CRTDBG_REPORT_FLAG) | _CRTDBG_LEAK_CHECK_DF);
|
_CrtSetDbgFlag(_CrtSetDbgFlag(_CRTDBG_REPORT_FLAG) | _CRTDBG_LEAK_CHECK_DF);
|
||||||
#endif
|
#endif
|
||||||
|
|
||||||
#if defined(_MSC_VER) || defined(MINGW32) || defined(__MINGW32__)
|
|
||||||
#if defined __MINGW64_VERSION_MAJOR && defined __MINGW64_VERSION_MINOR
|
|
||||||
//MINGW64: both 32 and 64-bit
|
|
||||||
mkdir( "resources/out/" );
|
|
||||||
#else
|
|
||||||
_mkdir( "resources/out/" );
|
|
||||||
#endif
|
|
||||||
#else
|
|
||||||
mkdir( "resources/out/", S_IRWXU | S_IRWXG | S_IROTH | S_IXOTH);
|
|
||||||
#endif
|
|
||||||
|
|
||||||
{
|
{
|
||||||
TIXMLASSERT( true );
|
TIXMLASSERT( true );
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue