You've already forked linux-packaging-mono
Imported Upstream version 5.4.0.167
Former-commit-id: 5624ac747d633e885131e8349322922b6a59baaa
This commit is contained in:
parent
e49d6f06c0
commit
536cd135cc
@@ -4,3 +4,6 @@ SET( HAVE_SHM_OPEN_THAT_WORKS_WELL_ENOUGH_WITH_MMAP_EXITCODE
|
||||
SET( HAVE_CLOCK_MONOTONIC_EXITCODE
|
||||
0
|
||||
CACHE STRING "Result from TRY_RUN" FORCE)
|
||||
SET( HAVE_CLOCK_REALTIME_EXITCODE
|
||||
0
|
||||
CACHE STRING "Result from TRY_RUN" FORCE)
|
||||
|
@@ -4,3 +4,6 @@ SET( HAVE_SHM_OPEN_THAT_WORKS_WELL_ENOUGH_WITH_MMAP_EXITCODE
|
||||
SET( HAVE_CLOCK_MONOTONIC_EXITCODE
|
||||
0
|
||||
CACHE STRING "Result from TRY_RUN" FORCE)
|
||||
SET( HAVE_CLOCK_REALTIME_EXITCODE
|
||||
0
|
||||
CACHE STRING "Result from TRY_RUN" FORCE)
|
||||
|
3
external/corefx/cross/arm/tryrun.cmake
vendored
3
external/corefx/cross/arm/tryrun.cmake
vendored
@@ -4,3 +4,6 @@ SET( HAVE_SHM_OPEN_THAT_WORKS_WELL_ENOUGH_WITH_MMAP_EXITCODE
|
||||
SET( HAVE_CLOCK_MONOTONIC_EXITCODE
|
||||
0
|
||||
CACHE STRING "Result from TRY_RUN" FORCE)
|
||||
SET( HAVE_CLOCK_REALTIME_EXITCODE
|
||||
0
|
||||
CACHE STRING "Result from TRY_RUN" FORCE)
|
||||
|
43
external/corefx/cross/arm32_ci_script.sh
vendored
43
external/corefx/cross/arm32_ci_script.sh
vendored
@@ -189,13 +189,13 @@ function cross_build_corefx_with_docker {
|
||||
# TODO: For arm, we are going to embed RootFS inside Docker image.
|
||||
case $__linuxCodeName in
|
||||
trusty)
|
||||
__dockerImage=" microsoft/dotnet-buildtools-prereqs:ubuntu1404_cross_prereqs_v2"
|
||||
__dockerImage=" microsoft/dotnet-buildtools-prereqs:ubuntu-14.04-cross-0cd4667-20172211042239"
|
||||
__skipRootFS=1
|
||||
__dockerEnvironmentVariables="-e ROOTFS_DIR=/crossrootfs/arm"
|
||||
__runtimeOS="ubuntu.14.04"
|
||||
;;
|
||||
xenial)
|
||||
__dockerImage=" microsoft/dotnet-buildtools-prereqs:ubuntu1604_cross_prereqs_v2"
|
||||
__dockerImage=" microsoft/dotnet-buildtools-prereqs:ubuntu-16.04-cross-ef0ac75-20175511035548"
|
||||
__skipRootFS=1
|
||||
__dockerEnvironmentVariables="-e ROOTFS_DIR=/crossrootfs/arm"
|
||||
__runtimeOS="ubuntu.16.04"
|
||||
@@ -208,7 +208,9 @@ function cross_build_corefx_with_docker {
|
||||
# For armel Tizen, we are going to construct RootFS on the fly.
|
||||
case $__linuxCodeName in
|
||||
tizen)
|
||||
__dockerImage=" t2wish/dotnetcore:ubuntu1404_cross_prereqs_v2"
|
||||
__dockerImage=" hqueue/dotnetcore:ubuntu1404_cross_prereqs_v4-tizen_rootfs"
|
||||
__skipRootFS=1
|
||||
__dockerEnvironmentVariables+=" -e ROOTFS_DIR=/crossrootfs/armel.tizen.build"
|
||||
__runtimeOS="tizen.4.0.0"
|
||||
;;
|
||||
*)
|
||||
@@ -231,38 +233,13 @@ function cross_build_corefx_with_docker {
|
||||
fi
|
||||
|
||||
# Cross building corefx with rootfs in Docker
|
||||
__buildNativeCmd="/opt/corefx/build-native.sh -buildArch=$__buildArch -$__buildConfig -- cross $__verboseFlag"
|
||||
if [ "$__buildArch" == "arm" ]; then
|
||||
__buildManagedCmd="./build-managed.sh -$__buildConfig -buildArch=$__buildArch -RuntimeOS=$__runtimeOS"
|
||||
else
|
||||
# TODO-armel: We can use same option to arm, i.e. -buildArch and -RuntimeOS options for armel,
|
||||
# when CoreCLR packages are also available at NuGet server for armel.
|
||||
__buildManagedCmd="./build-managed.sh -$__buildConfig -BuildPackages=false"
|
||||
|
||||
fi
|
||||
$__dockerCmd $__buildNativeCmd
|
||||
$__dockerCmd $__buildManagedCmd
|
||||
sudo chown -R $(id -u -n) ./bin
|
||||
|
||||
if [ "$__buildArch" == "armel" ]; then
|
||||
# TODO-armel: This is a workaround. We don't need this if we can build managed for armel in above.
|
||||
# Construct runtime directory
|
||||
if [[ "$__buildConfig" == "release" ]]; then
|
||||
__runtimePath="./bin/runtime/netcoreapp-Linux-Release-armel"
|
||||
__managedPath="./bin/runtime/netcoreapp-Linux-Release-x64"
|
||||
else
|
||||
__runtimePath="./bin/runtime/netcoreapp-Linux-Debug-armel"
|
||||
__managedPath="./bin/runtime/netcoreapp-Linux-Debug-x64"
|
||||
fi
|
||||
__extraCmd="/p:OverridePackageSource=https://tizen.myget.org/F/dotnet-core/api/v3/index.json"
|
||||
fi
|
||||
|
||||
pushd $__managedPath
|
||||
rm apphost corerun dotnet
|
||||
rm *.so
|
||||
rm *.ni.dll
|
||||
popd
|
||||
mv $__managedPath/* $__runtimePath/
|
||||
rmdir $__managedPath
|
||||
fi
|
||||
__buildCmd="./build.sh -buildArch=$__buildArch -$__buildConfig -RuntimeOS=$__runtimeOS -- $__extraCmd"
|
||||
$__dockerCmd $__buildCmd
|
||||
sudo chown -R $(id -u -n) ./bin
|
||||
}
|
||||
|
||||
#Define script variables
|
||||
|
3
external/corefx/cross/arm64/tryrun.cmake
vendored
3
external/corefx/cross/arm64/tryrun.cmake
vendored
@@ -4,3 +4,6 @@ SET( HAVE_SHM_OPEN_THAT_WORKS_WELL_ENOUGH_WITH_MMAP_EXITCODE
|
||||
SET( HAVE_CLOCK_MONOTONIC_EXITCODE
|
||||
0
|
||||
CACHE STRING "Result from TRY_RUN" FORCE)
|
||||
SET( HAVE_CLOCK_REALTIME_EXITCODE
|
||||
0
|
||||
CACHE STRING "Result from TRY_RUN" FORCE)
|
||||
|
44
external/corefx/cross/armel/tizen-fetch.sh
vendored
44
external/corefx/cross/armel/tizen-fetch.sh
vendored
@@ -51,7 +51,7 @@ if [ ! -d $TMPDIR ]; then
|
||||
mkdir -p $TMPDIR
|
||||
fi
|
||||
|
||||
TIZEN_URL=http://download.tizen.org/releases/weekly/tizen
|
||||
TIZEN_URL=http://download.tizen.org/releases/daily/tizen
|
||||
BUILD_XML=build.xml
|
||||
REPOMD_XML=repomd.xml
|
||||
PRIMARY_XML=primary.xml
|
||||
@@ -120,19 +120,21 @@ fetch_tizen_pkgs_init()
|
||||
|
||||
fetch_tizen_pkgs()
|
||||
{
|
||||
PROFILE=$1
|
||||
PACKAGE_XPATH_TPL='string(//*[local-name()="metadata"]/*[local-name()="package"][*[local-name()="name"][text()="_PKG_"]]/*[local-name()="location"]/@href)'
|
||||
ARCH=$1
|
||||
PACKAGE_XPATH_TPL='string(//*[local-name()="metadata"]/*[local-name()="package"][*[local-name()="name"][text()="_PKG_"]][*[local-name()="arch"][text()="_ARCH_"]]/*[local-name()="location"]/@href)'
|
||||
|
||||
PACKAGE_CHECKSUM_XPATH_TPL='string(//*[local-name()="metadata"]/*[local-name()="package"][*[local-name()="name"][text()="_PKG_"]]/*[local-name()="checksum"]/text())'
|
||||
PACKAGE_CHECKSUM_XPATH_TPL='string(//*[local-name()="metadata"]/*[local-name()="package"][*[local-name()="name"][text()="_PKG_"]][*[local-name()="arch"][text()="_ARCH_"]]/*[local-name()="checksum"]/text())'
|
||||
|
||||
for pkg in ${@:2}
|
||||
do
|
||||
Inform "Fetching... $pkg"
|
||||
XPATH=${PACKAGE_XPATH_TPL/_PKG_/$pkg}
|
||||
XPATH=${XPATH/_ARCH_/$ARCH}
|
||||
Xpath_get $XPATH $TMP_PRIMARY
|
||||
PKG_PATH=$XPATH_RESULT
|
||||
|
||||
XPATH=${PACKAGE_CHECKSUM_XPATH_TPL/_PKG_/$pkg}
|
||||
XPATH=${XPATH/_ARCH_/$ARCH}
|
||||
Xpath_get $XPATH $TMP_PRIMARY
|
||||
CHECKSUM=$XPATH_RESULT
|
||||
|
||||
@@ -142,33 +144,33 @@ fetch_tizen_pkgs()
|
||||
|
||||
Debug "Download $PKG_URL to $PKG_PATH"
|
||||
Fetch $PKG_URL $PKG_PATH true
|
||||
|
||||
|
||||
echo "$CHECKSUM $PKG_PATH" | sha256sum -c - > /dev/null
|
||||
if [ $? -ne 0 ]; then
|
||||
Error "Fail to fetch $PKG_URL to $PKG_PATH"
|
||||
Debug "Checksum = $CHECKSUM"
|
||||
exit 1
|
||||
fi
|
||||
|
||||
done
|
||||
}
|
||||
|
||||
Inform "Initialize arm base"
|
||||
Inform "Initialize base"
|
||||
fetch_tizen_pkgs_init arm base
|
||||
Inform "fetch base common packages"
|
||||
fetch_tizen_pkgs base gcc glibc glibc-devel linux-glibc-devel
|
||||
Inform "fetch base coreclr packages"
|
||||
fetch_tizen_pkgs base lldb lldb-devel libuuid libuuid-devel libgcc libstdc++ libstdc++-devel
|
||||
Inform "fetch base corefx packages"
|
||||
fetch_tizen_pkgs base libcom_err libcom_err-devel zlib zlib-devel libopenssl libopenssl-devel
|
||||
Inform "fetch common packages"
|
||||
fetch_tizen_pkgs armv7l gcc glibc glibc-devel
|
||||
fetch_tizen_pkgs noarch linux-glibc-devel
|
||||
Inform "fetch coreclr packages"
|
||||
fetch_tizen_pkgs armv7l lldb lldb-devel libuuid libuuid-devel libgcc libstdc++ libstdc++-devel libunwind libunwind-devel
|
||||
Inform "fetch corefx packages"
|
||||
fetch_tizen_pkgs armv7l libcom_err libcom_err-devel zlib zlib-devel libopenssl libopenssl-devel
|
||||
|
||||
Inform "initialize arm mobile"
|
||||
fetch_tizen_pkgs_init arm-wayland mobile
|
||||
Inform "fetch mobile common packages"
|
||||
fetch_tizen_pkgs mobile libicu-devel
|
||||
Inform "fetch mobile coreclr packages"
|
||||
fetch_tizen_pkgs mobile libunwind libunwind-devel tizen-release
|
||||
Inform "fetch mobile corefx packages"
|
||||
fetch_tizen_pkgs mobile gssdp gssdp-devel krb5 krb5-devel libcurl libcurl-devel
|
||||
Inform "Initialize unified"
|
||||
fetch_tizen_pkgs_init standard unified
|
||||
Inform "fetch common packages"
|
||||
fetch_tizen_pkgs armv7l libicu-devel
|
||||
Inform "fetch coreclr packages"
|
||||
fetch_tizen_pkgs armv7l tizen-release
|
||||
Inform "fetch corefx packages"
|
||||
fetch_tizen_pkgs armv7l gssdp gssdp-devel krb5 krb5-devel libcurl libcurl-devel
|
||||
|
||||
|
||||
|
15
external/corefx/cross/armel/tizen/tizen.patch
vendored
15
external/corefx/cross/armel/tizen/tizen.patch
vendored
@@ -16,18 +16,3 @@ diff -u -r a/usr/lib/libpthread.so b/usr/lib/libpthread.so
|
||||
OUTPUT_FORMAT(elf32-littlearm)
|
||||
-GROUP ( /lib/libpthread.so.0 /usr/lib/libpthread_nonshared.a )
|
||||
+GROUP ( libpthread.so.0 libpthread_nonshared.a )
|
||||
diff -u -r a/usr/lib/libpthread.so b/usr/lib/libpthread.so
|
||||
--- a/etc/os-release 2016-10-17 23:39:36.000000000 +0900
|
||||
+++ b/etc/os-release 2017-01-05 14:34:39.099867682 +0900
|
||||
@@ -1,7 +1,7 @@
|
||||
NAME=Tizen
|
||||
-VERSION="3.0.0 (Tizen3/Mobile)"
|
||||
+VERSION="4.0.0 (Tizen4/Mobile)"
|
||||
ID=tizen
|
||||
-VERSION_ID=3.0.0
|
||||
-PRETTY_NAME="Tizen 3.0.0 (Tizen3/Mobile)"
|
||||
+VERSION_ID=4.0.0
|
||||
+PRETTY_NAME="Tizen 4.0.0 (Tizen4/Mobile)"
|
||||
ANSI_COLOR="0;36"
|
||||
-CPE_NAME="cpe:/o:tizen:tizen:3.0.0"
|
||||
+CPE_NAME="cpe:/o:tizen:tizen:4.0.0"
|
||||
|
2
external/corefx/cross/armel/toolchain.cmake
vendored
2
external/corefx/cross/armel/toolchain.cmake
vendored
@@ -16,7 +16,7 @@ set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} -target ${TOOLCHAIN}")
|
||||
set(CROSS_LINK_FLAGS "${CROSS_LINK_FLAGS} --sysroot=${CROSS_ROOTFS}")
|
||||
|
||||
if("$ENV{__DistroRid}" MATCHES "tizen.*")
|
||||
set(TIZEN_TOOLCHAIN "armv7l-tizen-linux-gnueabi/4.9.2")
|
||||
set(TIZEN_TOOLCHAIN "armv7l-tizen-linux-gnueabi/6.2.1")
|
||||
include_directories(SYSTEM ${CROSS_ROOTFS}/usr/lib/gcc/${TIZEN_TOOLCHAIN}/include/c++/)
|
||||
include_directories(SYSTEM ${CROSS_ROOTFS}/usr/lib/gcc/${TIZEN_TOOLCHAIN}/include/c++/armv7l-tizen-linux-gnueabi)
|
||||
add_compile_options(-Wno-deprecated-declarations) # compile-time option
|
||||
|
3
external/corefx/cross/armel/tryrun.cmake
vendored
3
external/corefx/cross/armel/tryrun.cmake
vendored
@@ -4,3 +4,6 @@ SET( HAVE_SHM_OPEN_THAT_WORKS_WELL_ENOUGH_WITH_MMAP_EXITCODE
|
||||
SET( HAVE_CLOCK_MONOTONIC_EXITCODE
|
||||
0
|
||||
CACHE STRING "Result from TRY_RUN" FORCE)
|
||||
SET( HAVE_CLOCK_REALTIME_EXITCODE
|
||||
0
|
||||
CACHE STRING "Result from TRY_RUN" FORCE)
|
||||
|
5
external/corefx/cross/build-rootfs.sh
vendored
5
external/corefx/cross/build-rootfs.sh
vendored
@@ -5,7 +5,7 @@ usage()
|
||||
echo "Usage: $0 [BuildArch] [LinuxCodeName] [--skipunmount]"
|
||||
echo "BuildArch can be: arm(default), armel, arm64, x86"
|
||||
echo "LinuxCodeName - optional, Code name for Linux, can be: trusty(default), vivid, wily, xenial. If BuildArch is armel, LinuxCodeName is jessie(default) or tizen."
|
||||
echo "lldbx.y - optional, LLDB version, can be: lldb3.6(default), lldb3.8, no-lldb"
|
||||
echo "lldbx.y - optional, LLDB version, can be: lldb3.6(default), lldb3.8, lldb3.9, no-lldb"
|
||||
echo "--skipunmount - optional, will skip the unmount of rootfs folder."
|
||||
exit 1
|
||||
}
|
||||
@@ -70,6 +70,9 @@ for i in "$@" ; do
|
||||
lldb3.8)
|
||||
__LLDB_Package="lldb-3.8-dev"
|
||||
;;
|
||||
lldb3.9)
|
||||
__LLDB_Package="lldb-3.9-dev"
|
||||
;;
|
||||
no-lldb)
|
||||
unset __LLDB_Package
|
||||
;;
|
||||
|
4
external/corefx/cross/x86/tryrun.cmake
vendored
4
external/corefx/cross/x86/tryrun.cmake
vendored
@@ -4,4 +4,6 @@ SET( HAVE_SHM_OPEN_THAT_WORKS_WELL_ENOUGH_WITH_MMAP_EXITCODE
|
||||
SET( HAVE_CLOCK_MONOTONIC_EXITCODE
|
||||
0
|
||||
CACHE STRING "Result from TRY_RUN" FORCE)
|
||||
|
||||
SET( HAVE_CLOCK_REALTIME_EXITCODE
|
||||
0
|
||||
CACHE STRING "Result from TRY_RUN" FORCE)
|
||||
|
64
external/corefx/cross/x86_ci_script.sh
vendored
Executable file
64
external/corefx/cross/x86_ci_script.sh
vendored
Executable file
@@ -0,0 +1,64 @@
|
||||
#!/bin/bash
|
||||
|
||||
function exit_with_error {
|
||||
set +x
|
||||
|
||||
local errorMessage="$1"
|
||||
|
||||
echo "ERROR: $errorMessage"
|
||||
exit 1
|
||||
}
|
||||
|
||||
#Exit if input string is empty
|
||||
function exit_if_empty {
|
||||
local inputString="$1"
|
||||
local errorMessage="$2"
|
||||
|
||||
if [ -z "$inputString" ]; then
|
||||
exit_with_error "$errorMessage"
|
||||
fi
|
||||
}
|
||||
|
||||
# Cross builds corefx using Docker image
|
||||
function cross_build_native_with_docker {
|
||||
__currentWorkingDirectory=`pwd`
|
||||
|
||||
# choose Docker image
|
||||
__dockerImage=" hseok82/dotnet-buildtools-prereqs:ubuntu-16.04-crossx86-ef0ac75-20175511035548"
|
||||
__dockerEnvironmentVariables="-e ROOTFS_DIR=/crossrootfs/x86"
|
||||
__runtimeOS="ubuntu.16.04"
|
||||
|
||||
__dockerCmd="docker run ${__dockerEnvironmentVariables} -i --rm -v $__currentWorkingDirectory:/opt/code -w /opt/code $__dockerImage"
|
||||
|
||||
# Cross building corefx with rootfs in Docker
|
||||
__buildNativeCmd="./build-native.sh -buildArch=x86 -$__buildConfig -- cross"
|
||||
|
||||
$__dockerCmd $__buildNativeCmd
|
||||
sudo chown -R $(id -u -n) ./bin
|
||||
}
|
||||
|
||||
__buildConfig=
|
||||
for arg in "$@"
|
||||
do
|
||||
case $arg in
|
||||
--buildConfig=*)
|
||||
__buildConfig="$(echo ${arg#*=} | awk '{print tolower($0)}')"
|
||||
if [[ "$__buildConfig" != "debug" && "$__buildConfig" != "release" ]]; then
|
||||
exit_with_error "--buildConfig can be only Debug or Release" true
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
set -x
|
||||
set -e
|
||||
|
||||
exit_if_empty "$__buildConfig" "--buildConfig is a mandatory argument, not provided"
|
||||
|
||||
#Complete the cross build
|
||||
(set +x; echo 'Building corefx...')
|
||||
cross_build_native_with_docker
|
||||
|
||||
(set +x; echo 'Build complete')
|
Reference in New Issue
Block a user