From 07c93f30f7ccd851e7d22cf9803c299dab279a95 Mon Sep 17 00:00:00 2001 From: chunseoklee Date: Tue, 23 May 2017 00:37:27 +0900 Subject: gdbjit symbols exported (#11738) * multiple export files as input for generate_exports_file Now, generate_exports_file is able to process multiple input arguments. This feature is useful when you want to export additional symbols depending on compile time dependannt feature(-D option.) * export file for gdbjit added src/dlls/mscoree/gdbjit_unixexports.src file added To enable gdbjit feature, libcoreclr.so should have __jit_xxx symbols. Current tizen build system removes .symtab section during rpm debuginfo build. This patch moves __jit_xx symbols into .dynsym section. Change-Id: I0a79f81c9f5385dbcb871b325c56310949723ee8 --- functions.cmake | 9 ++++++--- src/dlls/mscoree/CMakeLists.txt | 5 +++++ src/dlls/mscoree/gdbjit_unixexports.src | 3 +++ 3 files changed, 14 insertions(+), 3 deletions(-) create mode 100644 src/dlls/mscoree/gdbjit_unixexports.src diff --git a/functions.cmake b/functions.cmake index cbcc70f4d1..cf4d08faaf 100644 --- a/functions.cmake +++ b/functions.cmake @@ -86,7 +86,10 @@ function(preprocess_def_file inputFilename outputFilename) PROPERTIES GENERATED TRUE) endfunction() -function(generate_exports_file inputFilename outputFilename) +function(generate_exports_file) + set(INPUT_LIST ${ARGN}) + list(GET INPUT_LIST -1 outputFilename) + list(REMOVE_AT INPUT_LIST -1) if(CMAKE_SYSTEM_NAME STREQUAL Darwin) set(AWK_SCRIPT generateexportedsymbols.awk) @@ -96,8 +99,8 @@ function(generate_exports_file inputFilename outputFilename) add_custom_command( OUTPUT ${outputFilename} - COMMAND ${AWK} -f ${CMAKE_SOURCE_DIR}/${AWK_SCRIPT} ${inputFilename} >${outputFilename} - DEPENDS ${inputFilename} ${CMAKE_SOURCE_DIR}/${AWK_SCRIPT} + COMMAND ${AWK} -f ${CMAKE_SOURCE_DIR}/${AWK_SCRIPT} ${INPUT_LIST} >${outputFilename} + DEPENDS ${INPUT_LIST} ${CMAKE_SOURCE_DIR}/${AWK_SCRIPT} COMMENT "Generating exports file ${outputFilename}" ) set_source_files_properties(${outputFilename} diff --git a/src/dlls/mscoree/CMakeLists.txt b/src/dlls/mscoree/CMakeLists.txt index b9c129db5e..8fc3ebfb41 100644 --- a/src/dlls/mscoree/CMakeLists.txt +++ b/src/dlls/mscoree/CMakeLists.txt @@ -22,6 +22,11 @@ else() set (DEF_SOURCES mscorwks_unixexports.src ) +if(FEATURE_GDBJIT) + list(APPEND DEF_SOURCES + gdbjit_unixexports.src + ) +endif(FEATURE_GDBJIT) endif(WIN32) convert_to_absolute_path(DEF_SOURCES ${DEF_SOURCES}) diff --git a/src/dlls/mscoree/gdbjit_unixexports.src b/src/dlls/mscoree/gdbjit_unixexports.src new file mode 100644 index 0000000000..b820aebf9b --- /dev/null +++ b/src/dlls/mscoree/gdbjit_unixexports.src @@ -0,0 +1,3 @@ +; exported for GDBJIT +__jit_debug_register_code +__jit_debug_descriptor \ No newline at end of file -- cgit v1.2.3