summaryrefslogtreecommitdiff
path: root/src/tools/crossgen/CMakeLists.txt
diff options
context:
space:
mode:
authorJohn Chen <jochen@microsoft.com>2015-04-20 08:36:31 -0700
committerJohn Chen <jochen@microsoft.com>2015-04-20 08:36:31 -0700
commit10ad17e525b7c5f6432e3c1b0a453d291e5d78b6 (patch)
tree46315b7efcfd5b6da8382cc0bb5b659c6d3d5d5c /src/tools/crossgen/CMakeLists.txt
parent6288f3d99995661184d90d542511ff37905ef299 (diff)
downloadcoreclr-10ad17e525b7c5f6432e3c1b0a453d291e5d78b6.tar.gz
coreclr-10ad17e525b7c5f6432e3c1b0a453d291e5d78b6.tar.bz2
coreclr-10ad17e525b7c5f6432e3c1b0a453d291e5d78b6.zip
Enable build crossgen.exe from build.cmd.
Adds and modifies CMakeLists.txt files to enable building of crossgen.exe from build.cmd for x64 processor on Windows. Also adds a step in build.cmd to generate native image for mscorlib. [tfs-changeset: 1456454]
Diffstat (limited to 'src/tools/crossgen/CMakeLists.txt')
-rw-r--r--src/tools/crossgen/CMakeLists.txt67
1 files changed, 67 insertions, 0 deletions
diff --git a/src/tools/crossgen/CMakeLists.txt b/src/tools/crossgen/CMakeLists.txt
new file mode 100644
index 0000000000..e7e2b65086
--- /dev/null
+++ b/src/tools/crossgen/CMakeLists.txt
@@ -0,0 +1,67 @@
+project(crossgen)
+
+include(${CLR_DIR}/crossgen.cmake)
+
+set(CMAKE_INCLUDE_CURRENT_DIR ON)
+include_directories(../util)
+include_directories(../../pal/prebuilt/corerror)
+
+set(crossgen_SOURCES crossgen.cpp ../util/consoleargs.cpp)
+set(crossgen_RESOURCES Native.rc)
+
+add_definitions(-DFX_VER_INTERNALNAME_STR=crossgen.exe)
+add_definitions(-DNO_NGENPDB)
+
+if(CLR_CMAKE_PLATFORM_UNIX)
+ # This does not compile on Linux yet
+ if(CAN_BE_COMPILED_ON_LINUX)
+ add_executable(crossgen
+ ${crossgen_SOURCES}
+ ${crossgen_RESOURCES}
+ )
+ endif(CAN_BE_COMPILED_ON_LINUX)
+
+else()
+ add_executable(crossgen
+ ${crossgen_SOURCES}
+ ${crossgen_RESOURCES}
+ )
+
+ target_link_libraries(crossgen
+ advapi32
+ ole32
+ oleaut32
+ uuid
+ user32
+ version
+ shlwapi
+ bcrypt
+ corguids
+ utilcode_crossgen
+ corzap_crossgen
+ jit_crossgen
+ gcinfo_crossgen
+ strongname_crossgen
+ mdcompiler_crossgen
+ mdwinmd_crossgen
+ mdruntimerw_crossgen
+ mdhotdata_crossgen
+ mdruntime_crossgen
+ cee_crossgen
+ mscorlib_crossgen
+ v3binder_crossgen
+ ${STATIC_MT_CRT_LIB}
+ )
+
+ # Can't compile on linux yet so only add for windows
+ # add the install targets
+ install (TARGETS crossgen DESTINATION .)
+
+ # We will generate PDB only for the debug configuration
+ install (FILES ${CMAKE_CURRENT_BINARY_DIR}/$<CONFIG>/crossgen.pdb DESTINATION PDB)
+
+endif(CLR_CMAKE_PLATFORM_UNIX)
+
+add_subdirectory(../../zap/crossgen ../../zap/crossgen)
+add_subdirectory(../../vm/crossgen ../../vm/crossgen)
+add_subdirectory(../../vm/crossgen_mscorlib ../../vm/crossgen_mscorlib)