# ********************************************************** # Copyright (c) 2011-2015 Google, Inc. All rights reserved. # Copyright (c) 2009-2010 VMware, Inc. All rights reserved. # ********************************************************** # Redistribution and use in source and binary forms, with or without # modification, are permitted provided that the following conditions are met: # # * Redistributions of source code must retain the above copyright notice, # this list of conditions and the following disclaimer. # # * Redistributions in binary form must reproduce the above copyright notice, # this list of conditions and the following disclaimer in the documentation # and/or other materials provided with the distribution. # # * Neither the name of VMware, Inc. nor the names of its contributors may be # used to endorse or promote products derived from this software without # specific prior written permission. # # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" # AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE # IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE # ARE DISCLAIMED. IN NO EVENT SHALL VMWARE, INC. OR CONTRIBUTORS BE LIABLE # FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL # DAMAGES (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR # SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER # CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT # LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY # OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH # DAMAGE. cmake_minimum_required(VERSION 3.7) include(../../make/policies.cmake NO_POLICY_SCOPE) function (add_sample_standalone name source_file_list) add_executable(${name} ${source_file_list}) configure_DynamoRIO_standalone(${name}) # Provide a hint for running if (NOT DynamoRIO_INTERNAL OR NOT "${CMAKE_GENERATOR}" MATCHES "Ninja") if (UNIX) set(FIND_MSG "(set LD_LIBRARY_PATH)") else (UNIX) set(FIND_MSG "(set PATH or copy to same directory)") endif (UNIX) add_custom_command(TARGET ${name} POST_BUILD COMMAND ${CMAKE_COMMAND} ARGS -E echo "Make sure the loader finds the dynamorio library ${FIND_MSG}" VERBATIM) endif () set(srcs ${srcs} ${source_file_list} PARENT_SCOPE) # NON-PUBLIC set(tgts ${tgts} ${name} PARENT_SCOPE) # NON-PUBLIC endfunction (add_sample_standalone) add_sample_standalone(tracedump "tracedump.c")