Welcome to mirror list, hosted at ThFree Co, Russian Federation.

github.com/mono/corefx.git - Unnamed repository; edit this file 'description' to name the repository.
summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJose Perez Rodriguez <joperezr@microsoft.com>2016-04-08 02:22:56 +0300
committerJose Perez Rodriguez <joperezr@microsoft.com>2016-04-08 19:17:16 +0300
commited3177b2959fe4930a19244b2dd48e1197a23b24 (patch)
tree681979507e16e796f95a59f5bd393f8133e8eb0a /build.sh
parentdf30ced35236d603284efcb164f132b657fb6b08 (diff)
Adding version information to non-Windows native build output
Diffstat (limited to 'build.sh')
-rwxr-xr-xbuild.sh19
1 files changed, 19 insertions, 0 deletions
diff --git a/build.sh b/build.sh
index 257d17d1de..0e28b6115f 100755
--- a/build.sh
+++ b/build.sh
@@ -15,6 +15,7 @@ usage()
echo "cross - optional argument to signify cross compilation,"
echo " - will use ROOTFS_DIR environment variable if set."
echo "skiptests - skip the tests in the './bin/*/*Tests/' subdirectory."
+ echo "generateversion - if building native only, pass this in to get a version on the build output."
echo "cmakeargs - user-settable additional arguments passed to CMake."
exit 1
}
@@ -97,6 +98,11 @@ prepare_native_build()
if [ $__VerboseBuild == 1 ]; then
export VERBOSE=1
fi
+
+ # If managed build is supported, then generate version
+ if [ $__buildmanaged == true ]; then
+ __generateversionsource=true
+ fi
}
build_managed()
@@ -123,6 +129,15 @@ build_native()
echo "Commencing build of corefx native components for $__BuildOS.$__BuildArch.$__BuildType"
cd "$__IntermediatesDir"
+ # Generate version.c if specified, else have an empty one.
+ __versionSourceFile=$__scriptpath/bin/obj/version.c
+ if [ $__generateversionsource == true ]; then
+ $__scriptpath/Tools/corerun $__scriptpath/Tools/MSBuild.exe "$__scriptpath/build.proj" /t:GenerateVersionSourceFile /p:NativeVersionSourceFile=$__scriptpath/bin/obj/version.c /p:GenerateVersionSourceFile=true /v:minimal
+ else
+ __versionSourceLine="static char sccsid[] __attribute__((used)) = \"@(#)No version information produced\";"
+ echo $__versionSourceLine > $__versionSourceFile
+ fi
+
# Regenerate the CMake solution
echo "Invoking cmake with arguments: \"$__nativeroot\" $__CMakeArgs $__CMakeExtraArgs"
"$__nativeroot/gen-buildsys-clang.sh" "$__nativeroot" $__ClangMajorVersion $__ClangMinorVersion $__BuildArch $__CMakeArgs "$__CMakeExtraArgs"
@@ -167,6 +182,7 @@ __nugetpath=$__packageroot/NuGet.exe
__nugetconfig=$__sourceroot/NuGet.Config
__rootbinpath="$__scriptpath/bin"
__msbuildpackageid="Microsoft.Build.Mono.Debug"
+__generateversionsource=false
__msbuildpackageversion="14.1.0.0-prerelease"
__msbuildpath=$__packageroot/$__msbuildpackageid.$__msbuildpackageversion/lib/MSBuild.exe
__buildmanaged=false
@@ -304,6 +320,9 @@ while :; do
verbose)
__VerboseBuild=1
;;
+ generateversion)
+ __generateversionsource=true
+ ;;
clang3.5)
__ClangMajorVersion=3
__ClangMinorVersion=5