From f6874b2d319e2a3e8711699b608e0d361a105781 Mon Sep 17 00:00:00 2001 From: Maxime Gimeno Date: Mon, 21 Dec 2020 12:28:24 +0100 Subject: [PATCH 1/2] Add checks for pushes --- .github/install.sh | 12 ++++++++ .github/workflows/checks.yml | 30 +++++++++++++++++++ .../modules/list_of_whitelisted_headers.cmake | 3 ++ .../detect_packages_licenses | 10 ++++--- 4 files changed, 51 insertions(+), 4 deletions(-) create mode 100755 .github/install.sh create mode 100644 .github/workflows/checks.yml diff --git a/.github/install.sh b/.github/install.sh new file mode 100755 index 00000000000..047c539ff95 --- /dev/null +++ b/.github/install.sh @@ -0,0 +1,12 @@ +#!/bin/bash +sudo add-apt-repository ppa:mikhailnov/pulseeffects -y +sudo apt-get update +sudo apt-get install -y libmpfr-dev \ + libeigen3-dev qtbase5-dev libqt5sql5-sqlite libqt5opengl5-dev qtscript5-dev \ + libqt5svg5-dev qttools5-dev qttools5-dev-tools libboost1.72-dev zsh +#update cmake to 3.18.4 +sudo apt purge --auto-remove cmake +cd /tmp +wget https://cmake.org/files/v3.18/cmake-3.18.4-Linux-x86_64.sh +sudo sh cmake-3.18.4-Linux-x86_64.sh --skip-license --prefix=/usr/local +rm cmake-3.18.4-Linux-x86_64.sh diff --git a/.github/workflows/checks.yml b/.github/workflows/checks.yml new file mode 100644 index 00000000000..a28adb0c684 --- /dev/null +++ b/.github/workflows/checks.yml @@ -0,0 +1,30 @@ +name: CMake Test Merge Branch + +on: [push, pull_request] + +jobs: + build: + + runs-on: ubuntu-latest + + steps: + - uses: actions/checkout@v2.0.0 + - name: install dependencies + run: | + .github/install.sh + set -x + sudo apt-get update && sudo apt-get install -y graphviz ssh bibtex2html + sudo pip install lxml + sudo pip install 'pyquery==1.4.1' # it seems to be the last py2 compatible version + wget --no-verbose -O doxygen_exe https://cgal.geometryfactory.com/~mgimeno/doxygen/build_1_8_13/bin/doxygen + sudo mv doxygen_exe /usr/bin/doxygen + sudo chmod +x /usr/bin/doxygen + git config --global user.email "maxime.gimeno@geometryfactory.com" + git config --global user.name "Maxime Gimeno" + + - name: Run checks + run: | + zsh Scripts/developer_scripts/test_merge_of_branch HEAD + #test dependencies + bash Scripts/developer_scripts/cgal_check_dependencies.sh --check_headers /usr/bin/doxygen + diff --git a/Installation/cmake/modules/list_of_whitelisted_headers.cmake b/Installation/cmake/modules/list_of_whitelisted_headers.cmake index bb6ffd5f932..28e88573927 100644 --- a/Installation/cmake/modules/list_of_whitelisted_headers.cmake +++ b/Installation/cmake/modules/list_of_whitelisted_headers.cmake @@ -1,6 +1,9 @@ set(list_of_whitelisted_headers_txt [=[ CGAL/SCIP_mixed_integer_program_traits.h CGAL/GLPK_mixed_integer_program_traits.h + CGAL/boost/graph/partition.h + CGAL/boost/graph/METIS/partition_dual_graph.h + CGAL/boost/graph/METIS/partition_graph.h CGAL/Classification/TensorFlow/Neural_network_classifier.h CGAL/Linear_cell_complex_constructors.h CGAL/CGAL_Ipelet_base.h diff --git a/Scripts/developer_scripts/detect_packages_licenses b/Scripts/developer_scripts/detect_packages_licenses index a5cd34f30b3..485e1a74522 100755 --- a/Scripts/developer_scripts/detect_packages_licenses +++ b/Scripts/developer_scripts/detect_packages_licenses @@ -5,14 +5,15 @@ # */package_info/*/license.txt setopt extendedglob - -for p in ^*build*(/); do - if [ -d $p/include ]; then +OLD_LOCALE=$(locale | grep COLLATE | cut -d= -f2) +export LC_COLLATE="en_US.UTF-8" +for p in ^*build*(/); do + if [ -d $p/include ]; then licFile=$p/package_info/$p/license.txt l=`licensecheck -r $p/include $p/src | awk -F': ' '{print $2}' | grep -v BSL | sed -e 's/ *GENERATED FILE//' | sort -u` if [ "x`echo $l | wc -l`" = "x1" ]; then echo $l > "$licFile" - elif [ -z "`echo $l | grep -Ev '^L?GPL \(v3 or later\) *$'`" ]; then + elif [ -z "`echo $l | grep -Ev '^L?GPL \(v3 or later\) *$'`" ]; then echo 'GPL (v3 or later)' > "$licFile" else # echo "MULTIPLE!" > "$licFile"; @@ -20,3 +21,4 @@ for p in ^*build*(/); do fi fi done +export LC_COLLATE=$OLD_LOCALE From fc4fc891e7a791b87db3ea1c8415f45cb62bee1d Mon Sep 17 00:00:00 2001 From: Maxime Gimeno Date: Tue, 22 Dec 2020 10:16:18 +0100 Subject: [PATCH 2/2] Fix dependencies --- .../package_info/Alpha_shapes_3/dependencies | 1 - BGL/package_info/BGL/dependencies | 6 ------ Geomview/package_info/Geomview/dependencies | 2 -- .../modules/list_of_whitelisted_headers.cmake | 14 +++++++++++--- Installation/include/CGAL/config.h | 6 +++--- .../package_info/Polyhedron_IO/dependencies | 1 - .../Scale_space_reconstruction_3/dependencies | 1 - .../package_info/Triangulation_2/dependencies | 1 - .../package_info/Triangulation_3/dependencies | 1 - 9 files changed, 14 insertions(+), 19 deletions(-) diff --git a/Alpha_shapes_3/package_info/Alpha_shapes_3/dependencies b/Alpha_shapes_3/package_info/Alpha_shapes_3/dependencies index d6667a72a3d..6a453cfa1e9 100644 --- a/Alpha_shapes_3/package_info/Alpha_shapes_3/dependencies +++ b/Alpha_shapes_3/package_info/Alpha_shapes_3/dependencies @@ -4,7 +4,6 @@ Arithmetic_kernel Cartesian_kernel Circulator Filtered_kernel -Geomview Hash_map Homogeneous_kernel Installation diff --git a/BGL/package_info/BGL/dependencies b/BGL/package_info/BGL/dependencies index ebc36eadd85..7cf027b2c48 100644 --- a/BGL/package_info/BGL/dependencies +++ b/BGL/package_info/BGL/dependencies @@ -1,19 +1,13 @@ Algebraic_foundations -Arithmetic_kernel BGL Cartesian_kernel Circulator Distance_2 Distance_3 -Filtered_kernel Hash_map -Homogeneous_kernel Installation -Intersections_2 -Intersections_3 Interval_support Kernel_23 -Kernel_d Modular_arithmetic Number_types Profiling_tools diff --git a/Geomview/package_info/Geomview/dependencies b/Geomview/package_info/Geomview/dependencies index 7c8f7ab1d75..1598b3438f7 100644 --- a/Geomview/package_info/Geomview/dependencies +++ b/Geomview/package_info/Geomview/dependencies @@ -1,6 +1,4 @@ Algebraic_foundations -Circulator -Geomview Installation Interval_support Kernel_23 diff --git a/Installation/cmake/modules/list_of_whitelisted_headers.cmake b/Installation/cmake/modules/list_of_whitelisted_headers.cmake index 28e88573927..cf653a08abf 100644 --- a/Installation/cmake/modules/list_of_whitelisted_headers.cmake +++ b/Installation/cmake/modules/list_of_whitelisted_headers.cmake @@ -1,9 +1,6 @@ set(list_of_whitelisted_headers_txt [=[ CGAL/SCIP_mixed_integer_program_traits.h CGAL/GLPK_mixed_integer_program_traits.h - CGAL/boost/graph/partition.h - CGAL/boost/graph/METIS/partition_dual_graph.h - CGAL/boost/graph/METIS/partition_graph.h CGAL/Classification/TensorFlow/Neural_network_classifier.h CGAL/Linear_cell_complex_constructors.h CGAL/CGAL_Ipelet_base.h @@ -34,6 +31,17 @@ set(list_of_whitelisted_headers_txt [=[ CGAL/Three/Viewer_config.h CGAL/Three/Viewer_interface.h CGAL/Three/Three.h + CGAL/boost/graph/properties_OpenMesh.h + CGAL/boost/graph/properties_TriMesh_ArrayKernelT.h + CGAL/boost/graph/properties_PolyMesh_ArrayKernelT.h + CGAL/boost/graph/graph_traits_TriMesh_ArrayKernelT.h + CGAL/boost/graph/graph_traits_PolyMesh_ArrayKernelT.h + CGAL/boost/graph/partition.h + CGAL/boost/graph/METIS/partition_dual_graph.h + CGAL/boost/graph/METIS/partition_graph.h + CGAL/IO/Triangulation_geomview_ostream_3.h + CGAL/IO/Triangulation_geomview_ostream_2.h + CGAL/IO/Polyhedron_geomview_ostream.h ]=]) diff --git a/Installation/include/CGAL/config.h b/Installation/include/CGAL/config.h index c15f7841a98..8f0f43c95a9 100644 --- a/Installation/include/CGAL/config.h +++ b/Installation/include/CGAL/config.h @@ -465,9 +465,9 @@ using std::max; //-------------------------------------------------------------------// // Is Geomview usable ? -#if !defined(_MSC_VER) && !defined(__MINGW32__) -# define CGAL_USE_GEOMVIEW -#endif +//#if !defined(_MSC_VER) && !defined(__MINGW32__) +//# define CGAL_USE_GEOMVIEW +//#endif //-------------------------------------------------------------------// diff --git a/Polyhedron_IO/package_info/Polyhedron_IO/dependencies b/Polyhedron_IO/package_info/Polyhedron_IO/dependencies index b8678f37e1c..49dc8dde8a0 100644 --- a/Polyhedron_IO/package_info/Polyhedron_IO/dependencies +++ b/Polyhedron_IO/package_info/Polyhedron_IO/dependencies @@ -2,7 +2,6 @@ Algebraic_foundations BGL Circulator Distance_2 -Geomview HalfedgeDS Hash_map Installation diff --git a/Scale_space_reconstruction_3/package_info/Scale_space_reconstruction_3/dependencies b/Scale_space_reconstruction_3/package_info/Scale_space_reconstruction_3/dependencies index 905e54313c1..4164cb98796 100644 --- a/Scale_space_reconstruction_3/package_info/Scale_space_reconstruction_3/dependencies +++ b/Scale_space_reconstruction_3/package_info/Scale_space_reconstruction_3/dependencies @@ -8,7 +8,6 @@ Circulator Distance_2 Distance_3 Filtered_kernel -Geomview HalfedgeDS Hash_map Homogeneous_kernel diff --git a/Triangulation_2/package_info/Triangulation_2/dependencies b/Triangulation_2/package_info/Triangulation_2/dependencies index 90dd0267b28..c8d90b721ca 100644 --- a/Triangulation_2/package_info/Triangulation_2/dependencies +++ b/Triangulation_2/package_info/Triangulation_2/dependencies @@ -6,7 +6,6 @@ Circulator Distance_2 Distance_3 Filtered_kernel -Geomview GraphicsView Hash_map Homogeneous_kernel diff --git a/Triangulation_3/package_info/Triangulation_3/dependencies b/Triangulation_3/package_info/Triangulation_3/dependencies index e22da1bafd7..53da26a4122 100644 --- a/Triangulation_3/package_info/Triangulation_3/dependencies +++ b/Triangulation_3/package_info/Triangulation_3/dependencies @@ -6,7 +6,6 @@ Circulator Distance_2 Distance_3 Filtered_kernel -Geomview GraphicsView Hash_map Homogeneous_kernel