Compare commits

..

2 Commits
master ... f18

Author SHA1 Message Date
Dan Horák
a4a0a035c8 build on platforms without valgrind 2013-01-09 18:44:33 +01:00
Rich Mattes
fbe6d6d59d Initial import 2012-10-22 18:42:55 -04:00
5 changed files with 90 additions and 130 deletions

1
.gitignore vendored
View File

@ -1,2 +1 @@
/libccd-1.4.tar.gz
/libccd-2.0.tar.gz

79
libccd-1.3-ctest.patch Normal file
View File

@ -0,0 +1,79 @@
diff -rpN libccd-1.3/CMakeLists.txt libccd-1.3-testsuite/CMakeLists.txt
*** libccd-1.3/CMakeLists.txt 2012-05-16 01:54:39.000000000 -0400
--- libccd-1.3-testsuite/CMakeLists.txt 2012-05-26 14:03:34.671702814 -0400
*************** set(CCD_VERSION "1.2")
*** 6,10 ****
--- 6,11 ----
set(PKG_DESC "Library for collision detection between convex shapes")
set(LIB_SUFFIX "" CACHE STRING "Library installation directory suffix")
+ set(BUILD_TESTS false CACHE BOOL "Build the test suite")
include_directories("src/")
*************** install(TARGETS ccd ccd_static ARCHIVE D
*** 51,53 ****
--- 52,58 ----
install(DIRECTORY src/ccd DESTINATION include FILES_MATCHING PATTERN "*.h")
install(FILES "${pkg_conf_file}" DESTINATION lib${LIB_SUFFIX}/pkgconfig/ COMPONENT pkgconfig)
+ if (BUILD_TESTS)
+ enable_testing()
+ add_subdirectory(src/testsuites)
+ endif (BUILD_TESTS)
diff -rpN libccd-1.3/src/testsuites/CMakeLists.txt libccd-1.3-testsuite/src/testsuites/CMakeLists.txt
*** libccd-1.3/src/testsuites/CMakeLists.txt 1969-12-31 19:00:00.000000000 -0500
--- libccd-1.3-testsuite/src/testsuites/CMakeLists.txt 2012-05-26 14:04:13.659169012 -0400
***************
*** 0 ****
--- 1,51 ----
+ set(CCDTEST_ARGS "" CACHE STRING "Argments to pass to ccdtest executable")
+
+ set(TEST_SOURCES
+ common.c
+ support.c
+ vec3.c
+ polytope.c
+ boxbox.c
+ spheresphere.c
+ cylcyl.c
+ boxcyl.c
+ mpr_boxbox.c
+ mpr_cylcyl.c
+ mpr_boxcyl.c)
+
+ add_library(cu cu/cu.c)
+
+ add_executable(ccdtest ${TEST_SOURCES} main.c)
+ target_link_libraries(ccdtest ccd cu rt)
+ add_definitions(-DCU_ENABLE_TIMER)
+ include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+ add_test(NAME ccdtest
+ COMMAND ccdtest ${CCDTEST_ARGS}
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
+
+ add_test(NAME ccdtest-valgrind
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ COMMAND valgrind -q --leak-check=full --show-reachable=yes --trace-children=yes
+ --error-limit=no
+ ${CMAKE_CURRENT_BINARY_DIR}/ccdtest ${CCDTEST_ARGS})
+
+ add_test(NAME ccdtest-valgrind-gen-suppressions
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ COMMAND valgrind -q --leak-check=full --show-reachable=yes --trace-children=yes
+ --gen-suppressions=all --log-file=out --error-limit=no
+ ${CMAKE_CURRENT_BINARY_DIR}/ccdtest ${CCDTEST_ARGS})
+
+
+ add_executable(bench bench.c support.c cu/cu.c)
+ target_link_libraries(bench ccd cu rt)
+ add_test(NAME bench
+ COMMAND bench)
+
+ add_executable(bench2 bench2.c support.c cu/cu.c)
+ target_link_libraries(bench2 ccd cu rt)
+ add_test(NAME bench2
+ COMMAND bench2)
+
+ add_test(NAME check-regressions
+ COMMAND python ${CMAKE_CURRENT_SOURCE_DIR}/cu/check-regressions regressions
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})

View File

@ -1,75 +0,0 @@
diff -up ./CMakeLists.txt.ctest ./CMakeLists.txt
--- ./CMakeLists.txt.ctest 2014-06-01 20:32:22.135537791 -0400
+++ ./CMakeLists.txt 2014-06-01 20:39:59.303110922 -0400
@@ -4,6 +4,7 @@ project(libccd C)
set(CCD_VERSION "2.0")
set(CCD_SOVERSION "2")
set(PKG_DESC "Library for collision detection between convex shapes")
+set(BUILD_TESTS false cache bool "Build the test suite")
# Include GNUInstallDirs to get canonical paths
include(GNUInstallDirs)
@@ -58,3 +59,8 @@ install(TARGETS ccd ccd_static ARCHIVE D
install(DIRECTORY src/ccd DESTINATION ${CMAKE_INSTALL_INCLUDEDIR} FILES_MATCHING PATTERN "*.h")
install(FILES "${pkg_conf_file}" DESTINATION
${CMAKE_INSTALL_LIBDIR}/pkgconfig COMPONENT pkgconfig)
+
+if (BUILD_TESTS)
+ enable_testing()
+ add_subdirectory(src/testsuites)
+endif (BUILD_TESTS)
diff -up ./src/testsuites/CMakeLists.txt.ctest ./src/testsuites/CMakeLists.txt
--- ./src/testsuites/CMakeLists.txt.ctest 2014-06-01 20:32:22.136537830 -0400
+++ ./src/testsuites/CMakeLists.txt 2014-06-01 20:32:22.136537830 -0400
@@ -0,0 +1,51 @@
+set(CCDTEST_ARGS "" CACHE STRING "Argments to pass to ccdtest executable")
+
+set(TEST_SOURCES
+ common.c
+ support.c
+ vec3.c
+ polytope.c
+ boxbox.c
+ spheresphere.c
+ cylcyl.c
+ boxcyl.c
+ mpr_boxbox.c
+ mpr_cylcyl.c
+ mpr_boxcyl.c)
+
+add_library(cu cu/cu.c)
+
+add_executable(ccdtest ${TEST_SOURCES} main.c)
+target_link_libraries(ccdtest ccd cu rt)
+add_definitions(-DCU_ENABLE_TIMER)
+include_directories(${CMAKE_CURRENT_SOURCE_DIR})
+add_test(NAME ccdtest
+ COMMAND ccdtest ${CCDTEST_ARGS}
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})
+
+add_test(NAME ccdtest-valgrind
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ COMMAND valgrind -q --leak-check=full --show-reachable=yes --trace-children=yes
+ --error-limit=no
+ ${CMAKE_CURRENT_BINARY_DIR}/ccdtest ${CCDTEST_ARGS})
+
+add_test(NAME ccdtest-valgrind-gen-suppressions
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR}
+ COMMAND valgrind -q --leak-check=full --show-reachable=yes --trace-children=yes
+ --gen-suppressions=all --log-file=out --error-limit=no
+ ${CMAKE_CURRENT_BINARY_DIR}/ccdtest ${CCDTEST_ARGS})
+
+
+add_executable(bench bench.c support.c cu/cu.c)
+target_link_libraries(bench ccd cu rt)
+add_test(NAME bench
+ COMMAND bench)
+
+add_executable(bench2 bench2.c support.c cu/cu.c)
+target_link_libraries(bench2 ccd cu rt)
+add_test(NAME bench2
+ COMMAND bench2)
+
+add_test(NAME check-regressions
+ COMMAND python ${CMAKE_CURRENT_SOURCE_DIR}/cu/check-regressions regressions
+ WORKING_DIRECTORY ${CMAKE_CURRENT_SOURCE_DIR})

View File

@ -1,10 +1,10 @@
%ifnarch s390 %{mips}
%ifarch %{ix86} x86_64 ppc ppc64 s390x %{arm}
%global with_valgrind 1
%endif
Name: libccd
Version: 2.0
Release: 12%{?dist}
Version: 1.4
Release: 2%{?dist}
Summary: Library for collision detection between convex shapes
License: BSD
@ -13,18 +13,18 @@ Source0: http://libccd.danfis.cz/files/%{name}-%{version}.tar.gz
# This patch integrates all of the test programs that are present in
# the testsuites folder into CMake, via CTest. Not yet submitted
# upstream
Patch0: %{name}-2.0-ctest.patch
Patch0: %{name}-1.3-ctest.patch
# This patch changes the ccd.pc file to point to the correct include
# directory. Not yet submitted upstream
Patch1: %{name}-1.3-fixpkgconfig.patch
%if 0%{?rhel} && 0%{?rhel} < 7
%if 0%{?rhel}
BuildRequires: cmake28
%else
BuildRequires: cmake
%endif
# These are required for executing the test suite
BuildRequires: python2
BuildRequires: python
%if 0%{?with_valgrind}
BuildRequires: valgrind
%endif
@ -46,13 +46,13 @@ developing applications that use %{name}.
%prep
%setup -q
%patch0 -p0 -b .ctest
%patch0 -p1
%patch1 -p0
%build
mkdir build
pushd build
%if 0%{?rhel} && 0%{?rhel} < 7
%if 0%{?rhel}
%cmake28 \
%else
%cmake \
@ -71,7 +71,7 @@ rm -f $RPM_BUILD_ROOT%{_libdir}/*.a
%check
%if 0%{?with_valgrind}
make -C build test ||exit 0
make -C build test
%endif
%post -p /sbin/ldconfig
@ -84,55 +84,12 @@ make -C build test ||exit 0
%{_libdir}/*.so.*
%files devel
%doc
%doc doc/jgt98convex.pdf
%{_includedir}/*
%{_libdir}/*.so
%{_libdir}/pkgconfig/*.pc
%changelog
* Thu Mar 15 2018 Iryna Shcherbina <ishcherb@redhat.com> - 2.0-12
- Update Python 2 dependency declarations to new packaging standards
(See https://fedoraproject.org/wiki/FinalizingFedoraSwitchtoPython3)
* Wed Feb 07 2018 Fedora Release Engineering <releng@fedoraproject.org> - 2.0-11
- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild
* Thu Aug 03 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.0-10
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild
* Wed Jul 26 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.0-9
- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild
* Fri Feb 10 2017 Fedora Release Engineering <releng@fedoraproject.org> - 2.0-8
- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild
* Fri Aug 12 2016 Michal Toman <mtoman@fedoraproject.org> - 2.0-7
- No valgrind on MIPS
* Thu Feb 04 2016 Fedora Release Engineering <releng@fedoraproject.org> - 2.0-6
- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild
* Thu Aug 27 2015 Marcin Juszkiewicz <mjuszkiewicz@redhat.com> - 2.0-5
- Valgrind is not available only on s/390 (rhbz#1257526)
* Wed Jun 17 2015 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild
* Sun Aug 17 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_22_Mass_Rebuild
* Sat Jun 07 2014 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.0-2
- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild
* Sun Jun 01 2014 Rich Mattes <rmattes@fedoraproject.org> - 2.0-1
- Update to release 2.0
* Sat Aug 03 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.4-4
- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild
* Thu Feb 14 2013 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 1.4-3
- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild
* Wed Jan 09 2013 Dan Horák <dan[at]danny.cz> - 1.4-2
- build on platforms without valgrind

View File

@ -1 +1 @@
919415277e3baa1d157e713c0b597ab0 libccd-2.0.tar.gz
684a9f2f44567a12a30af383de992a89 libccd-1.4.tar.gz