pkgsrc-Changes-HG archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

[pkgsrc/trunk]: pkgsrc/lang/coreclr Import CoreCLR 1.0.0 as lang/coreclr



details:   https://anonhg.NetBSD.org/pkgsrc/rev/d16baf364fcc
branches:  trunk
changeset: 349110:d16baf364fcc
user:      kamil <kamil%pkgsrc.org@localhost>
date:      Thu Jun 30 12:16:24 2016 +0000

description:
Import CoreCLR 1.0.0 as lang/coreclr

This repo contains the .NET Core runtime, called CoreCLR, and the base library,
called mscorlib. It includes the garbage collector, JIT compiler, base .NET
data types and many low-level classes.

diffstat:

 lang/coreclr/DESCR                                                  |    3 +
 lang/coreclr/Makefile                                               |   81 +
 lang/coreclr/PLIST                                                  |   75 +
 lang/coreclr/README                                                 |   14 +
 lang/coreclr/buildlink3.mk                                          |   24 +
 lang/coreclr/distinfo                                               |   15 +
 lang/coreclr/patches/patch-src_debug_debug-pal_unix_twowaypipe.cpp  |   74 +
 lang/coreclr/patches/patch-src_debug_ee_debugger.cpp                |   33 +
 lang/coreclr/patches/patch-src_debug_inc_twowaypipe.h               |   35 +
 lang/coreclr/patches/patch-src_debug_shared_dbgtransportsession.cpp |   36 +
 lang/coreclr/patches/patch-src_inc_clrconfigvalues.h                |   22 +
 lang/coreclr/patches/patch-src_pal_inc_pal.h                        |   45 +
 lang/coreclr/patches/patch-src_pal_src_config.h.in                  |   32 +
 lang/coreclr/patches/patch-src_pal_src_configure.cmake              |  102 +
 lang/coreclr/patches/patch-src_pal_src_thread_process.cpp           |  552 ++++++++++
 15 files changed, 1143 insertions(+), 0 deletions(-)

diffs (truncated from 1203 to 300 lines):

diff -r 1984f524e457 -r d16baf364fcc lang/coreclr/DESCR
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/coreclr/DESCR        Thu Jun 30 12:16:24 2016 +0000
@@ -0,0 +1,3 @@
+This repo contains the .NET Core runtime, called CoreCLR, and the base library,
+called mscorlib. It includes the garbage collector, JIT compiler, base .NET
+data types and many low-level classes.
diff -r 1984f524e457 -r d16baf364fcc lang/coreclr/Makefile
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/coreclr/Makefile     Thu Jun 30 12:16:24 2016 +0000
@@ -0,0 +1,81 @@
+# $NetBSD: Makefile,v 1.1 2016/06/30 12:16:24 kamil Exp $
+
+DISTNAME=      coreclr-1.0.0
+CATEGORIES=    devel
+MASTER_SITES=  ${MASTER_SITE_GITHUB:=dotnet/}
+GITHUB_TAG=    v${PKGVERSION_NOREV}
+
+MAINTAINER=    kamil%NetBSD.org@localhost
+HOMEPAGE=      https://dotnet.github.io/
+COMMENT=       The .NET Core runtime and the base library
+LICENSE=       mit
+
+DEPENDS+=      ${PYPKGPREFIX}-expat-[0-9]*:../../textproc/py-expat
+
+USE_LANGUAGES= c c++
+USE_TOOLS+=    bash pax
+# We need to set CMake this way to get defined CMAKE_ARGS
+USE_CMAKE=     yes
+CMAKE_ARGS+=   -DCORECLR_SET_RPATH:BOOL=OFF
+
+REPLACE_BASH+= build.sh
+REPLACE_BASH+= src/pal/tools/gen-buildsys-clang.sh
+REPLACE_BASH+= src/pal/tests/palsuite/runpaltests.sh
+
+CORECLR_PREFIX=        ${PREFIX}/CoreCLR
+
+.include "../../mk/bsd.prefs.mk"
+
+.if ${MACHINE_ARCH} == "x86_64"
+CORECLR_ARCH=  x64
+.endif
+
+CORECLR_OBJDIR=                ${WRKSRC}/bin/obj/${OPSYS}.${CORECLR_ARCH}.Debug
+CORECLR_PRODUCTDIR=    ${WRKSRC}/bin/Product/${OPSYS}.${CORECLR_ARCH}.Debug
+
+# Handle subprefix
+LDFLAGS+=      ${COMPILER_RPATH_FLAG}${CORECLR_PREFIX:Q}
+LDFLAGS+=      ${COMPILER_RPATH_FLAG}${CORECLR_PREFIX:Q}/Loader/NativeLibs
+LDFLAGS+=      ${COMPILER_RPATH_FLAG}${CORECLR_PREFIX:Q}/bin
+
+BUILDLINK_PASSTHRU_DIRS+=      ${CORECLR_PREFIX:Q}
+BUILDLINK_PASSTHRU_RPATHDIRS+= ${CORECLR_PREFIX:Q}
+
+# DOTNET targets only LLVM
+PKGSRC_COMPILER=       clang
+PKG_CC=                        clang
+PKG_CXX=               clang++
+_WRAP_EXTRA_ARGS.CXX+= -Wno-unused-function -Wno-self-assign
+CWRAPPERS_APPEND.cxx+= -Wno-unused-function -Wno-self-assign
+
+
+TEST_ENV+=     LD_LIBRARY_PATH=${WRKSRC}/bin/obj/${OPSYS}.x64.Debug/src/pal/tests/palsuite/exception_handling/pal_sxs/test1
+
+do-configure:
+       ${RUN} ${ECHO} Skip configure and call CMake via build.sh
+
+do-build:
+       ${RUN} cd ${WRKSRC} && \
+       ${SETENV} ${MAKE_ENV} PYTHON=${PYTHONBIN:Q} \
+               ./build.sh skipmscorlib cmakeargs ${CMAKE_ARGS:Q}
+
+# Currently there is no unix-like install target.
+# Put all produced files under subprefix.
+do-install:
+       ${INSTALL_DATA_DIR} ${DESTDIR}${CORECLR_PREFIX:Q}
+       cd ${CORECLR_PRODUCTDIR} && ${PAX} -rw . ${DESTDIR}${CORECLR_PREFIX:Q}
+
+do-test:
+       ${RUN} cd ${WRKSRC} && \
+       ${SETENV} ${TEST_ENV} src/pal/tests/palsuite/runpaltests.sh \
+               ${CORECLR_OBJDIR} ${WRKSRC}/paltestout
+
+.include "../../textproc/icu/buildlink3.mk"
+.include "../../lang/llvm/buildlink3.mk"
+.include "../../devel/lldb/buildlink3.mk"
+.include "../../lang/clang/buildlink3.mk"
+.include "../../lang/libunwind/buildlink3.mk"
+.include "../../lang/python/extension.mk"
+.include "../../lang/python/application.mk"
+.include "../../lang/python/tool.mk"
+.include "../../mk/bsd.pkg.mk"
diff -r 1984f524e457 -r d16baf364fcc lang/coreclr/PLIST
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/coreclr/PLIST        Thu Jun 30 12:16:24 2016 +0000
@@ -0,0 +1,75 @@
+@comment $NetBSD: PLIST,v 1.1 2016/06/30 12:16:24 kamil Exp $
+CoreCLR/Loader/NativeLibs/FromNativePaths_lib.so
+CoreCLR/System.Globalization.Native.so
+CoreCLR/bin/hfa_nested_f32_native_cpp.so
+CoreCLR/bin/hfa_nested_f64_native_cpp.so
+CoreCLR/bin/hfa_simple_f32_native_cpp.so
+CoreCLR/bin/hfa_simple_f64_native_cpp.so
+CoreCLR/bin/jitstructtests_lib.so
+CoreCLR/bin/libBestFitMappingNative.so
+CoreCLR/bin/libBoolNative.so
+CoreCLR/bin/libForeignThreadExceptionsNative.so
+CoreCLR/bin/libFuncPtrAsDelegateParamNative.so
+CoreCLR/bin/libFunctionPointerNative.so
+CoreCLR/bin/libIUnknownNative.so
+CoreCLR/bin/libLPSTRTestNative.so
+CoreCLR/bin/libLPTSTRTestNative.so
+CoreCLR/bin/libMarshalArrayByValNative.so
+CoreCLR/bin/libMarshalBoolArrayNative.so
+CoreCLR/bin/libMarshalEnumNative.so
+CoreCLR/bin/libMarshalStructAsParam.so
+CoreCLR/bin/libNativeCallableDll.so
+CoreCLR/bin/libRefCharArrayNative.so
+CoreCLR/bin/libRefIntNative.so
+CoreCLR/bin/libSimpleStructNative.so
+CoreCLR/bin/libStructABILib.so
+CoreCLR/bin/libUIntPtrNative.so
+CoreCLR/bin/libUTF8TestNative.so
+CoreCLR/bin/libVector3TestNative.so
+CoreCLR/bin/mirror.so
+CoreCLR/bin/native_i0c.so
+CoreCLR/bin/native_i0s.so
+CoreCLR/bin/native_i1c.so
+CoreCLR/bin/native_i1s.so
+CoreCLR/bin/native_i3c.so
+CoreCLR/bin/native_i3s.so
+CoreCLR/bin/native_i5c.so
+CoreCLR/bin/native_i5s.so
+CoreCLR/bin/native_i6c.so
+CoreCLR/bin/native_i6s.so
+CoreCLR/bin/native_i7c.so
+CoreCLR/bin/native_i7s.so
+CoreCLR/bin/native_i8c.so
+CoreCLR/bin/native_i8s.so
+CoreCLR/bin/test2.so
+CoreCLR/coreconsole
+CoreCLR/corerun
+CoreCLR/crossgen
+CoreCLR/gcinfo/gcinfoencoder.cpp
+CoreCLR/ilasm
+CoreCLR/ildasm
+CoreCLR/inc/cfi.h
+CoreCLR/inc/cor.h
+CoreCLR/inc/cordebuginfo.h
+CoreCLR/inc/coredistools.h
+CoreCLR/inc/corerror.h
+CoreCLR/inc/corhdr.h
+CoreCLR/inc/corinfo.h
+CoreCLR/inc/corjit.h
+CoreCLR/inc/corjithost.h
+CoreCLR/inc/corprof.h
+CoreCLR/inc/gcinfoencoder.h
+CoreCLR/inc/gcinfotypes.h
+CoreCLR/inc/opcode.def
+CoreCLR/inc/openum.h
+CoreCLR/lib/libcoreclrpal.a
+CoreCLR/lib/libcorguids.a
+CoreCLR/lib/libpalrt.a
+CoreCLR/libclrjit.so
+CoreCLR/libcoreclr.so
+CoreCLR/libdbgshim.so
+CoreCLR/libmscordaccore.so
+CoreCLR/libmscordbi.so
+CoreCLR/libsos.so
+CoreCLR/libsosplugin.so
+CoreCLR/sosdocsunix.txt
diff -r 1984f524e457 -r d16baf364fcc lang/coreclr/README
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/coreclr/README       Thu Jun 30 12:16:24 2016 +0000
@@ -0,0 +1,14 @@
+Running tests:
+
+I PAL (Platform Abstraction Layer)
+
+Done in the package's Makefile:
+
+$ bmake test
+
+II Managed code tests
+
+Fetch tests from:
+http://dotnet-ci.cloudapp.net/job/dotnet_coreclr/job/master/job/debug_windows_nt/lastSuccessfulBuild/artifact/bin/tests/tests.zip
+
+In directory: tests/
diff -r 1984f524e457 -r d16baf364fcc lang/coreclr/buildlink3.mk
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/coreclr/buildlink3.mk        Thu Jun 30 12:16:24 2016 +0000
@@ -0,0 +1,24 @@
+# $NetBSD: buildlink3.mk,v 1.1 2016/06/30 12:16:24 kamil Exp $
+
+BUILDLINK_TREE+=       coreclr
+
+.if !defined(CORECLR_BUILDLINK3_MK)
+CORECLR_BUILDLINK3_MK:=
+
+BUILDLINK_API_DEPENDS.coreclr+=        coreclr>=1.0.0
+BUILDLINK_PKGSRCDIR.coreclr?=  ../../lang/coreclr
+
+BUILDLINK_INCDIRS.coreclr+=    CoreCLR/inc
+BUILDLINK_INCDIRS.coreclr+=    CoreCLR/gcinfo
+BUILDLINK_FILES.coreclr+=      CoreCLR/gcinfo/gcinfoencoder.cpp
+BUILDLINK_FILES.coreclr+=      CoreCLR/inc/*.h
+BUILDLINK_FILES.coreclr+=      CoreCLR/inc/*.def
+
+.include "../../textproc/icu/buildlink3.mk"
+.include "../../lang/llvm/buildlink3.mk"
+.include "../../devel/lldb/buildlink3.mk"
+.include "../../lang/clang/buildlink3.mk"
+.include "../../lang/libunwind/buildlink3.mk"
+.endif # CORECLR_BUILDLINK3_MK
+
+BUILDLINK_TREE+=       -coreclr
diff -r 1984f524e457 -r d16baf364fcc lang/coreclr/distinfo
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/coreclr/distinfo     Thu Jun 30 12:16:24 2016 +0000
@@ -0,0 +1,15 @@
+$NetBSD: distinfo,v 1.1 2016/06/30 12:16:24 kamil Exp $
+
+SHA1 (coreclr-1.0.0.tar.gz) = 0e9d7c8f78376c087abd0d83f959c8d1b8d3045c
+RMD160 (coreclr-1.0.0.tar.gz) = c275c337106f30f8050bd534e707b681c89f012b
+SHA512 (coreclr-1.0.0.tar.gz) = f4500fbc470044139e3dbb1a03e466b522546bba2b0964ec2506e1d002be7e78cf75592c4c42f2b09940881173b2305785b7499fb2967a32c4b72c03cc1bd8a9
+Size (coreclr-1.0.0.tar.gz) = 34303728 bytes
+SHA1 (patch-src_debug_debug-pal_unix_twowaypipe.cpp) = d514b087cf091e3a95c04dc4d7e22846b179a04b
+SHA1 (patch-src_debug_ee_debugger.cpp) = fe5df4646f063d19db3466f7b36b862f50d4f060
+SHA1 (patch-src_debug_inc_twowaypipe.h) = aea06d9e5d764cee3b7132e72b02b678b87c3d72
+SHA1 (patch-src_debug_shared_dbgtransportsession.cpp) = 487a595dd8bd1855056171f0d3ba5b99c092f576
+SHA1 (patch-src_inc_clrconfigvalues.h) = 8ca7841a24a7af459a9c26e737ef1ee2ece90be2
+SHA1 (patch-src_pal_inc_pal.h) = b29f2adbbdc07418dd6c269d9d4d9444c43f4ca3
+SHA1 (patch-src_pal_src_config.h.in) = fb8a262308f46707c083c7471be87ba0ac79947f
+SHA1 (patch-src_pal_src_configure.cmake) = 72865c6fd355901862192280a727351de62f5ac5
+SHA1 (patch-src_pal_src_thread_process.cpp) = fdb7b548da9989f352ad69e459d23e82d63a13a6
diff -r 1984f524e457 -r d16baf364fcc lang/coreclr/patches/patch-src_debug_debug-pal_unix_twowaypipe.cpp
--- /dev/null   Thu Jan 01 00:00:00 1970 +0000
+++ b/lang/coreclr/patches/patch-src_debug_debug-pal_unix_twowaypipe.cpp        Thu Jun 30 12:16:24 2016 +0000
@@ -0,0 +1,74 @@
+$NetBSD: patch-src_debug_debug-pal_unix_twowaypipe.cpp,v 1.1 2016/06/30 12:16:24 kamil Exp $
+
+Revert:
+
+commit 5ac6af932fe2a3f4b285b6dcc79010caf807ea9d
+Author: Mike McLaughlin <mikem%microsoft.com@localhost>
+Date:   Fri May 27 20:03:32 2016 -0700
+
+    Fix the named semaphore leak on OSX (and Linux) (#5269)
+
+It broke NetBSD.
+
+--- src/debug/debug-pal/unix/twowaypipe.cpp.orig       2016-06-14 01:12:15.000000000 +0000
++++ src/debug/debug-pal/unix/twowaypipe.cpp
+@@ -3,14 +3,31 @@
+ // See the LICENSE file in the project root for more information.
+ 
+ #include <pal.h>
++
+ #include <unistd.h>
+ #include <fcntl.h>
+ #include <sys/types.h>
+ #include <sys/stat.h>
+ #include <limits.h>
+ #include <pal_assert.h>
++
+ #include "twowaypipe.h"
+ 
++static const char* PipeNameFormat = "/tmp/clr-debug-pipe-%d-%llu-%s";
++
++void TwoWayPipe::GetPipeName(char *name, DWORD id, const char *suffix)
++{
++    BOOL ret = GetProcessIdDisambiguationKey(id, &m_disambiguationKey);
++
++    // If GetProcessIdDisambiguationKey failed for some reason, it should set the value 
++    // to 0. We expect that anyone else making the pipe name will also fail and thus will
++    // also try to use 0 as the value.
++    _ASSERTE(ret == TRUE || m_disambiguationKey == 0);
++
++    int chars = _snprintf(name, MaxPipeNameLength, PipeNameFormat, id, m_disambiguationKey, suffix);
++    _ASSERTE(chars > 0 && chars < MaxPipeNameLength);
++}
++
+ // Creates a server side of the pipe. 
+ // Id is used to create pipes names and uniquely identify the pipe on the machine. 
+ // true - success, false - failure (use GetLastError() for more details)
+@@ -21,8 +38,8 @@ bool TwoWayPipe::CreateServer(DWORD id)
+         return false;
+ 
+     m_id = id;
+-    PAL_GetTransportPipeName(m_inPipeName, id, "in");
+-    PAL_GetTransportPipeName(m_outPipeName, id, "out");
++    GetPipeName(m_inPipeName, id, "in");
++    GetPipeName(m_outPipeName, id, "out");
+ 
+     if (mkfifo(m_inPipeName, S_IRWXU) == -1)
+     {
+@@ -50,8 +67,8 @@ bool TwoWayPipe::Connect(DWORD id)
+ 
+     m_id = id;



Home | Main Index | Thread Index | Old Index