diff --git a/build/NuGet.targets b/build/NuGet.targets index 91d5a728..ddec48dd 100644 --- a/build/NuGet.targets +++ b/build/NuGet.targets @@ -1,7 +1,11 @@ + + $(MSBuildProjectDirectory)/.. + $(RootDir)/packages + + Command='dotnet restore "$(SolutionPath)" --packages "$(NUGET_PACKAGES)"'/> diff --git a/docker/scripts/compile-lfmerge-combined.sh b/docker/scripts/compile-lfmerge-combined.sh index 115903b7..8bdba23c 100755 --- a/docker/scripts/compile-lfmerge-combined.sh +++ b/docker/scripts/compile-lfmerge-combined.sh @@ -9,7 +9,14 @@ echo "Using $(which dotnet)" export DbVersion="${1-7000072}" echo "Building for ${DbVersion}" + +# echo "In download-dependencies-combined.sh, before dotnet build step. Press Enter to continue..." +# read + dotnet build /t:CompileOnly /v:quiet /property:Configuration=Release /property:DatabaseVersion=${DbVersion} build/LfMerge.proj +# echo "In download-dependencies-combined.sh, after dotnet build step. Press Enter to continue..." +# read + # ln -sf ../Mercurial output/ # xbuild /t:TestOnly /v:detailed /property:Configuration=Release /property:DatabaseVersion=${DbVersion} build/LfMerge.proj diff --git a/docker/scripts/create-installation-tarball.sh b/docker/scripts/create-installation-tarball.sh index 2ae015fd..89103395 100755 --- a/docker/scripts/create-installation-tarball.sh +++ b/docker/scripts/create-installation-tarball.sh @@ -9,6 +9,7 @@ export HOME=/tmp export XDG_CONFIG_HOME=/tmp/.config export BUILD=Release export FRAMEWORK=net6.0 +export NETSTANDARD=netstandard2.0 export DatabaseVersion=${1:-7000072} @@ -18,7 +19,8 @@ export DBDESTDIR=tarball/lfmerge-${DatabaseVersion} export COMMONDESTDIR=tarball/lfmerge export LIB=usr/lib/lfmerge/${DatabaseVersion} export SHARE=usr/share/lfmerge/${DatabaseVersion} - +export NATIVERUNTIME=runtimes/linux-x64/native +export LIBRUNTIME=runtimes/linux-x64/lib export DBVERSIONPATH=/usr/lib/lfmerge/${DatabaseVersion} # Apparently the downloaded mercurial.ini doesn't have the right fixutf8 config, and it also @@ -31,9 +33,18 @@ convert= fixutf8=/${LIB}/MercurialExtensions/fixutf8/fixutf8.py EOF +echo "In create-installation-tarball.sh, just before running the install steps." +echo "" +printenv +echo "" +echo "Press Enter to continue..." +read + # Install binaries install -d ${DBDESTDIR}/${LIB} install -m 644 output/${BUILD}/${FRAMEWORK}/*.* ${DBDESTDIR}/${LIB} 2>/dev/null || install -m 644 output/${BUILD}/*.* ${DBDESTDIR}/${LIB} +install -m 644 output/${BUILD}/${FRAMEWORK}/${NATIVERUNTIME}/*.* ${DBDESTDIR}/${LIB} 2>/dev/null || install -m 644 output/${BUILD}/${NATIVERUNTIME}/*.* ${DBDESTDIR}/${LIB} +install -m 644 output/${BUILD}/${FRAMEWORK}/${LIBRUNTIME}/${NETSTANDARD}/*.* ${DBDESTDIR}/${LIB} 2>/dev/null || install -m 644 output/${BUILD}/${LIBRUNTIME}/${NETSTANDARD}/*.* ${DBDESTDIR}/${LIB} install -m 755 output/${BUILD}/${FRAMEWORK}/LfMerge ${DBDESTDIR}/${LIB} 2>/dev/null || install -m 755 output/${BUILD}/LfMerge ${DBDESTDIR}/${LIB} install -m 755 output/${BUILD}/${FRAMEWORK}/LfMergeQueueManager ${DBDESTDIR}/${LIB} 2>/dev/null || install -m 755 output/${BUILD}/LfMergeQueueManager ${DBDESTDIR}/${LIB} install -m 755 output/${BUILD}/${FRAMEWORK}/chorusmerge ${DBDESTDIR}/${LIB} 2>/dev/null || install -m 755 output/${BUILD}/chorusmerge ${DBDESTDIR}/${LIB} diff --git a/docker/scripts/download-dependencies-combined.sh b/docker/scripts/download-dependencies-combined.sh index bba8a8a9..925bb601 100755 --- a/docker/scripts/download-dependencies-combined.sh +++ b/docker/scripts/download-dependencies-combined.sh @@ -5,9 +5,17 @@ set -e echo "Downloading dependencies" export MONO_PREFIX=/opt/mono5-sil . environ + +pwd +# echo "In download-dependencies-combined.sh, before msbuild step. Press Enter to continue..." +# read + if [ "x$1" = "x7000072" ]; then msbuild /t:RestorePackages /p:KeepJobsFile=false build/LfMerge.proj else msbuild /t:DownloadDependencies /p:KeepJobsFile=false build/LfMerge.proj fi +# echo "In download-dependencies-combined.sh, after msbuild step. Press Enter to continue..." +# read + diff --git a/docker/scripts/gitversion-combined.sh b/docker/scripts/gitversion-combined.sh index 50c67356..b7fa6f71 100755 --- a/docker/scripts/gitversion-combined.sh +++ b/docker/scripts/gitversion-combined.sh @@ -19,7 +19,7 @@ fi export MONO_PREFIX=/opt/mono5-sil RUNMODE="PACKAGEBUILD" BUILD=Release . environ -msbuild build/LfMerge.proj +# msbuild build/LfMerge.proj mkdir -p output/Release if [ -n "$UPDATE_ASSEMBLYINFO_BY_SCRIPT" -a "$UPDATE_ASSEMBLYINFO_BY_SCRIPT" -ne 0 ]; then @@ -29,3 +29,6 @@ if [ -n "$UPDATE_ASSEMBLYINFO_BY_SCRIPT" -a "$UPDATE_ASSEMBLYINFO_BY_SCRIPT" -ne fi echo "Building packages for version ${DebPackageVersion}" + +# echo "In gitversion-combined.sh, at end of script. Press Enter to continue..." +# read diff --git a/docker/scripts/setup-workspace.sh b/docker/scripts/setup-workspace.sh index a851c09c..5203443a 100755 --- a/docker/scripts/setup-workspace.sh +++ b/docker/scripts/setup-workspace.sh @@ -22,9 +22,13 @@ cd "${DEST}" if [ "${BRANCH_TO_BUILD}" ]; then git checkout "${BRANCH_TO_BUILD}" fi -git clean -dxf --exclude=packages/ + +git clean -dxf --exclude=packages/ --exclude=build/packages/ git reset --hard +# echo "In setup-workspace.sh, after git reset. Press Enter to continue..." +# read + # FLExBridge dependencies from FW 8 builds have vanished from TeamCity, so we stored them in the Docker image under ${REPO_ROOT}/docker mkdir -p lib (cd lib && xz -dc "${REPO_ROOT}/docker/fw8-flexbridge.tar.xz" | tar xf -) diff --git a/pbuild.sh b/pbuild.sh index 0a4da42b..027b2d06 100755 --- a/pbuild.sh +++ b/pbuild.sh @@ -96,7 +96,7 @@ fi # Run the build if [ "${BUILD_FW8}" -eq 0 ]; then - docker run --mount type=bind,source="$(pwd)",target=/home/builder/repo --mount type=tmpfs,dst=/tmp --env "BRANCH_TO_BUILD=${FW9_BUILD_BRANCH}" --env "BUILD_NUMBER=999" --env "DebPackageVersion=${DebPackageVersion}" --env "Version=${MsBuildVersion}" --env "MajorMinorPatch=${MajorMinorPatch}" --env "AssemblyVersion=${AssemblySemVer}" --env "FileVersion=${AssemblySemFileVer}" --env "InformationalVersion=${InformationalVersion}" --mount type=bind,src=/storage/nuget,dst=/storage/nuget --name tmp-lfmerge-build-7000072 lfmerge-build-7000072 + docker run -it --mount type=bind,source="$(pwd)",target=/home/builder/repo --mount type=tmpfs,dst=/tmp --env "BRANCH_TO_BUILD=${FW9_BUILD_BRANCH}" --env "BUILD_NUMBER=999" --env "DebPackageVersion=${DebPackageVersion}" --env "Version=${MsBuildVersion}" --env "MajorMinorPatch=${MajorMinorPatch}" --env "AssemblyVersion=${AssemblySemVer}" --env "FileVersion=${AssemblySemFileVer}" --env "InformationalVersion=${InformationalVersion}" --mount type=bind,src=/storage/nuget,dst=/storage/nuget --name tmp-lfmerge-build-7000072 lfmerge-build-7000072 else time parallel --no-notice < - net462 + net6.0 WinExe FixFwData Debug;Release diff --git a/src/LfMerge.Core.Tests/LfMerge.Core.Tests.csproj b/src/LfMerge.Core.Tests/LfMerge.Core.Tests.csproj index 6751e5db..269a9188 100644 --- a/src/LfMerge.Core.Tests/LfMerge.Core.Tests.csproj +++ b/src/LfMerge.Core.Tests/LfMerge.Core.Tests.csproj @@ -1,7 +1,7 @@ - net462 + net6.0 LfMerge.Core.Tests Debug;Release LfMerge.Core.Tests diff --git a/src/LfMerge.Core/LfMerge.Core.csproj b/src/LfMerge.Core/LfMerge.Core.csproj index 3bd4ced4..a33fd435 100644 --- a/src/LfMerge.Core/LfMerge.Core.csproj +++ b/src/LfMerge.Core/LfMerge.Core.csproj @@ -37,6 +37,7 @@ See full changelog at https://github.com/sillsdev/LfMerge/blob/master/CHANGELOG. +