aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorRobert Schumacher <roschuma@microsoft.com>2017-06-19 21:50:01 -0700
committerGitHub <noreply@github.com>2017-06-19 21:50:01 -0700
commit3ca9689383f1b6d42077830867d51eb26d5cdd7a (patch)
tree854ba0f22b8c205a3cdfbab9cab075d49d4898f1
parentfbeb300bbd82e53a66d93c3b74b5f3d698c6ba87 (diff)
parent807fa4588c731f3f5564b0d09bedec4d51f4c2cf (diff)
downloadvcpkg-3ca9689383f1b6d42077830867d51eb26d5cdd7a.tar.gz
vcpkg-3ca9689383f1b6d42077830867d51eb26d5cdd7a.zip
Merge pull request #1300 from atkawa7/cunit
[cunit] new port required by #1122
-rw-r--r--ports/cunit/CMakeLists.txt61
-rw-r--r--ports/cunit/CONTROL3
-rw-r--r--ports/cunit/portfile.cmake23
3 files changed, 87 insertions, 0 deletions
diff --git a/ports/cunit/CMakeLists.txt b/ports/cunit/CMakeLists.txt
new file mode 100644
index 000000000..b796355aa
--- /dev/null
+++ b/ports/cunit/CMakeLists.txt
@@ -0,0 +1,61 @@
+cmake_minimum_required (VERSION 3.8.0)
+project (libcunit C)
+
+set(HEADERS_DIR "${PROJECT_SOURCE_DIR}/CUnit/Headers")
+set(SOURCES_DIR "${PROJECT_SOURCE_DIR}/CUnit/Sources")
+set(EXAMPLES_DIR "${PROJECT_SOURCE_DIR}/Examples")
+
+if(MSVC)
+ add_compile_options(/W3 /wd4005 /wd4996 -D_CRT_SECURE_NO_WARNINGS)
+endif()
+
+configure_file(
+ "${HEADERS_DIR}/CUnit.h.in"
+ "${PROJECT_BINARY_DIR}/CUnit.h"
+)
+
+file(READ "${PROJECT_BINARY_DIR}/CUnit.h" CUNIT_H)
+if (BUILD_SHARED_LIBS)
+ string(REPLACE "ifdef CU_DLL" "if 1" CUNIT_H "${CUNIT_H}")
+else()
+ string(REPLACE "ifdef CU_DLL" "if 0" CUNIT_H "${CUNIT_H}")
+endif()
+file(WRITE "${PROJECT_BINARY_DIR}/CUnit.h" "${CUNIT_H}")
+
+include_directories("${PROJECT_BINARY_DIR}")
+include_directories(${HEADERS_DIR})
+
+add_library(libcunit
+ "${SOURCES_DIR}/Automated/Automated.c"
+ "${SOURCES_DIR}/Basic/Basic.c"
+ "${SOURCES_DIR}/Console/Console.c"
+ "${SOURCES_DIR}/Framework/CUError.c"
+ "${SOURCES_DIR}/Framework/MyMem.c"
+ "${SOURCES_DIR}/Framework/TestDB.c"
+ "${SOURCES_DIR}/Framework/TestRun.c"
+ "${SOURCES_DIR}/Framework/Util.c"
+)
+target_compile_definitions(libcunit PRIVATE -DCU_BUILD_DLL)
+
+if(BUILD_EXAMPLES)
+ include_directories(${EXAMPLES_DIR})
+ add_executable(AutomatedTest ${EXAMPLES_DIR}/AutomatedTest/AutomatedTest.c "${EXAMPLES_DIR}/ExampleTests.c")
+ add_executable(BasicTest ${EXAMPLES_DIR}/BasicTest/BasicTest.c "${EXAMPLES_DIR}/ExampleTests.c")
+ add_executable(ConsoleTest ${EXAMPLES_DIR}/ConsoleTest/ConsoleTest.c "${EXAMPLES_DIR}/ExampleTests.c")
+
+ target_link_libraries(AutomatedTest libcunit)
+ target_link_libraries(BasicTest libcunit)
+ target_link_libraries(ConsoleTest libcunit)
+endif()
+
+install(
+ TARGETS libcunit
+ RUNTIME DESTINATION bin
+ LIBRARY DESTINATION lib
+ ARCHIVE DESTINATION lib
+)
+
+if(NOT DISABLE_INSTALL_HEADERS)
+ install(DIRECTORY "${HEADERS_DIR}/" DESTINATION include/cunit FILES_MATCHING PATTERN "*.h")
+ install(FILES "${PROJECT_BINARY_DIR}/CUnit.h" DESTINATION include/cunit)
+endif()
diff --git a/ports/cunit/CONTROL b/ports/cunit/CONTROL
new file mode 100644
index 000000000..3ef430092
--- /dev/null
+++ b/ports/cunit/CONTROL
@@ -0,0 +1,3 @@
+Source: cunit
+Version: 2.1.3-1
+Description: CUnit is a lightweight system for writing, administering, and running unit tests in C. It provides C programmers a basic testing functionality with a flexible variety of user interfaces
diff --git a/ports/cunit/portfile.cmake b/ports/cunit/portfile.cmake
new file mode 100644
index 000000000..7e4a977af
--- /dev/null
+++ b/ports/cunit/portfile.cmake
@@ -0,0 +1,23 @@
+include(vcpkg_common_functions)
+
+set(SOURCE_PATH ${CURRENT_BUILDTREES_DIR}/src/CUnit-2.1-3)
+vcpkg_download_distfile(ARCHIVE
+ URLS "http://downloads.sourceforge.net/project/cunit/CUnit/2.1-3/CUnit-2.1-3.tar.bz2"
+ FILENAME "CUnit-2.1-3.tar.bz2"
+ SHA512 547b417109332446dfab8fda17bf4ccd2da841dc93f824dc90a20635bcf1fb80fb2176500d8a0906940f3f3d3e2f77b2d70a71090c9ab84ad9af43f3582bc487
+)
+vcpkg_extract_source_archive(${ARCHIVE})
+
+file(COPY ${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt DESTINATION ${SOURCE_PATH})
+
+vcpkg_configure_cmake(
+ SOURCE_PATH ${SOURCE_PATH}
+ PREFER_NINJA
+ OPTIONS_DEBUG -DDISABLE_INSTALL_HEADERS=ON
+)
+
+vcpkg_install_cmake()
+
+file(INSTALL ${SOURCE_PATH}/COPYING DESTINATION ${CURRENT_PACKAGES_DIR}/share/cunit RENAME copyright)
+
+vcpkg_copy_pdbs()