Skip to content

Commit

Permalink
Cleanup CMakeFiles prior to release
Browse files Browse the repository at this point in the history
* Remove Git revision finding code in favor of a simple command call: git rev-parse --short=7 HEAD
* Added GIT_HEAD_OVERRIDE to explicitly define the hash for the current commit in case git is not available 
* Made WIX default over NSIS in release tool 
* Rename version.h to git-info.h
  • Loading branch information
droidmonkey committed Jan 30, 2019
1 parent 7f3ce65 commit 21d1e98
Show file tree
Hide file tree
Showing 11 changed files with 33 additions and 201 deletions.
16 changes: 15 additions & 1 deletion CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -84,11 +84,25 @@ set(KEEPASSXC_VERSION "${KEEPASSXC_VERSION_MAJOR}.${KEEPASSXC_VERSION_MINOR}.${K
set(KEEPASSXC_BUILD_TYPE "Snapshot" CACHE STRING "Set KeePassXC build type to distinguish between stable releases and snapshots")
set_property(CACHE KEEPASSXC_BUILD_TYPE PROPERTY STRINGS Snapshot Release PreRelease)

# Retrieve git HEAD revision hash
set(GIT_HEAD_OVERRIDE "" CACHE STRING "Manually set the Git HEAD hash when missing (eg, when no .git folder exists)")
execute_process(COMMAND git rev-parse --short=7 HEAD
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_HEAD
ERROR_QUIET)
string(STRIP "${GIT_HEAD}" GIT_HEAD)
if(GIT_HEAD STREQUAL "")
string(SUBSTRING "${GIT_HEAD_OVERRIDE}" 0 7 GIT_HEAD)
endif()
message(STATUS "Found Git HEAD Revision: ${GIT_HEAD}\n")

# Check if on a tag, if so build as a release
execute_process(COMMAND git tag --points-at HEAD
WORKING_DIRECTORY ${CMAKE_SOURCE_DIR}
OUTPUT_VARIABLE GIT_TAG)
OUTPUT_VARIABLE GIT_TAG
ERROR_QUIET)
if(GIT_TAG)
string(STRIP "${GIT_TAG}" GIT_TAG)
set(OVERRIDE_VERSION ${GIT_TAG})
elseif(EXISTS ${CMAKE_SOURCE_DIR}/.version)
file(READ ${CMAKE_SOURCE_DIR}/.version OVERRIDE_VERSION)
Expand Down
2 changes: 1 addition & 1 deletion cmake/GenerateProductVersion.cmake
Original file line number Diff line number Diff line change
Expand Up @@ -91,7 +91,7 @@ function(generate_product_version outfiles)
set(PRODUCT_COMPANY_COPYRIGHT "Copyright (C) ${PRODUCT_CURRENT_YEAR} ${PRODUCT_COMPANY_NAME}")
endif()
if (NOT PRODUCT_COMMENTS OR "${PRODUCT_COMMENTS}" STREQUAL "")
set(PRODUCT_COMMENTS "${PRODUCT_NAME} v${PRODUCT_VERSION_MAJOR}.${PRODUCT_VERSION_MINOR}")
set(PRODUCT_COMMENTS "${PRODUCT_NAME} v${PRODUCT_VERSION_MAJOR}.${PRODUCT_VERSION_MINOR}.${PRODUCT_VERSION_PATCH}")
endif()
if (NOT PRODUCT_ORIGINAL_FILENAME OR "${PRODUCT_ORIGINAL_FILENAME}" STREQUAL "")
set(PRODUCT_ORIGINAL_FILENAME "${PRODUCT_NAME}")
Expand Down
130 changes: 0 additions & 130 deletions cmake/GetGitRevisionDescription.cmake

This file was deleted.

41 changes: 0 additions & 41 deletions cmake/GetGitRevisionDescription.cmake.in

This file was deleted.

2 changes: 1 addition & 1 deletion release-tool
Original file line number Diff line number Diff line change
Expand Up @@ -35,7 +35,7 @@ TAG_NAME=""
DOCKER_IMAGE=""
DOCKER_CONTAINER_NAME="keepassxc-build-container"
CMAKE_OPTIONS=""
CPACK_GENERATORS="NSIS;ZIP"
CPACK_GENERATORS="WIX;ZIP"
COMPILER="g++"
MAKE_OPTIONS="-j8"
BUILD_PLUGINS="all"
Expand Down
18 changes: 3 additions & 15 deletions src/CMakeLists.txt
Original file line number Diff line number Diff line change
Expand Up @@ -17,15 +17,7 @@
include_directories(${CMAKE_CURRENT_SOURCE_DIR} ${CMAKE_CURRENT_BINARY_DIR})

configure_file(config-keepassx.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config-keepassx.h)

include(GetGitRevisionDescription)
get_git_head_revision(GIT_REFSPEC GIT_HEAD)
git_describe(GIT_DESCRIBE --long)

if(NOT GIT_HEAD OR NOT GIT_DESCRIBE)
set(GIT_HEAD "")
set(GIT_DESCRIBE "")
endif()
configure_file(git-info.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/git-info.h)

find_library(ZXCVBN_LIBRARIES zxcvbn)
if(NOT ZXCVBN_LIBRARIES)
Expand All @@ -34,8 +26,6 @@ if(NOT ZXCVBN_LIBRARIES)
set(ZXCVBN_LIBRARIES zxcvbn)
endif(NOT ZXCVBN_LIBRARIES)

configure_file(version.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/version.h @ONLY)

set(keepassx_SOURCES
core/AutoTypeAssociations.cpp
core/AutoTypeMatch.cpp
Expand Down Expand Up @@ -380,7 +370,7 @@ if(MINGW)

string(REGEX REPLACE "-snapshot$" "" KEEPASSXC_VERSION_CLEAN ${KEEPASSXC_VERSION})

set(CPACK_GENERATOR "ZIP;NSIS")
set(CPACK_GENERATOR "ZIP;WIX")
set(CPACK_STRIP_FILES OFF)
set(CPACK_PACKAGE_FILE_NAME "${PROGNAME}-${KEEPASSXC_VERSION}-${OUTPUT_FILE_POSTFIX}")
set(CPACK_PACKAGE_INSTALL_DIRECTORY ${PROGNAME})
Expand Down Expand Up @@ -414,9 +404,7 @@ if(MINGW)
set(CPACK_WIX_EXTENSIONS "WixUtilExtension.dll")
include(CPack)

install(CODE "
set(gp_tool \"objdump\")
" COMPONENT Runtime)
install(CODE "set(gp_tool \"objdump\")" COMPONENT Runtime)

include(DeployQt4)
install_qt4_executable(${PROGNAME}.exe)
Expand Down
7 changes: 4 additions & 3 deletions src/browser/BrowserAction.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,10 @@
#include "BrowserSettings.h"
#include "NativeMessagingBase.h"
#include "config-keepassx.h"
#include "sodium.h"
#include "sodium/crypto_box.h"
#include "sodium/randombytes.h"

#include <sodium.h>
#include <sodium/crypto_box.h>
#include <sodium/randombytes.h>
#include <QJsonDocument>
#include <QJsonParseError>

Expand Down
8 changes: 8 additions & 0 deletions src/git-info.h.cmake
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
/* git-info.h. Generated by cmake from git-info.h.cmake */

#ifndef KEEPASSXC_GIT_INFO_H
#define KEEPASSXC_GIT_INFO_H

#define GIT_HEAD "@GIT_HEAD@"

#endif // KEEPASSXC_GIT_INFO_H
4 changes: 1 addition & 3 deletions src/gui/AboutDialog.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -20,9 +20,9 @@
#include "ui_AboutDialog.h"

#include "config-keepassx.h"
#include "git-info.h"
#include "core/FilePath.h"
#include "crypto/Crypto.h"
#include "version.h"

#include <QClipboard>
#include <QSysInfo>
Expand All @@ -47,8 +47,6 @@ AboutDialog::AboutDialog(QWidget* parent)
QString commitHash;
if (!QString(GIT_HEAD).isEmpty()) {
commitHash = GIT_HEAD;
} else if (!QString(DIST_HASH).contains("Format")) {
commitHash = DIST_HASH;
}

QString debugInfo = "KeePassXC - ";
Expand Down
1 change: 0 additions & 1 deletion src/gui/CloneDialog.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -24,7 +24,6 @@
#include "core/FilePath.h"
#include "crypto/Crypto.h"
#include "gui/DatabaseWidget.h"
#include "version.h"

CloneDialog::CloneDialog(DatabaseWidget* parent, Database* db, Entry* entry)
: QDialog(parent)
Expand Down
5 changes: 0 additions & 5 deletions src/version.h.cmake

This file was deleted.

0 comments on commit 21d1e98

Please sign in to comment.