Skip to content

Commit

Permalink
Merge pull request #2659 from keepassxreboot/cmake_cleanup
Browse files Browse the repository at this point in the history
Cleanup CMakeFiles and revert Dockerfile changes
  • Loading branch information
droidmonkey authored Jan 31, 2019
2 parents 7f3ce65 + b56ef2b commit 8bfc539
Show file tree
Hide file tree
Showing 13 changed files with 69 additions and 222 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
47 changes: 28 additions & 19 deletions Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -24,45 +24,44 @@ ENV TERM=xterm-256color

RUN set -x \
&& apt-get update -y \
&& apt-get -y install software-properties-common \
&& rm -rf /var/lib/apt/lists/*
&& apt-get -y install software-properties-common

RUN set -x \
&& add-apt-repository ppa:beineri/opt-${QT5_PPA_VERSION}-trusty \
&& add-apt-repository ppa:phoerious/keepassxc

# build and runtime dependencies
RUN set -x \
&& apt-get update -y \
&& apt-get upgrade -y \
&& apt-get upgrade -y

# build and runtime dependencies
RUN set -x \
&& apt-get install -y \
cmake3 \
curl \
g++ \
git \
libargon2-0-dev \
libcurl-no-gcrypt-dev \
libfuse2 \
libgcrypt20-18-dev \
libqrencode-dev \
libargon2-0-dev \
libsodium-dev \
libxi-dev \
libxtst-dev \
libyubikey-dev \
libykpers-1-dev \
mesa-common-dev \
xclip \
xvfb \
zlib1g-dev \
# ubuntu:14.04 has no quazip, put here as placeholder
# libquazip5-dev
libcurl-no-gcrypt-dev \
${QT5_VERSION}base \
${QT5_VERSION}tools \
${QT5_VERSION}x11extras \
${QT5_VERSION}translations \
${QT5_VERSION}imageformats \
${QT5_VERSION}svg \
&& rm -rf /var/lib/apt/lists/*
zlib1g-dev \
libxi-dev \
libxtst-dev \
# ubuntu:14.04 has no quazip (it's optional)
# libquazip5-dev \
mesa-common-dev \
libyubikey-dev \
libykpers-1-dev \
libqrencode-dev \
xclip \
xvfb

ENV PATH="/opt/${QT5_VERSION}/bin:${PATH}"
ENV CMAKE_PREFIX_PATH="/opt/${QT5_VERSION}/lib/cmake"
Expand All @@ -75,6 +74,12 @@ RUN set -x \
&& echo "/opt/${QT5_VERSION}/lib" > /etc/ld.so.conf.d/${QT5_VERSION}.conf \
&& echo "/opt/keepassxc-libs/lib/x86_64-linux-gnu" > /etc/ld.so.conf.d/keepassxc.conf

# AppImage dependencies
RUN set -x \
&& apt-get install -y \
curl \
libfuse2

RUN set -x \
&& curl -L "https://github.com/linuxdeploy/linuxdeploy/releases/download/continuous/linuxdeploy-x86_64.AppImage" > /usr/bin/linuxdeploy \
&& curl -L "https://github.com/linuxdeploy/linuxdeploy-plugin-qt/releases/download/continuous/linuxdeploy-plugin-qt-x86_64.AppImage" > /usr/bin/linuxdeploy-plugin-qt \
Expand All @@ -83,6 +88,10 @@ RUN set -x \
&& chmod +x /usr/bin/linuxdeploy-plugin-qt \
&& chmod +x /usr/bin/appimagetool

RUN set -x \
&& apt-get autoremove --purge \
&& rm -rf /var/lib/apt/lists/*

VOLUME /keepassxc/src
VOLUME /keepassxc/out
WORKDIR /keepassxc
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.

4 changes: 2 additions & 2 deletions 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 Expand Up @@ -346,7 +346,7 @@ checkSigntoolCommandExists() {
}

checkCodesignCommandExists() {
if !cmdExists codesign; then
if ! cmdExists codesign; then
exitError "codesign command not found on the PATH! Please check that you have correctly installed Xcode."
fi
}
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
Loading

0 comments on commit 8bfc539

Please sign in to comment.