You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@geode.apache.org by ec...@apache.org on 2018/08/22 21:27:28 UTC
[geode-native] branch develop updated: Geode 4978 pass hash into
cmake for version (#334)
This is an automated email from the ASF dual-hosted git repository.
echobravo pushed a commit to branch develop
in repository https://gitbox.apache.org/repos/asf/geode-native.git
The following commit(s) were added to refs/heads/develop by this push:
new cc99d87 Geode 4978 pass hash into cmake for version (#334)
cc99d87 is described below
commit cc99d871599ba2825a019ffe7d410f62c6040df9
Author: Blake Bender <ek...@hotmail.com>
AuthorDate: Wed Aug 22 21:27:25 2018 +0000
Geode 4978 pass hash into cmake for version (#334)
- Don't use git to discover SHA and branch for version.h
- Add default values for cmake variables used in version.h, so we don't generate version.h unless we specify a variable on the command line.
- Make value overrides work properly by using CACHE STRING
Co-authored-by: Ernest Burghardt <eb...@pivotal.io>
- Remove old generation step for version.h
- Remove stray cmake messages
Co-authored-by: Ivan Godwin <ig...@pivotal.io>
---
CMakeLists.txt | 4 +++-
cppcache/CMakeLists.txt | 12 +++-------
cppcache/src/version.cmake.in | 56 -------------------------------------------
3 files changed, 6 insertions(+), 66 deletions(-)
diff --git a/CMakeLists.txt b/CMakeLists.txt
index f967134..bbb5869 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -42,7 +42,9 @@ set(PRODUCT_VENDOR_NAME "The Apache Software Foundation" CACHE STRING "Product v
set(PRODUCT_NAME "Geode Native" CACHE STRING "Product name")
set(PRODUCT_VERSION "0.0.42-build.0" CACHE STRING "Product version")
set(PRODUCT_PACKAGE_NAME "apache-geode-native" CACHE STRING "Product package name")
-
+set(PRODUCT_BUILDDATE "1970-01-01" CACHE STRING "Product build date")
+set(PRODUCT_SOURCE_REVISION "0000000000000000000000000000000000000000" CACHE STRING "Product source SHA")
+set(PRODUCT_SOURCE_REPOSITORY "<unspecified>" CACHE STRING "Product source branch")
set(PRODUCT_BITS "${BUILD_BITS}bit")
set(PRODUCT_LIB_NAME "apache-geode" CACHE STRING "Binary name")
diff --git a/cppcache/CMakeLists.txt b/cppcache/CMakeLists.txt
index d814aa3..345d5af 100644
--- a/cppcache/CMakeLists.txt
+++ b/cppcache/CMakeLists.txt
@@ -32,16 +32,9 @@ set(RESOURCES ${COMMON_SOURCE_DIR}/apache-geode.rc)
find_package(Git 1.7 REQUIRED)
string(REPLACE ";" "," PRODUCT_VERSION_RC "${PRODUCT_VERSION_LIST}")
-list(APPEND CONFIGURE_IN_FILES ${COMMON_SOURCE_DIR}/version.cmake.in)
-list(APPEND CONFIGURE_OUT_FILES ${CMAKE_CURRENT_BINARY_DIR}/version.cmake)
-configure_file(${COMMON_SOURCE_DIR}/version.cmake.in ${CMAKE_CURRENT_BINARY_DIR}/version.cmake @ONLY)
-
+list(APPEND CONFIGURE_IN_FILES ${COMMON_SOURCE_DIR}/version.h.in)
list(APPEND CONFIGURE_OUT_FILES ${CMAKE_CURRENT_BINARY_DIR}/version.h)
-add_custom_command(OUTPUT ${CMAKE_CURRENT_BINARY_DIR}/version.h
- COMMAND ${CMAKE_COMMAND} -P ${CMAKE_CURRENT_BINARY_DIR}/version.cmake
- DEPENDS ${CMAKE_SOURCE_DIR}/.git/index ${CMAKE_CURRENT_BINARY_DIR}/version.cmake
- MAIN_DEPENDENCY ${CMAKE_SOURCE_DIR}/.git/index
-)
+
# adds named target for version.h to avoid parallel generation under windows
add_custom_target(version-header DEPENDS version.h)
@@ -58,6 +51,7 @@ endif()
list(APPEND CONFIGURE_IN_FILES ${COMMON_SOURCE_DIR}/config.h.in)
list(APPEND CONFIGURE_OUT_FILES ${CMAKE_CURRENT_BINARY_DIR}/config.h)
configure_file(${COMMON_SOURCE_DIR}/config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h)
+configure_file(${CMAKE_CURRENT_SOURCE_DIR}/src/version.h.in ${CMAKE_CURRENT_BINARY_DIR}/version.h)
set(EXPORT_FILE_NAME ${CMAKE_CURRENT_BINARY_DIR}/apache-geode_export.h)
list(APPEND CONFIGURE_OUT_FILES ${EXPORT_FILE_NAME})
diff --git a/cppcache/src/version.cmake.in b/cppcache/src/version.cmake.in
deleted file mode 100644
index 3ccbbfc..0000000
--- a/cppcache/src/version.cmake.in
+++ /dev/null
@@ -1,56 +0,0 @@
-#!/usr/bin/env cmake -P
-
-# Licensed to the Apache Software Foundation (ASF) under one or more
-# contributor license agreements. See the NOTICE file distributed with
-# this work for additional information regarding copyright ownership.
-# The ASF licenses this file to You under the Apache License, Version 2.0
-# (the "License"); you may not use this file except in compliance with
-# the License. You may obtain a copy of the License at
-#
-# http://www.apache.org/licenses/LICENSE-2.0
-#
-# Unless required by applicable law or agreed to in writing, software
-# distributed under the License is distributed on an "AS IS" BASIS,
-# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
-# See the License for the specific language governing permissions and
-# limitations under the License.
-
-cmake_minimum_required(VERSION 3.4)
-
-execute_process(COMMAND @GIT_EXECUTABLE@ rev-parse HEAD
- WORKING_DIRECTORY @CMAKE_SOURCE_DIR@
- OUTPUT_VARIABLE REV_SHA
- OUTPUT_STRIP_TRAILING_WHITESPACE)
-
-execute_process(COMMAND @GIT_EXECUTABLE@ show -s --format=%cD
- WORKING_DIRECTORY @CMAKE_SOURCE_DIR@
- OUTPUT_VARIABLE REV_DATE
- OUTPUT_STRIP_TRAILING_WHITESPACE)
-
-if ("@GIT_VERSION_STRING@" VERSION_LESS 1.8)
- set(GIT_BRANCH_COMMAND @GIT_EXECUTABLE@ rev-parse --abbrev-ref HEAD)
-else()
- set(GIT_BRANCH_COMMAND @GIT_EXECUTABLE@ symbolic-ref --short HEAD)
-endif()
-execute_process(COMMAND ${GIT_BRANCH_COMMAND}
- WORKING_DIRECTORY @CMAKE_SOURCE_DIR@
- OUTPUT_VARIABLE REV_BRANCH
- OUTPUT_STRIP_TRAILING_WHITESPACE)
-
-#message(STATUS "REV_COUNT: ${REV_COUNT}")
-#message(STATUS "REV_SHA: ${REV_SHA}")
-#message(STATUS "REV_DATE: ${REV_DATE}")
-#message(STATUS "REV_BRANCH: ${REV_BRANCH}")
-
-set(PRODUCT_VERSION @PRODUCT_VERSION@)
-set(PRODUCT_VERSION_RC @PRODUCT_VERSION_RC@)
-set(PRODUCT_BUILDDATE ${REV_DATE})
-set(PRODUCT_SOURCE_REVISION ${REV_SHA})
-set(PRODUCT_SOURCE_REPOSITORY ${REV_BRANCH})
-
-configure_file(@CMAKE_CURRENT_SOURCE_DIR@/src/version.h.in @CMAKE_CURRENT_BINARY_DIR@/version.h)
-
-# Always touch since configure_file will not update file if values haven't change
-# but the index must have changed for this command to be called. If we don't touch
-# then we keep getting called because the index is newer than version.h
-execute_process(COMMAND ${CMAKE_COMMAND} -E touch_nocreate @CMAKE_CURRENT_BINARY_DIR@/version.h)