summarylogtreecommitdiffstats
path: root/build.sh
diff options
context:
space:
mode:
authorKyle Sferrazza2017-10-06 22:43:01 -0400
committerKyle Sferrazza2017-10-06 22:43:01 -0400
commit16d9952f40b1a4a2681b0877af8166b73fdcac1d (patch)
tree875ab74fbb80f961169563e058b473709226fb12 /build.sh
parent31801cb7da480fb31ce6d7f6b12cf4e2e65dccfc (diff)
downloadaur-16d9952f40b1a4a2681b0877af8166b73fdcac1d.tar.gz
beta 8
Diffstat (limited to 'build.sh')
-rwxr-xr-xbuild.sh83
1 files changed, 37 insertions, 46 deletions
diff --git a/build.sh b/build.sh
index 33c4d7452cc7..c49ae5bed854 100755
--- a/build.sh
+++ b/build.sh
@@ -1,20 +1,14 @@
#!/usr/bin/env bash
set -e
-if hash powershell 2>/dev/null; then
- echo 'Continuing with `powershell -noprofile -c Start-PSBuild`'
- powershell -noprofile -c "Import-Module ./build.psm1; Start-PSBuild"
-else
- echo 'Continuing with full manual build'
-
- ## Restore
- dotnet restore src/powershell-unix
- dotnet restore src/ResGen
- dotnet restore src/TypeCatalogGen
-
- ## Setup the build target to gather dependency information
- targetFile="$(pwd)/src/Microsoft.PowerShell.SDK/obj/Microsoft.PowerShell.SDK.csproj.TypeCatalog.targets"
- cat > $targetFile <<-"EOF"
+## Restore
+dotnet restore src/powershell-unix
+dotnet restore src/ResGen
+dotnet restore src/TypeCatalogGen
+
+## Setup the build target to gather dependency information
+targetFile="$(pwd)/src/Microsoft.PowerShell.SDK/obj/Microsoft.PowerShell.SDK.csproj.TypeCatalog.targets"
+cat > $targetFile <<-"EOF"
<Project>
<Target Name="_GetDependencies"
DependsOnTargets="ResolveAssemblyReferencesDesignTime">
@@ -25,35 +19,32 @@ else
</Target>
</Project>
EOF
- dotnet msbuild src/Microsoft.PowerShell.SDK/Microsoft.PowerShell.SDK.csproj /t:_GetDependencies "/property:DesignTimeBuild=true;_DependencyFile=$(pwd)/src/TypeCatalogGen/powershell.inc" /nologo
-
- ## Generate 'powershell.version'
- git --git-dir="$(pwd)/.git" describe --dirty --abbrev=60 > "$(pwd)/powershell.version"
-
- ## create the telemetry flag file
- touch "$(pwd)/DELETE_ME_TO_DISABLE_CONSOLEHOST_TELEMETRY"
-
- ## Generate resource binding C# files
- pushd src/ResGen
- dotnet run
- popd
-
- ## Generate 'CorePsTypeCatalog.cs'
- pushd src/TypeCatalogGen
- dotnet run ../Microsoft.PowerShell.CoreCLR.AssemblyLoadContext/CorePsTypeCatalog.cs powershell.inc
- popd
-
- ## Build native component
- pushd src/libpsl-native
- cmake -DCMAKE_BUILD_TYPE=Debug .
- make -j
- make test
- popd
-
- ## Build powershell core
- rawRid="$(dotnet --info | grep RID)"
- rid=${rawRid##* } # retain the part after the last space
- dotnet publish --configuration Linux src/powershell-unix/ --output bin --runtime $rid
-
- echo 'You can run powershell from bin/, but some modules that are normally added by the Restore-PSModule step will not be available.'
-fi
+dotnet msbuild src/Microsoft.PowerShell.SDK/Microsoft.PowerShell.SDK.csproj /t:_GetDependencies "/property:DesignTimeBuild=true;_DependencyFile=$(pwd)/src/TypeCatalogGen/powershell.inc" /nologo
+
+## Generate 'powershell.version'
+git --git-dir="$(pwd)/.git" describe --dirty --abbrev=60 > "$(pwd)/powershell.version"
+
+## create the telemetry flag file
+touch "$(pwd)/DELETE_ME_TO_DISABLE_CONSOLEHOST_TELEMETRY"
+
+## Generate resource binding C# files
+pushd src/ResGen
+dotnet run
+popd
+
+## Generate 'CorePsTypeCatalog.cs'
+pushd src/TypeCatalogGen
+dotnet run ../System.Management.Automation/CoreCLR/CorePsTypeCatalog.cs powershell.inc
+popd
+
+## Build native component
+pushd src/libpsl-native
+cmake -DCMAKE_BUILD_TYPE=Debug .
+make -j
+make test
+popd
+
+## Build powershell core
+rawRid="$(dotnet --info | grep RID)"
+rid=${rawRid##* } # retain the part after the last space
+dotnet publish --configuration Linux src/powershell-unix/ --output bin --runtime $rid