文件最后提交记录最后更新时间
i#4370: Fix CMake 3.18 and 3.19 build and test failures (#4582) Fixes multiple problems encountered with CMake 3.18+: 1) Deprecated old version support. Solved by updating our minimums everywhere to 3.7 which was already our top-level minimum. At this point it should be fine to require clients to use 3.7 too. 2) Missing -rdynamic for test executables, where some clients expect to find global symbols in .dynsym. This is related to policy CMP0065. 3) Missing location property in the samples_proj test. The fix is in DynamoRIO_add_rel_rpaths(), instead of only using the per-file-type location property, use the actual path when the library is imported and we know the path at config time. 4) Assembly compilation breakage from two factors: A) The CMake-generated define -Ddynamorio_EXPORTS is being passed as --defsym dynamorio_EXPORTS in <DEFINES> for asm targets, but we pass that to cpp. B) Various compiler flags like --MD are in <FLAGS> and cpp does not like them. My solution for assembly is to: 1) set(CMAKE_ASM_DEFINE_FLAG "-D") 2) Remove <FLAGS> from the cpp command for asm. We do end up needing "-mavx*" to set the built-in defines __AVX__, etc. I put in explicit setting of "-mavx*" using the existing avx support queries, shifted earlier during config. 3) Move all of our preprocessor defines from COMPILE_FLAGS properties with explicit -D to COMPILE_DEFINITIONS properites without -D so we get them in <DEFINES>. This was a little involved: + There were a number of places pasing defines as flags. + COMPILE_FLAGS is a string while COMPILE_DEFINITIONS is a list, necessitating some conversions and changes in handling. + I had to split out a new function DynamoRIO_extra_defines from DynamoRIO_extra_cflags. I maintained the get_DynamoRIO_defines interface. + I had to update several places like in test setup where we remove defines to avoid duplicates from the command line and configure.h. Fixes #4370 Fixes #45815 年前
i#4343 namespace: Add namespaces to droption (#6193) Places droption under dynamorio::droption. This is a breaking change and users will have to recompile. Updates all uses within the repository. Fixes #43432 年前
i#4343 namespace: Add namespaces to droption (#6193) Places droption under dynamorio::droption. This is a breaking change and users will have to recompile. Updates all uses within the repository. Fixes #43432 年前