#!/usr/bin/cmake -P ## Copyright(c) 2017-2020, Intel Corporation ## ## 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 Intel Corporation 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 THE COPYRIGHT OWNER 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. # Exports # # * OPAE_GIT_EXECUTABLE # * OPAE_GIT_COMMIT_HASH # * OPAE_GIT_SRC_TREE_DIRTY find_program(OPAE_GIT_EXECUTABLE git) if(EXISTS ${OPAE_GIT_EXECUTABLE}) # Find the abbreviated git commit hash. execute_process(COMMAND ${OPAE_GIT_EXECUTABLE} log -1 --format=%h WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} OUTPUT_VARIABLE OPAE_GIT_COMMIT_HASH RESULT_VARIABLE OPAE_GIT_LOG_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE) if(NOT ${OPAE_GIT_LOG_RESULT} EQUAL 0) set(OPAE_GIT_COMMIT_HASH unknown) endif() # Determine whether the working tree has changes. execute_process(COMMAND ${OPAE_GIT_EXECUTABLE} diff --stat WORKING_DIRECTORY ${CMAKE_SOURCE_DIR} OUTPUT_VARIABLE OPAE_GIT_DIFF_OUTPUT RESULT_VARIABLE OPAE_GIT_DIFF_RESULT OUTPUT_STRIP_TRAILING_WHITESPACE) if(NOT ${OPAE_GIT_DIFF_RESULT} EQUAL 0) set(OPAE_GIT_SRC_TREE_DIRTY 0) else() if(OPAE_GIT_DIFF_OUTPUT) set(OPAE_GIT_SRC_TREE_DIRTY 1) else() set(OPAE_GIT_SRC_TREE_DIRTY 0) endif() endif() else(EXISTS ${OPAE_GIT_EXECUTABLE}) set(OPAE_GIT_COMMIT_HASH unknown) set(OPAE_GIT_SRC_TREE_DIRTY 0) endif(EXISTS ${OPAE_GIT_EXECUTABLE})