diff options
Diffstat (limited to 'PKGBUILD')
-rw-r--r-- | PKGBUILD | 112 |
1 files changed, 79 insertions, 33 deletions
@@ -1,6 +1,6 @@ # Maintainer: Dmitry Kalinin <lwinch2006.rss@protonmail.ch> pkgname=dotnet-cli-git -pkgver=2.0.0_alpha_005165 +pkgver=2.0.0_preview2_006127 pkgrel=1 pkgdesc="The .NET Core command-line (CLI) tools, used for building .NET Core apps and libraries through your development flow (compiling, NuGet package management, running, testing, ...)" arch=(x86_64) @@ -18,21 +18,26 @@ install= _coreclrname="coreclr" _corefxname="corefx" -_coreclrver="1.1.0" -_corefxver="1.1.0" +_coreclrOriginalVersion="latest" +_corefxOriginalVersion="latest" +_coreclrChangedVersion="${_coreclrOriginalVersion//-/_}" +_corefxChangedVersion="${_corefxOriginalVersion//-/_}" source=( - "${_coreclrname}-${_coreclrver}.tar.gz::https://github.com/dotnet/coreclr/archive/v1.1.0.tar.gz" - "${_corefxname}-${_corefxver}.tar.gz::https://github.com/dotnet/corefx/archive/v1.1.0.tar.gz" - "${pkgname}-${pkgver}.tar.gz::https://dotnetcli.blob.core.windows.net/dotnet/Sdk/master/dotnet-dev-debian-x64.latest.tar.gz" - 'llvm-39-github-pull-8311.patch' - 'llvm-39-move.patch') + #"${_coreclrname}-${_coreclrChangedVersion}.zip::https://github.com/dotnet/coreclr/archive/master.zip" + "${_corefxname}-${_corefxChangedVersion}.zip::https://github.com/dotnet/corefx/archive/master.zip" + "${pkgname}-${pkgver}.tar.gz::https://dotnetcli.blob.core.windows.net/dotnet/Sdk/master/dotnet-dev-linux-x64.latest.tar.gz" + "libcurl_openssl-1_0.patch" +) + noextract=("${pkgname}-${pkgver}.tar.gz") -sha256sums=('edc1e416f07a71e2b3f70c1f1412e45a7396b3f0daac5bcb267d5f779b9d7444' - 'ca48ad090c72129ef145ef9b414767408a8fc1249e94a14dc6d4255b1e0b8648' - 'SKIP' - '581d6484626bbae820feb19d0613955fea333c025fb06d43a731a3db776686f7' - '84a0e56d00fd2f3f9f82b7d017652f03d4e7f80c6968d7fa1274f6e46af0ff3d') + +sha256sums=( + #'SKIP' + 'SKIP' + 'SKIP' + '90bc8e1cc9c89fc94ec6a0264200e297e00371136f3b574eccfc077d40d3746d' +) pkgver() { local _versionDetailsAsString=$(curl https://dotnetcli.blob.core.windows.net/dotnet/Sdk/master/latest.version); @@ -41,8 +46,7 @@ pkgver() { _version="${_version//[$'\t\r\n']}"; _version="${_version//-/_}"; - if [ "${_version}" != "${pkgver}" ] - then + if [ "${_version}" != "${pkgver}" ]; then mv "${srcdir}/${pkgname}-${pkgver}.tar.gz" "${srcdir}/${pkgname}-${_version}.tar.gz" fi @@ -50,17 +54,36 @@ pkgver() { } prepare() { - cd "${srcdir}/${_coreclrname}-${_coreclrver}" - patch -p1 < "${srcdir}/llvm-39-github-pull-8311.patch" - patch -p1 < "${srcdir}/llvm-39-move.patch" + local _extractedCoreclrFolder="$(ls -d ${srcdir}/*/ | grep coreclr | head -n 1 | tail -n 1)" + local _extractedCorefxFolder="$(ls -d ${srcdir}/*/ | grep corefx | head -n 1 | tail -n 1)" + + if [ -n "${_extractedCoreclrFolder}" ]; then + cd "${_extractedCoreclrFolder}" + #patch -p1 < "${srcdir}/enable-build-with-clang-4.patch" + fi + + if [ -n "${_extractedCorefxFolder}" ]; then + cd "${_extractedCorefxFolder}" + patch -p1 < "${srcdir}/libcurl_openssl-1_0.patch" + fi } build() { - cd "${srcdir}/${_coreclrname}-${_coreclrver}" - ./build.sh x64 release + local _extractedCoreclrFolder="$(ls -d ${srcdir}/*/ | grep coreclr | head -n 1 | tail -n 1)" + local _extractedCorefxFolder="$(ls -d ${srcdir}/*/ | grep corefx | head -n 1 | tail -n 1)" + + if [ -n "${_extractedCoreclrFolder}" ]; then + cd "${_extractedCoreclrFolder}" + ./build.sh x64 release + fi + + if [ -n "${_extractedCorefxFolder}" ]; then + cd "${_extractedCorefxFolder}" + #./src/Native/build-native.sh x64 release + CPLUS_INCLUDE_PATH=/usr/include/openssl-1.0 C_INCLUDE_PATH=/usr/include/openssl-1.0 ./src/Native/build-native.sh x64 release cmakeargs -DOPENSSL_INCLUDE_DIR=/usr/include/openssl-1.0 cmakeargs -DOPENSSL_SSL_LIBRARY=/usr/lib/openssl-1.0/libssl.so cmakeargs -DOPENSSL_CRYPTO_LIBRARY=/usr/lib/openssl-1.0/libcrypto.so cmakeargs -DCURL_LIBRARIES=/usr/lib/openssl-1.0/libcurl.so - cd "${srcdir}/${_corefxname}-${_corefxver}" - ./src/Native/build-native.sh x64 release + #./src/Native/build-native.sh x64 release cmakeargs -DCURL_LIBRARIES=/usr/lib/openssl-1.0/libcurl.so + fi } _coreclr_files=( @@ -68,16 +91,35 @@ _coreclr_files=( ) _corefx_files=( - 'System.Security.Cryptography.Native.OpenSsl.so' + 'System.IO.Compression.Native.so' + 'System.Native.a' + 'System.Native.so' 'System.Net.Http.Native.so' + 'System.Net.Security.Native.so' + 'System.Security.Cryptography.Native.OpenSsl.so' ) _copy_file() { local _netcoreappverdir1="$(ls -d $2/shared/Microsoft.NETCore.App/*/ | head -n 1 | tail -n 1)"; local _netcoreappverdir2="$(ls -d $2/shared/Microsoft.NETCore.App/*/ | head -n 2 | tail -n 1)"; + local _netcoreappverdir3="$(ls -d $2/shared/Microsoft.NETCore.App/*/ | head -n 3 | tail -n 1)"; + local _netcoreappverdir4="$(ls -d $2/shared/Microsoft.NETCore.App/*/ | head -n 4 | tail -n 1)"; + + if [ -n "${_netcoreappverdir1}" ]; then + cp --force --preserve=mode $1 "${_netcoreappverdir1}" + fi + + if [ -n "${_netcoreappverdir2}" ]; then + cp --force --preserve=mode $1 "${_netcoreappverdir2}" + fi - cp --force --preserve=mode $1 "${_netcoreappverdir1}" - cp --force --preserve=mode $1 "${_netcoreappverdir2}" + if [ -n "${_netcoreappverdir3}" ]; then + cp --force --preserve=mode $1 "${_netcoreappverdir3}" + fi + + if [ -n "${_netcoreappverdir4}" ]; then + cp --force --preserve=mode $1 "${_netcoreappverdir4}" + fi } package() { @@ -86,17 +128,21 @@ package() { tar -C "${_outdir}" -xzf "${srcdir}/${pkgname}-${pkgver}.tar.gz" - local _clrdir="${srcdir}/${_coreclrname}-${_coreclrver}" + local _extractedCoreclrFolder="$(ls -d ${srcdir}/*/ | grep coreclr | head -n 1 | tail -n 1)" - for file in "${_coreclr_files[@]}"; do - _copy_file "${_clrdir}/bin/Product/Linux.x64.Release/${file}" "${_outdir}" - done + if [ -n "${_extractedCoreclrFolder}" ]; then + for file in "${_coreclr_files[@]}"; do + _copy_file "${_extractedCoreclrFolder}bin/Product/Linux.x64.Release/${file}" "${_outdir}" + done + fi - local _fxdir="${srcdir}/${_corefxname}-${_corefxver}" + local _extractedCorefxFolder="$(ls -d ${srcdir}/*/ | grep corefx | head -n 1 | tail -n 1)" - for file in "${_corefx_files[@]}"; do - _copy_file "${_fxdir}/bin/Linux.x64.Release/Native/${file}" "${_outdir}" - done + if [ -n "${_extractedCorefxFolder}" ]; then + for file in "${_corefx_files[@]}"; do + _copy_file "${_extractedCorefxFolder}bin/Linux.x64.Release/native/${file}" "${_outdir}" + done + fi mkdir -p "${pkgdir}/usr/bin/" ln -s "/opt/dotnet/dotnet" "${pkgdir}/usr/bin/dotnet" |