From 946811068fcd3e82bd98ce86dc44c0eca1c87c6d Mon Sep 17 00:00:00 2001 From: "Miso Zmiric (Mike Squinter)" Date: Sun, 5 Jul 2015 21:08:16 +0100 Subject: [PATCH 1/2] add local libversion checks for VS (via powershell) --- .gitignore | 1 + pre-build.ps1 | 26 ++++++++++++++++++++++++-- 2 files changed, 25 insertions(+), 2 deletions(-) diff --git a/.gitignore b/.gitignore index a23212bf70..9a83493328 100644 --- a/.gitignore +++ b/.gitignore @@ -13,6 +13,7 @@ distribution/windows/*.exe #lib lib +libversion ################# ## Eclipse diff --git a/pre-build.ps1 b/pre-build.ps1 index a4b2246d58..938f4c7f7b 100644 --- a/pre-build.ps1 +++ b/pre-build.ps1 @@ -1,11 +1,33 @@ +#init +$libversion = 1 $path = Split-Path $Script:MyInvocation.MyCommand.Path $zip = $path+'\orctlibs.zip' $libs = $path+'\lib' +$libsVFile = $path+'\libversion' $libsTest = Test-Path $libs -if (!$libsTest) { - mkdir $libs + +#libs version test +$libsVersionTest = Test-Path $libsVFile +$currentVersion = 0 +$needsdownload = $true +if ($libsVersionTest) { + $currentVersion = [IO.File]::ReadAllText($libsVFile) +} +if ($currentVersion -ge $libversion) { + $needsdownload = $false +} + +#download +if (!$libsTest -or $needsdownload) { + if ($libsTest) { + rm $libs -Recurse -Force + } + mkdir $libs Invoke-WebRequest https://download.openrct2.website/dev/lib/vs -OutFile $path\orctlibs.zip [System.Reflection.Assembly]::LoadWithPartialName('System.IO.Compression.FileSystem') > $null [System.IO.Compression.ZipFile]::ExtractToDirectory($zip, $libs) rm $path\orctlibs.zip -Force -ErrorAction SilentlyContinue + $libversion | Set-Content $libsVFile +} else { + echo 'All libs up to date' } From 87ea04c002b889bc472a874b206b4a6e2da9ef44 Mon Sep 17 00:00:00 2001 From: "Miso Zmiric (Mike Squinter)" Date: Sun, 5 Jul 2015 22:39:35 +0100 Subject: [PATCH 2/2] add libversion checks to mingw build --- build.sh | 41 +++++++++++++++++++++++++++++++++++++++++ 1 file changed, 41 insertions(+) diff --git a/build.sh b/build.sh index 9a96a9851d..8835abe2c6 100755 --- a/build.sh +++ b/build.sh @@ -2,10 +2,51 @@ set -e +cachedir=.cache +mkdir -p $cachedir + if [[ ! -d build ]]; then mkdir -p build fi +libversion=1 +libVFile="./libversion" +libdir="./lib" +currentversion=0 +needsdownload="true" + +if [ -f $libVFile ]; then + while read line; do + currentversion=$line + continue + done < $libVFile +fi + +if [ $currentversion -ge $libversion ]; then + needsdownload="false" +fi + +if [ ! -d $libdir ]; then + needsdownload="true" +fi + +if [[ "$needsdownload" = "true" ]]; then + echo "New libraries need to be downloaded, the script might ask you for sudo access password" + rm -rf ./lib + if [[ -f $cachedir/orctlibs.zip ]]; then + rm -rf $cachedir/orctlibs.zip + fi + if [[ -d /usr/local/cross-tools/orctlibs ]]; then + sudo rm -rf /usr/local/cross-tools/orctlibs + fi + curl https://download.openrct2.website/dev/lib/mingw -o $cachedir/orctlibs.zip; + sudo mkdir -p /usr/local/cross-tools/orctlibs + mkdir -p lib + sudo cp -rf $cachedir/orctlibs/glob/* /usr/local/cross-tools/orctlibs/. + cp -rf $cachedir/orctlibs/local/* ./lib/. + echo $libversion > $libVFile +fi + pushd build cmake -DCMAKE_TOOLCHAIN_FILE=../CMakeLists_mingw.txt -DCMAKE_BUILD_TYPE=Debug .. make