Add port for solid3 (#5989)

This commit is contained in:
Markus Rickert 2019-04-08 07:17:02 +02:00 committed by Phil Christensen
parent 9a4f3c1982
commit 02e9fe72fa
4 changed files with 83 additions and 0 deletions

3
ports/solid3/CONTROL Normal file
View File

@ -0,0 +1,3 @@
Source: solid3
Version: 3.5.8
Description: Software Library for Interference Detection

View File

@ -0,0 +1,13 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 0303a8f..be43838 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -97,7 +97,7 @@ if(UNIX)
endif(UNIX)
add_subdirectory(src)
-add_subdirectory(examples)
+#add_subdirectory(examples)
#add_subdirectory(doc)
include(CMakePackageConfigHelpers)

View File

@ -0,0 +1,41 @@
include(vcpkg_common_functions)
vcpkg_from_github(
OUT_SOURCE_PATH SOURCE_PATH
REPO dtecta/solid3
REF c53f6bb1eaaafb1cfb305ef71b1c3a2edb4844e6
SHA512 ae42ba75f5309fecba836e5786d4cb81eeb1240f6fd7c458c6d1329d8e1075021504b927ea0aedb66162deeb79ad674cacb0190385afe456420c0d9184596f1f
HEAD_REF master
PATCHES
disable-examples.patch
potentially-uninitialized-local-pointer-variable.patch
)
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
set(DYNAMIC_SOLID OFF)
else()
set(DYNAMIC_SOLID ON)
endif()
vcpkg_configure_cmake(
SOURCE_PATH ${SOURCE_PATH}
PREFER_NINJA
OPTIONS
-DDYNAMIC_SOLID=${DYNAMIC_SOLID}
)
vcpkg_install_cmake()
vcpkg_copy_pdbs()
vcpkg_fixup_cmake_targets(CONFIG_PATH lib/cmake/solid3)
file(COPY ${SOURCE_PATH}/README.md DESTINATION ${CURRENT_PACKAGES_DIR}/share/solid3)
file(RENAME ${CURRENT_PACKAGES_DIR}/share/solid3/README.md ${CURRENT_PACKAGES_DIR}/share/solid3/copyright)
file(COPY ${SOURCE_PATH}/LICENSE_GPL.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/solid3)
file(COPY ${SOURCE_PATH}/LICENSE_QPL.txt DESTINATION ${CURRENT_PACKAGES_DIR}/share/solid3)
if(VCPKG_LIBRARY_LINKAGE STREQUAL static)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/bin ${CURRENT_PACKAGES_DIR}/debug/bin)
endif()
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/include)
file(REMOVE_RECURSE ${CURRENT_PACKAGES_DIR}/debug/share)

View File

@ -0,0 +1,26 @@
diff --git a/src/qhull/geom2.c b/src/qhull/geom2.c
index bd58ce1..c4798d2 100644
--- a/src/qhull/geom2.c
+++ b/src/qhull/geom2.c
@@ -2080,7 +2080,7 @@ boolT qh_sharpnewfacets () {
pointT *qh_voronoi_center (int dim, setT *points) {
pointT *point, **pointp, *point0;
pointT *center= (pointT*)qh_memalloc (qh center_size);
- setT *simplex;
+ setT *simplex= NULL;
int i, j, k, size= qh_setsize(points);
coordT *gmcoord;
realT *diffp, sum2, *sum2row, *sum2p, det, factor;
diff --git a/src/qhull/io.c b/src/qhull/io.c
index 79ca799..41c18bc 100644
--- a/src/qhull/io.c
+++ b/src/qhull/io.c
@@ -3740,7 +3740,7 @@ coordT *qh_readpoints(int *numpoints, int *dimension, boolT *ismalloc) {
coordT *points, *coords, *infinity= NULL;
realT paraboloid, maxboloid= -REALmax, value;
realT *coordp= NULL, *offsetp= NULL, *normalp= NULL;
- char *s, *t, firstline[qh_MAXfirst+1];
+ char *s= NULL, *t, firstline[qh_MAXfirst+1];
int diminput=0, numinput=0, dimfeasible= 0, newnum, k, tempi;
int firsttext=0, firstshort=0, firstlong=0, firstpoint=0;
int tokcount= 0, linecount=0, maxcount, coordcount=0;