summaryrefslogtreecommitdiff
path: root/src/vm/CMakeLists.txt
diff options
context:
space:
mode:
authorSean Gillespie <segilles@microsoft.com>2017-10-27 14:37:54 -0700
committerGitHub <noreply@github.com>2017-10-27 14:37:54 -0700
commitbd3424913138d10f9c4fdb6176fb471e8d1ba1d7 (patch)
treeca05fccdea9a8584194b4a4acf5b7cb1aab6800f /src/vm/CMakeLists.txt
parentfb4af6c2908b633b200b556986815781f2139f4e (diff)
downloadcoreclr-bd3424913138d10f9c4fdb6176fb471e8d1ba1d7.tar.gz
coreclr-bd3424913138d10f9c4fdb6176fb471e8d1ba1d7.tar.bz2
coreclr-bd3424913138d10f9c4fdb6176fb471e8d1ba1d7.zip
[Local GC] Implement loader protocol for a standalone GC (#14663)
* First cut of the load protocol * Implement for non-standalone GC * Initial working implementation * First steps towards not using GetProcAddress when not using a standalone GC * Factor out loading routines into standalone and non-standalone cases * Remove the FEATURE_STANDALONE_GC_ONLY build * Code cleanup and comments * Comments for the version numbers * Use more appropriate type for config string * add GC_LOAD_STATUS_BEFORE_START to disambiguate failures before the start of the load and failures at the beginning of the load * FEATURE_STANDALONE_GC on by default * Implement YieldProcessor and MemoryBarrier for arm and arm64 * Remove missed FEATURE_STANDALONE_GC feature check
Diffstat (limited to 'src/vm/CMakeLists.txt')
-rw-r--r--src/vm/CMakeLists.txt28
1 files changed, 7 insertions, 21 deletions
diff --git a/src/vm/CMakeLists.txt b/src/vm/CMakeLists.txt
index 0aed676d94..8b9219dee3 100644
--- a/src/vm/CMakeLists.txt
+++ b/src/vm/CMakeLists.txt
@@ -10,15 +10,11 @@ add_definitions(-D_UNICODE)
if(CMAKE_CONFIGURATION_TYPES) # multi-configuration generator?
foreach (Config DEBUG CHECKED)
- if(NOT FEATURE_STANDALONE_GC_ONLY)
- set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS $<$<CONFIG:${Config}>:WRITE_BARRIER_CHECK=1>)
- endif(NOT FEATURE_STANDALONE_GC_ONLY)
+ set_property(DIRECTORY APPEND PROPERTY COMPILE_DEFINITIONS $<$<CONFIG:${Config}>:WRITE_BARRIER_CHECK=1>)
endforeach (Config)
else()
if(UPPERCASE_CMAKE_BUILD_TYPE STREQUAL DEBUG OR UPPERCASE_CMAKE_BUILD_TYPE STREQUAL CHECKED)
- if(NOT FEATURE_STANDALONE_GC_ONLY)
- add_definitions(-DWRITE_BARRIER_CHECK=1)
- endif(NOT FEATURE_STANDALONE_GC_ONLY)
+ add_definitions(-DWRITE_BARRIER_CHECK=1)
endif(UPPERCASE_CMAKE_BUILD_TYPE STREQUAL DEBUG OR UPPERCASE_CMAKE_BUILD_TYPE STREQUAL CHECKED)
endif(CMAKE_CONFIGURATION_TYPES)
@@ -200,6 +196,7 @@ set(VM_SOURCES_WKS
gccover.cpp
gcenv.ee.static.cpp
gcenv.ee.common.cpp
+ gcenv.os.cpp
gchelpers.cpp
genmeth.cpp
hosting.cpp
@@ -270,6 +267,7 @@ set(GC_SOURCES_WKS
../gc/gchandletable.cpp
../gc/gceesvr.cpp
../gc/gceewks.cpp
+ ../gc/gcload.cpp
../gc/softwarewritewatch.cpp
../gc/handletablecache.cpp)
@@ -285,12 +283,6 @@ if(FEATURE_STANDALONE_GC)
)
endif(FEATURE_STANDALONE_GC)
-if(NOT FEATURE_STANDALONE_GC)
- list(APPEND VM_SOURCES_WKS
- gcenv.os.cpp
- )
-endif(NOT FEATURE_STANDALONE_GC)
-
if(WIN32)
set(VM_SOURCES_DAC_AND_WKS_WIN32
@@ -511,15 +503,9 @@ list(APPEND VM_SOURCES_DAC
${VM_SOURCES_DAC_AND_WKS_ARCH}
)
-# The default option for FEATURE_STANDALONE_GC builds a standalone
-# and non-standalone GC, linking the non-standalone GC into coreclr.dll.
-# For testing purposes, FEATURE_STANDALONE_GC_ONLY instead only builds and
-# links the non-standalone GC into coreclr.dll.
-if (NOT FEATURE_STANDALONE_GC_ONLY)
- list(APPEND VM_SOURCES_WKS
- ${GC_SOURCES_WKS}
- )
-endif(NOT FEATURE_STANDALONE_GC_ONLY)
+list(APPEND VM_SOURCES_WKS
+ ${GC_SOURCES_WKS}
+)
# The DAC does need GC sources in order to link correctly, even if
# it's not used.