summaryrefslogtreecommitdiff
path: root/src/tools/crossgen/CMakeLists.txt
diff options
context:
space:
mode:
authorJohn Chen (JOCHEN7) <jochen@microsoft.com>2015-04-28 13:20:01 -0700
committerJohn Chen (JOCHEN7) <jochen@microsoft.com>2015-04-28 23:15:22 -0700
commite0c80c5f5c7d395d79aa350a26f46101a78af95d (patch)
treeec611fcee20f99810a6704c26c2e790884d42976 /src/tools/crossgen/CMakeLists.txt
parent1827eb2ae3201ccba95ca228d657041c8af3410c (diff)
downloadcoreclr-e0c80c5f5c7d395d79aa350a26f46101a78af95d.tar.gz
coreclr-e0c80c5f5c7d395d79aa350a26f46101a78af95d.tar.bz2
coreclr-e0c80c5f5c7d395d79aa350a26f46101a78af95d.zip
Build crossgen for Linux
- Crossgen is now built as part of coreclr - Crossgen successfully compiles mscorlib.dll - Resulting mscorlib.ni.dll not yet usable
Diffstat (limited to 'src/tools/crossgen/CMakeLists.txt')
-rw-r--r--src/tools/crossgen/CMakeLists.txt61
1 files changed, 30 insertions, 31 deletions
diff --git a/src/tools/crossgen/CMakeLists.txt b/src/tools/crossgen/CMakeLists.txt
index e7e2b65086..e35db0f4a7 100644
--- a/src/tools/crossgen/CMakeLists.txt
+++ b/src/tools/crossgen/CMakeLists.txt
@@ -7,26 +7,40 @@ include_directories(../util)
include_directories(../../pal/prebuilt/corerror)
set(crossgen_SOURCES crossgen.cpp ../util/consoleargs.cpp)
-set(crossgen_RESOURCES Native.rc)
+if(WIN32)
+ set(crossgen_RESOURCES Native.rc)
+endif()
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)
+add_executable(crossgen
+ ${crossgen_SOURCES}
+ ${crossgen_RESOURCES}
+)
-else()
- add_executable(crossgen
- ${crossgen_SOURCES}
- ${crossgen_RESOURCES}
- )
+target_link_libraries(crossgen
+ cee_crossgen
+ mdcompiler_crossgen
+ mdruntime_crossgen
+ mdruntimerw_crossgen
+ mdhotdata_crossgen
+ corguids
+ jit_crossgen
+ gcinfo_crossgen
+ corzap_crossgen
+ mscorlib_crossgen
+ strongname_crossgen
+ utilcode_crossgen
+ v3binder_crossgen
+)
+if(CLR_CMAKE_PLATFORM_UNIX)
+ target_link_libraries(crossgen
+ coreclrpal
+ palrt
+ )
+else()
target_link_libraries(crossgen
advapi32
ole32
@@ -36,32 +50,17 @@ else()
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)
+install (TARGETS crossgen DESTINATION .)
+
add_subdirectory(../../zap/crossgen ../../zap/crossgen)
add_subdirectory(../../vm/crossgen ../../vm/crossgen)
add_subdirectory(../../vm/crossgen_mscorlib ../../vm/crossgen_mscorlib)