aboutsummaryrefslogtreecommitdiff
path: root/vcpkg/ports/cunit
diff options
context:
space:
mode:
Diffstat (limited to 'vcpkg/ports/cunit')
-rw-r--r--vcpkg/ports/cunit/CMakeLists.txt52
-rw-r--r--vcpkg/ports/cunit/portfile.cmake27
-rw-r--r--vcpkg/ports/cunit/vcpkg.json18
3 files changed, 97 insertions, 0 deletions
diff --git a/vcpkg/ports/cunit/CMakeLists.txt b/vcpkg/ports/cunit/CMakeLists.txt
new file mode 100644
index 0000000..cd82e23
--- /dev/null
+++ b/vcpkg/ports/cunit/CMakeLists.txt
@@ -0,0 +1,52 @@
+cmake_minimum_required (VERSION 3.8.0)
+project (cunit C)
+
+set(HEADERS_DIR "${PROJECT_SOURCE_DIR}/CUnit/Headers")
+set(SOURCES_DIR "${PROJECT_SOURCE_DIR}/CUnit/Sources")
+
+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"
+ @ONLY
+)
+
+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(cunit
+ "${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(cunit PRIVATE -DCU_BUILD_DLL)
+target_include_directories(cunit INTERFACE $<INSTALL_INTERFACE:include>)
+
+install(TARGETS cunit EXPORT unofficial-cunit-config)
+
+install(EXPORT unofficial-cunit-config
+ NAMESPACE unofficial::cunit::
+ DESTINATION share/unofficial-cunit
+ FILE unofficial-cunit-config.cmake
+)
+
+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/vcpkg/ports/cunit/portfile.cmake b/vcpkg/ports/cunit/portfile.cmake
new file mode 100644
index 0000000..94893a2
--- /dev/null
+++ b/vcpkg/ports/cunit/portfile.cmake
@@ -0,0 +1,27 @@
+set(VERSION 2.1)
+set(RELEASE 3)
+
+vcpkg_from_sourceforge(
+ OUT_SOURCE_PATH SOURCE_PATH
+ REPO cunit/CUnit
+ REF "${VERSION}-${RELEASE}"
+ FILENAME "CUnit-${VERSION}-${RELEASE}.tar.bz2"
+ SHA512 547b417109332446dfab8fda17bf4ccd2da841dc93f824dc90a20635bcf1fb80fb2176500d8a0906940f3f3d3e2f77b2d70a71090c9ab84ad9af43f3582bc487
+)
+
+file(COPY "${CMAKE_CURRENT_LIST_DIR}/CMakeLists.txt" DESTINATION "${SOURCE_PATH}")
+
+vcpkg_cmake_configure(
+ SOURCE_PATH "${SOURCE_PATH}"
+ OPTIONS
+ "-DVERSION=${VERSION}"
+ "-DRELEASE=${RELEASE}"
+ OPTIONS_DEBUG
+ -DDISABLE_INSTALL_HEADERS=ON
+)
+
+vcpkg_cmake_install()
+vcpkg_cmake_config_fixup(PACKAGE_NAME unofficial-cunit)
+vcpkg_copy_pdbs()
+
+file(INSTALL "${SOURCE_PATH}/COPYING" DESTINATION "${CURRENT_PACKAGES_DIR}/share/${PORT}" RENAME copyright)
diff --git a/vcpkg/ports/cunit/vcpkg.json b/vcpkg/ports/cunit/vcpkg.json
new file mode 100644
index 0000000..7857b54
--- /dev/null
+++ b/vcpkg/ports/cunit/vcpkg.json
@@ -0,0 +1,18 @@
+{
+ "name": "cunit",
+ "version": "2.1.3",
+ "port-version": 8,
+ "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",
+ "homepage": "https://sourceforge.net/projects/cunit/",
+ "license": "LGPL-2.0-only",
+ "dependencies": [
+ {
+ "name": "vcpkg-cmake",
+ "host": true
+ },
+ {
+ "name": "vcpkg-cmake-config",
+ "host": true
+ }
+ ]
+}