|
|
|
@ -33,11 +33,11 @@ build()
@@ -33,11 +33,11 @@ build()
|
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
if [ $oshost = "linux" ] || [ $oshost = "macosx" ]; then |
|
|
|
|
config=$(tr '[:upper:]' '[:lower:]' <<< ${configuration}_$platform) make -C $builddir/gmake/ |
|
|
|
|
config=$(tr '[:upper:]' '[:lower:]' <<< ${configuration}_$platform) make -C "$builddir/gmake/" |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
find_msbuild |
|
|
|
|
$msbuild $slnpath -p:Configuration=$configuration -p:Platform=$platform -v:$verbosity -nologo |
|
|
|
|
$msbuild "$slnpath" -p:Configuration=$configuration -p:Platform=$platform -v:$verbosity -nologo |
|
|
|
|
|
|
|
|
|
if [ $ci = true ]; then |
|
|
|
|
test |
|
|
|
@ -46,7 +46,7 @@ build()
@@ -46,7 +46,7 @@ build()
|
|
|
|
|
|
|
|
|
|
generate_config() |
|
|
|
|
{ |
|
|
|
|
$builddir/premake.sh --file=$builddir/premake5.lua $vs --os=$os --arch=$platform --configuration=$configuration --config_only |
|
|
|
|
"$builddir/premake.sh" --file="$builddir/premake5.lua" $vs --os=$os --arch=$platform --configuration=$configuration --config_only |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
generate() |
|
|
|
@ -54,83 +54,83 @@ generate()
@@ -54,83 +54,83 @@ generate()
|
|
|
|
|
download_llvm |
|
|
|
|
|
|
|
|
|
if [ "$os" = "linux" ] || [ "$os" = "macosx" ]; then |
|
|
|
|
$builddir/premake.sh --file=$builddir/premake5.lua gmake2 --os=$os --arch=$platform --configuration=$configuration "$@" |
|
|
|
|
"$builddir/premake.sh" --file="$builddir/premake5.lua" gmake2 --os=$os --arch=$platform --configuration=$configuration "$@" |
|
|
|
|
fi |
|
|
|
|
|
|
|
|
|
$builddir/premake.sh --file=$builddir/premake5.lua $vs --os=$os --arch=$platform --configuration=$configuration |
|
|
|
|
"$builddir/premake.sh" --file="$builddir/premake5.lua" $vs --os=$os --arch=$platform --configuration=$configuration |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
restore() |
|
|
|
|
{ |
|
|
|
|
find_msbuild |
|
|
|
|
$msbuild $slnpath -p:Configuration=$configuration -p:Platform=$platform -v:$verbosity -t:restore -nologo |
|
|
|
|
$msbuild "$slnpath" -p:Configuration=$configuration -p:Platform=$platform -v:$verbosity -t:restore -nologo |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
prepack() |
|
|
|
|
{ |
|
|
|
|
find_msbuild |
|
|
|
|
$msbuild $slnpath -t:prepack -p:Configuration=$configuration -p:Platform=$platform -v:$verbosity -nologo |
|
|
|
|
$msbuild "$slnpath" -t:prepack -p:Configuration=$configuration -p:Platform=$platform -v:$verbosity -nologo |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
pack() |
|
|
|
|
{ |
|
|
|
|
find_msbuild |
|
|
|
|
$msbuild -t:restore $rootdir/src/Package/CppSharp.Package.csproj -p:Configuration=$configuration -p:Platform=$platform |
|
|
|
|
$msbuild -t:pack $rootdir/src/Package/CppSharp.Package.csproj -p:Configuration=$configuration -p:Platform=$platform -p:PackageOutputPath=$rootdir/artifacts |
|
|
|
|
$msbuild -t:restore "$rootdir/src/Package/CppSharp.Package.csproj" -p:Configuration=$configuration -p:Platform=$platform |
|
|
|
|
$msbuild -t:pack "$rootdir/src/Package/CppSharp.Package.csproj" -p:Configuration=$configuration -p:Platform=$platform -p:PackageOutputPath="$rootdir/artifacts" |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
test() |
|
|
|
|
{ |
|
|
|
|
dotnet test {$bindir/${configuration}_$platform,$gendir/*}/*.Tests*.dll --nologo |
|
|
|
|
dotnet test {"$bindir/${configuration}_$platform","$gendir"/*}/*.Tests*.dll --nologo |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
clean() |
|
|
|
|
{ |
|
|
|
|
rm -rf $objdir |
|
|
|
|
rm -rf $gendir |
|
|
|
|
rm -rf $bindir |
|
|
|
|
rm -rf $builddir/gmake |
|
|
|
|
rm -rf $builddir/$vs |
|
|
|
|
rm -rf $slnpath |
|
|
|
|
rm -rf "$objdir" |
|
|
|
|
rm -rf "$gendir" |
|
|
|
|
rm -rf "$bindir" |
|
|
|
|
rm -rf "$builddir/gmake" |
|
|
|
|
rm -rf "$builddir/$vs" |
|
|
|
|
rm -rf "$slnpath" |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
download_premake() |
|
|
|
|
{ |
|
|
|
|
premake_dir=$builddir/premake |
|
|
|
|
premake_dir="$builddir/premake" |
|
|
|
|
premake_filename=premake5 |
|
|
|
|
if [ $oshost = "windows" ]; then |
|
|
|
|
premake_filename=$premake_filename.exe |
|
|
|
|
fi |
|
|
|
|
premake_path=$premake_dir/$premake_filename |
|
|
|
|
|
|
|
|
|
if ! [ -f $premake_path ]; then |
|
|
|
|
if ! [ -f "$premake_path" ]; then |
|
|
|
|
echo "Downloading and unpacking Premake..." |
|
|
|
|
premake_url=https://github.com/InteropAlliance/premake-core/releases/download/latest/premake-$oshost-$platform.zip |
|
|
|
|
curl -L -O $premake_url |
|
|
|
|
unzip premake-$oshost-$platform.zip $premake_filename -d $premake_dir |
|
|
|
|
chmod +x $premake_path |
|
|
|
|
unzip premake-$oshost-$platform.zip $premake_filename -d "$premake_dir" |
|
|
|
|
chmod +x "$premake_path" |
|
|
|
|
rm premake-$oshost-$platform.zip |
|
|
|
|
fi |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
download_llvm() |
|
|
|
|
{ |
|
|
|
|
$builddir/premake.sh --file=$builddir/llvm/LLVM.lua download_llvm --os=$os --arch=$platform --configuration=$configuration |
|
|
|
|
"$builddir/premake.sh" --file="$builddir/llvm/LLVM.lua" download_llvm --os=$os --arch=$platform --configuration=$configuration |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
clone_llvm() |
|
|
|
|
{ |
|
|
|
|
$builddir/premake.sh --file=$builddir/llvm/LLVM.lua clone_llvm --os=$os --arch=$platform --configuration=$configuration |
|
|
|
|
"$builddir/premake.sh" --file="$builddir/llvm/LLVM.lua" clone_llvm --os=$os --arch=$platform --configuration=$configuration |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
build_llvm() |
|
|
|
|
{ |
|
|
|
|
$builddir/premake.sh --file=$builddir/llvm/LLVM.lua build_llvm --os=$os --arch=$platform --configuration=$configuration |
|
|
|
|
"$builddir/premake.sh" --file="$builddir/llvm/LLVM.lua" build_llvm --os=$os --arch=$platform --configuration=$configuration |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
package_llvm() |
|
|
|
|
{ |
|
|
|
|
$builddir/premake.sh --file=$builddir/llvm/LLVM.lua package_llvm --os=$os --arch=$platform --configuration=$configuration |
|
|
|
|
"$builddir/premake.sh" --file="$builddir/llvm/LLVM.lua" package_llvm --os=$os --arch=$platform --configuration=$configuration |
|
|
|
|
} |
|
|
|
|
|
|
|
|
|
detect_os() |
|
|
|
|