From 96da4dfdf450d55511d70a15cc7652059a644e49 Mon Sep 17 00:00:00 2001 From: Jan Kotas Date: Sat, 30 Jan 2016 17:40:53 -0800 Subject: [PATCH 1/3] Add missing files for ARM legacy JIT --- src/jit/CMakeLists.txt | 2 ++ 1 file changed, 2 insertions(+) diff --git a/src/jit/CMakeLists.txt b/src/jit/CMakeLists.txt index b7870c72c8df..a5f777e4642a 100644 --- a/src/jit/CMakeLists.txt +++ b/src/jit/CMakeLists.txt @@ -80,6 +80,8 @@ elseif(CLR_CMAKE_PLATFORM_ARCH_ARM) lowerarm.cpp codegenarm.cpp unwindarm.cpp + codegenlegacy.cpp + registerfp.cpp ) elseif(CLR_CMAKE_PLATFORM_ARCH_I386) set( ARCH_SOURCES From afc23feec88c928cfce19216b781fc460f955b1b Mon Sep 17 00:00:00 2001 From: Jan Kotas Date: Sat, 30 Jan 2016 20:54:03 -0800 Subject: [PATCH 2/3] Cleanup top-level defines - Delete left-over cruft from internal build - Move Windows-specific defines under WIN32 --- CMakeLists.txt | 22 ++++------------------ 1 file changed, 4 insertions(+), 18 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 703d28ee6450..5510f2384a06 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -616,23 +616,14 @@ if (CLR_CMAKE_PLATFORM_UNIX) endif(CLR_CMAKE_PLATFORM_UNIX) -add_definitions(-D_CRT_STDIO_ARBITRARY_WIDE_SPECIFIERS) -add_definitions(-DDEV10) -add_definitions(-DWIN32) -add_definitions(-DDEVL=1) -add_definitions(-D_WIN32_WINNT=0x0602) -add_definitions(-D_WIN32_IE=0x0900) -add_definitions(-DWINNT=1) -add_definitions(-DNT_INST=0) -add_definitions(-DCONDITION_HANDLING=1) -add_definitions(-DNTDDI_VERSION=NTDDI_WIN8) -add_definitions(-DNTMAKEENV) add_definitions(-D_BLD_CLR) -add_definitions(-DWINVER=0x0602) -add_definitions(-DWIN32_LEAN_AND_MEAN=1) add_definitions(-DDEBUGGING_SUPPORTED) if(WIN32) + add_definitions(-DWIN32) + add_definitions(-DWINVER=0x0602) + add_definitions(-D_WIN32_WINNT=0x0602) + add_definitions(-DWIN32_LEAN_AND_MEAN=1) if(CLR_CMAKE_PLATFORM_ARCH_AMD64 OR CLR_CMAKE_PLATFORM_ARCH_I386) add_definitions(-D_CRT_SECURE_NO_WARNINGS) # Only enable edit and continue on windows x86 and x64 @@ -778,12 +769,7 @@ else () clr_unknown_arch() endif () -add_definitions(-D_SKIP_IF_SIMULATOR_) add_definitions(-D_SECURE_SCL=0) -add_definitions(-D_NEW_SDK=1) -add_definitions(-DOFFICIAL_BUILD=0) -add_definitions(-DBETA=0) -add_definitions(-DFX_BRANCH_SYNC_COUNTER_VALUE=0) add_definitions(-DUNICODE) add_definitions(-D_UNICODE) From dd9c20ca70d650083e57802e5d1e9bfde799f9b9 Mon Sep 17 00:00:00 2001 From: Jan Kotas Date: Sat, 30 Jan 2016 17:33:29 -0800 Subject: [PATCH 3/3] Introduce central location for turning FEATURE_EVENT_TRACE on/off Turn FEATURE_EVENT_TRACE on for x64 Linux only. aarch64 and arm do not have working lttng in their ubuntu/debian repos. We can expand to other platforms in the future as they become supported. --- CMakeLists.txt | 19 +++++++++++++------ src/dlls/mscoree/coreclr/CMakeLists.txt | 5 ++--- src/pal/src/CMakeLists.txt | 4 ++-- src/pal/src/configure.cmake | 2 +- src/scripts/genXplatEventing.py | 4 ++-- src/vm/CMakeLists.txt | 4 ++-- 6 files changed, 22 insertions(+), 16 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 5510f2384a06..bdae3af0ed7d 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -552,6 +552,13 @@ else () clr_unknown_arch() endif () +if (WIN32) + set(FEATURE_EVENT_TRACE 1) +endif() +if(CLR_CMAKE_PLATFORM_LINUX AND CLR_CMAKE_PLATFORM_ARCH_AMD64) + set(FEATURE_EVENT_TRACE 1) +endif() + if(CLR_CMAKE_PLATFORM_UNIX) add_subdirectory(src/ToolBox/SOS/lldbplugin) add_subdirectory(src/pal) @@ -668,12 +675,12 @@ if(CLR_CMAKE_PLATFORM_UNIX) add_definitions(-DFEATURE_DBGIPC_TRANSPORT_DI) add_definitions(-DFEATURE_DBGIPC_TRANSPORT_VM) endif(CLR_CMAKE_PLATFORM_UNIX) -if (WIN32 OR CLR_CMAKE_PLATFORM_LINUX) - add_definitions(-DFEATURE_EVENT_TRACE=1) -endif (WIN32 OR CLR_CMAKE_PLATFORM_LINUX) -if (CLR_CMAKE_PLATFORM_LINUX) - add_definitions(-DFEATURE_EVENTSOURCE_XPLAT=1) -endif (CLR_CMAKE_PLATFORM_LINUX) +if(FEATURE_EVENT_TRACE) + add_definitions(-DFEATURE_EVENT_TRACE=1) + if(CLR_CMAKE_PLATFORM_UNIX) + add_definitions(-DFEATURE_EVENTSOURCE_XPLAT=1) + endif(CLR_CMAKE_PLATFORM_UNIX) +endif(FEATURE_EVENT_TRACE) add_definitions(-DFEATURE_EXCEPTIONDISPATCHINFO) add_definitions(-DFEATURE_FRAMEWORK_INTERNAL) if(NOT CLR_CMAKE_PLATFORM_UNIX_TARGET_ARM) diff --git a/src/dlls/mscoree/coreclr/CMakeLists.txt b/src/dlls/mscoree/coreclr/CMakeLists.txt index 1d428193f59f..090140491303 100644 --- a/src/dlls/mscoree/coreclr/CMakeLists.txt +++ b/src/dlls/mscoree/coreclr/CMakeLists.txt @@ -114,12 +114,11 @@ else() ) endif(WIN32) -if(CLR_CMAKE_PLATFORM_LINUX) +if(CLR_CMAKE_PLATFORM_UNIX AND FEATURE_EVENT_TRACE) list(APPEND CORECLR_LIBRARIES eventprovider ) - -endif(CLR_CMAKE_PLATFORM_LINUX) +endif(CLR_CMAKE_PLATFORM_UNIX AND FEATURE_EVENT_TRACE) target_link_libraries(coreclr ${CORECLR_LIBRARIES}) diff --git a/src/pal/src/CMakeLists.txt b/src/pal/src/CMakeLists.txt index b411cd4ec021..f527922e7b6e 100644 --- a/src/pal/src/CMakeLists.txt +++ b/src/pal/src/CMakeLists.txt @@ -253,9 +253,9 @@ endif(CMAKE_SYSTEM_NAME STREQUAL Darwin) add_subdirectory(examples) -if(CMAKE_SYSTEM_NAME STREQUAL Linux) +if(FEATURE_EVENT_TRACE) add_subdirectory($ENV{__IntermediatesDir}/Generated/eventprovider ${CMAKE_CURRENT_BINARY_DIR}/eventprovider) -endif(CMAKE_SYSTEM_NAME STREQUAL Linux) +endif(FEATURE_EVENT_TRACE) # Install the static PAL library for VS install (TARGETS coreclrpal DESTINATION lib) diff --git a/src/pal/src/configure.cmake b/src/pal/src/configure.cmake index 7817873d5f92..b3386d2cbc7f 100644 --- a/src/pal/src/configure.cmake +++ b/src/pal/src/configure.cmake @@ -979,7 +979,7 @@ else() # Anything else is Linux unset(HAVE_LIBUNWIND_H CACHE) message(FATAL_ERROR "Cannot find libunwind. Try installing libunwind8 and libunwind8-dev (or the appropriate packages for your platform)") endif() - if(NOT HAVE_LTTNG_TRACEPOINT_H) + if(NOT HAVE_LTTNG_TRACEPOINT_H AND FEATURE_EVENT_TRACE) unset(HAVE_LTTNG_TRACEPOINT_H CACHE) message(FATAL_ERROR "Cannot find liblttng-ust-dev. Try installing liblttng-ust-dev (or the appropriate packages for your platform)") endif() diff --git a/src/scripts/genXplatEventing.py b/src/scripts/genXplatEventing.py index f56e45b47443..b844ec19b4b3 100644 --- a/src/scripts/genXplatEventing.py +++ b/src/scripts/genXplatEventing.py @@ -495,7 +495,7 @@ def generateSanityTest(sClrEtwAllMan,testDir): ) set(EVENT_PROVIDER_DEPENDENCIES "") set(EVENT_PROVIDER_LINKER_OTPTIONS "") - if(CMAKE_SYSTEM_NAME STREQUAL Linux) + if(FEATURE_EVENT_TRACE) add_definitions(-DFEATURE_EVENT_TRACE=1) list(APPEND EVENT_PROVIDER_DEPENDENCIES coreclrtraceptprovider @@ -505,7 +505,7 @@ def generateSanityTest(sClrEtwAllMan,testDir): ${EVENT_PROVIDER_DEPENDENCIES} ) - endif(CMAKE_SYSTEM_NAME STREQUAL Linux) + endif(FEATURE_EVENT_TRACE) add_dependencies(eventprovidertest ${EVENT_PROVIDER_DEPENDENCIES} coreclrpal) target_link_libraries(eventprovidertest diff --git a/src/vm/CMakeLists.txt b/src/vm/CMakeLists.txt index c489ed193294..c65416c7cd13 100644 --- a/src/vm/CMakeLists.txt +++ b/src/vm/CMakeLists.txt @@ -268,11 +268,11 @@ set(VM_SOURCES_WKS weakreferencenative.cpp ) -if(CLR_CMAKE_PLATFORM_LINUX OR WIN32) +if(FEATURE_EVENT_TRACE) list(APPEND VM_SOURCES_WKS eventtrace.cpp ) -endif(CLR_CMAKE_PLATFORM_LINUX OR WIN32) +endif(FEATURE_EVENT_TRACE) if(WIN32)