瀏覽代碼

contrib/ci.inria.fr: update windows pipeline

Nathalie Furmento 6 年之前
父節點
當前提交
76d3970668

+ 4 - 2
contrib/ci.inria.fr/Jenkinsfile-windows

@@ -48,7 +48,8 @@ pipeline
 					// Stash those scripts because they are not in make dist
 					dir('contrib/ci.inria.fr')
 					{
-						stash includes: "job-1-check-windows.sh", name: 'script-windows-check'
+						stash includes: "job-1-check-windows.bat", name: 'script-windows-check'
+						stash includes: "job-1-build-windows.sh", name: 'script-windows-build'
 					}
 					archiveArtifacts artifacts: "${env.tarballgz},starpu.pdf,starpu_dev.pdf", fingerprint: true, onlyIfSuccessful: true
 					deleteDir()
@@ -79,7 +80,8 @@ pipeline
 								{
 									unstash 'tarballgz'
 									unstash 'script-windows-check'
-									sh 'sh ./job-1-check-windows.sh'
+									unstash 'script-windows-build'
+									bat './job-1-check-windows.bat'
 									deleteDir()
 								}
 							}

+ 89 - 0
contrib/ci.inria.fr/job-1-build-windows.sh

@@ -0,0 +1,89 @@
+#!/bin/sh
+# StarPU --- Runtime system for heterogeneous multicore architectures.
+#
+# Copyright (C) 2013,2015,2017-2018                      CNRS
+#
+# StarPU is free software; you can redistribute it and/or modify
+# it under the terms of the GNU Lesser General Public License as published by
+# the Free Software Foundation; either version 2.1 of the License, or (at
+# your option) any later version.
+#
+# StarPU is distributed in the hope that it will be useful, but
+# WITHOUT ANY WARRANTY; without even the implied warranty of
+# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+#
+# See the GNU Lesser General Public License in COPYING.LGPL for more details.
+#
+
+set -e
+
+oldPATH=$PATH
+
+tarball=$(ls -tr starpu*.tar.gz | tail -1)
+if test -z "$tarball" ; then
+    echo Tarball not available
+    exit 2
+fi
+
+mv $tarball ..
+rm -rf *
+mv ../$tarball .
+basename=$(basename $tarball .tar.gz)
+test -d $basename && chmod -R u+rwX $basename && rm -rf $basename
+tar xfz $tarball
+version=$(echo $basename | cut -d- -f2)
+winball=starpu-win32-build-${version}
+
+export STARPU_HOME=$PWD
+
+rm -rf ${basename}/build
+mkdir ${basename}/build
+cd ${basename}/build
+
+export PATH=/c/Builds:/c/MinGW/bin/:/c/MinGW/mingw32/bin/:/c/MinGW/msys/1.0/bin":/c/Program Files (x86)/Microsoft Visual Studio 11.0/VC/bin":"/c/Program Files/Microsoft Visual Studio 11.0/Common7/IDE":$oldPATH
+#export HWLOC=/c/StarPU/hwloc-win32-build-1.11.0
+
+prefix=${PWD}/../../${winball}
+rm -rf $prefix
+
+day=$(date +%u)
+if test $day -le 5
+then
+#    ../configure --prefix=$prefix --with-hwloc=${HWLOC} --disable-build-examples --enable-quick-check --enable-debug --enable-verbose --enable-native-winthreads
+    ../configure --prefix=$prefix --without-hwloc --disable-build-examples --enable-quick-check --enable-debug --enable-verbose --enable-native-winthreads
+else
+#    ../configure --prefix=$prefix --with-hwloc=${HWLOC} --enable-quick-check --enable-debug --enable-verbose --enable-native-winthreads
+    ../configure --prefix=$prefix --without-hwloc --enable-quick-check --enable-debug --enable-verbose --enable-native-winthreads
+fi
+
+make
+
+touch check_$$
+
+if test "$1" == "-exec"
+then
+    (make -k check || true) > check_$$ 2>&1
+    cat check_$$
+    make showcheck
+fi
+
+CHECK=${PWD}/check_$$
+
+fail=$(grep FAIL ${CHECK} | grep -v XFAIL || true)
+if test -z "$fail"
+then
+    make install
+    cd ../../
+    cp /c/MinGW/bin/pthread*dll ${winball}/bin
+    cp /c/MinGW/bin/libgcc*dll ${winball}/bin
+#    cp ${HWLOC}/bin/*dll ${winball}/bin
+    zip -r ${winball}.zip ${winball}
+
+    mv ${winball} starpu_install
+fi
+
+PATH=$oldPATH
+
+echo $fail
+exit $(grep FAIL ${CHECK} | grep -v XFAIL | wc -l)
+

+ 27 - 0
contrib/ci.inria.fr/job-1-check-windows.bat

@@ -0,0 +1,27 @@
+REM
+REM StarPU --- Runtime system for heterogeneous multicore architectures.
+REM
+REM Copyright (C) 2013-2018                                CNRS
+REM
+REM StarPU is free software; you can redistribute it and/or modify
+REM it under the terms of the GNU Lesser General Public License as published by
+REM the Free Software Foundation; either version 2.1 of the License, or (at
+REM your option) any later version.
+REM
+REM StarPU is distributed in the hope that it will be useful, but
+REM WITHOUT ANY WARRANTY; without even the implied warranty of
+REM MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
+REM
+REM See the GNU Lesser General Public License in COPYING.LGPL for more details.
+REM
+
+set PATH=%PATH%;C:\MinGW\msys\1.0\bin;c:\Program Files (x86)\Microsoft Visual Studio 11.0\Common7\IDE;c:\Program Files (x86)\Microsoft Visual Studio 11.0\VC\bin
+sh -c "../../../StarPU/starpu-build.sh"
+set PATH=C:\Windows\SysWOW64;C:\Program Files (x86)\Mozilla Firefox;C:\Windows\system32;C:\Windows;C:\Windows\System32\Wbem;C:\Windows\System32\WindowsPowerShell\v1.0\;C:\Windows\SysWOW64;C:\Program Files\Java\jre7\bin;
+set HWLOC=c:\StarPU\hwloc-win32-build-1.11.0
+
+cd starpu_install
+set STARPU_PATH=%cd%
+cd bin\msvc
+starpu_exec ../../share/doc/starpu/tutorial/hello_world_msvc.c
+

+ 0 - 90
contrib/ci.inria.fr/job-1-check-windows.sh

@@ -1,90 +0,0 @@
-#!/bin/sh
-# StarPU --- Runtime system for heterogeneous multicore architectures.
-#
-# Copyright (C) 2013-2018                                CNRS
-#
-# StarPU is free software; you can redistribute it and/or modify
-# it under the terms of the GNU Lesser General Public License as published by
-# the Free Software Foundation; either version 2.1 of the License, or (at
-# your option) any later version.
-#
-# StarPU is distributed in the hope that it will be useful, but
-# WITHOUT ANY WARRANTY; without even the implied warranty of
-# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
-#
-# See the GNU Lesser General Public License in COPYING.LGPL for more details.
-#
-
-echo foo
-#set -e
-#set -x
-#
-#ulimit -c unlimited
-#
-#export PKG_CONFIG_PATH=/home/ci/usr/local/lib/pkgconfig:$PKG_CONFIG_PATH
-#export LD_LIBRARY_PATH=/home/ci/usr/local/lib:$LD_LIBRARY_PATH
-#
-#tarball=$(ls -tr starpu-*.tar.gz | tail -1)
-#
-#if test -z "$tarball"
-#then
-#    echo Error. No tar.gz file
-#    ls
-#    pwd
-#    exit 1
-#fi
-#
-#basename=$(basename $tarball .tar.gz)
-#export STARPU_HOME=$PWD/$basename/home
-#mkdir -p $basename
-#cd $basename
-#env > $PWD/env
-#
-#test -d $basename && chmod -R u+rwX $basename && rm -rf $basename
-#tar xfz ../$tarball
-#cd $basename
-#mkdir build
-#cd build
-#
-#STARPU_CONFIGURE_OPTIONS=""
-#suname=$(uname)
-#if test "$suname" == "Darwin"
-#then
-#    STARPU_CONFIGURE_OPTIONS="--without-hwloc"
-#fi
-#if test "$suname" == "OpenBSD"
-#then
-#    STARPU_CONFIGURE_OPTIONS="--without-hwloc --disable-mlr"
-#fi
-#if test "$suname" == "FreeBSD"
-#then
-#    STARPU_CONFIGURE_OPTIONS="--disable-fortran"
-#fi
-#
-#export CC=gcc
-#
-#CONFIGURE_OPTIONS="--enable-debug --enable-verbose --enable-mpi-check --disable-build-doc"
-#day=$(date +%u)
-#if test $day -le 5
-#then
-#    CONFIGURE_CHECK="--enable-quick-check"
-#else
-#    CONFIGURE_CHECK="--enable-long-check"
-#fi
-#../configure $CONFIGURE_OPTIONS $CONFIGURE_CHECK  $STARPU_CONFIGURE_OPTIONS
-#
-#export STARPU_TIMEOUT_ENV=1800
-#make
-##make check
-#(make -k check || true) 2>&1 | tee  ../check_$$
-#make showsuite
-#
-##grep "^FAIL:" ../check_$$ || true
-#
-#make clean
-#
-#grep "^FAIL:" ../check_$$ || true
-#
-#echo "Running on $(uname -a)"
-#exit $(grep "^FAIL:" ../check_$$ | wc -l)
-