From aaa6fd812d8032d5a4d994a452d0da0950985b01 Mon Sep 17 00:00:00 2001 From: Shuanglei Tao Date: Tue, 4 Sep 2018 22:44:52 +0800 Subject: [PATCH] Add git commit id to version string --- CMakeLists.txt | 39 ++++++++++++++++++++++----------------- README.md | 2 -- 2 files changed, 22 insertions(+), 19 deletions(-) diff --git a/CMakeLists.txt b/CMakeLists.txt index 50e2f6b..43bd4ba 100644 --- a/CMakeLists.txt +++ b/CMakeLists.txt @@ -1,7 +1,22 @@ cmake_minimum_required(VERSION 2.8) -cmake_policy(SET CMP0048 NEW) -project(ttyd VERSION "1.4.0") +project(ttyd) +set(PROJECT_VERSION "1.4.0") + +find_package(Git) +if(GIT_FOUND) + execute_process( + COMMAND ${GIT_EXECUTABLE} rev-parse --short HEAD + WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}" + RESULT_VARIABLE GIT_RET + OUTPUT_VARIABLE GIT_COMMIT + OUTPUT_STRIP_TRAILING_WHITESPACE + ERROR_QUIET + ) + if("${GIT_RET}" STREQUAL "0") + set(PROJECT_VERSION "${PROJECT_VERSION}-${GIT_COMMIT}") + endif() +endif() set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -D_GNU_SOURCE") if(CMAKE_VERSION VERSION_LESS "3.1") @@ -55,7 +70,11 @@ add_custom_command(OUTPUT html.h list(APPEND SOURCE_FILES html.h) set(INCLUDE_DIRS ${OPENSSL_INCLUDE_DIR} ${LIBWEBSOCKETS_INCLUDE_DIR} ${JSON-C_INCLUDE_DIR}) -set(LINK_LIBS util pthread ${OPENSSL_LIBRARIES} ${LIBWEBSOCKETS_LIBRARIES} ${JSON-C_LIBRARY}) +set(LINK_LIBS pthread ${OPENSSL_LIBRARIES} ${LIBWEBSOCKETS_LIBRARIES} ${JSON-C_LIBRARY}) + +if(NOT APPLE) + list(APPEND LINK_LIBS util) +endif() if(WIN32) list(APPEND LINK_LIBS shell32) @@ -70,17 +89,3 @@ include(GNUInstallDirs) install(TARGETS ${PROJECT_NAME} DESTINATION "${CMAKE_INSTALL_BINDIR}" COMPONENT prog) install(FILES man/ttyd.1 DESTINATION "${CMAKE_INSTALL_MANDIR}/man1" COMPONENT doc) - -set(CPACK_PACKAGE_NAME "${PROJECT_NAME}") -set(CPACK_PACKAGE_VERSION "${PROJECT_VERSION}") -set(CPACK_PACKAGE_DESCRIPTION_SUMMARY "${PROJECT_NAME} - Share your terminal over the web") -set(CPACK_PACKAGE_CONTACT "Shuanglei Tao ") -set(CPACK_PACKAGE_FILE_NAME "${CPACK_PACKAGE_NAME}-${CPACK_PACKAGE_VERSION}_${CMAKE_SYSTEM_PROCESSOR}") - -set(CPACK_GENERATOR "DEB") -SET(CPACK_DEBIAN_ARCHITECTURE ${CMAKE_SYSTEM_PROCESSOR}) -set(CPACK_DEBIAN_PACKAGE_SECTION "shells") -set(CPACK_DEBIAN_PACKAGE_HOMEPAGE "https://tsl0922.github.io/ttyd") -set(CPACK_DEBIAN_PACKAGE_DEPENDS "libjson-c2, libwebsockets7, libssl1.0.0, libc6 (>= 2.14)") - -include(CPack) diff --git a/README.md b/README.md index 55ff85a..e91ff32 100644 --- a/README.md +++ b/README.md @@ -45,8 +45,6 @@ brew install ttyd make && make install ``` - [CMake][19] of at least 3.0 is required. If you get the error message `Policy "CMP0048" is not known to this version of CMake`, that means you have an old CMake. - You may also need to compile/install [libwebsockets][2] from source if the `libwebsockets-dev` package is outdated. ## Install on Windows -- 2.43.4