Merge branch 'master' into NewKernel_d-lazy_Epeck_d-glisse

This commit is contained in:
Laurent Rineau
2019-06-20 10:28:01 +02:00
1265 changed files with 176555 additions and 17038 deletions
+2 -2
View File
@@ -900,14 +900,14 @@ lockfile -r 1 "$LOCK_FILE";
if [ ${?} != 0 ]; then
PID=`cat "$LOCK_FILE"`
if kill -0 "$PID"; then
log "${ACTUAL_LOGFILE}" "COULD NOT AQUIRE LOCK! LOCKING PROCESS PID=$PID";
log "${ACTUAL_LOGFILE}" "COULD NOT ACQUIRE LOCK! LOCKING PROCESS PID=$PID";
exit 1;
else
# The locking process has died without erasing the lock file
rm -f "$LOCK_FILE"
lockfile -r 1 "$LOCK_FILE";
if [ ${?} != 0 ]; then
log "${ACTUAL_LOGFILE}" "COULD NOT AQUIRE LOCK!";
log "${ACTUAL_LOGFILE}" "COULD NOT ACQUIRE LOCK!";
exit 1
fi
fi
@@ -23,7 +23,7 @@ export TAR="tar"
export GUNZIP="gunzip"
export COMPRESSOR="gzip"
export CONSOLE_OUTPUT="y"
export CGAL_ROOT=`pwd`
export CGAL_HOME=`pwd`
export USE_TARGZ="n"
export USE_TARBZ="n"
export CGAL_RELEASE=""
@@ -121,7 +121,7 @@ get_cgal()
# ----------------------------------------------------------------------------------------
unzip_cgal()
{
cd "${CGAL_ROOT}"
cd "${CGAL_HOME}"
log "${ACTUAL_LOGFILE}" "unzipping CGAL"
if [ "${USE_TARGZ}" = "y" ]; then
@@ -140,18 +140,18 @@ unzip_cgal()
fi
# check, if CGAL_DIR exists
if [ -d "${CGAL_ROOT}/${CGAL_RELEASE_ID}" ]; then
if [ -d "${CGAL_HOME}/${CGAL_RELEASE_ID}" ]; then
# Reset CGAL-I symlink
log "${ACTUAL_LOGFILE}" "Resetting CGAL-I symlink to ${CGAL_ROOT}/${CGAL_RELEASE_ID}"
log "${ACTUAL_LOGFILE}" "Resetting CGAL-I symlink to ${CGAL_HOME}/${CGAL_RELEASE_ID}"
rm -f CGAL-I
ln -s "${CGAL_ROOT}/${CGAL_RELEASE_ID}" CGAL-I
ln -s "${CGAL_HOME}/${CGAL_RELEASE_ID}" CGAL-I
# Reset CGAL-3.x-I symlink
CGAL_RELEASE=`echo "${CGAL_RELEASE_ID}" | sed 's/I\([^-]*\)-.*/I\1/'`
log "${ACTUAL_LOGFILE}" "Resetting ${CGAL_RELEASE} symlink to ${CGAL_ROOT}/${CGAL_RELEASE_ID}"
log "${ACTUAL_LOGFILE}" "Resetting ${CGAL_RELEASE} symlink to ${CGAL_HOME}/${CGAL_RELEASE_ID}"
rm -f "${CGAL_RELEASE}"
ln -s "${CGAL_ROOT}/${CGAL_RELEASE_ID}" "${CGAL_RELEASE}"
ln -s "${CGAL_HOME}/${CGAL_RELEASE_ID}" "${CGAL_RELEASE}"
else
error "directory ${CGAL_ROOT}/${CGAL_RELEASE_ID} does not exist"
error "directory ${CGAL_HOME}/${CGAL_RELEASE_ID} does not exist"
fi
log_done "${ACTUAL_LOGFILE}"
@@ -195,30 +195,30 @@ do
esac
done
# Load settings
if [ -f "$CGAL_ROOT/.autocgalrc" ]; then
. "$CGAL_ROOT/.autocgalrc"
if [ -f "${CGAL_HOME}/.autocgalrc" ]; then
. "${CGAL_HOME}/.autocgalrc"
else
echo "CONFIGURATION FILE .autocgalrc NOT FOUND" >&2;
exit 1
fi
if [ -n "${SCRIPTS_DIR}" ]; then
CGAL_DIR=`readlink "${CGAL_ROOT}/CGAL-git"`
CGAL_DIR=`readlink "${CGAL_HOME}/CGAL-git"`
else
CGAL_DIR=`readlink "${CGAL_ROOT}/CGAL-I"`
CGAL_DIR=`readlink "${CGAL_HOME}/CGAL-I"`
fi
source "${CGAL_DIR}/${SCRIPTS_DIR}developer_scripts/log.sh"
LOGS_DIR="${CGAL_ROOT}/AUTOTEST_LOGS"
LOCK_FILE="${CGAL_ROOT}/autotest_cgal_with_cmake.lock"
LOGS_DIR="${CGAL_HOME}/AUTOTEST_LOGS"
LOCK_FILE="${CGAL_HOME}/autotest_cgal_with_cmake.lock"
# Setup logfile
ACTUAL_LOGFILE="${CGAL_ROOT}/`basename ${0}`.log"
ACTUAL_LOGFILE="${CGAL_HOME}/`basename ${0}`.log"
rm -f "${ACTUAL_LOGFILE}"
echo "Running `basename ${0}` "'$Revision$' >> "${ACTUAL_LOGFILE}"
cd "$CGAL_ROOT"
cd "$CGAL_HOME"
# Starts the process
@@ -232,9 +232,9 @@ if [ -z "${USE_LATEST_UNZIPPED}" -a -z "${SCRIPTS_DIR}" ]; then
fi
#reset CGAL-DIR with the updated CGAL-I
if [ -n "${SCRIPTS_DIR}" ]; then
CGAL_DIR=`readlink "${CGAL_ROOT}/CGAL-git"`
CGAL_DIR=`readlink "${CGAL_HOME}/CGAL-git"`
else
CGAL_DIR=`readlink "${CGAL_ROOT}/CGAL-I"`
CGAL_DIR=`readlink "${CGAL_HOME}/CGAL-I"`
fi
CGAL_RELEASE_ID=$(cat last_release_id)
@@ -257,7 +257,7 @@ for HOST in ${BUILD_HOSTS}; do
echo "export GUNZIP=$GUNZIP">> env.sh
echo "export COMPRESSOR=$COMPRESSOR">> env.sh
echo "export CONSOLE_OUTPUT=$CONSOLE_OUTPUT">> env.sh
echo "export CGAL_ROOT=/cgal_root">> env.sh
echo "export CGAL_HOME=/cgal_root">> env.sh
echo "export USE_TARGZ=$USE_TARGZ">> env.sh
echo "export USE_TARBZ=$USE_TARBZ">> env.sh
echo "export CGAL_RELEASE=$CGAL_RELEASE">> env.sh
@@ -272,17 +272,17 @@ for HOST in ${BUILD_HOSTS}; do
docker pull cgal/testsuite-docker:debian-stable-cross-compilation-for-arm
if [ -z "${SCRIPTS_DIR}" ]; then #if not from branch
echo "export CGAL_DIR=/cgal_root/\${CGAL_LAST}">>env.sh
docker run --rm -t -e CGAL_LAST="${CGAL_RELEASE_ID}" -e HOST="${HOST}" -v ${CGAL_ROOT}/ssh:/tmp_ssh -v ${DEPS_DIR}:/deps -v ${CGAL_ROOT}:/cgal_root cgal/testsuite-docker:debian-stable-cross-compilation-for-arm
docker run --rm -t -e CGAL_LAST="${CGAL_RELEASE_ID}" -e HOST="${HOST}" -v ${CGAL_HOME}/ssh:/tmp_ssh -v ${DEPS_DIR}:/deps -v ${CGAL_HOME}:/cgal_root cgal/testsuite-docker:debian-stable-cross-compilation-for-arm
else
echo "export CGAL_DIR=/cgal_root/CGAL-git">>env.sh
docker run --rm -t -e HOST="${HOST}" -v ${CGAL_ROOT}/ssh:/tmp_ssh -v ${DEPS_DIR}:/deps -v ${CGAL_ROOT}:/cgal_root -v${CGAL_DIR}:/cgal_root/CGAL-git cgal/testsuite-docker:debian-stable-cross-compilation-for-arm
docker run --rm -t -e HOST="${HOST}" -v ${CGAL_HOME}/ssh:/tmp_ssh -v ${DEPS_DIR}:/deps -v ${CGAL_HOME}:/cgal_root -v${CGAL_DIR}:/cgal_root/CGAL-git cgal/testsuite-docker:debian-stable-cross-compilation-for-arm
fi
else
HOST=$HOST bash -$- ${CGAL_DIR}/${SCRIPTS_DIR}developer_scripts/run_testsuite_with_cmake
HOST=$HOST bash -$- ${CGAL_DIR}/${SCRIPTS_DIR}developer_scripts/run_testsuite_with_ctest
fi
done
cd "${CGAL_ROOT}"
cd "${CGAL_HOME}"
if [ -e "LATEST" ]; then
mv LATEST RELEASE_NR
fi
@@ -83,7 +83,7 @@ r"""namespace CGAL {
\anchor Chapter_PACKAGE_NAME
\anchor chaptermine
\cgalAutoToc
\author AUTHOR1, AUTHOR2
\author AUTHOR1, AUTHOR2, and AUTHOR3
This chapter describes the ...
@@ -97,6 +97,12 @@ Section on definitions here ...
The following example shows ...
\cgalExample{ }
\cgalFigureBegin{figPck,bench.png}
Left: ...
\cgalFigureEnd
*/
} /* namespace CGAL */
"""
@@ -118,12 +124,10 @@ if re.match("^[A-Za-z_][A-Za-z0-9_]*$", packagename):
packagepath = packagename
os.mkdir(packagepath)
open(os.path.join(packagepath, 'dont_submit'), 'w').close()
inclpath = os.path.join(packagepath, 'include', 'CGAL', packagename)
os.makedirs(inclpath)
os.mkdir(os.path.join(packagepath, 'src'))
testpath = os.path.join(packagepath, 'test', packagename)
os.makedirs(testpath)
@@ -134,23 +138,19 @@ if re.match("^[A-Za-z_][A-Za-z0-9_]*$", packagename):
os.makedirs(expath)
os.mkdir(os.path.join(expath, 'data'))
os.mkdir(os.path.join(expath, 'include'))
open(os.path.join(expath, 'README'), 'w').close()
demopath = os.path.join(packagepath, 'demo', packagename)
os.makedirs(demopath)
os.mkdir(os.path.join(demopath, 'data'))
os.mkdir(os.path.join(demopath, 'include'))
open(os.path.join(demopath, 'README'), 'w').close()
benpath = os.path.join(packagepath, 'benchmark', packagename)
os.makedirs(benpath)
os.mkdir(os.path.join(packagepath, 'scripts'))
os.mkdir(os.path.join(packagepath, 'developer_scripts'))
infopath = os.path.join(packagepath, 'package_info', packagename)
os.makedirs(infopath)
open(os.path.join(infopath, 'copyright.txt'), 'w').close()
open(os.path.join(infopath, 'copyright'), 'w').close()
open(os.path.join(infopath, 'description.txt'), 'w').close()
open(os.path.join(infopath, 'license.txt'), 'w').close()
open(os.path.join(infopath, 'long_description.txt'), 'w').close()
@@ -7,8 +7,8 @@
source "${CGAL_DIR}/${SCRIPTS_DIR}developer_scripts/log.sh"
# Load settings
if [ -f "$CGAL_ROOT/.autocgalrc" ]; then
. "$CGAL_ROOT/.autocgalrc"
if [ -f "${CGAL_HOME}/.autocgalrc" ]; then
. "${CGAL_HOME}/.autocgalrc"
else
echo "CONFIGURATION FILE .autocgalrc NOT FOUND" >&2;
exit 1
@@ -255,7 +255,7 @@ run_test_on_platform()
CGAL_BINARY_DIR=${CGAL_BINARY_DIR_BASE}/${PLATFORM}
cd "${CGAL_BINARY_DIR}"
log "${ACTUAL_LOGFILE}.test.${PLATFORM}" "Testing on host ${HOST} and platform ${PLATFORM}"
INIT_FILE="${CGAL_ROOT}/${REFERENCE_PLATFORMS_DIR}/${PLATFORM}.cmake"
INIT_FILE="${CGAL_HOME}/${REFERENCE_PLATFORMS_DIR}/${PLATFORM}.cmake"
if [ ! -f "${INIT_FILE}" ]; then
echo "error NEED A INIT FILE !"
fi
@@ -266,11 +266,11 @@ run_test_on_platform()
CMAKE_OPTS="${CMAKE_OPTS} -DWITH_examples=ON -DWITH_demos=ON"
fi
if [ -z "${SHOW_PROGRESS}" ]; then
cmake ${INIT_FILE:+"-C${INIT_FILE}"} '${CMAKE_GENERATOR}' -DBUILD_TESTING=ON ${CMAKE_OPTS} $CGAL_DIR 2>&1 >package_installation.log
cmake ${INIT_FILE:+"-C${INIT_FILE}"} '${CMAKE_GENERATOR}' -DBUILD_TESTING=ON ${CMAKE_OPTS} $CGAL_DIR >package_installation.log 2>&1
else
cmake ${INIT_FILE:+"-C${INIT_FILE}"} '${CMAKE_GENERATOR}' -DBUILD_TESTING=ON ${CMAKE_OPTS} $CGAL_DIR 2>&1 |tee package_installation.log
fi
LIST_TEST_FILE="${CGAL_ROOT}/list_test_packages"
LIST_TEST_FILE="${CGAL_HOME}/list_test_packages"
if [ -f ${LIST_TEST_FILE} ]; then
LIST_TEST_PACKAGES=$(source ${LIST_TEST_FILE})
fi
@@ -283,11 +283,13 @@ run_test_on_platform()
TO_TEST="${TO_TEST}|$pkg"
fi
done
#unsets the limit of 1024 bits for the logs through ssh
echo "SET(CTEST_CUSTOM_MAXIMUM_PASSED_TEST_OUTPUT_SIZE 1000000000)" > CTestCustom.cmake
echo "SET(CTEST_CUSTOM_MAXIMUM_FAILED_TEST_OUTPUT_SIZE 1000000000)" >> CTestCustom.cmake
CTEST_OPTS="-T Start -T Test -j${NUMBER_OF_PROCESSORS} ${DO_NOT_TEST:+-E execution___of__} --timeout 1200"
if [ -z "${SHOW_PROGRESS}" ]; then
ctest ${TO_TEST:+-L ${TO_TEST} } ${CTEST_OPTS} ${KEEP_TESTS:+-FC .}> tmp.txt
else
echo "ctest ${CTEST_OPTS} ${TO_TEST:+-L ${TO_TEST}} ${KEEP_TESTS:+-FC .}|tee tmp.txt"
ctest ${CTEST_OPTS} ${TO_TEST:+-L ${TO_TEST}} ${KEEP_TESTS:+-FC .}|tee tmp.txt
fi
#####################
@@ -310,6 +312,10 @@ run_test_on_platform()
echo "CGAL_TEST_PLATFORM ${PLATFORM}" >> "$RESULT_FILE"
grep -e "^-- USING " "${CGAL_BINARY_DIR}/installation.log" >> $RESULT_FILE
echo "------------" >> "$RESULT_FILE"
#if git branch, create empty scm file for python script
if [ -n "${SCRIPTS_DIR}" ]; then
touch ../../../../../.scm-branch
fi
python3 ${CGAL_DIR}/${TESTSUITE_DIR}test/parse-ctest-dashboard-xml.py $CGAL_TESTER $PLATFORM
for file in $(ls|grep _Tests); do
@@ -319,9 +325,14 @@ run_test_on_platform()
TEST_REPORT="TestReport_${CGAL_TESTER}_${PLATFORM}"
mkdir -p Installation
chmod 777 Installation
cp "${CGAL_BINARY_DIR}/package_installation.log" "Installation/${TEST_REPORT}"
cat "${CGAL_BINARY_DIR}/package_installation.log" >> "Installation/${TEST_REPORT}"
#call the python script to complete the results report.
python3 ${CGAL_DIR}/${TESTSUITE_DIR}test/post_process_ctest_results.py Installation/${TEST_REPORT} ${TEST_REPORT} results_${CGAL_TESTER}_${PLATFORM}.txt
rm -f $OUTPUT_FILE $OUTPUT_FILE.gz
if [ -n "${SCRIPTS_DIR}" ]; then
rm ../../../../../.scm-branch
fi
tar cf $OUTPUT_FILE results_${CGAL_TESTER}_${PLATFORM}.txt */"$TEST_REPORT"
echo
gzip -9f $OUTPUT_FILE
@@ -0,0 +1,40 @@
#!/bin/bash
# this script requires ghi: https://github.com/stephencelis/ghi
# example calls within a git repo
# bash tag_pr_per_release.sh 4.12 4.12.1
# bash tag_pr_per_release.sh 4.12 4.13
# bash tag_pr_per_release.sh 4.13 4.13.1
#
# After the release of CGAL-5.0 the release manager needs to call:
# bash tag_pr_per_release.sh 4.14 5.0
#
# After the release of CGAL-4.14.1 the release manager needs to call:
# bash tag_pr_per_release.sh 4.14 4.14.1
#
# After the release of CGAL-4.14.2 the release manager needs to call:
# bash tag_pr_per_release.sh 4.14 4.14.2
#
PREVIOUS_MAJOR_RELEASE=$1
CURRENT_RELEASE=$2
PR_LIST=`git log releases/CGAL-${PREVIOUS_MAJOR_RELEASE}..releases/CGAL-${CURRENT_RELEASE} --merges | grep "Merge pull request" | sort -u | awk '{print $4}' | sed 's/#//'`
for i in ${PR_LIST}; do
echo ghi label $i -a Merged_in_${CURRENT_RELEASE} -- CGAL/cgal
done
read -p "Please confirm operation by typing YES? " -n 4 -r
echo # (optional) move to a new line
if [[ $REPLY =~ ^YES$ ]]; then
for i in ${PR_LIST}; do
ghi label $i -a Merged_in_${CURRENT_RELEASE} -- CGAL/cgal
done
else
echo "Abort"
fi