mirror of
https://github.com/chylex/Nextcloud-Desktop.git
synced 2026-04-05 05:34:18 +02:00
Compare commits
29 Commits
e2e-tech-p
...
v2.3.3
| Author | SHA1 | Date | |
|---|---|---|---|
|
|
57bc7918d7 | ||
|
|
8d72aedb48 | ||
|
|
d1abebf5b3 | ||
|
|
f92cb4dcb7 | ||
|
|
0437e716f0 | ||
|
|
e86416fff7 | ||
|
|
3cd8a2be1c | ||
|
|
3b28e863c4 | ||
|
|
38478ead98 | ||
|
|
e4b40b0f49 | ||
|
|
f174576674 | ||
|
|
af052ea839 | ||
|
|
54e91a4ad5 | ||
|
|
3198ecf19b | ||
|
|
513848e93b | ||
|
|
3d0abdf5d0 | ||
|
|
a6dd3d0baf | ||
|
|
e9bc49b905 | ||
|
|
80bc9d873e | ||
|
|
27ff952a88 | ||
|
|
c4e1ed5bcd | ||
|
|
628c24209e | ||
|
|
2601ecf936 | ||
|
|
c8c2b3cf66 | ||
|
|
5ad4e093bd | ||
|
|
53f35239c8 | ||
|
|
c38eaf5c33 | ||
|
|
910402fa91 | ||
|
|
276e3d6d21 |
@@ -1,63 +0,0 @@
|
|||||||
# Copyright (C) 2016 Olivier Goffart <ogoffart@woboq.com>
|
|
||||||
#
|
|
||||||
# You may use this file under the terms of the 3-clause BSD license.
|
|
||||||
# See the file LICENSE from this package for details.
|
|
||||||
|
|
||||||
# This is the clang-format configuration style to be used by Qt,
|
|
||||||
# based on the rules from https://wiki.qt.io/Qt_Coding_Style and
|
|
||||||
# https://wiki.qt.io/Coding_Conventions
|
|
||||||
|
|
||||||
---
|
|
||||||
# Webkit style was loosely based on the Qt style
|
|
||||||
BasedOnStyle: WebKit
|
|
||||||
|
|
||||||
Standard: Cpp11
|
|
||||||
ColumnLimit: 0
|
|
||||||
|
|
||||||
# Disable reflow of qdoc comments: indentation rules are different.
|
|
||||||
# Translation comments are also excluded
|
|
||||||
CommentPragmas: "^!|^:"
|
|
||||||
|
|
||||||
# We want a space between the type and the star for pointer types
|
|
||||||
PointerBindsToType: false
|
|
||||||
|
|
||||||
# We want to break before the operators, but not before a '='
|
|
||||||
BreakBeforeBinaryOperators: NonAssignment
|
|
||||||
|
|
||||||
# Braces are usually attached, but not after functions or classes declaration
|
|
||||||
BreakBeforeBraces: Custom
|
|
||||||
BraceWrapping:
|
|
||||||
AfterClass: true
|
|
||||||
AfterControlStatement: false
|
|
||||||
AfterEnum: false
|
|
||||||
AfterFunction: true
|
|
||||||
AfterNamespace: false
|
|
||||||
AfterObjCDeclaration: false
|
|
||||||
AfterStruct: true
|
|
||||||
AfterUnion: false
|
|
||||||
BeforeCatch: false
|
|
||||||
BeforeElse: false
|
|
||||||
IndentBraces: false
|
|
||||||
|
|
||||||
# The coding style does not specify the following, but this is what gives
|
|
||||||
# results closest to the existing code.
|
|
||||||
AlignAfterOpenBracket: DontAlign
|
|
||||||
AlwaysBreakTemplateDeclarations: true
|
|
||||||
|
|
||||||
# Ideally we should also allow less short function in a single line, but
|
|
||||||
# clang-format does not handle that
|
|
||||||
AllowShortFunctionsOnASingleLine: Inline
|
|
||||||
|
|
||||||
# The coding style specifies some include order categories, but also tells to
|
|
||||||
# separate categories with an empty line. It does not specify the order within
|
|
||||||
# the categories. Since the SortInclude feature of clang-format does not
|
|
||||||
# re-order includes separated by empty lines, the feature is not used.
|
|
||||||
SortIncludes: false
|
|
||||||
|
|
||||||
# macros for which the opening brace stays attached
|
|
||||||
ForEachMacros: [ foreach, Q_FOREACH, BOOST_FOREACH, forever, Q_FOREVER, QBENCHMARK, QBENCHMARK_ONCE ]
|
|
||||||
|
|
||||||
# Allow two empty lines for structuring
|
|
||||||
MaxEmptyLinesToKeep: 2
|
|
||||||
KeepEmptyLinesAtTheStartOfBlocks: false
|
|
||||||
|
|
||||||
97
.drone.yml
97
.drone.yml
@@ -1,97 +0,0 @@
|
|||||||
clone:
|
|
||||||
git:
|
|
||||||
image: plugins/git
|
|
||||||
depth: 1
|
|
||||||
|
|
||||||
pipeline:
|
|
||||||
qt-5.7:
|
|
||||||
image: nextcloudci/client-5.7:client-5.7-2
|
|
||||||
commands:
|
|
||||||
# Install QtKeyChain
|
|
||||||
- /bin/bash -c "
|
|
||||||
source /opt/qt57/bin/qt57-env.sh &&
|
|
||||||
cd /tmp &&
|
|
||||||
git clone https://github.com/frankosterfeld/qtkeychain.git &&
|
|
||||||
cd qtkeychain &&
|
|
||||||
git checkout v0.8.0 &&
|
|
||||||
mkdir build &&
|
|
||||||
cd build &&
|
|
||||||
cmake ../ &&
|
|
||||||
make &&
|
|
||||||
make install"
|
|
||||||
# Build client
|
|
||||||
- /bin/bash -c "
|
|
||||||
source /opt/qt57/bin/qt57-env.sh &&
|
|
||||||
mkdir build &&
|
|
||||||
cd build &&
|
|
||||||
cmake -D NO_SHIBBOLETH=1 ../ &&
|
|
||||||
make"
|
|
||||||
when:
|
|
||||||
matrix:
|
|
||||||
TESTS: qt-5.7
|
|
||||||
qt-5.8:
|
|
||||||
image: nextcloudci/client-5.8:client-5.8-2
|
|
||||||
commands:
|
|
||||||
# Install QtKeyChain
|
|
||||||
- /bin/bash -c "
|
|
||||||
source /opt/qt58/bin/qt58-env.sh &&
|
|
||||||
cd /tmp &&
|
|
||||||
git clone https://github.com/frankosterfeld/qtkeychain.git &&
|
|
||||||
cd qtkeychain &&
|
|
||||||
git checkout v0.8.0 &&
|
|
||||||
mkdir build &&
|
|
||||||
cd build &&
|
|
||||||
cmake ../ &&
|
|
||||||
make &&
|
|
||||||
make install"
|
|
||||||
# Build client
|
|
||||||
- /bin/bash -c "
|
|
||||||
source /opt/qt58/bin/qt58-env.sh &&
|
|
||||||
mkdir build &&
|
|
||||||
cd build &&
|
|
||||||
cmake -D NO_SHIBBOLETH=1 ../ &&
|
|
||||||
make"
|
|
||||||
when:
|
|
||||||
matrix:
|
|
||||||
TESTS: qt-5.8
|
|
||||||
qt-5.9:
|
|
||||||
image: nextcloudci/client-5.9:client-5.9-3
|
|
||||||
commands:
|
|
||||||
# Install QtKeyChain
|
|
||||||
- /bin/bash -c "
|
|
||||||
source /opt/qt59/bin/qt59-env.sh &&
|
|
||||||
cd /tmp &&
|
|
||||||
git clone https://github.com/frankosterfeld/qtkeychain.git &&
|
|
||||||
cd qtkeychain &&
|
|
||||||
git checkout v0.8.0 &&
|
|
||||||
mkdir build &&
|
|
||||||
cd build &&
|
|
||||||
cmake ../ &&
|
|
||||||
make &&
|
|
||||||
make install"
|
|
||||||
# Build client
|
|
||||||
- /bin/bash -c "
|
|
||||||
source /opt/qt59/bin/qt59-env.sh &&
|
|
||||||
mkdir build &&
|
|
||||||
cd build &&
|
|
||||||
cmake -D NO_SHIBBOLETH=1 ../ &&
|
|
||||||
make"
|
|
||||||
when:
|
|
||||||
matrix:
|
|
||||||
TESTS: qt-5.9
|
|
||||||
AppImage-5.9:
|
|
||||||
image: nextcloudci/client-appimage-ci:client-appimage-ci-8
|
|
||||||
commands:
|
|
||||||
- /bin/bash -c "./admin/linux/build-appimage.sh"
|
|
||||||
when:
|
|
||||||
matrix:
|
|
||||||
BUILD: AppImage
|
|
||||||
|
|
||||||
matrix:
|
|
||||||
include:
|
|
||||||
- TESTS: qt-5.7
|
|
||||||
- TESTS: qt-5.8
|
|
||||||
- TESTS: qt-5.9
|
|
||||||
- BUILD: AppImage
|
|
||||||
|
|
||||||
branches: [ master, 2.* ]
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
c8d0f788e00bdae125a26d9159ce9efdd6325cd2 # Initial application of clang-format
|
|
||||||
6
.gitmodules
vendored
6
.gitmodules
vendored
@@ -1,3 +1,6 @@
|
|||||||
|
[submodule "doc/ocdoc"]
|
||||||
|
path = doc/ocdoc
|
||||||
|
url = https://github.com/owncloud/documentation
|
||||||
[submodule "src/3rdparty/qtmacgoodies"]
|
[submodule "src/3rdparty/qtmacgoodies"]
|
||||||
path = src/3rdparty/qtmacgoodies
|
path = src/3rdparty/qtmacgoodies
|
||||||
url = https://github.com/guruz/qtmacgoodies.git
|
url = https://github.com/guruz/qtmacgoodies.git
|
||||||
@@ -7,3 +10,6 @@
|
|||||||
[submodule "src/3rdparty/libcrashreporter-qt"]
|
[submodule "src/3rdparty/libcrashreporter-qt"]
|
||||||
path = src/3rdparty/libcrashreporter-qt
|
path = src/3rdparty/libcrashreporter-qt
|
||||||
url = git://github.com/dschmidt/libcrashreporter-qt.git
|
url = git://github.com/dschmidt/libcrashreporter-qt.git
|
||||||
|
[submodule "src/3rdparty/qtkeychain"]
|
||||||
|
path = src/3rdparty/qtkeychain
|
||||||
|
url = https://github.com/frankosterfeld/qtkeychain.git
|
||||||
|
|||||||
65
.travis.yml
65
.travis.yml
@@ -1,38 +1,37 @@
|
|||||||
os: linux
|
|
||||||
dist: trusty
|
|
||||||
sudo: required
|
sudo: required
|
||||||
language: generic
|
|
||||||
|
language: cpp
|
||||||
|
|
||||||
services:
|
services:
|
||||||
- docker
|
- docker
|
||||||
|
|
||||||
env:
|
|
||||||
matrix:
|
|
||||||
- BUILD_TYPE=debian
|
|
||||||
|
|
||||||
before_install:
|
|
||||||
- admin/linux/travis-build.sh before_install
|
|
||||||
|
|
||||||
install:
|
|
||||||
- admin/linux/travis-build.sh install
|
|
||||||
|
|
||||||
before_script:
|
|
||||||
- admin/linux/travis-build.sh before_script
|
|
||||||
|
|
||||||
script:
|
|
||||||
- admin/linux/travis-build.sh script
|
|
||||||
|
|
||||||
after_success:
|
|
||||||
- admin/linux/travis-build.sh after_success
|
|
||||||
|
|
||||||
deploy:
|
|
||||||
- provider: script
|
|
||||||
skip_cleanup: true
|
|
||||||
script: admin/linux/travis-build.sh ppa_deploy
|
|
||||||
on:
|
|
||||||
condition: ($BUILD_TYPE = debian)
|
|
||||||
|
|
||||||
branches:
|
branches:
|
||||||
except:
|
only:
|
||||||
- # Do not build tags that we create when we upload to GitHub Releases
|
- coverity_scan
|
||||||
- /^(?i:continuous)$/
|
|
||||||
|
before_install:
|
||||||
|
- sudo sh -c "echo 'deb http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/Ubuntu_14.04/ /' >> /etc/apt/sources.list.d/owncloud-client.list"
|
||||||
|
- sudo sh -c "echo 'deb-src http://download.opensuse.org/repositories/isv:/ownCloud:/desktop/Ubuntu_14.04/ /' >> /etc/apt/sources.list.d/owncloud-client.list"
|
||||||
|
- wget http://download.opensuse.org/repositories/isv:ownCloud:desktop/Ubuntu_14.04/Release.key
|
||||||
|
- sudo apt-key add - < Release.key
|
||||||
|
- sudo apt-get update
|
||||||
|
- sudo apt-get -y build-dep owncloud-client
|
||||||
|
- checkout=$(git show-ref --head --hash head)
|
||||||
|
- cd ../
|
||||||
|
- wget https://scan.coverity.com/download/linux-64 --post-data "token=$token&project=owncloud%2Fmirall" -O coverity_tool.tgz
|
||||||
|
- mkdir coverity
|
||||||
|
- tar -xvf coverity_tool.tgz -C coverity --strip-components=1
|
||||||
|
- export PATH=$PATH:$PWD/coverity/bin/
|
||||||
|
- cd $TRAVIS_BUILD_DIR
|
||||||
|
|
||||||
|
install:
|
||||||
|
- cd ../
|
||||||
|
- mkdir client-build
|
||||||
|
- cd client-build
|
||||||
|
- cmake -DCMAKE_BUILD_TYPE="Debug" $TRAVIS_BUILD_DIR
|
||||||
|
- cov-build --dir cov-int make
|
||||||
|
- tar czvf client.tgz cov-int
|
||||||
|
- curl --form token=$token --form email=lukas@statuscode.ch --form file=@$PWD/client.tgz --form version="$checkout" --form description="$checkout" https://scan.coverity.com/builds?project=owncloud%2Fmirall
|
||||||
|
|
||||||
|
# Hack to stop processing
|
||||||
|
script: true
|
||||||
|
|||||||
143
CMakeLists.txt
143
CMakeLists.txt
@@ -1,5 +1,9 @@
|
|||||||
cmake_minimum_required(VERSION 3.2)
|
|
||||||
set(CMAKE_CXX_STANDARD 14)
|
cmake_minimum_required(VERSION 2.6)
|
||||||
|
cmake_policy(VERSION 2.8.0)
|
||||||
|
if(POLICY CMP0020)
|
||||||
|
cmake_policy(SET CMP0020 NEW)
|
||||||
|
endif()
|
||||||
|
|
||||||
project(client)
|
project(client)
|
||||||
|
|
||||||
@@ -9,7 +13,7 @@ set(OEM_THEME_DIR "" CACHE STRING "Define directory containing a custom theme")
|
|||||||
if ( EXISTS ${OEM_THEME_DIR}/OEM.cmake )
|
if ( EXISTS ${OEM_THEME_DIR}/OEM.cmake )
|
||||||
include ( ${OEM_THEME_DIR}/OEM.cmake )
|
include ( ${OEM_THEME_DIR}/OEM.cmake )
|
||||||
else ()
|
else ()
|
||||||
include ( ${CMAKE_SOURCE_DIR}/NEXTCLOUD.cmake )
|
include ( ${CMAKE_SOURCE_DIR}/OWNCLOUD.cmake )
|
||||||
endif()
|
endif()
|
||||||
# need this logic to not mess with re/uninstallations via macosx.pkgproj
|
# need this logic to not mess with re/uninstallations via macosx.pkgproj
|
||||||
if(${APPLICATION_REV_DOMAIN} STREQUAL "com.owncloud.desktopclient")
|
if(${APPLICATION_REV_DOMAIN} STREQUAL "com.owncloud.desktopclient")
|
||||||
@@ -18,19 +22,16 @@ else()
|
|||||||
set(APPLICATION_REV_DOMAIN_INSTALLER ${APPLICATION_REV_DOMAIN})
|
set(APPLICATION_REV_DOMAIN_INSTALLER ${APPLICATION_REV_DOMAIN})
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
if (NOT DEFINED APPLICATION_SHORTNAME)
|
||||||
|
set ( APPLICATION_SHORTNAME ${APPLICATION_NAME} )
|
||||||
|
endif()
|
||||||
|
|
||||||
# For usage in XML files we preprocess
|
# For usage in XML files we preprocess
|
||||||
string(REPLACE "&" "&" APPLICATION_NAME_XML_ESCAPED "${APPLICATION_NAME}")
|
string(REPLACE "&" "&" APPLICATION_NAME_XML_ESCAPED "${APPLICATION_NAME}")
|
||||||
string(REPLACE "<" "<" APPLICATION_NAME_XML_ESCAPED "${APPLICATION_NAME_XML_ESCAPED}")
|
string(REPLACE "<" "<" APPLICATION_NAME_XML_ESCAPED "${APPLICATION_NAME_XML_ESCAPED}")
|
||||||
string(REPLACE ">" ">" APPLICATION_NAME_XML_ESCAPED "${APPLICATION_NAME_XML_ESCAPED}")
|
string(REPLACE ">" ">" APPLICATION_NAME_XML_ESCAPED "${APPLICATION_NAME_XML_ESCAPED}")
|
||||||
|
|
||||||
if (NOT DEFINED LINUX_PACKAGE_SHORTNAME)
|
set(PACKAGE "${APPLICATION_SHORTNAME}-client")
|
||||||
set(LINUX_PACKAGE_SHORTNAME "${APPLICATION_SHORTNAME}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if (NOT DEFINED PACKAGE)
|
|
||||||
set(PACKAGE "${LINUX_PACKAGE_SHORTNAME}-client")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set( CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules )
|
set( CMAKE_MODULE_PATH ${CMAKE_SOURCE_DIR}/cmake/modules )
|
||||||
|
|
||||||
if(NOT CRASHREPORTER_EXECUTABLE)
|
if(NOT CRASHREPORTER_EXECUTABLE)
|
||||||
@@ -40,13 +41,7 @@ endif()
|
|||||||
include(Warnings)
|
include(Warnings)
|
||||||
|
|
||||||
include(${CMAKE_SOURCE_DIR}/VERSION.cmake)
|
include(${CMAKE_SOURCE_DIR}/VERSION.cmake)
|
||||||
# For config.h
|
|
||||||
include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR})
|
include_directories(BEFORE ${CMAKE_CURRENT_BINARY_DIR})
|
||||||
# Allows includes based on src/ like #include "common/utility.h" or #include "csync/csync.h"
|
|
||||||
include_directories(
|
|
||||||
${CMAKE_CURRENT_SOURCE_DIR}/src
|
|
||||||
${CMAKE_CURRENT_BINARY_DIR}/src
|
|
||||||
)
|
|
||||||
|
|
||||||
# disable the crashreporter if libcrashreporter-qt is not available or we're building for ARM
|
# disable the crashreporter if libcrashreporter-qt is not available or we're building for ARM
|
||||||
if( CMAKE_SYSTEM_PROCESSOR MATCHES "arm" OR NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/3rdparty/libcrashreporter-qt/CMakeLists.txt")
|
if( CMAKE_SYSTEM_PROCESSOR MATCHES "arm" OR NOT EXISTS "${CMAKE_CURRENT_SOURCE_DIR}/src/3rdparty/libcrashreporter-qt/CMakeLists.txt")
|
||||||
@@ -57,6 +52,14 @@ if(NOT WITH_CRASHREPORTER)
|
|||||||
message(STATUS "Build of crashreporter disabled.")
|
message(STATUS "Build of crashreporter disabled.")
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
|
#####
|
||||||
|
## handle DBUS for Fdo notifications
|
||||||
|
if( UNIX AND NOT APPLE )
|
||||||
|
add_definitions( -DUSE_FDO_NOTIFICATIONS)
|
||||||
|
set(WITH_DBUS ON)
|
||||||
|
endif()
|
||||||
|
####
|
||||||
|
|
||||||
include(GNUInstallDirs)
|
include(GNUInstallDirs)
|
||||||
include(DefineInstallationPaths)
|
include(DefineInstallationPaths)
|
||||||
include(GenerateExportHeader)
|
include(GenerateExportHeader)
|
||||||
@@ -65,12 +68,6 @@ include(GetGitRevisionDescription)
|
|||||||
|
|
||||||
get_git_head_revision(GIT_REFSPEC GIT_SHA1)
|
get_git_head_revision(GIT_REFSPEC GIT_SHA1)
|
||||||
|
|
||||||
add_definitions(
|
|
||||||
-DQT_USE_QSTRINGBUILDER
|
|
||||||
-DQT_MESSAGELOGCONTEXT #enable function name and line number in debug output
|
|
||||||
-DQT_DEPRECATED_WARNINGS
|
|
||||||
)
|
|
||||||
|
|
||||||
# if we cannot get it from git, directly try .tag (packages)
|
# if we cannot get it from git, directly try .tag (packages)
|
||||||
# this will work if the tar balls have been properly created
|
# this will work if the tar balls have been properly created
|
||||||
# via git-archive.
|
# via git-archive.
|
||||||
@@ -123,22 +120,7 @@ if(NO_MSG_HANDLER)
|
|||||||
add_definitions(-DNO_MSG_HANDLER=1)
|
add_definitions(-DNO_MSG_HANDLER=1)
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
# this option builds the shell integration
|
# this option creates only libocsync and libowncloudsync
|
||||||
option(BUILD_SHELL_INTEGRATION "BUILD_SHELL_INTEGRATION" ON)
|
|
||||||
|
|
||||||
# this option builds/installs the generic shell integration icons
|
|
||||||
option(BUILD_SHELL_INTEGRATION_ICONS "BUILD_SHELL_INTEGRATION_ICONS" ON)
|
|
||||||
|
|
||||||
# this options builds the dolphin integration plugin
|
|
||||||
option(BUILD_SHELL_INTEGRATION_DOLPHIN "BUILD_SHELL_INTEGRATION_DOLPHIN" ON)
|
|
||||||
|
|
||||||
# this options builds the nautilus (like) integration plugins
|
|
||||||
option(BUILD_SHELL_INTEGRATION_NAUTILUS "BUILD_SHELL_INTEGRATION_NAUTILUS" ON)
|
|
||||||
|
|
||||||
# this option builds the client
|
|
||||||
option(BUILD_CLIENT "BUILD_CLIENT" ON)
|
|
||||||
|
|
||||||
# this option creates only libocsync and libowncloudsync (NOTE: BUILD_CLIENT needs to be on)
|
|
||||||
option(BUILD_LIBRARIES_ONLY "BUILD_LIBRARIES_ONLY" OFF)
|
option(BUILD_LIBRARIES_ONLY "BUILD_LIBRARIES_ONLY" OFF)
|
||||||
|
|
||||||
# When this option is enabled, 5xx errors are not added to the blacklist
|
# When this option is enabled, 5xx errors are not added to the blacklist
|
||||||
@@ -171,68 +153,56 @@ if(APPLE)
|
|||||||
set( SOCKETAPI_TEAM_IDENTIFIER_PREFIX "" CACHE STRING "SocketApi prefix (including a following dot) that must match the codesign key's TeamIdentifier/Organizational Unit" )
|
set( SOCKETAPI_TEAM_IDENTIFIER_PREFIX "" CACHE STRING "SocketApi prefix (including a following dot) that must match the codesign key's TeamIdentifier/Organizational Unit" )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if(BUILD_CLIENT)
|
find_package(OpenSSL 1.0.0 REQUIRED)
|
||||||
if(APPLE)
|
|
||||||
find_package(Sparkle)
|
|
||||||
endif(APPLE)
|
|
||||||
|
|
||||||
if(UNIX)
|
if(APPLE)
|
||||||
find_package(INotify REQUIRED)
|
find_package(Sparkle)
|
||||||
else()
|
endif(APPLE)
|
||||||
find_package(INotify)
|
|
||||||
|
if(UNIX)
|
||||||
|
find_package(INotify REQUIRED)
|
||||||
|
else()
|
||||||
|
find_package(INotify)
|
||||||
|
endif()
|
||||||
|
find_package(Sphinx)
|
||||||
|
find_package(PdfLatex)
|
||||||
|
|
||||||
|
find_package(SQLite3 3.8.0 REQUIRED)
|
||||||
|
# On some OS, we want to use our own, not the system sqlite
|
||||||
|
if (USE_OUR_OWN_SQLITE3)
|
||||||
|
include_directories(BEFORE ${SQLITE3_INCLUDE_DIR})
|
||||||
|
if (WIN32)
|
||||||
|
add_definitions(-DSQLITE_API=__declspec\(dllimport\))
|
||||||
endif()
|
endif()
|
||||||
find_package(Sphinx)
|
|
||||||
find_package(PdfLatex)
|
|
||||||
find_package(OpenSSL REQUIRED VERSION 1.0)
|
|
||||||
|
|
||||||
find_package(ZLIB REQUIRED)
|
|
||||||
find_package(GLib2)
|
|
||||||
find_package(Gio)
|
|
||||||
find_package(Libcloudproviders)
|
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
if (NOT DEFINED APPLICATION_ICON_NAME)
|
find_package(ZLIB)
|
||||||
set(APPLICATION_ICON_NAME ${APPLICATION_SHORTNAME})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(NextcloudCPack.cmake)
|
configure_file(config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h)
|
||||||
|
|
||||||
|
configure_file(test/test_journal.db "${CMAKE_BINARY_DIR}/test/test_journal.db" COPYONLY)
|
||||||
|
|
||||||
|
include(OwnCloudCPack.cmake)
|
||||||
|
|
||||||
add_definitions(-DUNICODE)
|
add_definitions(-DUNICODE)
|
||||||
add_definitions(-D_UNICODE)
|
add_definitions(-D_UNICODE)
|
||||||
if( WIN32 )
|
if( WIN32 )
|
||||||
add_definitions( -D__USE_MINGW_ANSI_STDIO=1 )
|
add_definitions( -D__USE_MINGW_ANSI_STDIO=1 )
|
||||||
add_definitions( -DNOMINMAX )
|
add_definitions( -DNOMINMAX )
|
||||||
# Get APIs from from Vista onwards.
|
|
||||||
add_definitions( -D_WIN32_WINNT=0x0600)
|
|
||||||
add_definitions( -DWINVER=0x0600)
|
|
||||||
endif( WIN32 )
|
endif( WIN32 )
|
||||||
|
|
||||||
if (APPLE)
|
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -stdlib=libc++")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
# Handle Translations, pick all client_* files from trans directory.
|
# Handle Translations, pick all client_* files from trans directory.
|
||||||
file( GLOB TRANS_FILES ${CMAKE_SOURCE_DIR}/translations/client_*.ts)
|
file( GLOB TRANS_FILES ${CMAKE_SOURCE_DIR}/translations/client_*.ts)
|
||||||
set(TRANSLATIONS ${TRANS_FILES})
|
set(TRANSLATIONS ${TRANS_FILES})
|
||||||
|
|
||||||
# Make sure we set this before recursing into child folders.
|
add_subdirectory(csync)
|
||||||
set(WITH_TESTING ${UNIT_TESTING})
|
add_subdirectory(src)
|
||||||
|
if(NOT BUILD_LIBRARIES_ONLY)
|
||||||
if(BUILD_CLIENT)
|
add_subdirectory(shell_integration)
|
||||||
add_subdirectory(src)
|
add_subdirectory(doc)
|
||||||
if(NOT BUILD_LIBRARIES_ONLY)
|
add_subdirectory(doc/dev)
|
||||||
add_subdirectory(man)
|
add_subdirectory(admin)
|
||||||
add_subdirectory(doc)
|
endif(NOT BUILD_LIBRARIES_ONLY)
|
||||||
add_subdirectory(doc/dev)
|
|
||||||
if(IS_DIRECTORY ${CMAKE_SOURCE_DIR}/admin)
|
|
||||||
add_subdirectory(admin)
|
|
||||||
endif(IS_DIRECTORY ${CMAKE_SOURCE_DIR}/admin)
|
|
||||||
endif(NOT BUILD_LIBRARIES_ONLY)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(BUILD_SHELL_INTEGRATION)
|
|
||||||
add_subdirectory(shell_integration)
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(UNIT_TESTING)
|
if(UNIT_TESTING)
|
||||||
include(CTest)
|
include(CTest)
|
||||||
@@ -240,13 +210,10 @@ if(UNIT_TESTING)
|
|||||||
add_subdirectory(test)
|
add_subdirectory(test)
|
||||||
endif(UNIT_TESTING)
|
endif(UNIT_TESTING)
|
||||||
|
|
||||||
configure_file(config.h.in ${CMAKE_CURRENT_BINARY_DIR}/config.h)
|
|
||||||
configure_file(version.h.in ${CMAKE_CURRENT_BINARY_DIR}/version.h)
|
|
||||||
|
|
||||||
if(BUILD_OWNCLOUD_OSX_BUNDLE)
|
if(BUILD_OWNCLOUD_OSX_BUNDLE)
|
||||||
install(FILES sync-exclude.lst DESTINATION ${OWNCLOUD_OSX_BUNDLE}/Contents/Resources/)
|
install(FILES sync-exclude.lst DESTINATION ${OWNCLOUD_OSX_BUNDLE}/Contents/Resources/)
|
||||||
configure_file(sync-exclude.lst bin/${OWNCLOUD_OSX_BUNDLE}/Contents/Resources/sync-exclude.lst COPYONLY)
|
configure_file(sync-exclude.lst bin/${OWNCLOUD_OSX_BUNDLE}/Contents/Resources/sync-exclude.lst COPYONLY)
|
||||||
elseif(BUILD_CLIENT)
|
else()
|
||||||
install( FILES sync-exclude.lst DESTINATION ${SYSCONFDIR}/${APPLICATION_SHORTNAME} )
|
install( FILES sync-exclude.lst DESTINATION ${SYSCONFDIR}/${APPLICATION_SHORTNAME} )
|
||||||
configure_file(sync-exclude.lst bin/sync-exclude.lst COPYONLY)
|
configure_file(sync-exclude.lst bin/sync-exclude.lst COPYONLY)
|
||||||
endif()
|
endif()
|
||||||
|
|||||||
@@ -1,18 +1,20 @@
|
|||||||
## Submitting Desktop Client issues
|
## Submitting Desktop Client issues
|
||||||
|
|
||||||
If you have questions about how to use the Nextcloud Desktop Client, please
|
If you have questions about how to use the ownCloud Desktop Client, please
|
||||||
visit our [support site][support] or our [forum][forum].
|
direct these to the [mailing list][mailinglist] or our [forum][forum].
|
||||||
We are also available on [IRC][irc].
|
We are also available on [IRC][irc].
|
||||||
|
|
||||||
### Bug Reporting Guidelines
|
### Bug Reporting Guidelines
|
||||||
* __Important__: Report the issue using our [template][template], it includes all the
|
* __Important__: Report the issue using our [template][template], it includes all the
|
||||||
information we need to track down the issue.
|
information we need to track down the issue.
|
||||||
* __SECURITY__: Report any potential security bug by following our [security policy](https://nextcloud.com/security/) instead of filing an issue in our bug tracker
|
* __SECURITY__: Report any potential security bug to security@owncloud.com following our [security policy](https://owncloud.org/security/) instead of filing an issue in our bug tracker
|
||||||
* This repository is *only* for issues within the Nextcloud desktop client.
|
* This repository is *only* for issues within the ownCloud desktop client.
|
||||||
Issues in other components should be reported in their own repositores:
|
Issues in other components should be reported in their own repositores:
|
||||||
- [Nextcloud server](https://github.com/nextcloud/server/issues)
|
- [ownCloud server](https://github.com/owncloud/core/issues)
|
||||||
- [Android client](https://github.com/nextcloud/android/issues)
|
- [ownCloud apps](https://github.com/owncloud/apps/issues) (e.g. Calendar,
|
||||||
- [iOS client](https://github.com/nextcloud/ios/issues)
|
Contacts...)
|
||||||
|
- [Android client](https://github.com/owncloud/android/issues)
|
||||||
|
- [iOS client](https://github.com/owncloud/ios-issues/issues)
|
||||||
* Search the existing issues first, it's likely that your issue was already
|
* Search the existing issues first, it's likely that your issue was already
|
||||||
reported.
|
reported.
|
||||||
|
|
||||||
@@ -21,20 +23,27 @@ If your issue appears to be a bug, and hasn't been reported, open a new issue.
|
|||||||
Help us to maximize the effort we can spend fixing issues and adding new
|
Help us to maximize the effort we can spend fixing issues and adding new
|
||||||
features, by not reporting duplicate issues.
|
features, by not reporting duplicate issues.
|
||||||
|
|
||||||
[template]: https://raw.githubusercontent.com/nextcloud/appstore/master/.github/issue_template.md
|
[template]: https://raw.github.com/owncloud/client/master/issue_template.md
|
||||||
[support]: https://nextcloud.com/support/
|
[mailinglist]: https://mail.kde.org/mailman/listinfo/owncloud
|
||||||
[forum]: https://help.nextcloud.com/categories
|
[forum]: http://forum.owncloud.org/
|
||||||
[irc]: https://webchat.freenode.net/?channels=nextcloud
|
[irc]: http://webchat.freenode.net/?channels=owncloud&uio=d4
|
||||||
|
|
||||||
## Contributing to Source Code
|
## Contributing to Source Code
|
||||||
|
|
||||||
Thanks for wanting to contribute source code to Nextcloud. That's great!
|
Thanks for wanting to contribute source code to ownCloud. That's great!
|
||||||
|
|
||||||
You do not need to sign a Contributor Agreement, but we ask that you follow our
|
Before we're able to merge your code to ownCloud Desktop Client, you need to sign
|
||||||
[Code of Conduct](https://nextcloud.com/code-of-conduct/).
|
our [Contributor Agreement][agreement].
|
||||||
|
|
||||||
Please read the [Contribution Guide](https://nextcloud.com/contribute/) to get
|
Please read the [Desktop Client Manual][desktopman] and the [Developer
|
||||||
started.
|
Manuals][devmanual] to get useful info like how to create your first
|
||||||
|
application or how to test the ownCloud code with phpunit.
|
||||||
|
|
||||||
|
[agreement]: http://owncloud.org/about/contributor-agreement/
|
||||||
|
[devmanual]: http://owncloud.org/dev
|
||||||
|
[desktopman]: http://doc.owncloud.org/desktop
|
||||||
|
|
||||||
## Translations
|
## Translations
|
||||||
Please submit translations via [Transifex](https://www.transifex.com/nextcloud/nextcloud/).
|
Please submit translations via [Transifex][transifex].
|
||||||
|
|
||||||
|
[transifex]: https://www.transifex.com/projects/p/owncloud/
|
||||||
|
|||||||
@@ -14,7 +14,7 @@ set( OEM_THEME_DIR @OEM_THEME_DIR@ )
|
|||||||
if ( DEFINED OEM_THEME_DIR AND EXISTS ${OEM_THEME_DIR}/OEM.cmake )
|
if ( DEFINED OEM_THEME_DIR AND EXISTS ${OEM_THEME_DIR}/OEM.cmake )
|
||||||
include ( ${OEM_THEME_DIR}/OEM.cmake )
|
include ( ${OEM_THEME_DIR}/OEM.cmake )
|
||||||
else ()
|
else ()
|
||||||
include ( "${CMAKE_SOURCE_DIR}/NEXTCLOUD.cmake" )
|
include ( "${CMAKE_SOURCE_DIR}/OWNCLOUD.cmake" )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
set( CRASHREPORTER_EXECUTABLE @CRASHREPORTER_EXECUTABLE@)
|
set( CRASHREPORTER_EXECUTABLE @CRASHREPORTER_EXECUTABLE@)
|
||||||
|
|||||||
111
ChangeLog
111
ChangeLog
@@ -1,124 +1,23 @@
|
|||||||
ChangeLog
|
ChangeLog
|
||||||
=========
|
=========
|
||||||
|
|
||||||
version 2.4.0 (2017-12-XX)
|
version 2.3.3 (2017-08-XX)
|
||||||
* If you're using 2.4.0 alpha1, please upgrade as previous alphas/rcs had an issue with hidden files and renames!
|
|
||||||
* OAuth2 authentication support by opening external browser (#5668)
|
|
||||||
* Shibboleth: Change to use OAuth2 if supported (#6198)
|
|
||||||
* Sharing: Add support for multiple public link shares (#5655)
|
|
||||||
* Sharing: Add option to copy/email private links (#5023, #5627)
|
|
||||||
* Sharing: Add option "show file listing" (#5837)
|
|
||||||
* Sharing: Show warning that links are public (#5747)
|
|
||||||
* Sharing: Sharing dialog redesign: multiple share links support (#5695)
|
|
||||||
* Sharing: Make "can edit" partially checked sometimes (#5642)
|
|
||||||
* Sharing: Trigger a sync for folder affected by a change of sharing (#6098)
|
|
||||||
* Wizard: Never propose an existing folder for syncing (#5597)
|
|
||||||
* Wizard: Don't show last page anymore, go to settings directly (#5726)
|
|
||||||
* Wizard: Handle url-shortener redirects (#5954)
|
|
||||||
* Wizard: Resolve url/ redirects only if url/status.php not found (#5954)
|
|
||||||
* Wizard: Add explanation text when server error is shown (#6157)
|
|
||||||
* Wizard: Update the window size on high dpi screen (#6156)
|
|
||||||
* Wizard: Don't report confusing error message (#6116)
|
|
||||||
* Gui: Display the user server avatar (#5482)
|
|
||||||
* Gui: Use display name of user, not internal name
|
|
||||||
* Server URL: Update configuration in case of permanent redirection (#5972)
|
|
||||||
* Gui: Allow to add multiple sync folder connection of the same folder (#6032)
|
|
||||||
* Tray Menu: More detailed status messages
|
|
||||||
* Tray Menu: Shibboleth: raise the browser when clicking on the tray (#6105)
|
|
||||||
* Activity: Link errors from the account tab, allow filtering by account/folder (#5861)
|
|
||||||
* Activity: Present conflicts more prominently (#5894)
|
|
||||||
* Activity: Allow sorting the columns in issues and protocol tabs (#6093, #6086)
|
|
||||||
* Selective Sync: Open sub folder context menu (#5596)
|
|
||||||
* Selective Sync: Skip excluded folders when reading db (#5772)
|
|
||||||
* Selective Sync: Remove local files of unselected folder despite other modified files (#5783)
|
|
||||||
* Excludes: Remove .htaccess form list of excluded files (#5701)
|
|
||||||
* Excludes: Hardcode desktop.ini
|
|
||||||
* Excludes: Allow escaping "#" (#6012)
|
|
||||||
* Excludes: Use faster matching via QRegularExpression (#6063)
|
|
||||||
* Discovery: Increase the MAX_DEPTH and show deep folders as ignored (#1067)
|
|
||||||
* Discovery: General speed improvements
|
|
||||||
* Downloads: Remove empty temporary if disk space full (#5746)
|
|
||||||
* Downloads: Read Content-MD5 header for object store setups
|
|
||||||
* Checksums: Add global disable environment variable (#5017)
|
|
||||||
* Quota: PropagateUpload: Model of remote quota, avoid some uploads (#5537)
|
|
||||||
* Create favorite also in folder wizard (#455)
|
|
||||||
* Windows: Use the application icon for the Windows 8 sidebar favorite (#2446, #5690)
|
|
||||||
* macOS: Finder sidebar icon (#296)
|
|
||||||
* Overlay Icons: Consider also the "shared by me" as shared (#4788)
|
|
||||||
* Overlay Icons: Update right after sharing (#6115)
|
|
||||||
* Overlay Icons: Fix different case paths not matching (#5257)
|
|
||||||
* Overlay Icons: Detect changes in the shared flag (#6098)
|
|
||||||
* Windows Overlay Icons: Potential hang fixes
|
|
||||||
* Linux Overlay Icons: fix branded nemo and caja shell integration (#5966)
|
|
||||||
* Credentials: Fix behavior for bad password (#5989)
|
|
||||||
* Credentials: Don't create empty client cert keychain entries (#5752)
|
|
||||||
* Credentials: Namespace windows cred keys (#6125)
|
|
||||||
* Credentials: Use per-account keychain entries (#5830, #6126)
|
|
||||||
* AccountSettings: Triggering log in re-ask about previously rejected certificates (#5819)
|
|
||||||
* owncloudcmd: Added bandwidth limit parameter (#5707)
|
|
||||||
* owncloudcmd: Fix timestamps, Fix --logdebug
|
|
||||||
* AccountSettings: Sync with clean discovery on Ctrl-F6 (#5666)
|
|
||||||
* Sync: Dynamic sizing of chunks in chunked uploads for improved big file upload performance (#5852)
|
|
||||||
* Sync: Introduce overall errors that are not tied to a file (#5746)
|
|
||||||
* Sync: Better messaging for 507 Insufficient Storage (#5537)
|
|
||||||
* Sync: Create conflicts by comparing the hash of files with identical mtime/size (#5589)
|
|
||||||
* Sync: Avoid downloads by comparing the hash of files with identical mtime/size (#6153)
|
|
||||||
* Sync: Upload conflict files if OWNCLOUD_UPLOAD_CONFLICT_FILES environment variable is set (#6038)
|
|
||||||
* Sync: Blacklist: Don't let errors become warnings (#5516)
|
|
||||||
* Sync: Check etag again after active sync (#4116)
|
|
||||||
* Sync: Rename handling fixes: duplicate file ids (#6096, #6212)
|
|
||||||
* Sync: Rename handling fixes: File size must be equal
|
|
||||||
* Sync: Rename handling: Fix duplicate files on abort/resume sync (#5949)
|
|
||||||
* Sync: Add capability for invalid filename regexes (#6092)
|
|
||||||
* SyncJournalDB: Fall back to DELETE journal mode if WAL mode does not seem to work (#5723)
|
|
||||||
* SyncJournalDB: Don't crash if the db file is readonly (#6050)
|
|
||||||
* SyncJournalDB: DB close error is not fatal
|
|
||||||
* Fix at least one memory leak
|
|
||||||
* Documentation improvements
|
|
||||||
* Logging improvements (With Qt logging categories) (#5671)
|
|
||||||
* Logging filtering per account (#5672)
|
|
||||||
* Crash fixes
|
|
||||||
* Test improvements
|
|
||||||
* Small UI layout fixes
|
|
||||||
* Performance improvements
|
|
||||||
* Maintenance Mode: Detect maintenance mode (#4485)
|
|
||||||
* Maintenance Mode: Add a 1 to 5 min reconnection delay (#5872)
|
|
||||||
* HTTP: Send a unique X-Request-ID with each request (#5853)
|
|
||||||
* HTTP: Support HTTP2 when built and running with Qt 5.9.x (Official packages still on Qt 5.6.x) (#5659)
|
|
||||||
* owncloudcmd: Don't start if connection or auth fails (#5692)
|
|
||||||
* csync: Switch build from C to C++ (#6033)
|
|
||||||
* csync: Refactor a lot to use common data structures to save memory and memory copying
|
|
||||||
* csync: Switch some data structures to Qt data structures
|
|
||||||
* csync: Switch to using upper layer SyncJournalDB (#6087)
|
|
||||||
* Switch 3rdparty/json usage to Qt5's QJson (#5710)
|
|
||||||
* OpenSSL: Don't require directly, only via Qt (#5833)
|
|
||||||
* Remove iconv dependency, use Qt for file system locale encoding/decoding (emoji filename support on macOS) (#5875)
|
|
||||||
* Compilation: Remove Qt 4 code (#6025, #5702, #5505)
|
|
||||||
* Harmonize source code style with clang-format (#5732)
|
|
||||||
* Switch over to Qt 5 function pointer signal/slot syntax (#6041)
|
|
||||||
* Compile with stack-smashing protection
|
|
||||||
* Updater: Rudimentary support for beta channel (#6048)
|
|
||||||
|
|
||||||
version 2.3.4 (2017-11-02)
|
|
||||||
* Checksums: Use addData function to avoid endless loop CPU load issues with Office files
|
|
||||||
* Packaging: Require ZLIB
|
|
||||||
|
|
||||||
version 2.3.3 (2017-08-29)
|
|
||||||
* Chunking NG: Don't use old chunking on new DAV endpoint (#5855)
|
* Chunking NG: Don't use old chunking on new DAV endpoint (#5855)
|
||||||
* Selective Sync: Skip excluded folders when reading DB, don't let them show errors (#5772)
|
* Selective Sync: Skip excluded folders when reading DB, don't let them show errors (#5772)
|
||||||
* Settings: Make window bigger so Qt version is always visible (#5760)
|
* Settings: Make window bigger so Qt version is always visible (#5760)
|
||||||
* Share links: Show warning that public link shares are public (#5786)
|
* Share links: Show warning that public link shares are public (#5786)
|
||||||
* Downloads: Re-trigger folder discovery on HTTP 404 (#5799)
|
* Downloads: Re-trigger folder discovery on HTTP 404 (#5799)
|
||||||
|
* Notifications: Propagate "Dismiss" as DELETE to server (#5922)
|
||||||
* Overlay Icons: Fix potential hangs on Windows
|
* Overlay Icons: Fix potential hangs on Windows
|
||||||
* SyncJournalDB: Don't use ._ as filename pattern if that does not work because of SMB storage settings (#5844)
|
* SyncJournalDB: Don't use ._ as filename pattern if that does not work because of SMB storage settings (#5844)
|
||||||
* SyncJournalDB: Log reason for sqlite3 opening errors
|
* SyncJournalDB: Log reason for sqlite3 opening errors
|
||||||
* Notifications: Proapgate "Dismiss" button action to server (#5922)
|
* Windows: Fix a memory leak in FileSystem::longWinPath
|
||||||
* Switch Linux build also to Qt 5.6.2 (#5470)
|
* Switch Linux build also to Qt 5.6.2 (#5470)
|
||||||
* Stopped maintaining Qt 4 buildability
|
* Stopped maintaining Qt 4 buildability
|
||||||
|
|
||||||
version 2.3.2 (2017-05-08)
|
version 2.3.2 (2017-05-08)
|
||||||
* Fix more crashes (thanks to everyone submitting to our crash reporter!)
|
* Fix more crashes (thanks to everyone submitting to our crash reporter!)
|
||||||
* Improve compatibility with server 10.0 (#5691, X-OC-Total-Size)
|
* Improve compatibility with server 10.0 (#5691, OC-Total-Length)
|
||||||
* Share dialog: UI improvements, Bring to front on tray click
|
* Share dialog: UI improvements, Bring to front on tray click
|
||||||
* owncloudcmd: Align process return value with sync return value (#3936)
|
* owncloudcmd: Align process return value with sync return value (#3936)
|
||||||
* Fix disk free check on Windows when opening the local DB
|
* Fix disk free check on Windows when opening the local DB
|
||||||
@@ -230,6 +129,7 @@ version 2.2.0 (release 2016-05-12)
|
|||||||
* Documentation Improvements, ie. about overlay icons
|
* Documentation Improvements, ie. about overlay icons
|
||||||
* Translation fixes
|
* Translation fixes
|
||||||
* Countless other bugfixes
|
* Countless other bugfixes
|
||||||
|
* Sqlite Update to recent version
|
||||||
* Update of QtKeyChain to support Windows credential store
|
* Update of QtKeyChain to support Windows credential store
|
||||||
* Packaging of dolphin overlay icon module for bleeding edge distros
|
* Packaging of dolphin overlay icon module for bleeding edge distros
|
||||||
|
|
||||||
@@ -300,6 +200,7 @@ version 2.1 (release 2015-12-03)
|
|||||||
* Fixed getting size for selective sync (#3986)
|
* Fixed getting size for selective sync (#3986)
|
||||||
* Re-added close button in the settings window (#3713)
|
* Re-added close button in the settings window (#3713)
|
||||||
* Added abililty to handle storage limitations gracefully (#3736)
|
* Added abililty to handle storage limitations gracefully (#3736)
|
||||||
|
* Updated 3rdparty dependencies: sqlite version 3.9.1
|
||||||
* Organized patches to our base Qt version into admin/qt/patches
|
* Organized patches to our base Qt version into admin/qt/patches
|
||||||
* Plus: A lot of unmentioned improvements and fixes
|
* Plus: A lot of unmentioned improvements and fixes
|
||||||
|
|
||||||
|
|||||||
42
Jenkinsfile
vendored
Normal file
42
Jenkinsfile
vendored
Normal file
@@ -0,0 +1,42 @@
|
|||||||
|
#!groovy
|
||||||
|
|
||||||
|
node('CLIENT') {
|
||||||
|
stage 'Checkout'
|
||||||
|
checkout scm
|
||||||
|
sh '''git submodule update --init'''
|
||||||
|
|
||||||
|
stage 'Qt5'
|
||||||
|
sh '''rm -rf build
|
||||||
|
mkdir build
|
||||||
|
cd build
|
||||||
|
cmake -DCMAKE_BUILD_TYPE="Debug" -DUNIT_TESTING=1 -DWITH_TESTING=1 -DBUILD_WITH_QT4=OFF ..
|
||||||
|
make -j4
|
||||||
|
ctest --output-on-failure'''
|
||||||
|
|
||||||
|
stage 'Qt5 - clang'
|
||||||
|
sh '''rm -rf build
|
||||||
|
mkdir build
|
||||||
|
cd build
|
||||||
|
cmake -DCMAKE_BUILD_TYPE="Debug" -DCMAKE_C_COMPILER=clang -DCMAKE_CXX_COMPILER=clang++ -DUNIT_TESTING=1 -DWITH_TESTING=1 -DBUILD_WITH_QT4=OFF ..
|
||||||
|
make -j4
|
||||||
|
ctest --output-on-failure'''
|
||||||
|
|
||||||
|
|
||||||
|
stage 'Win32'
|
||||||
|
def win32 = docker.image('guruz/docker-owncloud-client-win32:latest')
|
||||||
|
win32.pull() // make sure we have the latest available from Docker Hub
|
||||||
|
win32.inside {
|
||||||
|
sh '''
|
||||||
|
rm -rf build-win32
|
||||||
|
mkdir build-win32
|
||||||
|
cd build-win32
|
||||||
|
../admin/win/download_runtimes.sh
|
||||||
|
cmake .. -DCMAKE_TOOLCHAIN_FILE=../admin/win/Toolchain-mingw32-openSUSE.cmake -DWITH_CRASHREPORTER=ON
|
||||||
|
make -j4
|
||||||
|
make package
|
||||||
|
ctest .
|
||||||
|
'''
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
set( APPLICATION_NAME "Nextcloud-e2e" )
|
|
||||||
set( APPLICATION_SHORTNAME "Nextcloud-e2e" )
|
|
||||||
set( APPLICATION_EXECUTABLE "nextcloud" )
|
|
||||||
set( APPLICATION_DOMAIN "nextcloud.com" )
|
|
||||||
set( APPLICATION_VENDOR "Nextcloud GmbH" )
|
|
||||||
set( APPLICATION_UPDATE_URL "https://updates.nextcloud.org/client/" CACHE string "URL for updater" )
|
|
||||||
set( APPLICATION_ICON_NAME "Nextcloud" )
|
|
||||||
|
|
||||||
set( LINUX_PACKAGE_SHORTNAME "nextcloud" )
|
|
||||||
|
|
||||||
set( THEME_CLASS "NextcloudTheme" )
|
|
||||||
set( APPLICATION_REV_DOMAIN "com.nextcloud.desktopclient" )
|
|
||||||
set( WIN_SETUP_BITMAP_PATH "${CMAKE_SOURCE_DIR}/admin/win/nsi" )
|
|
||||||
|
|
||||||
set( MAC_INSTALLER_BACKGROUND_FILE "${CMAKE_SOURCE_DIR}/admin/osx/installer-background.png" CACHE STRING "The MacOSX installer background image")
|
|
||||||
|
|
||||||
# set( THEME_INCLUDE "${OEM_THEME_DIR}/mytheme.h" )
|
|
||||||
# set( APPLICATION_LICENSE "${OEM_THEME_DIR}/license.txt )
|
|
||||||
|
|
||||||
option( WITH_CRASHREPORTER "Build crashreporter" OFF )
|
|
||||||
#set( CRASHREPORTER_SUBMIT_URL "https://crash-reports.owncloud.com/submit" CACHE string "URL for crash reporter" )
|
|
||||||
#set( CRASHREPORTER_ICON ":/owncloud-icon.png" )
|
|
||||||
18
OWNCLOUD.cmake
Normal file
18
OWNCLOUD.cmake
Normal file
@@ -0,0 +1,18 @@
|
|||||||
|
set( APPLICATION_NAME "ownCloud" )
|
||||||
|
set( APPLICATION_EXECUTABLE "owncloud" )
|
||||||
|
set( APPLICATION_DOMAIN "owncloud.com" )
|
||||||
|
set( APPLICATION_VENDOR "ownCloud" )
|
||||||
|
set( APPLICATION_UPDATE_URL "https://updates.owncloud.com/client/" CACHE string "URL for updater" )
|
||||||
|
|
||||||
|
set( THEME_CLASS "ownCloudTheme" )
|
||||||
|
set( APPLICATION_REV_DOMAIN "com.owncloud.desktopclient" )
|
||||||
|
set( WIN_SETUP_BITMAP_PATH "${CMAKE_SOURCE_DIR}/admin/win/nsi" )
|
||||||
|
|
||||||
|
set( MAC_INSTALLER_BACKGROUND_FILE "${CMAKE_SOURCE_DIR}/admin/osx/installer-background.png" CACHE STRING "The MacOSX installer background image")
|
||||||
|
|
||||||
|
# set( THEME_INCLUDE "${OEM_THEME_DIR}/mytheme.h" )
|
||||||
|
# set( APPLICATION_LICENSE "${OEM_THEME_DIR}/license.txt )
|
||||||
|
|
||||||
|
option( WITH_CRASHREPORTER "Build crashreporter" OFF )
|
||||||
|
set( CRASHREPORTER_SUBMIT_URL "https://crash-reports.owncloud.com/submit" CACHE string "URL for crash reporter" )
|
||||||
|
set( CRASHREPORTER_ICON ":/owncloud-icon.png" )
|
||||||
@@ -5,7 +5,7 @@ set( CPACK_PACKAGE_CONTACT "Dominik Schmidt <domme@tomahawk-player.org>" )
|
|||||||
if ( DEFINED OEM_THEME_DIR AND EXISTS ${OEM_THEME_DIR}/OEM.cmake )
|
if ( DEFINED OEM_THEME_DIR AND EXISTS ${OEM_THEME_DIR}/OEM.cmake )
|
||||||
include ( "${OEM_THEME_DIR}/OEM.cmake" )
|
include ( "${OEM_THEME_DIR}/OEM.cmake" )
|
||||||
else ()
|
else ()
|
||||||
include ( "${CMAKE_SOURCE_DIR}/NEXTCLOUD.cmake" )
|
include ( "${CMAKE_SOURCE_DIR}/OWNCLOUD.cmake" )
|
||||||
endif()
|
endif()
|
||||||
|
|
||||||
include( VERSION.cmake )
|
include( VERSION.cmake )
|
||||||
@@ -48,7 +48,7 @@ if(WIN32)
|
|||||||
set( CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_SOURCE_DIR}/README.md" ) # File used as a description of a project /path/to/project/ReadMe.txt
|
set( CPACK_PACKAGE_DESCRIPTION_FILE "${CMAKE_SOURCE_DIR}/README.md" ) # File used as a description of a project /path/to/project/ReadMe.txt
|
||||||
set( CPACK_PACKAGE_DESCRIPTION_SUMMARY "${APPLICATION_NAME} Syncing Client" ) # Description summary of a project
|
set( CPACK_PACKAGE_DESCRIPTION_SUMMARY "${APPLICATION_NAME} Syncing Client" ) # Description summary of a project
|
||||||
# CPACK_PACKAGE_EXECUTABLES List of pairs of executables and labels. Used by the NSIS generator to create Start Menu shortcuts. ccmake;CMake
|
# CPACK_PACKAGE_EXECUTABLES List of pairs of executables and labels. Used by the NSIS generator to create Start Menu shortcuts. ccmake;CMake
|
||||||
set( CPACK_PACKAGE_INSTALL_DIRECTORY ${APPLICATION_SHORTNAME} ) # Installation directory on the target system -> C:\Program Files\${APPLICATION_SHORTNAME}
|
set( CPACK_PACKAGE_INSTALL_DIRECTORY ${APPLICATION_SHORTNAME} ) # Installation directory on the target system -> C:\Program Files\fellody
|
||||||
set( CPACK_PACKAGE_INSTALL_REGISTRY_KEY ${APPLICATION_SHORTNAME} ) # Registry key used when installing this project CMake 2.5.0
|
set( CPACK_PACKAGE_INSTALL_REGISTRY_KEY ${APPLICATION_SHORTNAME} ) # Registry key used when installing this project CMake 2.5.0
|
||||||
set( CPACK_PACKAGE_NAME ${APPLICATION_NAME} ) # Package name, defaults to the project name
|
set( CPACK_PACKAGE_NAME ${APPLICATION_NAME} ) # Package name, defaults to the project name
|
||||||
set( CPACK_PACKAGE_VENDOR "http://${APPLICATION_DOMAIN}" ) # Package vendor name
|
set( CPACK_PACKAGE_VENDOR "http://${APPLICATION_DOMAIN}" ) # Package vendor name
|
||||||
42
README.md
42
README.md
@@ -1,37 +1,63 @@
|
|||||||
# Nextcloud Desktop Client
|
# ownCloud Desktop Client
|
||||||
|
|
||||||
|
| Job | State |
|
||||||
|
|-----------------------------------|-------------------------------------------------------------------------------------------------------------------------------------------------------------------|
|
||||||
|
| client-build-matrix | [](https://ci.owncloud.org/job/client-build-matrix-linux/) |
|
||||||
|
| client-test-matrix-linux-no-build | [](https://ci.owncloud.org/job/client-test-matrix-linux-no-build/) |
|
||||||
|
| coverity_scan | [](https://scan.coverity.com/projects/owncloud-mirall)
|
||||||
|
|
||||||
## Introduction
|
## Introduction
|
||||||
|
|
||||||
The Nextcloud Desktop Client is a tool to synchronize files from Nextcloud Server
|
The ownCloud Desktop Client is a tool to synchronize files from ownCloud Server
|
||||||
with your computer.
|
with your computer.
|
||||||
|
|
||||||
## Download
|
## Download
|
||||||
|
|
||||||
### Binary packages
|
### Binary packages
|
||||||
|
|
||||||
* Refer to the [download page https://nextcloud.com/install/#install-clients](https://nextcloud.com/install/#install-clients)
|
* Refer to the download page https://owncloud.org/install/#install-clients
|
||||||
|
|
||||||
### Source code
|
### Source code
|
||||||
|
|
||||||
The Nextcloud Desktop Client is developed in Git. Since Git makes it easy to
|
The ownCloud Desktop Client is developed in Git. Since Git makes it easy to
|
||||||
fork and improve the source code and to adapt it to your need, many copies
|
fork and improve the source code and to adapt it to your need, many copies
|
||||||
can be found on the Internet, in particular on GitHub. However, the
|
can be found on the Internet, in particular on GitHub. However, the
|
||||||
authoritative repository maintained by the developers is located at
|
authoritative repository maintained by the developers is located at
|
||||||
https://github.com/nextcloud/client.
|
https://github.com/owncloud/client.
|
||||||
|
|
||||||
|
## Building the source code
|
||||||
|
|
||||||
|
[Building the Client](http://doc.owncloud.org/desktop/2.2/building.html)
|
||||||
|
in the ownCloud Desktop Client manual.
|
||||||
|
|
||||||
|
## Maintainers and Contributors
|
||||||
|
|
||||||
|
The maintainers of this repository are:
|
||||||
|
|
||||||
|
* Klaas Freitag <freitag@owncloud.com>
|
||||||
|
* Daniel Molkentin <danimo@owncloud.com>
|
||||||
|
* Markus Goetz <guruz@owncloud.com>
|
||||||
|
* Olivier Goffart <ogoffart@owncloud.com>
|
||||||
|
|
||||||
|
ownCloud Desktop Client is developed by the ownCloud community and receives
|
||||||
|
patches from a variety of authors.
|
||||||
|
|
||||||
## Reporting issues and contributing
|
## Reporting issues and contributing
|
||||||
|
|
||||||
If you find any bugs or have any suggestion for improvement, please
|
If you find any bugs or have any suggestion for improvement, please
|
||||||
file an issue at https://github.com/nextcloud/client/issues. Do not
|
file an issue at https://github.com/owncloud/client/issues. Do not
|
||||||
contact the authors directly by mail, as this increases the chance
|
contact the authors directly by mail, as this increases the chance
|
||||||
of your report being lost.
|
of your report being lost.
|
||||||
|
|
||||||
If you created a patch, please submit a [Pull
|
If you created a patch, please submit a [Pull
|
||||||
Request](https://github.com/nextcloud/client/pulls).
|
Request](https://github.com/owncloud/client/pulls). For non-trivial
|
||||||
|
patches, we need you to sign the [Contributor
|
||||||
|
Agreement](https://owncloud.org/contribute/agreement) before
|
||||||
|
we can accept your patch.
|
||||||
|
|
||||||
If you want to contact us, e.g. before starting a more complex feature,
|
If you want to contact us, e.g. before starting a more complex feature,
|
||||||
you can join us at
|
you can join us at
|
||||||
[#nextcloud-dev](irc://irc.freenode.net/#nextcloud-dev).
|
[#owncloud-client-dev](irc://irc.freenode.net/#owncloud-client-dev).
|
||||||
|
|
||||||
## License
|
## License
|
||||||
|
|
||||||
|
|||||||
@@ -1,11 +1,11 @@
|
|||||||
set( MIRALL_VERSION_MAJOR 2 )
|
set( MIRALL_VERSION_MAJOR 2 )
|
||||||
set( MIRALL_VERSION_MINOR 5 )
|
set( MIRALL_VERSION_MINOR 3 )
|
||||||
set( MIRALL_VERSION_PATCH 0 )
|
set( MIRALL_VERSION_PATCH 3 )
|
||||||
set( MIRALL_VERSION_YEAR 2017 )
|
set( MIRALL_VERSION_YEAR 2017 )
|
||||||
set( MIRALL_SOVERSION 0 )
|
set( MIRALL_SOVERSION 0 )
|
||||||
|
|
||||||
if ( NOT DEFINED MIRALL_VERSION_SUFFIX )
|
if ( NOT DEFINED MIRALL_VERSION_SUFFIX )
|
||||||
set( MIRALL_VERSION_SUFFIX "git") #e.g. beta1, beta2, rc1
|
set( MIRALL_VERSION_SUFFIX "") #e.g. beta1, beta2, rc1
|
||||||
endif( NOT DEFINED MIRALL_VERSION_SUFFIX )
|
endif( NOT DEFINED MIRALL_VERSION_SUFFIX )
|
||||||
|
|
||||||
if( NOT DEFINED MIRALL_VERSION_BUILD )
|
if( NOT DEFINED MIRALL_VERSION_BUILD )
|
||||||
|
|||||||
@@ -1,22 +0,0 @@
|
|||||||
# This DockerFile is used to create the image used for Jenkins, the CI system (see Jenkinsfile)
|
|
||||||
# It is not meant to be used to create the production packages.
|
|
||||||
|
|
||||||
# Distro with Qt 5.6
|
|
||||||
FROM ubuntu:yakkety
|
|
||||||
|
|
||||||
RUN apt-get update -q && DEBIAN_FRONTEND=noninteractive apt-get install -q -y --no-install-recommends \
|
|
||||||
locales \
|
|
||||||
build-essential \
|
|
||||||
clang \
|
|
||||||
ninja-build \
|
|
||||||
cmake \
|
|
||||||
extra-cmake-modules \
|
|
||||||
libsqlite3-dev \
|
|
||||||
libssl-dev \
|
|
||||||
libcmocka-dev \
|
|
||||||
qt5-default \
|
|
||||||
qttools5-dev-tools \
|
|
||||||
libqt5webkit5-dev \
|
|
||||||
qt5keychain-dev \
|
|
||||||
kio-dev \
|
|
||||||
&& apt-get clean
|
|
||||||
@@ -1,98 +0,0 @@
|
|||||||
#! /bin/bash
|
|
||||||
|
|
||||||
set -xe
|
|
||||||
|
|
||||||
mkdir /app
|
|
||||||
mkdir /build
|
|
||||||
|
|
||||||
#Set Qt-5.9
|
|
||||||
export QT_BASE_DIR=/opt/qt59
|
|
||||||
export QTDIR=$QT_BASE_DIR
|
|
||||||
export PATH=$QT_BASE_DIR/bin:$PATH
|
|
||||||
export LD_LIBRARY_PATH=$QT_BASE_DIR/lib/x86_64-linux-gnu:$QT_BASE_DIR/lib:$LD_LIBRARY_PATH
|
|
||||||
export PKG_CONFIG_PATH=$QT_BASE_DIR/lib/pkgconfig:$PKG_CONFIG_PATH
|
|
||||||
|
|
||||||
#set defaults
|
|
||||||
export SUFFIX=${DRONE_PULL_REQUEST:=master}
|
|
||||||
if [ $SUFFIX != "master" ]; then
|
|
||||||
SUFFIX="PR-$SUFFIX"
|
|
||||||
fi
|
|
||||||
|
|
||||||
#QtKeyChain 0.8.0
|
|
||||||
cd /build
|
|
||||||
git clone https://github.com/frankosterfeld/qtkeychain.git
|
|
||||||
cd qtkeychain
|
|
||||||
git checkout v0.8.0
|
|
||||||
mkdir build
|
|
||||||
cd build
|
|
||||||
cmake -D CMAKE_INSTALL_PREFIX=/usr ../
|
|
||||||
make -j4
|
|
||||||
make DESTDIR=/app install
|
|
||||||
|
|
||||||
#Build client
|
|
||||||
cd /build
|
|
||||||
mkdir build-client
|
|
||||||
cd build-client
|
|
||||||
cmake -D CMAKE_INSTALL_PREFIX=/usr \
|
|
||||||
-D NO_SHIBBOLETH=1 \
|
|
||||||
-D QTKEYCHAIN_LIBRARY=/app/usr/lib/x86_64-linux-gnu/libqt5keychain.so \
|
|
||||||
-D QTKEYCHAIN_INCLUDE_DIR=/app/usr/include/qt5keychain/ \
|
|
||||||
-DMIRALL_VERSION_SUFFIX=PR-$DRONE_PULL_REQUEST \
|
|
||||||
-DMIRALL_VERSION_BUILD=$DRONE_BUILD_NUMBER \
|
|
||||||
$DRONE_WORKSPACE
|
|
||||||
make -j4
|
|
||||||
make DESTDIR=/app install
|
|
||||||
|
|
||||||
# Move stuff around
|
|
||||||
cd /app
|
|
||||||
|
|
||||||
mv ./usr/lib/x86_64-linux-gnu/nextcloud/* ./usr/lib/x86_64-linux-gnu/
|
|
||||||
mv ./usr/lib/x86_64-linux-gnu/* ./usr/lib/
|
|
||||||
rm -rf ./usr/lib/nextcloud
|
|
||||||
rm -rf ./usr/lib/cmake
|
|
||||||
rm -rf ./usr/include
|
|
||||||
rm -rf ./usr/mkspecs
|
|
||||||
rm -rf ./usr/lib/x86_64-linux-gnu/
|
|
||||||
|
|
||||||
# Don't bundle nextcloudcmd as we don't run it anyway
|
|
||||||
rm -rf ./usr/bin/nextcloudcmd
|
|
||||||
|
|
||||||
# Don't bundle the explorer extentions as we can't do anything with them in the AppImage
|
|
||||||
rm -rf ./usr/share/caja-python/
|
|
||||||
rm -rf ./usr/share/nautilus-python/
|
|
||||||
rm -rf ./usr/share/nemo-python/
|
|
||||||
|
|
||||||
# Move sync exlucde to right location
|
|
||||||
mv ./etc/Nextcloud/sync-exclude.lst ./usr/bin/
|
|
||||||
rm -rf ./etc
|
|
||||||
|
|
||||||
sed -i -e 's|Icon=nextcloud|Icon=Nextcloud|g' usr/share/applications/nextcloud.desktop # Bug in desktop file?
|
|
||||||
cp ./usr/share/icons/hicolor/512x512/apps/Nextcloud.png . # Workaround for linuxeployqt bug, FIXME
|
|
||||||
|
|
||||||
|
|
||||||
# Because distros need to get their shit together
|
|
||||||
cp -P /lib/x86_64-linux-gnu/libssl.so* ./usr/lib/
|
|
||||||
cp -P /lib/x86_64-linux-gnu/libcrypto.so* ./usr/lib/
|
|
||||||
|
|
||||||
# Use linuxdeployqt to deploy
|
|
||||||
cd /build
|
|
||||||
wget -c "https://github.com/probonopd/linuxdeployqt/releases/download/continuous/linuxdeployqt-continuous-x86_64.AppImage"
|
|
||||||
chmod a+x linuxdeployqt*.AppImage
|
|
||||||
./linuxdeployqt-continuous-x86_64.AppImage --appimage-extract
|
|
||||||
rm ./linuxdeployqt-continuous-x86_64.AppImage
|
|
||||||
unset QTDIR; unset QT_PLUGIN_PATH ; unset LD_LIBRARY_PATH
|
|
||||||
export LD_LIBRARY_PATH=/app/usr/lib/
|
|
||||||
./squashfs-root/AppRun /app/usr/share/applications/nextcloud.desktop -bundle-non-qt-libs
|
|
||||||
|
|
||||||
# Set origin
|
|
||||||
./squashfs-root/usr/bin/patchelf --set-rpath '$ORIGIN/' /app/usr/lib/libnextcloudsync.so.0
|
|
||||||
|
|
||||||
# Build AppImage
|
|
||||||
./squashfs-root/AppRun /app/usr/share/applications/nextcloud.desktop -appimage
|
|
||||||
|
|
||||||
mv Nextcloud*.AppImage Nextcloud-${SUFFIX}-${DRONE_COMMIT}-x86_64.AppImage
|
|
||||||
|
|
||||||
curl --upload-file $(readlink -f ./Nextcloud*.AppImage) https://transfer.sh/Nextcloud-${SUFFIX}-${DRONE_COMMIT}-x86_64.AppImage
|
|
||||||
|
|
||||||
echo
|
|
||||||
echo "Get the AppImage at the link above!"
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
#!/bin/sh
|
|
||||||
|
|
||||||
rm -vrf admin/
|
|
||||||
rm -vrf src/3rdparty/sqlite3 # FIXME: For CentOS6 we have to use our bundled sqlite
|
|
||||||
rm -vrf binary/
|
|
||||||
rm -vrf src/3rdparty/libcrashreporter-qt
|
|
||||||
rm -vrf shell_integration/windows
|
|
||||||
rm -vrf shell_integration/MacOSX
|
|
||||||
@@ -1,31 +0,0 @@
|
|||||||
- .pbuilderrc:
|
|
||||||
|
|
||||||
COMPONENTS="main restricted universe multiverse"
|
|
||||||
|
|
||||||
OTHERMIRROR="deb [trusted=yes] file:///${HOME}/pbuilder/deps ./"
|
|
||||||
HOOKDIR="${HOME}/pbuilder/hook.d"
|
|
||||||
BINDMOUNTS="${HOME}/pbuilder/deps"
|
|
||||||
|
|
||||||
EXTRAPACKAGES="apt-utils"
|
|
||||||
|
|
||||||
- pbuilder/hook.d/D70setupdeps: hook to create a Packages file for the
|
|
||||||
packages in pbuilder/deps
|
|
||||||
|
|
||||||
- pbuilder-dist trusty create --override-config --othermirror "deb [trusted=yes] file:///${HOME}/pbuilder/deps ./"
|
|
||||||
|
|
||||||
The OTHERMIRROR setting in .pbuilderrc is overridden by pbuilder-dist!
|
|
||||||
|
|
||||||
- scripts:
|
|
||||||
|
|
||||||
config.sh: basic configuration variables
|
|
||||||
|
|
||||||
create_debdir.sh <tag> <version> <distribution>:
|
|
||||||
create the Debian-conformant source directory and .orig.tar.bz2
|
|
||||||
in the build area
|
|
||||||
build.sh <tag> <version> <distribution> <debuild options...>:
|
|
||||||
call create_debdir.sh and then debuild
|
|
||||||
pbuilder.sh <distribution>:
|
|
||||||
build the existing source package with pbuilder-dist.
|
|
||||||
pbuild.sh <distribution>:
|
|
||||||
build the source packages with build.sh and then call
|
|
||||||
pbuilder.sh
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
nextcloud-client (2.3.3-1.0~artful1) artful; urgency=medium
|
|
||||||
|
|
||||||
* Debian build support for the forked client.
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Mon, 6 Nov 2017 20:20:04 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.3.1-1.0~artful1) artful; urgency=medium
|
|
||||||
|
|
||||||
* New upstream version
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Thu, 23 Mar 2017 19:07:36 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.3.0-1.0~artful1) artful; urgency=medium
|
|
||||||
|
|
||||||
* New upstream version
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Tue, 21 Mar 2017 19:34:13 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.4~artful1) artful; urgency=medium
|
|
||||||
|
|
||||||
* The locale-specific icon names are correct too
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Tue, 7 Feb 2017 19:55:40 +0100
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
usr/lib/*/libnextclouddolphinpluginhelper.so
|
|
||||||
usr/lib/*/qt5/plugins/kf5/overlayicon/nextclouddolphinoverlayplugin.so
|
|
||||||
usr/lib/*/qt5/plugins/nextclouddolphinactionplugin.so
|
|
||||||
usr/share/kservices5/nextclouddolphinactionplugin.desktop
|
|
||||||
@@ -1,48 +0,0 @@
|
|||||||
nextcloud-client (2.3.3-1.0~stable1) stable; urgency=medium
|
|
||||||
|
|
||||||
* Debian build support for the forked client.
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Mon, 6 Nov 2017 20:20:04 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.3.1-1.0) stable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream version
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Thu, 23 Mar 2017 19:07:36 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.3.0-1.0) stable; urgency=medium
|
|
||||||
|
|
||||||
* New upstream version
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Tue, 21 Mar 2017 19:34:13 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.4) stable; urgency=medium
|
|
||||||
|
|
||||||
* The locale-specific icon names are correct too
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Tue, 7 Feb 2017 19:55:40 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.3) stable; urgency=medium
|
|
||||||
|
|
||||||
* Caja syncstate plugin is built.
|
|
||||||
* The syncstate plugin has application-specific name
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Fri, 27 Jan 2017 19:34:18 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.2) stable; urgency=medium
|
|
||||||
|
|
||||||
* Fixed appname in the Nemo syncstate extension.
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Thu, 19 Jan 2017 16:46:50 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.1) stable; urgency=medium
|
|
||||||
|
|
||||||
* Added Nautilus and Nemo syncstate extensions.
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Tue, 17 Jan 2017 19:55:32 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.0) stable; urgency=medium
|
|
||||||
|
|
||||||
* Initial release.
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Wed, 14 Dec 2016 20:07:46 +0100
|
|
||||||
@@ -1,80 +0,0 @@
|
|||||||
Source: nextcloud-client
|
|
||||||
Section: contrib/devel
|
|
||||||
Priority: optional
|
|
||||||
Maintainer: István Váradi <ivaradi@varadiistvan.hu>
|
|
||||||
Build-Depends: cmake,
|
|
||||||
debhelper,
|
|
||||||
cdbs,
|
|
||||||
dh-python,
|
|
||||||
extra-cmake-modules (>= 5.16),
|
|
||||||
kdelibs5-dev,
|
|
||||||
kio-dev,
|
|
||||||
libcmocka-dev,
|
|
||||||
libhttp-dav-perl,
|
|
||||||
libinotify-dev [kfreebsd-any],
|
|
||||||
libqt5webkit5-dev,
|
|
||||||
libsqlite3-dev,
|
|
||||||
libssl-dev (>> 1.0.0),
|
|
||||||
zlib1g-dev,
|
|
||||||
optipng,
|
|
||||||
pkg-kde-tools,
|
|
||||||
python-sphinx | python3-sphinx,
|
|
||||||
python3-all,
|
|
||||||
qt5keychain-dev,
|
|
||||||
qtdeclarative5-dev,
|
|
||||||
qttools5-dev,
|
|
||||||
qttools5-dev-tools,
|
|
||||||
xvfb
|
|
||||||
Standards-Version: 3.9.8
|
|
||||||
Homepage: https://github.com/nextcloud/client_theming
|
|
||||||
#Vcs-Git: git://anonscm.debian.org/collab-maint/nextcloud-client.git
|
|
||||||
#Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/nextcloud-client.git
|
|
||||||
|
|
||||||
Package: nextcloud-client
|
|
||||||
Architecture: any
|
|
||||||
Depends: libnextcloudsync0 (=${binary:Version}), ${shlibs:Depends}, ${misc:Depends}, nextcloud-client-l10n
|
|
||||||
Description: Nextcloud desktop sync client
|
|
||||||
Use the desktop client to keep your files synchronized
|
|
||||||
between your Nextcloud server and your desktop. Select
|
|
||||||
one or more directories on your local machine and always
|
|
||||||
have access to your latest files wherever you are.
|
|
||||||
|
|
||||||
Package: libnextcloudsync0
|
|
||||||
Architecture: any
|
|
||||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
|
||||||
Description: Nextcloud sync library
|
|
||||||
Used by the Nextcloud desktop client as the synchronization engine.
|
|
||||||
|
|
||||||
Package: libnextcloudsync-dev
|
|
||||||
Architecture: any
|
|
||||||
Section: contrib/libdevel
|
|
||||||
Depends: libnextcloudsync0 (=${binary:Version}), ${misc:Depends}
|
|
||||||
Description: Nextcloud sync library development files
|
|
||||||
The headers and development library for the Nextcloud sync library.
|
|
||||||
|
|
||||||
Package: nextcloud-client-l10n
|
|
||||||
Architecture: all
|
|
||||||
Depends: ${misc:Depends}
|
|
||||||
Description: Nextcloud client internatialization files
|
|
||||||
The translation files.
|
|
||||||
|
|
||||||
Package: nextcloud-client-nautilus
|
|
||||||
Architecture: all
|
|
||||||
Depends: nextcloud-client (>=${binary:Version}), libnextcloudsync0, python-nautilus, nautilus, ${misc:Depends}
|
|
||||||
Description: Nautilus plugin for Nextcloud
|
|
||||||
This package contains a Nautilus plugin to display
|
|
||||||
synchronization status icons for Nextcloud files.
|
|
||||||
|
|
||||||
Package: nextcloud-client-nemo
|
|
||||||
Architecture: all
|
|
||||||
Depends: nextcloud-client (>=${binary:Version}), libnextcloudsync0, python-nemo, nemo, ${misc:Depends}
|
|
||||||
Description: Nemo plugin for Nextcloud
|
|
||||||
This package contains a Nemo plugin to display
|
|
||||||
synchronization status icons for Nextcloud files.
|
|
||||||
|
|
||||||
Package: nextcloud-client-caja
|
|
||||||
Architecture: all
|
|
||||||
Depends: nextcloud-client (>=${binary:Version}), libnextcloudsync0, python-caja, caja, ${misc:Depends}
|
|
||||||
Description: Caja plugin for Nextcloud
|
|
||||||
This package contains a Caja plugin to display
|
|
||||||
synchronization status icons for Nextcloud files.
|
|
||||||
@@ -1,48 +0,0 @@
|
|||||||
nextcloud-client (2.3.3-1.0~yakkety1) yakkety; urgency=medium
|
|
||||||
|
|
||||||
* Debian build support for the forked client.
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Mon, 6 Nov 2017 20:20:04 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.3.1-1.0~yakkety1) yakkety; urgency=medium
|
|
||||||
|
|
||||||
* New upstream version
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Thu, 23 Mar 2017 19:07:36 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.3.0-1.0~yakkety1) yakkety; urgency=medium
|
|
||||||
|
|
||||||
* New upstream version
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Tue, 21 Mar 2017 19:34:13 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.4~yakkety1) yakkety; urgency=medium
|
|
||||||
|
|
||||||
* The locale-specific icon names are correct too
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Tue, 7 Feb 2017 19:55:40 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.3~yakkety1) yakkety; urgency=medium
|
|
||||||
|
|
||||||
* Caja syncstate plugin is built.
|
|
||||||
* The syncstate plugin has application-specific name
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Fri, 27 Jan 2017 19:34:18 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.2~yakkety1) yakkety; urgency=medium
|
|
||||||
|
|
||||||
* Fixed appname in the Nemo syncstate extension.
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Thu, 19 Jan 2017 16:46:50 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.1~yakkety1) yakkety; urgency=medium
|
|
||||||
|
|
||||||
* Added Nautilus and Nemo syncstate extensions.
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Tue, 17 Jan 2017 19:55:32 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.0~yakkety1) yakkety; urgency=medium
|
|
||||||
|
|
||||||
* Initial release.
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Wed, 14 Dec 2016 20:07:46 +0100
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
usr/lib/*/libnextclouddolphinpluginhelper.so
|
|
||||||
usr/lib/*/qt5/plugins/kf5/overlayicon/nextclouddolphinoverlayplugin.so
|
|
||||||
usr/lib/*/qt5/plugins/nextclouddolphinactionplugin.so
|
|
||||||
usr/share/kservices5/nextclouddolphinactionplugin.desktop
|
|
||||||
@@ -1,23 +0,0 @@
|
|||||||
nextcloud-client (2.3.3-1.0~zesty1) zesty; urgency=medium
|
|
||||||
|
|
||||||
* Debian build support for the forked client.
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Mon, 6 Nov 2017 20:20:04 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.3.1-1.0~zesty1) zesty; urgency=medium
|
|
||||||
|
|
||||||
* New upstream version
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Thu, 23 Mar 2017 19:07:36 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.3.0-1.0~zesty1) zesty; urgency=medium
|
|
||||||
|
|
||||||
* New upstream version
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Tue, 21 Mar 2017 19:34:13 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.4~zesty1) zesty; urgency=medium
|
|
||||||
|
|
||||||
* The locale-specific icon names are correct too
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Tue, 7 Feb 2017 19:55:40 +0100
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
usr/lib/*/libnextclouddolphinpluginhelper.so
|
|
||||||
usr/lib/*/qt5/plugins/kf5/overlayicon/nextclouddolphinoverlayplugin.so
|
|
||||||
usr/lib/*/qt5/plugins/nextclouddolphinactionplugin.so
|
|
||||||
usr/share/kservices5/nextclouddolphinactionplugin.desktop
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
fs.inotify.max_user_watches = 524288
|
|
||||||
@@ -1,48 +0,0 @@
|
|||||||
nextcloud-client (2.3.3-1.0~xenial1) xenial; urgency=medium
|
|
||||||
|
|
||||||
* Debian build support for the forked client.
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Mon, 6 Nov 2017 20:20:04 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.3.1-1.0~xenial1) xenial; urgency=medium
|
|
||||||
|
|
||||||
* New upstream version
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Thu, 23 Mar 2017 19:07:36 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.3.0-1.0~xenial1) xenial; urgency=medium
|
|
||||||
|
|
||||||
* New upstream version
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Tue, 21 Mar 2017 19:34:13 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.4~xenial1) xenial; urgency=medium
|
|
||||||
|
|
||||||
* The locale-specific icon names are correct too
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Tue, 7 Feb 2017 19:55:40 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.3~xenial1) xenial; urgency=medium
|
|
||||||
|
|
||||||
* Caja syncstate plugin is built.
|
|
||||||
* The syncstate plugin has application-specific name
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Fri, 27 Jan 2017 19:34:18 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.2~xenial1) xenial; urgency=medium
|
|
||||||
|
|
||||||
* Fixed appname in the Nemo syncstate extension.
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Thu, 19 Jan 2017 16:46:50 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.1~xenial1) xenial; urgency=medium
|
|
||||||
|
|
||||||
* Added Nautilus and Nemo syncstate extensions.
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Tue, 17 Jan 2017 19:55:32 +0100
|
|
||||||
|
|
||||||
nextcloud-client (2.2.4-1.0~xenial1) xenial; urgency=medium
|
|
||||||
|
|
||||||
* Initial release.
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> Wed, 14 Dec 2016 20:07:46 +0100
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
9
|
|
||||||
@@ -1,87 +0,0 @@
|
|||||||
Source: nextcloud-client
|
|
||||||
Section: contrib/devel
|
|
||||||
Priority: optional
|
|
||||||
Maintainer: István Váradi <ivaradi@varadiistvan.hu>
|
|
||||||
Build-Depends: cmake,
|
|
||||||
debhelper,
|
|
||||||
cdbs,
|
|
||||||
dh-python,
|
|
||||||
extra-cmake-modules (>= 5.16),
|
|
||||||
kdelibs5-dev,
|
|
||||||
kio-dev,
|
|
||||||
libcmocka-dev,
|
|
||||||
libhttp-dav-perl,
|
|
||||||
libinotify-dev [kfreebsd-any],
|
|
||||||
libqt5webkit5-dev,
|
|
||||||
libsqlite3-dev,
|
|
||||||
libssl-dev (>> 1.0.0),
|
|
||||||
zlib1g-dev,
|
|
||||||
optipng,
|
|
||||||
pkg-kde-tools,
|
|
||||||
python-sphinx | python3-sphinx,
|
|
||||||
python3-all,
|
|
||||||
qt5keychain-dev,
|
|
||||||
qtdeclarative5-dev,
|
|
||||||
qttools5-dev,
|
|
||||||
qttools5-dev-tools,
|
|
||||||
xvfb
|
|
||||||
Standards-Version: 3.9.8
|
|
||||||
Homepage: https://github.com/nextcloud/client_theming
|
|
||||||
#Vcs-Git: git://anonscm.debian.org/collab-maint/nextcloud-client.git
|
|
||||||
#Vcs-Browser: https://anonscm.debian.org/cgit/collab-maint/nextcloud-client.git
|
|
||||||
|
|
||||||
Package: nextcloud-client
|
|
||||||
Architecture: any
|
|
||||||
Depends: libnextcloudsync0 (=${binary:Version}), ${shlibs:Depends}, ${misc:Depends}, nextcloud-client-l10n
|
|
||||||
Description: Nextcloud desktop sync client
|
|
||||||
Use the desktop client to keep your files synchronized
|
|
||||||
between your Nextcloud server and your desktop. Select
|
|
||||||
one or more directories on your local machine and always
|
|
||||||
have access to your latest files wherever you are.
|
|
||||||
|
|
||||||
Package: libnextcloudsync0
|
|
||||||
Architecture: any
|
|
||||||
Depends: ${shlibs:Depends}, ${misc:Depends}
|
|
||||||
Description: Nextcloud sync library
|
|
||||||
Used by the Nextcloud desktop client as the synchronization engine.
|
|
||||||
|
|
||||||
Package: libnextcloudsync-dev
|
|
||||||
Architecture: any
|
|
||||||
Section: contrib/libdevel
|
|
||||||
Depends: libnextcloudsync0 (=${binary:Version}), ${misc:Depends}
|
|
||||||
Description: Nextcloud sync library development files
|
|
||||||
The headers and development library for the Nextcloud sync library.
|
|
||||||
|
|
||||||
Package: nextcloud-client-l10n
|
|
||||||
Architecture: all
|
|
||||||
Depends: ${misc:Depends}
|
|
||||||
Description: Nextcloud client internatialization files
|
|
||||||
The translation files.
|
|
||||||
|
|
||||||
Package: nextcloud-client-nautilus
|
|
||||||
Architecture: all
|
|
||||||
Depends: nextcloud-client (>=${binary:Version}), libnextcloudsync0, python-nautilus, nautilus, ${misc:Depends}
|
|
||||||
Description: Nautilus plugin for Nextcloud
|
|
||||||
This package contains a Nautilus plugin to display
|
|
||||||
synchronization status icons for Nextcloud files.
|
|
||||||
|
|
||||||
Package: nextcloud-client-nemo
|
|
||||||
Architecture: all
|
|
||||||
Depends: nextcloud-client (>=${binary:Version}), libnextcloudsync0, python-nemo | nemo-python, nemo, ${misc:Depends}
|
|
||||||
Description: Nemo plugin for Nextcloud
|
|
||||||
This package contains a Nemo plugin to display
|
|
||||||
synchronization status icons for Nextcloud files.
|
|
||||||
|
|
||||||
Package: nextcloud-client-caja
|
|
||||||
Architecture: all
|
|
||||||
Depends: nextcloud-client (>=${binary:Version}), libnextcloudsync0, python-caja, caja, ${misc:Depends}
|
|
||||||
Description: Caja plugin for Nextcloud
|
|
||||||
This package contains a Caja plugin to display
|
|
||||||
synchronization status icons for Nextcloud files.
|
|
||||||
|
|
||||||
Package: nextcloud-client-dolphin
|
|
||||||
Architecture: any
|
|
||||||
Depends: dolphin (>= 4:15.12.1), libnextcloudsync0 (= ${binary:Version}), nextcloud-client, ${misc:Depends}, ${shlibs:Depends}
|
|
||||||
Description: Dolphin plugin for Nextcloud
|
|
||||||
This package contains a Dolphin plugin to display
|
|
||||||
synchronization status icons for Nextcloud files.
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
Files: *
|
|
||||||
Copyright: 2012-2015 ownCloud, inc.; Nuernberg, Germany., 2016 Nextcloud GmbH
|
|
||||||
License: GPL-2+
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
usr/include
|
|
||||||
usr/lib/*/libnextcloudsync.so
|
|
||||||
usr/lib/*/nextcloud/libocsync.so
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
etc
|
|
||||||
usr/lib/*/libnextcloudsync.so.?*
|
|
||||||
usr/lib/*/nextcloud/libocsync.so.?*
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
usr/share/caja-python
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
usr/lib/*/libnextclouddolphinpluginhelper.so
|
|
||||||
usr/lib/*/plugins/kf5/overlayicon/nextclouddolphinoverlayplugin.so
|
|
||||||
usr/lib/*/plugins/nextclouddolphinactionplugin.so
|
|
||||||
usr/share/kservices5/nextclouddolphinactionplugin.desktop
|
|
||||||
@@ -1,2 +0,0 @@
|
|||||||
nextcloud-client-dolphin: package-name-doesnt-match-sonames
|
|
||||||
nextcloud-client-dolphin: shlib-without-versioned-soname
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
activate-noawait ldconfig
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
usr/share/nextcloud/i18n
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
usr/share/nautilus-python
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
usr/share/nemo-python
|
|
||||||
@@ -1,4 +0,0 @@
|
|||||||
usr/bin
|
|
||||||
usr/share/applications
|
|
||||||
usr/share/icons
|
|
||||||
debian/101-sync-inotify.conf etc/sysctl.d
|
|
||||||
@@ -1,3 +0,0 @@
|
|||||||
nextcloud-client: binary-or-shlib-defines-rpath
|
|
||||||
nextcloud-client: binary-without-manpage
|
|
||||||
nextcloud-client: license-problem-convert-utf-code
|
|
||||||
@@ -1,12 +0,0 @@
|
|||||||
#!/usr/bin/make -f
|
|
||||||
# See debhelper(7) (uncomment to enable)
|
|
||||||
# output every command that modifies files on the build system.
|
|
||||||
#export DH_VERBOSE = 1
|
|
||||||
|
|
||||||
include /usr/share/cdbs/1/rules/debhelper.mk
|
|
||||||
include /usr/share/cdbs/1/class/cmake.mk
|
|
||||||
|
|
||||||
DEB_SHLIBDEPS_INCLUDE=$(CURDIR)/$(DEB_BUILDDIR)/csync/src
|
|
||||||
|
|
||||||
DEB_SRCDIR=.
|
|
||||||
DEB_CMAKE_EXTRA_FLAGS = -DCMAKE_SKIP_RPATH=OFF -DCMAKE_SKIP_BUILD_RPATH=ON -DCMAKE_BUILD_WITH_INSTALL_RPATH=ON
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
3.0 (quilt)
|
|
||||||
@@ -1,9 +0,0 @@
|
|||||||
nextcloud-client source: source-is-missing client/doc/ocdoc/_shared_assets/themes/bootstrap/static/bootstrap.js line length is 22206 characters (>512)
|
|
||||||
nextcloud-client source: source-is-missing client/doc/ocdoc/_shared_assets/themes/bootstrap/static/jquery.js
|
|
||||||
nextcloud-client source: source-is-missing client/doc/ocdoc/_shared_assets/themes/bootstrap/static/jquery.js line length is 32412 characters (>512)
|
|
||||||
nextcloud-client source: source-is-missing client/doc/ocdoc/_shared_assets/themes/owncloud_com/static/bootstrap.js line length is 22206 characters (>512)
|
|
||||||
nextcloud-client source: source-is-missing client/doc/ocdoc/_shared_assets/themes/owncloud_com/static/jquery.js line length is 32412 characters (>512)
|
|
||||||
nextcloud-client source: source-is-missing client/doc/ocdoc/_shared_assets/themes/owncloud_release/static/bootstrap.js line length is 22206 characters (>512)
|
|
||||||
nextcloud-client source: source-is-missing client/doc/ocdoc/_shared_assets/themes/owncloud_release/static/jquery.js line length is 32412 characters (>512)
|
|
||||||
nextcloud-client source: source-is-missing client/doc/ocdoc/_shared_assets/themes/owncloud_org/static/js/jquery-1.11.0.min.js
|
|
||||||
nextcloud-client source: license-problem-convert-utf-code
|
|
||||||
Binary file not shown.
@@ -1,50 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -e -u
|
|
||||||
|
|
||||||
scriptdir=`dirname $0`
|
|
||||||
|
|
||||||
DEFAULT_DIST=yakkety
|
|
||||||
|
|
||||||
package="nextcloud-client"
|
|
||||||
version="$1"
|
|
||||||
comment="$2"
|
|
||||||
distver="${3:-}"
|
|
||||||
|
|
||||||
if test -z "${distver}"; then
|
|
||||||
distver="1"
|
|
||||||
fi
|
|
||||||
|
|
||||||
packagedir="${scriptdir}/../${package}"
|
|
||||||
|
|
||||||
now=`date -R`
|
|
||||||
|
|
||||||
tmpfile="/tmp/addchange.$$"
|
|
||||||
|
|
||||||
for subdir in "${packagedir}/debian"*; do
|
|
||||||
if test -f "${subdir}/changelog"; then
|
|
||||||
echo "${subdir}"
|
|
||||||
bname=`basename "${subdir}"`
|
|
||||||
dist=`echo "${bname}" | sed 's:debian\.\?::'`
|
|
||||||
if test -z "${dist}"; then
|
|
||||||
dist="${DEFAULT_DIST}"
|
|
||||||
fi
|
|
||||||
if test "${dist}" = "stable"; then
|
|
||||||
versuffix=""
|
|
||||||
else
|
|
||||||
versuffix="~${dist}${distver}"
|
|
||||||
fi
|
|
||||||
cat > "${tmpfile}" <<EOF
|
|
||||||
${package} (${version}${versuffix}) ${dist}; urgency=medium
|
|
||||||
|
|
||||||
* ${comment}
|
|
||||||
|
|
||||||
-- István Váradi <ivaradi@varadiistvan.hu> ${now}
|
|
||||||
|
|
||||||
EOF
|
|
||||||
cat "${subdir}/changelog" >> "${tmpfile}"
|
|
||||||
mv "${tmpfile}" "${subdir}/changelog"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
|
|
||||||
rm -f "${tmpfile}"
|
|
||||||
@@ -1,26 +0,0 @@
|
|||||||
# The directory where the sources are found
|
|
||||||
SOURCES="${HOME}/sources/nextcloud/client"
|
|
||||||
|
|
||||||
# The directory into which the packages should be genereated
|
|
||||||
BUILDAREA="${SOURCES}/build-area"
|
|
||||||
|
|
||||||
# The directory containing the Git repositories
|
|
||||||
GITROOTS="${SOURCES}/git"
|
|
||||||
|
|
||||||
# The pbuilder root directory
|
|
||||||
PBUILDER_ROOT="${HOME}/pbuilder"
|
|
||||||
|
|
||||||
# The dependencies directory for pbuilder
|
|
||||||
PBUILDER_DEPS="${PBUILDER_ROOT}/deps"
|
|
||||||
|
|
||||||
# The version of the nextcloud-client package
|
|
||||||
NEXTCLOUD_CLIENT_VERSION=2.4.0
|
|
||||||
|
|
||||||
# The FULL version of the nextcloud-client package
|
|
||||||
NEXTCLOUD_CLIENT_FULL_VERSION="${NEXTCLOUD_CLIENT_VERSION}-1.0~@DISTRIBUTION@1"
|
|
||||||
|
|
||||||
# The tag of the nextcloud-client package
|
|
||||||
NEXTCLOUD_CLIENT_TAG="v${NEXTCLOUD_CLIENT_VERSION}"
|
|
||||||
|
|
||||||
# The number of CPUs that can be used for paralel builds
|
|
||||||
NUMCPUS=4
|
|
||||||
@@ -1,80 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -e -u
|
|
||||||
|
|
||||||
scriptdir=`dirname $0`
|
|
||||||
scriptdir=`cd "${scriptdir}" && pwd`
|
|
||||||
|
|
||||||
. "${scriptdir}/config.sh"
|
|
||||||
|
|
||||||
package="nextcloud-client"
|
|
||||||
tag="${1}"
|
|
||||||
version="${2}"
|
|
||||||
distribution="${3}"
|
|
||||||
|
|
||||||
gitdir="${GITROOTS}/client"
|
|
||||||
packagedir="${BUILDAREA}/${package}_${version}"
|
|
||||||
origtarname="${package}_${version}.orig.tar.bz2"
|
|
||||||
origtar="${BUILDAREA}/${origtarname}"
|
|
||||||
|
|
||||||
archive_submodules()
|
|
||||||
{
|
|
||||||
local subdir="${1}"
|
|
||||||
local treeish="${2}"
|
|
||||||
|
|
||||||
local dir="${gitdir}"
|
|
||||||
local destdir="${packagedir}"
|
|
||||||
if test "${subdir}"; then
|
|
||||||
echo " copying submodule ${subdir}"
|
|
||||||
dir="${dir}/${subdir}"
|
|
||||||
destdir="${destdir}/${subdir}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
mkdir -p "${destdir}"
|
|
||||||
|
|
||||||
(cd "${dir}"; git archive "${treeish}" | tar xf - -C "${destdir}")
|
|
||||||
|
|
||||||
(cd "${dir}"; git ls-tree "${treeish}" -r) | while read mode type object file; do
|
|
||||||
if test "${type}" = "commit"; then
|
|
||||||
sdir="${file}"
|
|
||||||
if test "${subdir}"; then
|
|
||||||
sdir="${subdir}/${sdir}"
|
|
||||||
fi
|
|
||||||
archive_submodules "${sdir}" "${object}"
|
|
||||||
fi
|
|
||||||
done
|
|
||||||
}
|
|
||||||
|
|
||||||
rm -rf "${packagedir}"
|
|
||||||
mkdir -p "${packagedir}"
|
|
||||||
|
|
||||||
echo "Updating submodules"
|
|
||||||
commit=`cd "${gitdir}"; git rev-parse HEAD`
|
|
||||||
(cd "${gitdir}"; git checkout "${tag}"; git submodule update --recursive --init)
|
|
||||||
|
|
||||||
echo "Copying sources"
|
|
||||||
archive_submodules "" "${tag}"
|
|
||||||
|
|
||||||
if test -f "${GITROOTS}/${origtarname}"; then
|
|
||||||
echo "Copying orig archive from ${GITROOTS}"
|
|
||||||
cp -a "${GITROOTS}/${origtarname}" "${BUILDAREA}"
|
|
||||||
else
|
|
||||||
echo "Creating orig archive"
|
|
||||||
tar cjf "${origtar}" -C "${BUILDAREA}" "${package}_${version}"
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "Restoring Git state"
|
|
||||||
(cd "${gitdir}"; git checkout "${commit}")
|
|
||||||
cd "${scriptdir}"
|
|
||||||
|
|
||||||
echo "Copying Debian files"
|
|
||||||
mkdir -p "${packagedir}/debian"
|
|
||||||
tar cf - -C "${scriptdir}/../debian" . | tar xf - -C "${packagedir}/debian"
|
|
||||||
|
|
||||||
if test -d "${scriptdir}/../debian.${distribution}"; then
|
|
||||||
tar cf - -C "${scriptdir}/../debian.${distribution}" . | tar xf - -C "${packagedir}/debian"
|
|
||||||
fi
|
|
||||||
|
|
||||||
"${scriptdir}/git2changelog.py" /tmp/git2changelog "${distribution}"
|
|
||||||
mv "${packagedir}/debian/changelog" "${packagedir}/debian/changelog.old"
|
|
||||||
cat /tmp/git2changelog "${packagedir}/debian/changelog.old" > "${packagedir}/debian/changelog"
|
|
||||||
@@ -1,8 +0,0 @@
|
|||||||
# Use the configuration below with appropriate changes,
|
|
||||||
# if you want to support a new client version using
|
|
||||||
# your own fork. In such a case the tags do not come
|
|
||||||
# accross to the main repo for a pull request, so
|
|
||||||
# some hacking is needed
|
|
||||||
[versionhack]
|
|
||||||
#commit = 30986d6
|
|
||||||
#tag = v2.3.3-beta
|
|
||||||
@@ -1,106 +0,0 @@
|
|||||||
#!//usr/bin/env python2.7
|
|
||||||
|
|
||||||
import subprocess
|
|
||||||
import re
|
|
||||||
import sys
|
|
||||||
import datetime
|
|
||||||
import os
|
|
||||||
import ConfigParser
|
|
||||||
|
|
||||||
distribution="yakkety"
|
|
||||||
|
|
||||||
versionTagRE = re.compile("^v([0-9]+((\.[0-9]+)+))(-(.+))?$")
|
|
||||||
|
|
||||||
def processVersionTag(tag):
|
|
||||||
m = versionTagRE.match(tag)
|
|
||||||
if m:
|
|
||||||
return (m.group(1), "release" if m.group(4) is None else "beta")
|
|
||||||
else:
|
|
||||||
return None
|
|
||||||
|
|
||||||
def collectEntries(baseCommit, baseVersion, kind):
|
|
||||||
scriptdir = os.path.dirname(__file__)
|
|
||||||
configPath = os.path.join(scriptdir, "git2changelog.cfg")
|
|
||||||
|
|
||||||
newVersionCommit = None
|
|
||||||
newVersionTag = None
|
|
||||||
newVersionOrigTag = None
|
|
||||||
|
|
||||||
if os.path.exists(configPath):
|
|
||||||
config = ConfigParser.SafeConfigParser()
|
|
||||||
config.read(configPath)
|
|
||||||
if config.has_section("versionhack"):
|
|
||||||
if config.has_option("versionhack", "commit") and \
|
|
||||||
config.has_option("versionhack", "tag"):
|
|
||||||
newVersionCommit = config.get("versionhack", "commit")
|
|
||||||
newVersionTag = config.get("versionhack", "tag")
|
|
||||||
|
|
||||||
entries = []
|
|
||||||
|
|
||||||
args = ["git", "log",
|
|
||||||
"--format=%h%x09%an%x09%ae%x09%aD%x09%ad%x09%s",
|
|
||||||
"--date=unix", "--author-date-order", "--reverse"]
|
|
||||||
try:
|
|
||||||
output = subprocess.check_output(args + [baseCommit + ".."])
|
|
||||||
except:
|
|
||||||
output = subprocess.check_output(args)
|
|
||||||
|
|
||||||
|
|
||||||
lastVersionTag = None
|
|
||||||
for line in output.splitlines():
|
|
||||||
(commit, name, email, date, revdate, subject) = line.split("\t")
|
|
||||||
revdate = datetime.datetime.utcfromtimestamp(long(revdate)).strftime("%Y%m%d.%H%M%S")
|
|
||||||
|
|
||||||
if commit==newVersionCommit:
|
|
||||||
result = processVersionTag(newVersionTag)
|
|
||||||
if result:
|
|
||||||
newVersionOrigTag = lastVersionTag
|
|
||||||
(baseVersion, kind) = result
|
|
||||||
|
|
||||||
for tag in subprocess.check_output(["git", "tag",
|
|
||||||
"--points-at",
|
|
||||||
commit]).splitlines():
|
|
||||||
if tag!=newVersionOrigTag:
|
|
||||||
result = processVersionTag(tag)
|
|
||||||
if result:
|
|
||||||
lastVersionTag = tag
|
|
||||||
(baseVersion, kind) = result
|
|
||||||
|
|
||||||
entries.append((commit, name, email, date, revdate, subject,
|
|
||||||
baseVersion, kind))
|
|
||||||
|
|
||||||
entries.reverse()
|
|
||||||
|
|
||||||
return entries
|
|
||||||
|
|
||||||
def genChangeLogEntries(f, entries, distribution):
|
|
||||||
latestBaseVersion = None
|
|
||||||
latestKind = None
|
|
||||||
for (commit, name, email, date, revdate, subject, baseVersion, kind) in entries:
|
|
||||||
if latestBaseVersion is None:
|
|
||||||
latestBaseVersion = baseVersion
|
|
||||||
latestKind = kind
|
|
||||||
upstreamVersion = baseVersion + "-" + revdate
|
|
||||||
if distribution=="stable":
|
|
||||||
version = upstreamVersion
|
|
||||||
else:
|
|
||||||
version = upstreamVersion + "~" + distribution + "1"
|
|
||||||
print >> f, "nextcloud-client (%s) %s; urgency=medium" % (version, distribution)
|
|
||||||
print >> f
|
|
||||||
print >> f, " * " + subject
|
|
||||||
print >> f
|
|
||||||
print >> f, " -- %s <%s> %s" % (name, email, date)
|
|
||||||
print >> f
|
|
||||||
return (latestBaseVersion, latestKind)
|
|
||||||
|
|
||||||
if __name__ == "__main__":
|
|
||||||
|
|
||||||
distribution = sys.argv[2]
|
|
||||||
|
|
||||||
#entries = collectEntries("8aade24147b5313f8241a8b42331442b7f40eef9", "2.2.4", "release")
|
|
||||||
entries = collectEntries("f9b1c724d6ab5431e0cd56b7cd834f2dd48cebb1", "2.4.0", "release")
|
|
||||||
|
|
||||||
|
|
||||||
with open(sys.argv[1], "wt") as f:
|
|
||||||
(baseVersion, kind) = genChangeLogEntries(f, entries, distribution)
|
|
||||||
print baseVersion, kind
|
|
||||||
@@ -1,17 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -e -u
|
|
||||||
|
|
||||||
scriptdir=`dirname $0`
|
|
||||||
scriptdir=`cd "${scriptdir}" && pwd`
|
|
||||||
|
|
||||||
. "${scriptdir}/config.sh"
|
|
||||||
|
|
||||||
distribution="${1}"
|
|
||||||
shift
|
|
||||||
|
|
||||||
pushd /
|
|
||||||
"${scriptdir}/build.sh" "${distribution}" -S "$@"
|
|
||||||
|
|
||||||
"${scriptdir}/pbuilder.sh" "${distribution}" "$@"
|
|
||||||
popd
|
|
||||||
@@ -1,21 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -e -u
|
|
||||||
|
|
||||||
scriptdir=`dirname $0`
|
|
||||||
|
|
||||||
. "${scriptdir}/config.sh"
|
|
||||||
|
|
||||||
distribution="${1}"
|
|
||||||
shift
|
|
||||||
|
|
||||||
resultdir="${PBUILDER_ROOT}/${distribution}_result"
|
|
||||||
|
|
||||||
rm -f "${PBUILDER_DEPS}/"*.deb
|
|
||||||
echo -n > "${PBUILDER_DEPS}/Packages"
|
|
||||||
rm -f "${resultdir}/"*
|
|
||||||
|
|
||||||
source "${HOME}/.pbuilderrc"
|
|
||||||
|
|
||||||
dscversion=`echo ${NEXTCLOUD_CLIENT_FULL_VERSION} | sed "s:@DISTRIBUTION@:${distribution}:g"`
|
|
||||||
pbuilder-dist "${distribution}" build --othermirror "${OTHERMIRROR}" --debbuildopts "-j${NUMCPUS}" "$@" "${BUILDAREA}/nextcloud-client_${dscversion}.dsc"
|
|
||||||
Binary file not shown.
@@ -1,143 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
|
|
||||||
set -xe
|
|
||||||
shopt -s extglob
|
|
||||||
|
|
||||||
TRAVIS_BUILD_STEP="$1"
|
|
||||||
|
|
||||||
PPA=ppa:nextcloud-devs/client-alpha
|
|
||||||
PPA_BETA=ppa:nextcloud-devs/client-beta
|
|
||||||
|
|
||||||
OBS_PROJECT=home:ivaradi:alpha
|
|
||||||
OBS_PROJECT_BETA=home:ivaradi:beta
|
|
||||||
OBS_PACKAGE=nextcloud-client
|
|
||||||
|
|
||||||
if [ "$TRAVIS_BUILD_STEP" == "install" ]; then
|
|
||||||
sudo apt-get update -q
|
|
||||||
sudo apt-get install -y devscripts cdbs osc
|
|
||||||
|
|
||||||
if test "$encrypted_585e03da75ed_key" -a "$encrypted_585e03da75ed_iv"; then
|
|
||||||
openssl aes-256-cbc -K $encrypted_585e03da75ed_key -iv $encrypted_585e03da75ed_iv -in admin/linux/debian/signing-key.txt.enc -d | gpg --import
|
|
||||||
echo "DEBUILD_DPKG_BUILDPACKAGE_OPTS='-k7D14AA7B'" >> ~/.devscripts
|
|
||||||
|
|
||||||
openssl aes-256-cbc -K $encrypted_585e03da75ed_key -iv $encrypted_585e03da75ed_iv -in admin/linux/debian/oscrc.enc -out ~/.oscrc -d
|
|
||||||
|
|
||||||
touch ~/.has_ppa_keys
|
|
||||||
elif test "$encrypted_8da7a4416c7a_key" -a "$encrypted_8da7a4416c7a_iv"; then
|
|
||||||
openssl aes-256-cbc -K $encrypted_8da7a4416c7a_key -iv $encrypted_8da7a4416c7a_iv -in admin/linux/debian/oscrc.enc -out ~/.oscrc -d
|
|
||||||
PPA=ppa:ivaradi/nextcloud-client-exp
|
|
||||||
elif test "$encrypted_c5306c5c5331_key" -a "$encrypted_c5306c5c5331_key"; then
|
|
||||||
openssl aes-256-cbc -K $encrypted_c5306c5c5331_key -iv $encrypted_c5306c5c5331_iv -in admin/linux/debian/oscrc.enc -out ~/.oscrc -d
|
|
||||||
PPA=ppa:ivaradi/nextcloud-client-exp
|
|
||||||
elif test "$encrypted_5dafbd038603_key" -a "$encrypted_5dafbd038603_iv"; then
|
|
||||||
openssl aes-256-cbc -K $encrypted_5dafbd038603_key -iv $encrypted_5dafbd038603_iv -in admin/linux/debian/signing-key.txt.enc -d | gpg --import
|
|
||||||
echo "DEBUILD_DPKG_BUILDPACKAGE_OPTS='-k7D14AA7B'" >> ~/.devscripts
|
|
||||||
|
|
||||||
|
|
||||||
openssl aes-256-cbc -K $encrypted_5dafbd038603_key -iv $encrypted_5dafbd038603_iv -in admin/linux/debian/oscrc.enc -out ~/.oscrc -d
|
|
||||||
|
|
||||||
touch ~/.has_ppa_keys
|
|
||||||
fi
|
|
||||||
|
|
||||||
elif [ "$TRAVIS_BUILD_STEP" == "script" ]; then
|
|
||||||
read basever kind <<<$(admin/linux/debian/scripts/git2changelog.py /tmp/tmpchangelog stable)
|
|
||||||
|
|
||||||
cd ..
|
|
||||||
|
|
||||||
echo "$kind" > kind
|
|
||||||
kind="release"
|
|
||||||
|
|
||||||
if test "$encrypted_5dafbd038603_key" -a "$encrypted_5dafbd038603_iv"; then
|
|
||||||
repo=ivaradi/nextcloud-client-exp
|
|
||||||
else
|
|
||||||
if test "$kind" = "beta"; then
|
|
||||||
repo=nextcloud-devs/client-beta
|
|
||||||
else
|
|
||||||
repo=nextcloud-devs/client-alpha
|
|
||||||
fi
|
|
||||||
fi
|
|
||||||
|
|
||||||
|
|
||||||
if test -d nextcloud.client; then
|
|
||||||
gitdir="nextcloud.client"
|
|
||||||
else
|
|
||||||
gitdir="client"
|
|
||||||
fi
|
|
||||||
|
|
||||||
origsourceopt=""
|
|
||||||
|
|
||||||
if ! wget http://ppa.launchpad.net/${repo}/ubuntu/pool/main/n/nextcloud-client/nextcloud-client_${basever}.orig.tar.bz2; then
|
|
||||||
mv ${gitdir} nextcloud-client_${basever}
|
|
||||||
tar cjf nextcloud-client_${basever}.orig.tar.bz2 --exclude .git nextcloud-client_${basever}
|
|
||||||
mv nextcloud-client_${basever} ${gitdir}
|
|
||||||
origsourceopt="-sa"
|
|
||||||
fi
|
|
||||||
|
|
||||||
for distribution in xenial zesty artful stable; do
|
|
||||||
rm -rf nextcloud-client_${basever}
|
|
||||||
cp -a ${gitdir} nextcloud-client_${basever}
|
|
||||||
|
|
||||||
cd nextcloud-client_${basever}
|
|
||||||
|
|
||||||
cp -a admin/linux/debian/debian .
|
|
||||||
if test -d admin/linux/debian/debian.${distribution}; then
|
|
||||||
tar cf - -C admin/linux/debian/debian.${distribution} . | tar xf - -C debian
|
|
||||||
fi
|
|
||||||
|
|
||||||
admin/linux/debian/scripts/git2changelog.py /tmp/tmpchangelog ${distribution}
|
|
||||||
cp /tmp/tmpchangelog debian/changelog
|
|
||||||
if test -f admin/linux/debian/debian.${distribution}/changelog; then
|
|
||||||
cat admin/linux/debian/debian.${distribution}/changelog >> debian/changelog
|
|
||||||
else
|
|
||||||
cat admin/linux/debian/debian/changelog >> debian/changelog
|
|
||||||
fi
|
|
||||||
|
|
||||||
EDITOR=true dpkg-source --commit . local-changes
|
|
||||||
|
|
||||||
if test -f ~/.has_ppa_keys; then
|
|
||||||
debuild -S ${origsourceopt}
|
|
||||||
else
|
|
||||||
debuild -S ${origsourceopt} -us -uc
|
|
||||||
fi
|
|
||||||
|
|
||||||
cd ..
|
|
||||||
done
|
|
||||||
|
|
||||||
elif [ "$TRAVIS_BUILD_STEP" == "ppa_deploy" ]; then
|
|
||||||
cd ..
|
|
||||||
|
|
||||||
kind=`cat kind`
|
|
||||||
|
|
||||||
if test "$encrypted_5dafbd038603_key" -a "$encrypted_5dafbd038603_iv"; then
|
|
||||||
PPA=ppa:ivaradi/nextcloud-client-exp
|
|
||||||
fi
|
|
||||||
|
|
||||||
echo "kind: $kind"
|
|
||||||
|
|
||||||
if test "$kind" = "beta"; then
|
|
||||||
PPA=$PPA_BETA
|
|
||||||
OBS_PROJECT=$OBS_PROJECT_BETA
|
|
||||||
fi
|
|
||||||
OBS_SUBDIR="${OBS_PROJECT}/${OBS_PACKAGE}"
|
|
||||||
|
|
||||||
if test -f ~/.has_ppa_keys; then
|
|
||||||
for changes in nextcloud-client_*~+([a-z])1_source.changes; do
|
|
||||||
dput $PPA $changes > /dev/null
|
|
||||||
done
|
|
||||||
fi
|
|
||||||
|
|
||||||
mkdir osc
|
|
||||||
cd osc
|
|
||||||
osc co ${OBS_PROJECT} ${OBS_PACKAGE}
|
|
||||||
if test "$(ls ${OBS_SUBDIR})"; then
|
|
||||||
osc delete ${OBS_SUBDIR}/*
|
|
||||||
fi
|
|
||||||
cp ../nextcloud-client*.orig.tar.* ${OBS_SUBDIR}/
|
|
||||||
cp ../nextcloud-client_*[0-9.][0-9].dsc ${OBS_SUBDIR}/
|
|
||||||
cp ../nextcloud-client_*[0-9.][0-9].debian.tar* ${OBS_SUBDIR}/
|
|
||||||
cp ../nextcloud-client_*[0-9.][0-9]_source.changes ${OBS_SUBDIR}/
|
|
||||||
osc add ${OBS_SUBDIR}/*
|
|
||||||
|
|
||||||
cd ${OBS_SUBDIR}
|
|
||||||
osc commit -m "Travis update"
|
|
||||||
fi
|
|
||||||
@@ -1,19 +0,0 @@
|
|||||||
#!/bin/bash
|
|
||||||
# Copyright (C) 2017 Marco Trevisan
|
|
||||||
|
|
||||||
set -xe
|
|
||||||
|
|
||||||
TRAVIS_BUILD_STEP="$1"
|
|
||||||
THIS_PATH=$(dirname $0)
|
|
||||||
|
|
||||||
if [ -z "$TRAVIS_BUILD_STEP" ]; then
|
|
||||||
echo "No travis build step defined"
|
|
||||||
exit 0
|
|
||||||
fi
|
|
||||||
|
|
||||||
if [ "$BUILD_TYPE" == "debian" ]; then
|
|
||||||
admin/linux/debian/travis-build.sh "$@"
|
|
||||||
else
|
|
||||||
echo 'No $BUILD_TYPE defined'
|
|
||||||
exit 1
|
|
||||||
fi
|
|
||||||
@@ -1,6 +1,6 @@
|
|||||||
|
|
||||||
# Check if varialbe MAC_INSTALLER_BACKGROUND_FILE is defined. That might come
|
# Check if varialbe MAC_INSTALLER_BACKGROUND_FILE is defined. That might come
|
||||||
# from the OEM.cmake for branded clients or from NEXTCLOUD.cmake for the non
|
# from the OEM.cmake for branded clients or from OWNCLOUD.cmake for the non
|
||||||
# branded client.
|
# branded client.
|
||||||
# Make sure that the MAC_INSTALLER_BACKGROUND_FILE contains the full path, ie.
|
# Make sure that the MAC_INSTALLER_BACKGROUND_FILE contains the full path, ie.
|
||||||
# includes CMAKE_SOURCE_DIR or so.
|
# includes CMAKE_SOURCE_DIR or so.
|
||||||
|
|||||||
@@ -506,6 +506,536 @@
|
|||||||
<key>UUID</key>
|
<key>UUID</key>
|
||||||
<string>7D7219B7-1897-48C3-8533-842BDEC46F71</string>
|
<string>7D7219B7-1897-48C3-8533-842BDEC46F71</string>
|
||||||
</dict>
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>PACKAGE_FILES</key>
|
||||||
|
<dict>
|
||||||
|
<key>DEFAULT_INSTALL_LOCATION</key>
|
||||||
|
<string>/</string>
|
||||||
|
<key>HIERARCHY</key>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>80</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Utilities</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>80</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Applications</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>509</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>80</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Application Support</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Documentation</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Filesystems</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Frameworks</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Input Methods</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Internet Plug-Ins</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>LaunchAgents</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>LaunchDaemons</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>PreferencePanes</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Preferences</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>80</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Printers</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>PrivilegedHelperTools</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>QuickLook</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>QuickTime</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Screen Savers</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Library/ScriptingAdditions/SyncStateFinder.osax/Contents</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>3</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>3</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>SyncStateFinder.osax</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>2</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>ScriptingAdditions</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>2</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Scripts</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Services</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Widgets</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Library</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Extensions</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Library</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>System</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>CHILDREN</key>
|
||||||
|
<array/>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Shared</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>1023</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>80</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>Users</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>GID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PATH</key>
|
||||||
|
<string>/</string>
|
||||||
|
<key>PATH_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>PERMISSIONS</key>
|
||||||
|
<integer>493</integer>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>UID</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
</dict>
|
||||||
|
<key>PAYLOAD_TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>VERSION</key>
|
||||||
|
<integer>2</integer>
|
||||||
|
</dict>
|
||||||
|
<key>PACKAGE_SCRIPTS</key>
|
||||||
|
<dict>
|
||||||
|
<key>POSTINSTALL_PATH</key>
|
||||||
|
<dict/>
|
||||||
|
<key>PREINSTALL_PATH</key>
|
||||||
|
<dict/>
|
||||||
|
<key>RESOURCES</key>
|
||||||
|
<array/>
|
||||||
|
</dict>
|
||||||
|
<key>PACKAGE_SETTINGS</key>
|
||||||
|
<dict>
|
||||||
|
<key>AUTHENTICATION</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>CONCLUSION_ACTION</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>IDENTIFIER</key>
|
||||||
|
<string>com.ownCloud.finderPlugin</string>
|
||||||
|
<key>LOCATION</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>NAME</key>
|
||||||
|
<string>Legacy Finder Plugin (OS X 10.9 or older)</string>
|
||||||
|
<key>OVERWRITE_PERMISSIONS</key>
|
||||||
|
<false/>
|
||||||
|
<key>VERSION</key>
|
||||||
|
<string>@MIRALL_VERSION_FULL@</string>
|
||||||
|
</dict>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>UUID</key>
|
||||||
|
<string>39F61FCD-6EAA-4F3A-81C6-25E3F667DFB5</string>
|
||||||
|
</dict>
|
||||||
</array>
|
</array>
|
||||||
<key>PROJECT</key>
|
<key>PROJECT</key>
|
||||||
<dict>
|
<dict>
|
||||||
@@ -573,6 +1103,49 @@
|
|||||||
<key>UUID</key>
|
<key>UUID</key>
|
||||||
<string>9647ADC0-BD53-4D7D-A561-73D383AACDE1</string>
|
<string>9647ADC0-BD53-4D7D-A561-73D383AACDE1</string>
|
||||||
</dict>
|
</dict>
|
||||||
|
<dict>
|
||||||
|
<key>DESCRIPTION</key>
|
||||||
|
<array/>
|
||||||
|
<key>OPTIONS</key>
|
||||||
|
<dict>
|
||||||
|
<key>HIDDEN</key>
|
||||||
|
<false/>
|
||||||
|
<key>STATE</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
</dict>
|
||||||
|
<key>PACKAGE_UUID</key>
|
||||||
|
<string>39F61FCD-6EAA-4F3A-81C6-25E3F667DFB5</string>
|
||||||
|
<key>REQUIREMENTS</key>
|
||||||
|
<array>
|
||||||
|
<dict>
|
||||||
|
<key>BEHAVIOR</key>
|
||||||
|
<integer>1</integer>
|
||||||
|
<key>DICTIONARY</key>
|
||||||
|
<dict>
|
||||||
|
<key>IC_REQUIREMENT_JAVASCRIPT_FUNCTION</key>
|
||||||
|
<string>olderOsx</string>
|
||||||
|
<key>IC_REQUIREMENT_JAVASCRIPT_PARAMETERS</key>
|
||||||
|
<array/>
|
||||||
|
</dict>
|
||||||
|
<key>IDENTIFIER</key>
|
||||||
|
<string>fr.whitebox.Packages.requirement.javascript</string>
|
||||||
|
<key>MESSAGE</key>
|
||||||
|
<array/>
|
||||||
|
<key>NAME</key>
|
||||||
|
<string>JavaScript</string>
|
||||||
|
<key>STATE</key>
|
||||||
|
<true/>
|
||||||
|
</dict>
|
||||||
|
</array>
|
||||||
|
<key>TITLE</key>
|
||||||
|
<array/>
|
||||||
|
<key>TOOLTIP</key>
|
||||||
|
<array/>
|
||||||
|
<key>TYPE</key>
|
||||||
|
<integer>0</integer>
|
||||||
|
<key>UUID</key>
|
||||||
|
<string>1D2C47E0-5FD3-4623-B934-1347C66782D0</string>
|
||||||
|
</dict>
|
||||||
</array>
|
</array>
|
||||||
<key>REMOVED</key>
|
<key>REMOVED</key>
|
||||||
<dict/>
|
<dict/>
|
||||||
@@ -877,6 +1450,18 @@
|
|||||||
<string>@CMAKE_INSTALL_DIR@</string>
|
<string>@CMAKE_INSTALL_DIR@</string>
|
||||||
</dict>
|
</dict>
|
||||||
</dict>
|
</dict>
|
||||||
|
<key>SHARED_GLOBAL_DATA</key>
|
||||||
|
<dict>
|
||||||
|
<key>IC_REQUIREMENT_JAVASCRIPT_SHARED_SOURCE_CODE</key>
|
||||||
|
<string>
|
||||||
|
function olderOsx() {
|
||||||
|
if(system.compareVersions(system.version.ProductVersion, '10.10') == -1) {
|
||||||
|
return true;
|
||||||
|
}
|
||||||
|
return false;
|
||||||
|
}
|
||||||
|
</string>
|
||||||
|
</dict>
|
||||||
<key>TYPE</key>
|
<key>TYPE</key>
|
||||||
<integer>0</integer>
|
<integer>0</integer>
|
||||||
<key>VERSION</key>
|
<key>VERSION</key>
|
||||||
|
|||||||
@@ -3,4 +3,7 @@
|
|||||||
# kill the old version. see issue #2044
|
# kill the old version. see issue #2044
|
||||||
killall @APPLICATION_EXECUTABLE@
|
killall @APPLICATION_EXECUTABLE@
|
||||||
|
|
||||||
|
# Unload the Finder plugin. see issue #2105
|
||||||
|
killall Finder
|
||||||
|
|
||||||
exit 0
|
exit 0
|
||||||
|
|||||||
@@ -27,8 +27,8 @@ SET(QT_MKSPECS_DIR ${CMAKE_FIND_ROOT_PATH}/share/qt5/mkspecs)
|
|||||||
SET(QT_QT_INCLUDE_DIR ${CMAKE_FIND_ROOT_PATH}/include)
|
SET(QT_QT_INCLUDE_DIR ${CMAKE_FIND_ROOT_PATH}/include)
|
||||||
|
|
||||||
# qt tools
|
# qt tools
|
||||||
SET(QT_QMAKE_EXECUTABLE ${MINGW_PREFIX}-qmake-qt5)
|
SET(QT_QMAKE_EXECUTABLE ${MINGW_PREFIX}-qmake )
|
||||||
SET(QT_MOC_EXECUTABLE ${MINGW_PREFIX}-moc-qt5)
|
SET(QT_MOC_EXECUTABLE ${MINGW_PREFIX}-moc)
|
||||||
SET(QT_RCC_EXECUTABLE ${MINGW_PREFIX}-rcc-qt5)
|
SET(QT_RCC_EXECUTABLE ${MINGW_PREFIX}-rcc)
|
||||||
SET(Qt5Widgets_UIC_EXECUTABLE ${MINGW_PREFIX}-uic-qt5)
|
SET(QT_UIC_EXECUTABLE ${MINGW_PREFIX}-uic)
|
||||||
SET(QT_LRELEASE_EXECUTABLE ${MINGW_PREFIX}-lrelease-qt5)
|
SET(QT_LRELEASE_EXECUTABLE ${MINGW_PREFIX}-lrelease)
|
||||||
|
|||||||
@@ -1,20 +1,22 @@
|
|||||||
FROM opensuse:42.1
|
FROM opensuse:42.1
|
||||||
|
|
||||||
|
MAINTAINER Daniel Molkentin <danimo@owncloud.com>
|
||||||
|
|
||||||
ENV TERM ansi
|
ENV TERM ansi
|
||||||
ENV HOME /root
|
ENV HOME /root
|
||||||
|
|
||||||
ENV REFRESHED_AT 20170113
|
ENV REFRESHED_AT 20160421
|
||||||
|
|
||||||
RUN zypper --non-interactive --gpg-auto-import-keys refresh
|
RUN zypper --non-interactive --gpg-auto-import-keys refresh
|
||||||
RUN zypper --non-interactive --gpg-auto-import-keys ar http://download.opensuse.org/repositories/windows:/mingw/openSUSE_Leap_42.1/windows:mingw.repo
|
RUN zypper --non-interactive --gpg-auto-import-keys ar http://download.opensuse.org/repositories/windows:/mingw/openSUSE_42.1/windows:mingw.repo
|
||||||
RUN zypper --non-interactive --gpg-auto-import-keys ar http://download.opensuse.org/repositories/isv:ownCloud:toolchains:mingw:win32:2.3/openSUSE_Leap_42.1/isv:ownCloud:toolchains:mingw:win32:2.3.repo
|
RUN zypper --non-interactive --gpg-auto-import-keys ar http://download.opensuse.org/repositories/isv:ownCloud:toolchains:mingw:win32:2.3/openSUSE_Leap_42.1/isv:ownCloud:toolchains:mingw:win32:2.3.repo
|
||||||
RUN zypper --non-interactive --gpg-auto-import-keys install cmake make mingw32-cross-binutils mingw32-cross-cpp mingw32-cross-gcc \
|
RUN zypper --non-interactive --gpg-auto-import-keys install cmake make mingw32-cross-binutils mingw32-cross-cpp mingw32-cross-gcc \
|
||||||
mingw32-cross-gcc-c++ mingw32-cross-pkg-config mingw32-filesystem \
|
mingw32-cross-gcc-c++ mingw32-cross-pkg-config mingw32-filesystem \
|
||||||
mingw32-headers mingw32-runtime site-config mingw32-libwebp mingw32-libssp0 \
|
mingw32-headers mingw32-runtime site-config mingw32-libwebp \
|
||||||
mingw32-cross-libqt5-qmake mingw32-cross-libqt5-qttools mingw32-libqt5* \
|
mingw32-cross-libqt5-qmake mingw32-cross-libqt5-qttools mingw32-libqt5* \
|
||||||
mingw32-qt5keychain* mingw32-angleproject* \
|
mingw32-qt5keychain* mingw32-angleproject* \
|
||||||
mingw32-cross-nsis mingw32-libopenssl* \
|
mingw32-cross-nsis mingw32-libopenssl* \
|
||||||
mingw32-sqlite* png2ico \
|
mingw32-sqlite* kdewin-png2ico \
|
||||||
osslsigncode wget
|
osslsigncode wget
|
||||||
|
|
||||||
# RPM depends on curl for installs from HTTP
|
# RPM depends on curl for installs from HTTP
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 4.2 KiB After Width: | Height: | Size: 2.9 KiB |
@@ -3,7 +3,7 @@ StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Vis versjonsmerknader"
|
|||||||
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Fant ${APPLICATION_EXECUTABLE}-prosess(er) som må stoppes.$\nVil du at installasjonsprogrammet skal stoppe dem for deg?"
|
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "Fant ${APPLICATION_EXECUTABLE}-prosess(er) som må stoppes.$\nVil du at installasjonsprogrammet skal stoppe dem for deg?"
|
||||||
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Terminerer ${APPLICATION_EXECUTABLE}-prosesser."
|
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Terminerer ${APPLICATION_EXECUTABLE}-prosesser."
|
||||||
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Fant ikke prosess som skulle termineres!"
|
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "Fant ikke prosess som skulle termineres!"
|
||||||
StrCpy $PageReinstall_NEW_Field_1 "En eldre versjon av ${APPLICATION_NAME} er installert på systemet ditt. Det anbefales at du avinstallerer den versjonen før installering av ny versjon. Velg hva du vil gjøre og klikk Neste for å fortsette."
|
StrCpy $PageReinstall_NEW_Field_1 "En eldre versjon av ${APPLICATION_NAME} er installert på systemet ditt. Det anbefales at du avnistallerer den versjonen før installering av ny versjon. Velg hva du vil gjøre og klikk Neste for å fortsette."
|
||||||
StrCpy $PageReinstall_NEW_Field_2 "Avinstaller før installering"
|
StrCpy $PageReinstall_NEW_Field_2 "Avinstaller før installering"
|
||||||
StrCpy $PageReinstall_NEW_Field_3 "Ikke avinstaller"
|
StrCpy $PageReinstall_NEW_Field_3 "Ikke avinstaller"
|
||||||
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Allerede installert"
|
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Allerede installert"
|
||||||
|
|||||||
@@ -1,9 +1,9 @@
|
|||||||
# Auto-generated - do not modify
|
# Auto-generated - do not modify
|
||||||
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Mostrar las notas de la versión"
|
StrCpy $MUI_FINISHPAGE_SHOWREADME_TEXT_STRING "Mostrar las notas de la versión"
|
||||||
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "El/los proceso(s) ${APPLICATION_EXECUTABLE} debe(n) ser detenido(s).$\n¿Quiere que el instalador lo haga por usted?"
|
StrCpy $ConfirmEndProcess_MESSAGEBOX_TEXT "El/los proceso/s ${APPLICATION_EXECUTABLE} debe/n ser detenidos.$\n¿Quiere que el instalador lo haga por usted?"
|
||||||
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Deteniendo el/los proceso(s) ${APPLICATION_EXECUTABLE}."
|
StrCpy $ConfirmEndProcess_KILLING_PROCESSES_TEXT "Deteniendo el/los proceso/s ${APPLICATION_EXECUTABLE}."
|
||||||
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "¡Proceso a finalizar no encontrado!"
|
StrCpy $ConfirmEndProcess_KILL_NOT_FOUND_TEXT "¡Proceso a finalizar no encontrado!"
|
||||||
StrCpy $PageReinstall_NEW_Field_1 "Una versión anterior de ${APPLICATION_NAME} se encuentra instalada en el sistema. Se recomienda desinstalar la versión actual antes de instalar la nueva. Seleccione la operacion deseada y haga click en Siguiente para continuar."
|
StrCpy $PageReinstall_NEW_Field_1 "Una versión anterior de ${APPLICATION_NAME} se encuentra instalada en el sistema. Se recomienda de instalar la versión actual antes de instalar la nueva. Seleccione la operacion deseada y haga click en Siguiente para continuar."
|
||||||
StrCpy $PageReinstall_NEW_Field_2 "Desinstalar antes de instalar"
|
StrCpy $PageReinstall_NEW_Field_2 "Desinstalar antes de instalar"
|
||||||
StrCpy $PageReinstall_NEW_Field_3 "No desinstalar"
|
StrCpy $PageReinstall_NEW_Field_3 "No desinstalar"
|
||||||
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Ya está instalado"
|
StrCpy $PageReinstall_NEW_MUI_HEADER_TEXT_TITLE "Ya está instalado"
|
||||||
@@ -17,13 +17,13 @@ StrCpy $PageReinstall_SAME_MUI_HEADER_TEXT_SUBTITLE "Elija la opcion de mantenim
|
|||||||
StrCpy $SEC_APPLICATION_DETAILS "Instalando ${APPLICATION_NAME} esenciales."
|
StrCpy $SEC_APPLICATION_DETAILS "Instalando ${APPLICATION_NAME} esenciales."
|
||||||
StrCpy $OPTION_SECTION_SC_SHELL_EXT_SECTION "Integración para Windows Explorer"
|
StrCpy $OPTION_SECTION_SC_SHELL_EXT_SECTION "Integración para Windows Explorer"
|
||||||
StrCpy $OPTION_SECTION_SC_SHELL_EXT_DetailPrint "Instalando la integración para Windows Explorer"
|
StrCpy $OPTION_SECTION_SC_SHELL_EXT_DetailPrint "Instalando la integración para Windows Explorer"
|
||||||
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Acceso directo al programa en Menú de Inicio"
|
StrCpy $OPTION_SECTION_SC_START_MENU_SECTION "Acceso directo al programa Menú de Inicio"
|
||||||
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Añadiendo accesos directos para ${APPLICATION_NAME} en el Menú de Inicio."
|
StrCpy $OPTION_SECTION_SC_START_MENU_DetailPrint "Añadiendo accesos directos para ${APPLICATION_NAME} en el Menú de Inicio."
|
||||||
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Acceso directo de Escritorio"
|
StrCpy $OPTION_SECTION_SC_DESKTOP_SECTION "Acceso directo de Escritorio"
|
||||||
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Creando accesos directos de escritorio"
|
StrCpy $OPTION_SECTION_SC_DESKTOP_DetailPrint "Creando accesos directos de escritorio"
|
||||||
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Atajo de acceso rápido"
|
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_SECTION "Atajo de accceso rápido"
|
||||||
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Creando un Acceso Directo al Lanzador Rápido"
|
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_DetailPrint "Creando un Acceso Directo al Lanzador Rápido"
|
||||||
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} esenciales."
|
StrCpy $OPTION_SECTION_SC_APPLICATION_Desc "${APPLICATION_NAME} esencial."
|
||||||
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "Acceso Directo de ${APPLICATION_NAME}"
|
StrCpy $OPTION_SECTION_SC_START_MENU_Desc "Acceso Directo de ${APPLICATION_NAME}"
|
||||||
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Acceso Directo de Escritorio para ${APPLICATION_NAME}"
|
StrCpy $OPTION_SECTION_SC_DESKTOP_Desc "Acceso Directo de Escritorio para ${APPLICATION_NAME}"
|
||||||
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Lanzador Rápido de Accesos Director para ${APPLICATION_NAME}."
|
StrCpy $OPTION_SECTION_SC_QUICK_LAUNCH_Desc "Lanzador Rápido de Accesos Director para ${APPLICATION_NAME}."
|
||||||
|
|||||||
Binary file not shown.
|
Before Width: | Height: | Size: 9.2 KiB After Width: | Height: | Size: 34 KiB |
Binary file not shown.
|
Before Width: | Height: | Size: 151 KiB After Width: | Height: | Size: 151 KiB |
45
appveyor.ini
45
appveyor.ini
@@ -1,45 +0,0 @@
|
|||||||
[General]
|
|
||||||
Branch = master
|
|
||||||
ShallowClone = True
|
|
||||||
Command=craft
|
|
||||||
|
|
||||||
# Variables defined here override the default value
|
|
||||||
# The variable names are casesensitive
|
|
||||||
[Variables]
|
|
||||||
#Values need to be overwritten to create a chache
|
|
||||||
UseCache = True
|
|
||||||
CreateCache = False
|
|
||||||
|
|
||||||
# Settings applicable for all Crafts matrices
|
|
||||||
# Settings are Category/key=value
|
|
||||||
# Category is case sensitive
|
|
||||||
|
|
||||||
[GeneralSettings]
|
|
||||||
General/EMERGE_PKGDSTDIR=${Variables:APPVEYOR_BUILD_FOLDER}/binaries
|
|
||||||
Paths/python = C:\Python36
|
|
||||||
Paths/python27 = C:\Python27
|
|
||||||
Paths/downloaddir = ${Variables:Root}\downloads
|
|
||||||
ShortPath/Enabled = False
|
|
||||||
ShortPath/EnableJunctions = True
|
|
||||||
ShortPath/JunctionDir = C:\CM-SP\
|
|
||||||
Packager/CacheDir = ${Variables:Root}\cache
|
|
||||||
Packager/UseCache = ${Variables:UseCache}
|
|
||||||
Packager/CreateCache = ${Variables:CreateCache}
|
|
||||||
; Packager/RepositoryUrl = https://files.kde.org/craft/
|
|
||||||
Packager/PackageType = PortablePackager
|
|
||||||
Packager/RepositoryUrl = http://ftp.acc.umu.se/mirror/kde.org/files/craft/master/
|
|
||||||
Compile/BuildType = RelWithDebInfo
|
|
||||||
ContinuousIntegration/Enabled = True
|
|
||||||
|
|
||||||
[BlueprintSettings]
|
|
||||||
# don't try to pip install on the ci
|
|
||||||
python-modules.ignored = True
|
|
||||||
|
|
||||||
libs/qt5.version = 5.9.3
|
|
||||||
craft/craft-core.version = master
|
|
||||||
|
|
||||||
[windows-msvc2017_64-cl]
|
|
||||||
General/ABI = windows-msvc2017_64-cl
|
|
||||||
|
|
||||||
[windows-msvc2017_32-cl]
|
|
||||||
General/ABI = windows-msvc2017_32-cl
|
|
||||||
50
appveyor.yml
50
appveyor.yml
@@ -1,50 +0,0 @@
|
|||||||
version: '{build}-{branch}'
|
|
||||||
|
|
||||||
branches:
|
|
||||||
only:
|
|
||||||
- master
|
|
||||||
|
|
||||||
clone_depth: 50
|
|
||||||
|
|
||||||
|
|
||||||
init:
|
|
||||||
- ps: |
|
|
||||||
function craft($target) {
|
|
||||||
& C:\Python36\python.exe "C:\CraftMaster\CraftMaster\CraftMaster.py" --config "$env:APPVEYOR_BUILD_FOLDER\appveyor.ini" --variables "APPVEYOR_BUILD_FOLDER=$env:APPVEYOR_BUILD_FOLDER" --target $target -c $args
|
|
||||||
if($LASTEXITCODE -ne 0) {exit $LASTEXITCODE}
|
|
||||||
}
|
|
||||||
|
|
||||||
install:
|
|
||||||
- ps: |
|
|
||||||
#use cmd to silence powershell behaviour for stderr
|
|
||||||
& cmd /C "git clone -q --depth=1 git://anongit.kde.org/craftmaster.git C:\CraftMaster\CraftMaster 2>&1"
|
|
||||||
|
|
||||||
craft $env:TARGET -i craft
|
|
||||||
craft $env:TARGET --install-deps owncloud-client
|
|
||||||
|
|
||||||
build_script:
|
|
||||||
- ps: |
|
|
||||||
craft $env:TARGET --no-cache --src-dir $env:APPVEYOR_BUILD_FOLDER owncloud-client
|
|
||||||
|
|
||||||
after_build:
|
|
||||||
- ps: |
|
|
||||||
craft $env:TARGET --src-dir $env:APPVEYOR_BUILD_FOLDER --package owncloud-client
|
|
||||||
|
|
||||||
|
|
||||||
on_finish:
|
|
||||||
- ps: |
|
|
||||||
Get-ChildItem $env:USERPROFILE\.craft\* | % { Push-AppveyorArtifact $_.FullName -FileName $_.Name }
|
|
||||||
|
|
||||||
test_script:
|
|
||||||
- ps: |
|
|
||||||
craft $env:TARGET --src-dir $env:APPVEYOR_BUILD_FOLDER --test owncloud-client
|
|
||||||
|
|
||||||
environment:
|
|
||||||
matrix:
|
|
||||||
- TARGET: windows-msvc2017_32-cl
|
|
||||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
|
||||||
- TARGET: windows-msvc2017_64-cl
|
|
||||||
APPVEYOR_BUILD_WORKER_IMAGE: Visual Studio 2017
|
|
||||||
|
|
||||||
artifacts:
|
|
||||||
- path: binaries/*
|
|
||||||
2
binary
2
binary
Submodule binary updated: 3425fab2c6...1818b48380
@@ -70,64 +70,45 @@ macro (KDE4_ADD_APP_ICON appsources pattern)
|
|||||||
endif(PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE)
|
endif(PNG2ICO_EXECUTABLE AND WINDRES_EXECUTABLE)
|
||||||
endif(WIN32)
|
endif(WIN32)
|
||||||
if (APPLE)
|
if (APPLE)
|
||||||
file(GLOB_RECURSE files "${pattern}")
|
# first convert image to a tiff using the Mac OS X "sips" utility,
|
||||||
file(MAKE_DIRECTORY ${appsources}.iconset)
|
# then use tiff2icns to convert to an icon
|
||||||
|
find_program(SIPS_EXECUTABLE NAMES sips)
|
||||||
|
find_program(TIFF2ICNS_EXECUTABLE NAMES tiff2icns)
|
||||||
|
if (SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE)
|
||||||
|
file(GLOB_RECURSE files "${pattern}")
|
||||||
|
# we can only test for the 128-icon like that - we don't use patterns anymore
|
||||||
|
foreach (it ${files})
|
||||||
|
if (it MATCHES ".*128.*" )
|
||||||
|
set (_icon ${it})
|
||||||
|
endif (it MATCHES ".*128.*")
|
||||||
|
endforeach (it)
|
||||||
|
|
||||||
# List from:
|
if (_icon)
|
||||||
# https://developer.apple.com/library/content/documentation/GraphicsAnimation/Conceptual/HighResolutionOSX/Optimizing/Optimizing.html#//apple_ref/doc/uid/TP40012302-CH7-SW4
|
|
||||||
foreach (it ${files})
|
|
||||||
if (it MATCHES ".*icon-16.*")
|
|
||||||
configure_file(${it} ${appsources}.iconset/icon_16x16.png COPYONLY)
|
|
||||||
elseif (it MATCHES ".*icon-32.*")
|
|
||||||
configure_file(${it} ${appsources}.iconset/icon_16x16@2x.png COPYONLY)
|
|
||||||
configure_file(${it} ${appsources}.iconset/icon_32x32.png COPYONLY)
|
|
||||||
elseif (it MATCHES ".*icon-64.*")
|
|
||||||
configure_file(${it} ${appsources}.iconset/icon_32x32@2x.png COPYONLY)
|
|
||||||
elseif (it MATCHES ".*icon-128.*")
|
|
||||||
configure_file(${it} ${appsources}.iconset/icon_128x128.png COPYONLY)
|
|
||||||
elseif (it MATCHES ".*icon-256.*")
|
|
||||||
configure_file(${it} ${appsources}.iconset/icon_128x128@2x.png COPYONLY)
|
|
||||||
configure_file(${it} ${appsources}.iconset/icon_256x256.png COPYONLY)
|
|
||||||
elseif (it MATCHES ".*icon-512.*")
|
|
||||||
configure_file(${it} ${appsources}.iconset/icon_256x256@2x.png COPYONLY)
|
|
||||||
configure_file(${it} ${appsources}.iconset/icon_512x512.png COPYONLY)
|
|
||||||
elseif (it MATCHES ".*icon-1024.*")
|
|
||||||
configure_file(${it} ${appsources}.iconset/icon_512x512@2x.png COPYONLY)
|
|
||||||
endif()
|
|
||||||
endforeach (it)
|
|
||||||
|
|
||||||
# Copy the sidebar icons in the main app bundle for the FinderSync extension to pick.
|
# first, get the basename of our app icon
|
||||||
# https://developer.apple.com/library/content/documentation/General/Conceptual/ExtensibilityPG/Finder.html#//apple_ref/doc/uid/TP40014214-CH15-SW15
|
add_custom_command(OUTPUT ${_outfilename}.icns ${outfilename}.tiff
|
||||||
foreach (it ${files})
|
COMMAND ${SIPS_EXECUTABLE} -s format tiff ${_icon} --out ${outfilename}.tiff
|
||||||
if (it MATCHES ".*sidebar-16.*")
|
COMMAND ${TIFF2ICNS_EXECUTABLE} ${outfilename}.tiff ${_outfilename}.icns
|
||||||
configure_file(${it} ${appsources}.iconset/sidebar_16x16.png COPYONLY)
|
DEPENDS ${_icon}
|
||||||
elseif (it MATCHES ".*sidebar-18.*")
|
)
|
||||||
configure_file(${it} ${appsources}.iconset/sidebar_18x18.png COPYONLY)
|
|
||||||
elseif (it MATCHES ".*sidebar-32.*")
|
|
||||||
configure_file(${it} ${appsources}.iconset/sidebar_16x16@2x.png COPYONLY)
|
|
||||||
configure_file(${it} ${appsources}.iconset/sidebar_32x32.png COPYONLY)
|
|
||||||
elseif (it MATCHES ".*sidebar-36.*")
|
|
||||||
configure_file(${it} ${appsources}.iconset/sidebar_18x18@2x.png COPYONLY)
|
|
||||||
elseif (it MATCHES ".*sidebar-64.*")
|
|
||||||
configure_file(${it} ${appsources}.iconset/sidebar_32x32@2x.png COPYONLY)
|
|
||||||
endif()
|
|
||||||
endforeach (it)
|
|
||||||
|
|
||||||
add_custom_command(OUTPUT ${_outfilename}.icns
|
# This will register the icon into the bundle
|
||||||
COMMAND echo === Building bundle icns with iconset:
|
set(MACOSX_BUNDLE_ICON_FILE ${appsources}.icns)
|
||||||
COMMAND ls -1 ${appsources}.iconset
|
|
||||||
COMMAND iconutil -c icns -o ${_outfilename}.icns ${appsources}.iconset
|
|
||||||
DEPENDS ${files}
|
|
||||||
)
|
|
||||||
|
|
||||||
# This will register the icon into the bundle
|
# Append the icns file to the sources list so it will be a dependency to the
|
||||||
set(MACOSX_BUNDLE_ICON_FILE ${appsources}.icns)
|
# main target
|
||||||
|
list(APPEND ${appsources} ${_outfilename}.icns)
|
||||||
|
|
||||||
# Append the icns file to the sources list so it will be a dependency to the
|
# Install the icon into the Resources dir in the bundle
|
||||||
# main target
|
set_source_files_properties(${_outfilename}.icns PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
|
||||||
list(APPEND ${appsources} ${_outfilename}.icns)
|
|
||||||
|
|
||||||
# Install the icon into the Resources dir in the bundle
|
else(_icon)
|
||||||
set_source_files_properties(${_outfilename}.icns PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
|
# TODO - try to scale a non-128 icon...? Try to convert an SVG on the fly?
|
||||||
|
message(STATUS "Unable to find an 128x128 icon that matches pattern ${pattern} for variable ${appsources} - application will not have an application icon!")
|
||||||
|
endif(_icon)
|
||||||
|
|
||||||
|
else(SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE)
|
||||||
|
message(STATUS "Unable to find the sips and tiff2icns utilities - application will not have an application icon!")
|
||||||
|
endif(SIPS_EXECUTABLE AND TIFF2ICNS_EXECUTABLE)
|
||||||
endif(APPLE)
|
endif(APPLE)
|
||||||
endmacro (KDE4_ADD_APP_ICON)
|
endmacro (KDE4_ADD_APP_ICON)
|
||||||
|
|||||||
@@ -1,332 +0,0 @@
|
|||||||
#.rst:
|
|
||||||
# ECMAddAppIcon
|
|
||||||
# -------------
|
|
||||||
#
|
|
||||||
# Add icons to executable files and packages.
|
|
||||||
#
|
|
||||||
# ::
|
|
||||||
#
|
|
||||||
# ecm_add_app_icon(<sources_var>
|
|
||||||
# ICONS <icon> [<icon> [...]]
|
|
||||||
# [SIDEBAR_ICONS <icon> [<icon> [...]] # Since 5.4x
|
|
||||||
# [OUTFILE_BASE <name>]) # Since 5.4x
|
|
||||||
# )
|
|
||||||
#
|
|
||||||
# The given icons, whose names must match the pattern::
|
|
||||||
#
|
|
||||||
# <size>-<other_text>.png
|
|
||||||
#
|
|
||||||
# will be added to the executable target whose sources are specified by
|
|
||||||
# ``<sources_var>`` on platforms that support it (Windows and Mac OS X).
|
|
||||||
# Other icon files are ignored but on Mac SVG files can be supported and
|
|
||||||
# it is thus possible to mix those with png files in a single macro call.
|
|
||||||
#
|
|
||||||
# ``<size>`` is a numeric pixel size (typically 16, 32, 48, 64, 128 or 256).
|
|
||||||
# ``<other_text>`` can be any other text. See the platform notes below for any
|
|
||||||
# recommendations about icon sizes.
|
|
||||||
#
|
|
||||||
# ``SIDEBAR_ICONS`` can be used to add Mac OS X sidebar
|
|
||||||
# icons to the generated iconset. They are used when a folder monitored by the
|
|
||||||
# application is dragged into Finder's sidebar. Since 5.4x.
|
|
||||||
#
|
|
||||||
# ``OUTFILE_BASE`` will be used as the basename for the icon file. If
|
|
||||||
# you specify it, the icon file will be called ``<OUTFILE_BASE>.icns`` on Mac OS X
|
|
||||||
# and ``<OUTFILE_BASE>.ico`` on Windows. If you don't specify it, it defaults
|
|
||||||
# to ``<sources_var>.<ext>``. Since 5.4x.
|
|
||||||
#
|
|
||||||
#
|
|
||||||
# Windows notes
|
|
||||||
# * Icons are compiled into the executable using a resource file.
|
|
||||||
# * Icons may not show up in Windows Explorer if the executable
|
|
||||||
# target does not have the ``WIN32_EXECUTABLE`` property set.
|
|
||||||
# * The tool png2ico is required. See :find-module:`FindPng2Ico`.
|
|
||||||
# * Supported sizes: 16, 32, 48, 64, 128.
|
|
||||||
#
|
|
||||||
# Mac OS X notes
|
|
||||||
# * The executable target must have the ``MACOSX_BUNDLE`` property set.
|
|
||||||
# * Icons are added to the bundle.
|
|
||||||
# * If the ksvg2icns tool from KIconThemes is available, .svg and .svgz
|
|
||||||
# files are accepted; the first that is converted successfully to .icns
|
|
||||||
# will provide the application icon. SVG files are ignored otherwise.
|
|
||||||
# * The tool iconutil (provided by Apple) is required for bitmap icons.
|
|
||||||
# * Supported sizes: 16, 32, 64, 128, 256 (and 512, 1024 after OS X 10.9).
|
|
||||||
# * At least a 128x128px (or an SVG) icon is required.
|
|
||||||
# * Larger sizes are automatically used to substitute for smaller sizes on
|
|
||||||
# "Retina" (high-resolution) displays. For example, a 32px icon, if
|
|
||||||
# provided, will be used as a 32px icon on standard-resolution displays,
|
|
||||||
# and as a 16px-equivalent icon (with an "@2x" tag) on high-resolution
|
|
||||||
# displays. That is why you should provide 64px and 1024px icons although
|
|
||||||
# they are not supported anymore directly. Instead they will be used as
|
|
||||||
# 32px@2x and 512px@2x. ksvg2icns handles this internally.
|
|
||||||
# * This function sets the ``MACOSX_BUNDLE_ICON_FILE`` variable to the name
|
|
||||||
# of the generated icns file, so that it will be used as the
|
|
||||||
# ``MACOSX_BUNDLE_ICON_FILE`` target property when you call
|
|
||||||
# ``add_executable``.
|
|
||||||
# * Sidebar icons should typically provided in 16, 32, 64, 128 and 256px.
|
|
||||||
#
|
|
||||||
# Since 1.7.0.
|
|
||||||
|
|
||||||
|
|
||||||
#=============================================================================
|
|
||||||
# Copyright 2014 Alex Merry <alex.merry@kde.org>
|
|
||||||
# Copyright 2014 Ralf Habacker <ralf.habacker@freenet.de>
|
|
||||||
# Copyright 2006-2009 Alexander Neundorf, <neundorf@kde.org>
|
|
||||||
# Copyright 2006, 2007, Laurent Montel, <montel@kde.org>
|
|
||||||
# Copyright 2007 Matthias Kretz <kretz@kde.org>
|
|
||||||
#
|
|
||||||
# Redistribution and use in source and binary forms, with or without
|
|
||||||
# modification, are permitted provided that the following conditions
|
|
||||||
# are met:
|
|
||||||
#
|
|
||||||
# 1. Redistributions of source code must retain the copyright
|
|
||||||
# notice, this list of conditions and the following disclaimer.
|
|
||||||
# 2. Redistributions in binary form must reproduce the copyright
|
|
||||||
# notice, this list of conditions and the following disclaimer in the
|
|
||||||
# documentation and/or other materials provided with the distribution.
|
|
||||||
# 3. The name of the author may not be used to endorse or promote products
|
|
||||||
# derived from this software without specific prior written permission.
|
|
||||||
#
|
|
||||||
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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.
|
|
||||||
|
|
||||||
include(CMakeParseArguments)
|
|
||||||
|
|
||||||
function(ecm_add_app_icon appsources)
|
|
||||||
set(options)
|
|
||||||
set(oneValueArgs OUTFILE_BASE)
|
|
||||||
set(multiValueArgs ICONS SIDEBAR_ICONS)
|
|
||||||
cmake_parse_arguments(ARG "${options}" "${oneValueArgs}" "${multiValueArgs}" ${ARGN})
|
|
||||||
|
|
||||||
if(NOT ARG_ICONS)
|
|
||||||
message(FATAL_ERROR "No ICONS argument given to ecm_add_app_icon")
|
|
||||||
endif()
|
|
||||||
if(ARG_UNPARSED_ARGUMENTS)
|
|
||||||
message(FATAL_ERROR "Unexpected arguments to ecm_add_app_icon: ${ARG_UNPARSED_ARGUMENTS}")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(APPLE)
|
|
||||||
find_program(KSVG2ICNS NAMES ksvg2icns)
|
|
||||||
foreach(icon ${ARG_ICONS})
|
|
||||||
get_filename_component(icon_full ${icon} ABSOLUTE)
|
|
||||||
get_filename_component(icon_type ${icon_full} EXT)
|
|
||||||
# do we have ksvg2icns in the path and did we receive an svg (or compressed svg) icon?
|
|
||||||
if(KSVG2ICNS AND (${icon_type} STREQUAL ".svg" OR ${icon_type} STREQUAL ".svgz"))
|
|
||||||
# convert the svg icon to an icon resource
|
|
||||||
execute_process(COMMAND ${KSVG2ICNS} "${icon_full}"
|
|
||||||
WORKING_DIRECTORY ${CMAKE_CURRENT_BINARY_DIR} RESULT_VARIABLE KSVG2ICNS_ERROR)
|
|
||||||
if(${KSVG2ICNS_ERROR})
|
|
||||||
message(AUTHOR_WARNING "ksvg2icns could not generate an OS X application icon from ${icon}")
|
|
||||||
else()
|
|
||||||
# install the icns file we just created
|
|
||||||
get_filename_component(icon_name ${icon_full} NAME_WE)
|
|
||||||
set(MACOSX_BUNDLE_ICON_FILE ${icon_name}.icns PARENT_SCOPE)
|
|
||||||
set(${appsources} "${${appsources}};${CMAKE_CURRENT_BINARY_DIR}/${icon_name}.icns" PARENT_SCOPE)
|
|
||||||
set_source_files_properties(${CMAKE_CURRENT_BINARY_DIR}/${icon_name}.icns PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
|
|
||||||
# we're done now
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
_ecm_add_app_icon_categorize_icons("${ARG_ICONS}" "icons" "16;32;48;64;128;256;512;1024")
|
|
||||||
if(ARG_SIDEBAR_ICONS)
|
|
||||||
_ecm_add_app_icon_categorize_icons("${ARG_SIDEBAR_ICONS}" "sidebar_icons" "16;18;32;36;64")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
set(mac_icons
|
|
||||||
# Icons: https://developer.apple.com/library/content/documentation/GraphicsAnimation/Conceptual/HighResolutionOSX/Optimizing/Optimizing.html#//apple_ref/doc/uid/TP40012302-CH7-SW4
|
|
||||||
${icons_at_16px}
|
|
||||||
${icons_at_32px}
|
|
||||||
${icons_at_64px}
|
|
||||||
${icons_at_128px}
|
|
||||||
${icons_at_256px}
|
|
||||||
${icons_at_512px}
|
|
||||||
${icons_at_1024px}
|
|
||||||
|
|
||||||
# Sidebar Icons: https://developer.apple.com/library/content/documentation/General/Conceptual/ExtensibilityPG/Finder.html#//apple_ref/doc/uid/TP40014214-CH15-SW15
|
|
||||||
${sidebar_icons_at_16px}
|
|
||||||
${sidebar_icons_at_18px}
|
|
||||||
${sidebar_icons_at_32px}
|
|
||||||
${sidebar_icons_at_36px}
|
|
||||||
${sidebar_icons_at_64px})
|
|
||||||
if (NOT icons_at_128px)
|
|
||||||
message(AUTHOR_WARNING "No 128px icon provided; this will not work on Mac OS X")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
|
|
||||||
set(windows_icons ${icons_at_16px}
|
|
||||||
${icons_at_32px}
|
|
||||||
${icons_at_48px}
|
|
||||||
${icons_at_64px}
|
|
||||||
${icons_at_128px})
|
|
||||||
if (NOT windows_icons)
|
|
||||||
message(AUTHOR_WARNING "No icons suitable for use on Windows provided")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if (ARG_OUTFILE_BASE)
|
|
||||||
set (_outfilebasename "${ARG_OUTFILE_BASE}")
|
|
||||||
else()
|
|
||||||
set (_outfilebasename "${appsources}")
|
|
||||||
endif()
|
|
||||||
set (_outfilename "${CMAKE_CURRENT_BINARY_DIR}/${_outfilebasename}")
|
|
||||||
|
|
||||||
if (WIN32 AND windows_icons)
|
|
||||||
set(saved_CMAKE_MODULE_PATH "${CMAKE_MODULE_PATH}")
|
|
||||||
set(CMAKE_MODULE_PATH ${CMAKE_MODULE_PATH} ${ECM_FIND_MODULE_DIR})
|
|
||||||
find_package(Png2Ico)
|
|
||||||
set(CMAKE_MODULE_PATH "${saved_CMAKE_MODULE_PATH}")
|
|
||||||
|
|
||||||
if (Png2Ico_FOUND)
|
|
||||||
if (Png2Ico_HAS_RCFILE_ARGUMENT)
|
|
||||||
add_custom_command(
|
|
||||||
OUTPUT "${_outfilename}.rc" "${_outfilename}.ico"
|
|
||||||
COMMAND Png2Ico::Png2Ico
|
|
||||||
ARGS
|
|
||||||
--rcfile "${_outfilename}.rc"
|
|
||||||
"${_outfilename}.ico"
|
|
||||||
${windows_icons}
|
|
||||||
DEPENDS ${windows_icons}
|
|
||||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
|
||||||
)
|
|
||||||
else()
|
|
||||||
add_custom_command(
|
|
||||||
OUTPUT "${_outfilename}.ico"
|
|
||||||
COMMAND Png2Ico::Png2Ico
|
|
||||||
ARGS "${_outfilename}.ico" ${windows_icons}
|
|
||||||
DEPENDS ${windows_icons}
|
|
||||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
|
||||||
)
|
|
||||||
# this bit's a little hacky to make the dependency stuff work
|
|
||||||
file(WRITE "${_outfilename}.rc.in" "IDI_ICON1 ICON DISCARDABLE \"${_outfilename}.ico\"\n")
|
|
||||||
add_custom_command(
|
|
||||||
OUTPUT "${_outfilename}.rc"
|
|
||||||
COMMAND ${CMAKE_COMMAND}
|
|
||||||
ARGS -E copy "${_outfilename}.rc.in" "${_outfilename}.rc"
|
|
||||||
DEPENDS "${_outfilename}.ico"
|
|
||||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
set(${appsources} "${${appsources}};${_outfilename}.rc" PARENT_SCOPE)
|
|
||||||
else()
|
|
||||||
message(WARNING "Unable to find the png2ico utility - application will not have an application icon!")
|
|
||||||
endif()
|
|
||||||
elseif (APPLE AND mac_icons)
|
|
||||||
# first generate .iconset directory structure, then convert to .icns format using the Mac OS X "iconutil" utility,
|
|
||||||
# to create retina compatible icon, you need png source files in pixel resolution 16x16, 32x32, 64x64, 128x128,
|
|
||||||
# 256x256, 512x512, 1024x1024
|
|
||||||
find_program(ICONUTIL_EXECUTABLE NAMES iconutil)
|
|
||||||
if (ICONUTIL_EXECUTABLE)
|
|
||||||
add_custom_command(
|
|
||||||
OUTPUT "${_outfilename}.iconset"
|
|
||||||
COMMAND ${CMAKE_COMMAND}
|
|
||||||
ARGS -E make_directory "${_outfilename}.iconset"
|
|
||||||
)
|
|
||||||
set(iconset_icons)
|
|
||||||
macro(copy_icon filename sizename type)
|
|
||||||
add_custom_command(
|
|
||||||
OUTPUT "${_outfilename}.iconset/${type}_${sizename}.png"
|
|
||||||
COMMAND ${CMAKE_COMMAND}
|
|
||||||
ARGS -E copy
|
|
||||||
"${filename}"
|
|
||||||
"${_outfilename}.iconset/${type}_${sizename}.png"
|
|
||||||
DEPENDS
|
|
||||||
"${_outfilename}.iconset"
|
|
||||||
"${filename}"
|
|
||||||
WORKING_DIRECTORY "${CMAKE_CURRENT_SOURCE_DIR}"
|
|
||||||
)
|
|
||||||
list(APPEND iconset_icons
|
|
||||||
"${_outfilename}.iconset/${type}_${sizename}.png")
|
|
||||||
endmacro()
|
|
||||||
foreach(size 16 32 128 256 512)
|
|
||||||
math(EXPR double_size "2 * ${size}")
|
|
||||||
foreach(file ${icons_at_${size}px})
|
|
||||||
copy_icon("${file}" "${size}x${size}" "icon")
|
|
||||||
endforeach()
|
|
||||||
foreach(file ${icons_at_${double_size}px})
|
|
||||||
copy_icon("${file}" "${size}x${size}@2x" "icon")
|
|
||||||
endforeach()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
foreach(size 16 18 32)
|
|
||||||
math(EXPR double_size "2 * ${size}")
|
|
||||||
foreach(file ${sidebar_icons_at_${size}px})
|
|
||||||
copy_icon("${file}" "${size}x${size}" "sidebar")
|
|
||||||
endforeach()
|
|
||||||
foreach(file ${sidebar_icons_at_${double_size}px})
|
|
||||||
copy_icon("${file}" "${size}x${size}@2x" "sidebar")
|
|
||||||
endforeach()
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
# generate .icns icon file
|
|
||||||
add_custom_command(
|
|
||||||
OUTPUT "${_outfilename}.icns"
|
|
||||||
COMMAND ${ICONUTIL_EXECUTABLE}
|
|
||||||
ARGS
|
|
||||||
--convert icns
|
|
||||||
--output "${_outfilename}.icns"
|
|
||||||
"${_outfilename}.iconset"
|
|
||||||
DEPENDS "${iconset_icons}"
|
|
||||||
WORKING_DIRECTORY "${CMAKE_CURRENT_BINARY_DIR}"
|
|
||||||
)
|
|
||||||
# This will register the icon into the bundle
|
|
||||||
set(MACOSX_BUNDLE_ICON_FILE "${_outfilebasename}.icns" PARENT_SCOPE)
|
|
||||||
|
|
||||||
# Append the icns file to the sources list so it will be a dependency to the
|
|
||||||
# main target
|
|
||||||
set(${appsources} "${${appsources}};${_outfilename}.icns" PARENT_SCOPE)
|
|
||||||
|
|
||||||
# Install the icon into the Resources dir in the bundle
|
|
||||||
set_source_files_properties("${_outfilename}.icns" PROPERTIES MACOSX_PACKAGE_LOCATION Resources)
|
|
||||||
else()
|
|
||||||
message(STATUS "Unable to find the iconutil utility - application will not have an application icon!")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endfunction()
|
|
||||||
|
|
||||||
macro(_ecm_add_app_icon_categorize_icons icons type known_sizes)
|
|
||||||
set(_${type}_known_sizes)
|
|
||||||
foreach(size ${known_sizes})
|
|
||||||
set(${type}_at_${size}px)
|
|
||||||
list(APPEND _${type}_known_sizes ${size})
|
|
||||||
endforeach()
|
|
||||||
|
|
||||||
|
|
||||||
foreach(icon ${icons})
|
|
||||||
get_filename_component(icon_full ${icon} ABSOLUTE)
|
|
||||||
if (NOT EXISTS "${icon_full}")
|
|
||||||
message(AUTHOR_WARNING "${icon_full} does not exist, ignoring")
|
|
||||||
else()
|
|
||||||
get_filename_component(icon_name ${icon} NAME)
|
|
||||||
string(REGEX MATCH "([0-9]+)\\-[^/]+\\.([a-z]+)$"
|
|
||||||
_dummy "${icon_name}")
|
|
||||||
set(size "${CMAKE_MATCH_1}")
|
|
||||||
set(ext "${CMAKE_MATCH_2}")
|
|
||||||
|
|
||||||
if (NOT (ext STREQUAL "svg" OR ext STREQUAL "svgz"))
|
|
||||||
if (NOT size)
|
|
||||||
message(AUTHOR_WARNING "${icon_full} is not named correctly for ecm_add_app_icon - ignoring")
|
|
||||||
elseif (NOT ext STREQUAL "png")
|
|
||||||
message(AUTHOR_WARNING "${icon_full} is not a png file - ignoring")
|
|
||||||
else()
|
|
||||||
list(FIND _${type}_known_sizes ${size} offset)
|
|
||||||
|
|
||||||
if (offset GREATER -1)
|
|
||||||
list(APPEND ${type}_at_${size}px "${icon_full}")
|
|
||||||
elseif()
|
|
||||||
message(STATUS "not found ${type}_at_${size}px ${icon_full}")
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
endmacro()
|
|
||||||
@@ -1,297 +0,0 @@
|
|||||||
#.rst:
|
|
||||||
# ECMFindModuleHelpers
|
|
||||||
# --------------------
|
|
||||||
#
|
|
||||||
# Helper macros for find modules: ecm_find_package_version_check(),
|
|
||||||
# ecm_find_package_parse_components() and
|
|
||||||
# ecm_find_package_handle_library_components().
|
|
||||||
#
|
|
||||||
# ::
|
|
||||||
#
|
|
||||||
# ecm_find_package_version_check(<name>)
|
|
||||||
#
|
|
||||||
# Prints warnings if the CMake version or the project's required CMake version
|
|
||||||
# is older than that required by extra-cmake-modules.
|
|
||||||
#
|
|
||||||
# ::
|
|
||||||
#
|
|
||||||
# ecm_find_package_parse_components(<name>
|
|
||||||
# RESULT_VAR <variable>
|
|
||||||
# KNOWN_COMPONENTS <component1> [<component2> [...]]
|
|
||||||
# [SKIP_DEPENDENCY_HANDLING])
|
|
||||||
#
|
|
||||||
# This macro will populate <variable> with a list of components found in
|
|
||||||
# <name>_FIND_COMPONENTS, after checking that all those components are in the
|
|
||||||
# list of KNOWN_COMPONENTS; if there are any unknown components, it will print
|
|
||||||
# an error or warning (depending on the value of <name>_FIND_REQUIRED) and call
|
|
||||||
# return().
|
|
||||||
#
|
|
||||||
# The order of components in <variable> is guaranteed to match the order they
|
|
||||||
# are listed in the KNOWN_COMPONENTS argument.
|
|
||||||
#
|
|
||||||
# If SKIP_DEPENDENCY_HANDLING is not set, for each component the variable
|
|
||||||
# <name>_<component>_component_deps will be checked for dependent components.
|
|
||||||
# If <component> is listed in <name>_FIND_COMPONENTS, then all its (transitive)
|
|
||||||
# dependencies will also be added to <variable>.
|
|
||||||
#
|
|
||||||
# ::
|
|
||||||
#
|
|
||||||
# ecm_find_package_handle_library_components(<name>
|
|
||||||
# COMPONENTS <component> [<component> [...]]
|
|
||||||
# [SKIP_DEPENDENCY_HANDLING])
|
|
||||||
# [SKIP_PKG_CONFIG])
|
|
||||||
#
|
|
||||||
# Creates an imported library target for each component. The operation of this
|
|
||||||
# macro depends on the presence of a number of CMake variables.
|
|
||||||
#
|
|
||||||
# The <name>_<component>_lib variable should contain the name of this library,
|
|
||||||
# and <name>_<component>_header variable should contain the name of a header
|
|
||||||
# file associated with it (whatever relative path is normally passed to
|
|
||||||
# '#include'). <name>_<component>_header_subdir variable can be used to specify
|
|
||||||
# which subdirectory of the include path the headers will be found in.
|
|
||||||
# ecm_find_package_components() will then search for the library
|
|
||||||
# and include directory (creating appropriate cache variables) and create an
|
|
||||||
# imported library target named <name>::<component>.
|
|
||||||
#
|
|
||||||
# Additional variables can be used to provide additional information:
|
|
||||||
#
|
|
||||||
# If SKIP_PKG_CONFIG, the <name>_<component>_pkg_config variable is set, and
|
|
||||||
# pkg-config is found, the pkg-config module given by
|
|
||||||
# <name>_<component>_pkg_config will be searched for and used to help locate the
|
|
||||||
# library and header file. It will also be used to set
|
|
||||||
# <name>_<component>_VERSION.
|
|
||||||
#
|
|
||||||
# Note that if version information is found via pkg-config,
|
|
||||||
# <name>_<component>_FIND_VERSION can be set to require a particular version
|
|
||||||
# for each component.
|
|
||||||
#
|
|
||||||
# If SKIP_DEPENDENCY_HANDLING is not set, the INTERFACE_LINK_LIBRARIES property
|
|
||||||
# of the imported target for <component> will be set to contain the imported
|
|
||||||
# targets for the components listed in <name>_<component>_component_deps.
|
|
||||||
# <component>_FOUND will also be set to false if any of the compoments in
|
|
||||||
# <name>_<component>_component_deps are not found. This requires the components
|
|
||||||
# in <name>_<component>_component_deps to be listed before <component> in the
|
|
||||||
# COMPONENTS argument.
|
|
||||||
#
|
|
||||||
# The following variables will be set:
|
|
||||||
#
|
|
||||||
# ``<name>_TARGETS``
|
|
||||||
# the imported targets
|
|
||||||
# ``<name>_LIBRARIES``
|
|
||||||
# the found libraries
|
|
||||||
# ``<name>_INCLUDE_DIRS``
|
|
||||||
# the combined required include directories for the components
|
|
||||||
# ``<name>_DEFINITIONS``
|
|
||||||
# the "other" CFLAGS provided by pkg-config, if any
|
|
||||||
# ``<name>_VERSION``
|
|
||||||
# the value of ``<name>_<component>_VERSION`` for the first component that
|
|
||||||
# has this variable set (note that components are searched for in the order
|
|
||||||
# they are passed to the macro), although if it is already set, it will not
|
|
||||||
# be altered
|
|
||||||
#
|
|
||||||
# Note that these variables are never cleared, so if
|
|
||||||
# ecm_find_package_handle_library_components() is called multiple times with
|
|
||||||
# different components (typically because of multiple find_package() calls) then
|
|
||||||
# ``<name>_TARGETS``, for example, will contain all the targets found in any
|
|
||||||
# call (although no duplicates).
|
|
||||||
#
|
|
||||||
# Since pre-1.0.0.
|
|
||||||
|
|
||||||
#=============================================================================
|
|
||||||
# Copyright 2014 Alex Merry <alex.merry@kde.org>
|
|
||||||
#
|
|
||||||
# Redistribution and use in source and binary forms, with or without
|
|
||||||
# modification, are permitted provided that the following conditions
|
|
||||||
# are met:
|
|
||||||
#
|
|
||||||
# 1. Redistributions of source code must retain the copyright
|
|
||||||
# notice, this list of conditions and the following disclaimer.
|
|
||||||
# 2. Redistributions in binary form must reproduce the copyright
|
|
||||||
# notice, this list of conditions and the following disclaimer in the
|
|
||||||
# documentation and/or other materials provided with the distribution.
|
|
||||||
# 3. The name of the author may not be used to endorse or promote products
|
|
||||||
# derived from this software without specific prior written permission.
|
|
||||||
#
|
|
||||||
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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.
|
|
||||||
|
|
||||||
include(CMakeParseArguments)
|
|
||||||
|
|
||||||
macro(ecm_find_package_version_check module_name)
|
|
||||||
if(CMAKE_VERSION VERSION_LESS 2.8.12)
|
|
||||||
message(FATAL_ERROR "CMake 2.8.12 is required by Find${module_name}.cmake")
|
|
||||||
endif()
|
|
||||||
if(CMAKE_MINIMUM_REQUIRED_VERSION VERSION_LESS 2.8.12)
|
|
||||||
message(AUTHOR_WARNING "Your project should require at least CMake 2.8.12 to use Find${module_name}.cmake")
|
|
||||||
endif()
|
|
||||||
endmacro()
|
|
||||||
|
|
||||||
macro(ecm_find_package_parse_components module_name)
|
|
||||||
set(ecm_fppc_options SKIP_DEPENDENCY_HANDLING)
|
|
||||||
set(ecm_fppc_oneValueArgs RESULT_VAR)
|
|
||||||
set(ecm_fppc_multiValueArgs KNOWN_COMPONENTS DEFAULT_COMPONENTS)
|
|
||||||
cmake_parse_arguments(ECM_FPPC "${ecm_fppc_options}" "${ecm_fppc_oneValueArgs}" "${ecm_fppc_multiValueArgs}" ${ARGN})
|
|
||||||
|
|
||||||
if(ECM_FPPC_UNPARSED_ARGUMENTS)
|
|
||||||
message(FATAL_ERROR "Unexpected arguments to ecm_find_package_parse_components: ${ECM_FPPC_UNPARSED_ARGUMENTS}")
|
|
||||||
endif()
|
|
||||||
if(NOT ECM_FPPC_RESULT_VAR)
|
|
||||||
message(FATAL_ERROR "Missing RESULT_VAR argument to ecm_find_package_parse_components")
|
|
||||||
endif()
|
|
||||||
if(NOT ECM_FPPC_KNOWN_COMPONENTS)
|
|
||||||
message(FATAL_ERROR "Missing KNOWN_COMPONENTS argument to ecm_find_package_parse_components")
|
|
||||||
endif()
|
|
||||||
if(NOT ECM_FPPC_DEFAULT_COMPONENTS)
|
|
||||||
set(ECM_FPPC_DEFAULT_COMPONENTS ${ECM_FPPC_KNOWN_COMPONENTS})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(${module_name}_FIND_COMPONENTS)
|
|
||||||
set(ecm_fppc_requestedComps ${${module_name}_FIND_COMPONENTS})
|
|
||||||
|
|
||||||
if(NOT ECM_FPPC_SKIP_DEPENDENCY_HANDLING)
|
|
||||||
# Make sure deps are included
|
|
||||||
foreach(ecm_fppc_comp ${ecm_fppc_requestedComps})
|
|
||||||
foreach(ecm_fppc_dep_comp ${${module_name}_${ecm_fppc_comp}_component_deps})
|
|
||||||
list(FIND ecm_fppc_requestedComps "${ecm_fppc_dep_comp}" ecm_fppc_index)
|
|
||||||
if("${ecm_fppc_index}" STREQUAL "-1")
|
|
||||||
if(NOT ${module_name}_FIND_QUIETLY)
|
|
||||||
message(STATUS "${module_name}: ${ecm_fppc_comp} requires ${${module_name}_${ecm_fppc_comp}_component_deps}")
|
|
||||||
endif()
|
|
||||||
list(APPEND ecm_fppc_requestedComps "${ecm_fppc_dep_comp}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
endforeach()
|
|
||||||
else()
|
|
||||||
message(STATUS "Skipping dependency handling for ${module_name}")
|
|
||||||
endif()
|
|
||||||
list(REMOVE_DUPLICATES ecm_fppc_requestedComps)
|
|
||||||
|
|
||||||
# This makes sure components are listed in the same order as
|
|
||||||
# KNOWN_COMPONENTS (potentially important for inter-dependencies)
|
|
||||||
set(${ECM_FPPC_RESULT_VAR})
|
|
||||||
foreach(ecm_fppc_comp ${ECM_FPPC_KNOWN_COMPONENTS})
|
|
||||||
list(FIND ecm_fppc_requestedComps "${ecm_fppc_comp}" ecm_fppc_index)
|
|
||||||
if(NOT "${ecm_fppc_index}" STREQUAL "-1")
|
|
||||||
list(APPEND ${ECM_FPPC_RESULT_VAR} "${ecm_fppc_comp}")
|
|
||||||
list(REMOVE_AT ecm_fppc_requestedComps ${ecm_fppc_index})
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
# if there are any left, they are unknown components
|
|
||||||
if(ecm_fppc_requestedComps)
|
|
||||||
set(ecm_fppc_msgType STATUS)
|
|
||||||
if(${module_name}_FIND_REQUIRED)
|
|
||||||
set(ecm_fppc_msgType FATAL_ERROR)
|
|
||||||
endif()
|
|
||||||
if(NOT ${module_name}_FIND_QUIETLY)
|
|
||||||
message(${ecm_fppc_msgType} "${module_name}: requested unknown components ${ecm_fppc_requestedComps}")
|
|
||||||
endif()
|
|
||||||
return()
|
|
||||||
endif()
|
|
||||||
else()
|
|
||||||
set(${ECM_FPPC_RESULT_VAR} ${ECM_FPPC_DEFAULT_COMPONENTS})
|
|
||||||
endif()
|
|
||||||
endmacro()
|
|
||||||
|
|
||||||
macro(ecm_find_package_handle_library_components module_name)
|
|
||||||
set(ecm_fpwc_options SKIP_PKG_CONFIG SKIP_DEPENDENCY_HANDLING)
|
|
||||||
set(ecm_fpwc_oneValueArgs)
|
|
||||||
set(ecm_fpwc_multiValueArgs COMPONENTS)
|
|
||||||
cmake_parse_arguments(ECM_FPWC "${ecm_fpwc_options}" "${ecm_fpwc_oneValueArgs}" "${ecm_fpwc_multiValueArgs}" ${ARGN})
|
|
||||||
|
|
||||||
if(ECM_FPWC_UNPARSED_ARGUMENTS)
|
|
||||||
message(FATAL_ERROR "Unexpected arguments to ecm_find_package_handle_components: ${ECM_FPWC_UNPARSED_ARGUMENTS}")
|
|
||||||
endif()
|
|
||||||
if(NOT ECM_FPWC_COMPONENTS)
|
|
||||||
message(FATAL_ERROR "Missing COMPONENTS argument to ecm_find_package_handle_components")
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package(PkgConfig)
|
|
||||||
foreach(ecm_fpwc_comp ${ECM_FPWC_COMPONENTS})
|
|
||||||
set(ecm_fpwc_dep_vars)
|
|
||||||
set(ecm_fpwc_dep_targets)
|
|
||||||
if(NOT SKIP_DEPENDENCY_HANDLING)
|
|
||||||
foreach(ecm_fpwc_dep ${${module_name}_${ecm_fpwc_comp}_component_deps})
|
|
||||||
list(APPEND ecm_fpwc_dep_vars "${module_name}_${ecm_fpwc_dep}_FOUND")
|
|
||||||
list(APPEND ecm_fpwc_dep_targets "${module_name}::${ecm_fpwc_dep}")
|
|
||||||
endforeach()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
if(NOT ECM_FPWC_SKIP_PKG_CONFIG AND ${module_name}_${ecm_fpwc_comp}_pkg_config)
|
|
||||||
pkg_check_modules(PKG_${module_name}_${ecm_fpwc_comp} QUIET
|
|
||||||
${${module_name}_${ecm_fpwc_comp}_pkg_config})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_path(${module_name}_${ecm_fpwc_comp}_INCLUDE_DIR
|
|
||||||
NAMES ${${module_name}_${ecm_fpwc_comp}_header}
|
|
||||||
HINTS ${PKG_${module_name}_${ecm_fpwc_comp}_INCLUDE_DIRS}
|
|
||||||
PATH_SUFFIXES ${${module_name}_${ecm_fpwc_comp}_header_subdir}
|
|
||||||
)
|
|
||||||
find_library(${module_name}_${ecm_fpwc_comp}_LIBRARY
|
|
||||||
NAMES ${${module_name}_${ecm_fpwc_comp}_lib}
|
|
||||||
HINTS ${PKG_${module_name}_${ecm_fpwc_comp}_LIBRARY_DIRS}
|
|
||||||
)
|
|
||||||
|
|
||||||
set(${module_name}_${ecm_fpwc_comp}_VERSION "${PKG_${module_name}_${ecm_fpwc_comp}_VERSION}")
|
|
||||||
if(NOT ${module_name}_VERSION)
|
|
||||||
set(${module_name}_VERSION ${${module_name}_${ecm_fpwc_comp}_VERSION})
|
|
||||||
endif()
|
|
||||||
|
|
||||||
find_package_handle_standard_args(${module_name}_${ecm_fpwc_comp}
|
|
||||||
FOUND_VAR
|
|
||||||
${module_name}_${ecm_fpwc_comp}_FOUND
|
|
||||||
REQUIRED_VARS
|
|
||||||
${module_name}_${ecm_fpwc_comp}_LIBRARY
|
|
||||||
${module_name}_${ecm_fpwc_comp}_INCLUDE_DIR
|
|
||||||
${ecm_fpwc_dep_vars}
|
|
||||||
VERSION_VAR
|
|
||||||
${module_name}_${ecm_fpwc_comp}_VERSION
|
|
||||||
)
|
|
||||||
|
|
||||||
mark_as_advanced(
|
|
||||||
${module_name}_${ecm_fpwc_comp}_LIBRARY
|
|
||||||
${module_name}_${ecm_fpwc_comp}_INCLUDE_DIR
|
|
||||||
)
|
|
||||||
|
|
||||||
if(${module_name}_${ecm_fpwc_comp}_FOUND)
|
|
||||||
list(APPEND ${module_name}_LIBRARIES
|
|
||||||
"${${module_name}_${ecm_fpwc_comp}_LIBRARY}")
|
|
||||||
list(APPEND ${module_name}_INCLUDE_DIRS
|
|
||||||
"${${module_name}_${ecm_fpwc_comp}_INCLUDE_DIR}")
|
|
||||||
set(${module_name}_DEFINITIONS
|
|
||||||
${${module_name}_DEFINITIONS}
|
|
||||||
${PKG_${module_name}_${ecm_fpwc_comp}_DEFINITIONS})
|
|
||||||
if(NOT TARGET ${module_name}::${ecm_fpwc_comp})
|
|
||||||
add_library(${module_name}::${ecm_fpwc_comp} UNKNOWN IMPORTED)
|
|
||||||
set_target_properties(${module_name}::${ecm_fpwc_comp} PROPERTIES
|
|
||||||
IMPORTED_LOCATION "${${module_name}_${ecm_fpwc_comp}_LIBRARY}"
|
|
||||||
INTERFACE_COMPILE_OPTIONS "${PKG_${module_name}_${ecm_fpwc_comp}_DEFINITIONS}"
|
|
||||||
INTERFACE_INCLUDE_DIRECTORIES "${${module_name}_${ecm_fpwc_comp}_INCLUDE_DIR}"
|
|
||||||
INTERFACE_LINK_LIBRARIES "${ecm_fpwc_dep_targets}"
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
list(APPEND ${module_name}_TARGETS
|
|
||||||
"${module_name}::${ecm_fpwc_comp}")
|
|
||||||
endif()
|
|
||||||
endforeach()
|
|
||||||
if(${module_name}_LIBRARIES)
|
|
||||||
list(REMOVE_DUPLICATES ${module_name}_LIBRARIES)
|
|
||||||
endif()
|
|
||||||
if(${module_name}_INCLUDE_DIRS)
|
|
||||||
list(REMOVE_DUPLICATES ${module_name}_INCLUDE_DIRS)
|
|
||||||
endif()
|
|
||||||
if(${module_name}_DEFINITIONS)
|
|
||||||
list(REMOVE_DUPLICATES ${module_name}_DEFINITIONS)
|
|
||||||
endif()
|
|
||||||
if(${module_name}_TARGETS)
|
|
||||||
list(REMOVE_DUPLICATES ${module_name}_TARGETS)
|
|
||||||
endif()
|
|
||||||
endmacro()
|
|
||||||
@@ -1 +0,0 @@
|
|||||||
include(${CMAKE_CURRENT_LIST_DIR}/../modules/ECMFindModuleHelpers.cmake)
|
|
||||||
@@ -1,35 +0,0 @@
|
|||||||
# FindGLib2.cmake
|
|
||||||
|
|
||||||
# GLib2_FOUND - System has GLib2
|
|
||||||
# GLib2_INCLUDES - The GLib2 include directories
|
|
||||||
# GLib2_LIBRARIES - The libraries needed to use GLib2
|
|
||||||
# GLib2_DEFINITIONS - Compiler switches required for using GLib2
|
|
||||||
|
|
||||||
find_package(PkgConfig)
|
|
||||||
pkg_check_modules(GLib2 QUIET glib-2.0)
|
|
||||||
set(GLib2_DEFINITIONS ${GLib2_CFLAGS_OTHER})
|
|
||||||
|
|
||||||
find_path(GLib2_INCLUDE_DIR
|
|
||||||
NAMES glib.h glib-object.h
|
|
||||||
HINTS ${GLib2_INCLUDEDIR} ${GLib2_INCLUDE_DIRS}
|
|
||||||
PATH_SUFFIXES glib-2.0)
|
|
||||||
find_path(GLIBCONFIG_INCLUDE_DIR
|
|
||||||
NAMES glibconfig.h
|
|
||||||
HINTS ${LIBDIR} ${LIBRARY_DIRS} ${_GLib2_LIBRARY_DIR}
|
|
||||||
${GLib2_INCLUDEDIR} ${GLib2_INCLUDE_DIRS}
|
|
||||||
${CMAKE_EXTRA_INCLUDES} ${CMAKE_EXTRA_LIBRARIES}
|
|
||||||
PATH_SUFFIXES glib-2.0 glib-2.0/include)
|
|
||||||
list(APPEND GLib2_INCLUDE_DIR ${GLIBCONFIG_INCLUDE_DIR})
|
|
||||||
|
|
||||||
find_library(GLib2_LIBRARY
|
|
||||||
NAMES glib-2.0 libglib-2.0
|
|
||||||
HINTS ${GLib2_LIBDIR} ${GLib2_LIBRARY_DIRS})
|
|
||||||
|
|
||||||
set(GLib2_LIBRARIES ${GLib2_LIBRARY})
|
|
||||||
set(GLib2_INCLUDE_DIRS ${GLib2_INCLUDE_DIR})
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(GLib2 DEFAULT_MSG
|
|
||||||
GLib2_LIBRARY GLib2_INCLUDE_DIR)
|
|
||||||
|
|
||||||
mark_as_advanced(GLib2_INCLUDE_DIR GLib2_LIBRARY)
|
|
||||||
@@ -1,61 +0,0 @@
|
|||||||
# - Try to find Gio
|
|
||||||
# Once done this will define
|
|
||||||
#
|
|
||||||
# GIO_FOUND - system has Gio
|
|
||||||
# GIO_INCLUDE_DIR - the Gio include directory
|
|
||||||
# GIO_LIBRARIES - the libraries needed to use Gio
|
|
||||||
# GIO_DEFINITIONS - Compiler switches required for using Gio
|
|
||||||
|
|
||||||
|
|
||||||
IF (GIO_INCLUDE_DIR AND GIO_LIBRARIES)
|
|
||||||
# in cache already
|
|
||||||
SET(Gio_FIND_QUIETLY TRUE)
|
|
||||||
ELSE (GIO_INCLUDE_DIR AND GIO_LIBRARIES)
|
|
||||||
SET(Gio_FIND_QUIETLY FALSE)
|
|
||||||
ENDIF (GIO_INCLUDE_DIR AND GIO_LIBRARIES)
|
|
||||||
|
|
||||||
IF (NOT WIN32)
|
|
||||||
# use pkg-config to get the directories and then use these values
|
|
||||||
# in the FIND_PATH() and FIND_LIBRARY() calls
|
|
||||||
FIND_PACKAGE(PkgConfig)
|
|
||||||
PKG_CHECK_MODULES(GIO gio-2.0)
|
|
||||||
#MESSAGE(STATUS "DEBUG: Gio include directory = ${GIO_INCLUDE_DIRS}")
|
|
||||||
#MESSAGE(STATUS "DEBUG: Gio link directory = ${GIO_LIBRARY_DIRS}")
|
|
||||||
#MESSAGE(STATUS "DEBUG: Gio CFlags = ${GIO_CFLAGS}")
|
|
||||||
SET(GIO_DEFINITIONS ${GIO_CFLAGS_OTHER})
|
|
||||||
ENDIF (NOT WIN32)
|
|
||||||
|
|
||||||
FIND_PATH(GIO_INCLUDE_DIR gio.h
|
|
||||||
PATHS
|
|
||||||
${GIO_INCLUDEDIR}
|
|
||||||
${GIO_INCLUDE_DIRS}
|
|
||||||
PATH_SUFFIXES glib-2.0/gio/
|
|
||||||
)
|
|
||||||
|
|
||||||
FIND_LIBRARY(_GioLibs NAMES gio-2.0 libgio-2.0
|
|
||||||
PATHS
|
|
||||||
${GIO_LIBDIR}
|
|
||||||
${GIO_LIBRARY_DIRS}
|
|
||||||
)
|
|
||||||
|
|
||||||
SET( GIO_LIBRARIES ${_GioLibs} )
|
|
||||||
SET( GIO_INCLUDE_DIRS ${GIO_INCLUDE_DIR} )
|
|
||||||
|
|
||||||
IF (GIO_INCLUDE_DIR AND GIO_LIBRARIES)
|
|
||||||
SET(GIO_FOUND TRUE)
|
|
||||||
ELSE (GIO_INCLUDE_DIR AND GIO_LIBRARIES)
|
|
||||||
SET(GIO_FOUND FALSE)
|
|
||||||
ENDIF (GIO_INCLUDE_DIR AND GIO_LIBRARIES)
|
|
||||||
|
|
||||||
IF (GIO_FOUND)
|
|
||||||
IF (NOT Gio_FIND_QUIETLY)
|
|
||||||
MESSAGE(STATUS "Found Gio libraries: ${GIO_LIBRARIES}")
|
|
||||||
MESSAGE(STATUS "Found Gio includes : ${GIO_INCLUDE_DIR}")
|
|
||||||
ENDIF (NOT Gio_FIND_QUIETLY)
|
|
||||||
ELSE (GIO_FOUND)
|
|
||||||
IF (Gio_FIND_REQUIRED)
|
|
||||||
MESSAGE(STATUS "Could NOT find Gio")
|
|
||||||
ENDIF(Gio_FIND_REQUIRED)
|
|
||||||
ENDIF (GIO_FOUND)
|
|
||||||
|
|
||||||
MARK_AS_ADVANCED(GIO_INCLUDE_DIR _GioLibs)
|
|
||||||
82
cmake/modules/FindIconv.cmake
Normal file
82
cmake/modules/FindIconv.cmake
Normal file
@@ -0,0 +1,82 @@
|
|||||||
|
# - Try to find Iconv
|
||||||
|
# Once done this will define
|
||||||
|
#
|
||||||
|
# ICONV_FOUND - system has Iconv
|
||||||
|
# ICONV_INCLUDE_DIRS - the Iconv include directory
|
||||||
|
# ICONV_LIBRARIES - Link these to use Iconv
|
||||||
|
# ICONV_DEFINITIONS - Compiler switches required for using Iconv
|
||||||
|
#
|
||||||
|
# Copyright (c) 2013 Andreas Schneider <asn@cryptomilk.org>
|
||||||
|
#
|
||||||
|
# Redistribution and use is allowed according to the terms of the New
|
||||||
|
# BSD license.
|
||||||
|
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||||
|
#
|
||||||
|
|
||||||
|
include(CheckIncludeFile)
|
||||||
|
include(CheckFunctionExists)
|
||||||
|
include(CheckLibraryExists)
|
||||||
|
include(CheckPrototypeDefinition)
|
||||||
|
|
||||||
|
find_path(ICONV_INCLUDE_DIR
|
||||||
|
NAMES
|
||||||
|
iconv.h sys/iconv.h
|
||||||
|
)
|
||||||
|
|
||||||
|
set(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_DIR})
|
||||||
|
check_include_file(iconv.h HAVE_ICONV_H)
|
||||||
|
check_include_file(sys/iconv.h HAVE_SYS_ICONV_H)
|
||||||
|
set(CMAKE_REQUIRED_INCLUDES)
|
||||||
|
|
||||||
|
find_library(ICONV_LIBRARY
|
||||||
|
NAMES
|
||||||
|
iconv
|
||||||
|
libiconv
|
||||||
|
PATHS
|
||||||
|
)
|
||||||
|
|
||||||
|
if (ICONV_LIBRARY)
|
||||||
|
get_filename_component(_ICONV_NAME ${ICONV_LIBRARY} NAME)
|
||||||
|
get_filename_component(_ICONV_PATH ${ICONV_LIBRARY} PATH)
|
||||||
|
check_library_exists(${_ICONV_NAME} iconv ${_ICONV_PATH} HAVE_ICONV)
|
||||||
|
else()
|
||||||
|
check_function_exists(iconv HAVE_ICONV)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if (HAVE_ICONV_H OR HAVE_SYS_ICONV_H)
|
||||||
|
if (HAVE_ICONV_H)
|
||||||
|
set(_ICONV_PROTO_INCLUDE "iconv.h")
|
||||||
|
endif (HAVE_ICONV_H)
|
||||||
|
if (HAVE_SYS_ICONV_H)
|
||||||
|
set(_ICONV_PROTO_INCLUDE "sys/iconv.h")
|
||||||
|
endif (HAVE_SYS_ICONV_H)
|
||||||
|
|
||||||
|
set(CMAKE_REQUIRED_INCLUDES ${ICONV_INCLUDE_DIR})
|
||||||
|
check_prototype_definition(iconv
|
||||||
|
"size_t iconv(iconv_t cd, const char **inbuf, size_t *inbytesleft, char **outbuf, size_t *outbytesleft)"
|
||||||
|
"-1"
|
||||||
|
${_ICONV_PROTO_INCLUDE}
|
||||||
|
HAVE_ICONV_CONST)
|
||||||
|
set(CMAKE_REQUIRED_INCLUDES)
|
||||||
|
endif (HAVE_ICONV_H OR HAVE_SYS_ICONV_H)
|
||||||
|
|
||||||
|
set(ICONV_INCLUDE_DIRS
|
||||||
|
${ICONV_INCLUDE_DIR}
|
||||||
|
)
|
||||||
|
|
||||||
|
if (ICONV_LIBRARY)
|
||||||
|
set(ICONV_LIBRARIES
|
||||||
|
${ICONV_LIBRARIES}
|
||||||
|
${ICONV_LIBRARY}
|
||||||
|
)
|
||||||
|
endif (ICONV_LIBRARY)
|
||||||
|
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
if (ICONV_LIBRARIES)
|
||||||
|
find_package_handle_standard_args(Iconv DEFAULT_MSG ICONV_LIBRARIES ICONV_INCLUDE_DIRS)
|
||||||
|
else()
|
||||||
|
find_package_handle_standard_args(Iconv DEFAULT_MSG ICONV_INCLUDE_DIRS)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# show the ICONV_INCLUDE_DIRS and ICONV_LIBRARIES variables only in the advanced view
|
||||||
|
mark_as_advanced(ICONV_INCLUDE_DIRS ICONV_LIBRARIES)
|
||||||
@@ -1,22 +0,0 @@
|
|||||||
# FindLibcloudproviders.cmake
|
|
||||||
|
|
||||||
find_path(LIBCLOUDPROVIDERS_INCLUDE_DIR
|
|
||||||
NAMES cloudprovidersproviderexporter.h cloudprovidersaccountexporter.h
|
|
||||||
PATH_SUFFIXES cloudproviders
|
|
||||||
)
|
|
||||||
find_library(LIBCLOUDPROVIDERS_LIBRARY
|
|
||||||
NAMES
|
|
||||||
libcloudproviders
|
|
||||||
cloudproviders
|
|
||||||
HINTS
|
|
||||||
/usr/lib
|
|
||||||
/usr/lib/${CMAKE_ARCH_TRIPLET}
|
|
||||||
/usr/local/lib
|
|
||||||
/opt/local/lib
|
|
||||||
${CMAKE_LIBRARY_PATH}
|
|
||||||
${CMAKE_INSTALL_PREFIX}/lib
|
|
||||||
)
|
|
||||||
|
|
||||||
message("================> ${LIBCLOUDPROVIDERS_LIBRARY}")
|
|
||||||
|
|
||||||
find_package_handle_standard_args(LIBCLOUDPROVIDERS DEFAULT_MSG LIBCLOUDPROVIDERS_INCLUDE_DIR LIBCLOUDPROVIDERS_LIBRARY)
|
|
||||||
306
cmake/modules/FindOpenSSLCross.cmake
Normal file
306
cmake/modules/FindOpenSSLCross.cmake
Normal file
@@ -0,0 +1,306 @@
|
|||||||
|
# - Try to find the OpenSSL encryption library
|
||||||
|
# Once done this will define
|
||||||
|
#
|
||||||
|
# OPENSSL_ROOT_DIR - Set this variable to the root installation of OpenSSL
|
||||||
|
#
|
||||||
|
# Read-Only variables:
|
||||||
|
# OPENSSL_FOUND - system has the OpenSSL library
|
||||||
|
# OPENSSL_INCLUDE_DIR - the OpenSSL include directory
|
||||||
|
# OPENSSL_LIBRARIES - The libraries needed to use OpenSSL
|
||||||
|
# OPENSSL_VERSION - This is set to $major.$minor.$revision$path (eg. 0.9.8s)
|
||||||
|
|
||||||
|
#=============================================================================
|
||||||
|
# Copyright 2006-2009 Kitware, Inc.
|
||||||
|
# Copyright 2006 Alexander Neundorf <neundorf@kde.org>
|
||||||
|
# Copyright 2009-2011 Mathieu Malaterre <mathieu.malaterre@gmail.com>
|
||||||
|
#
|
||||||
|
# Distributed under the OSI-approved BSD License (the "License");
|
||||||
|
# see accompanying file Copyright.txt for details.
|
||||||
|
#
|
||||||
|
# This software is distributed WITHOUT ANY WARRANTY; without even the
|
||||||
|
# implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.
|
||||||
|
# See the License for more information.
|
||||||
|
#=============================================================================
|
||||||
|
# (To distribute this file outside of CMake, substitute the full
|
||||||
|
# License text for the above reference.)
|
||||||
|
|
||||||
|
if (UNIX)
|
||||||
|
find_package(PkgConfig QUIET)
|
||||||
|
pkg_check_modules(_OPENSSL QUIET openssl)
|
||||||
|
endif (UNIX)
|
||||||
|
|
||||||
|
# http://www.slproweb.com/products/Win32OpenSSL.html
|
||||||
|
SET(_OPENSSL_ROOT_HINTS
|
||||||
|
$ENV{OPENSSL_ROOT_DIR}
|
||||||
|
${OPENSSL_ROOT_DIR}
|
||||||
|
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\OpenSSL (32-bit)_is1;Inno Setup: App Path]"
|
||||||
|
"[HKEY_LOCAL_MACHINE\\SOFTWARE\\Microsoft\\Windows\\CurrentVersion\\Uninstall\\OpenSSL (64-bit)_is1;Inno Setup: App Path]"
|
||||||
|
)
|
||||||
|
SET(_OPENSSL_ROOT_PATHS
|
||||||
|
"$ENV{PROGRAMFILES}/OpenSSL"
|
||||||
|
"$ENV{PROGRAMFILES}/OpenSSL-Win32"
|
||||||
|
"$ENV{PROGRAMFILES}/OpenSSL-Win64"
|
||||||
|
"C:/OpenSSL/"
|
||||||
|
"C:/OpenSSL-Win32/"
|
||||||
|
"C:/OpenSSL-Win64/"
|
||||||
|
)
|
||||||
|
SET(_OPENSSL_ROOT_HINTS_AND_PATHS
|
||||||
|
HINTS ${_OPENSSL_ROOT_HINTS}
|
||||||
|
PATHS ${_OPENSSL_ROOT_PATHS}
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_PATH(OPENSSL_INCLUDE_DIR
|
||||||
|
NAMES
|
||||||
|
openssl/ssl.h
|
||||||
|
HINTS
|
||||||
|
${_OPENSSL_INCLUDEDIR}
|
||||||
|
${_OPENSSL_ROOT_HINTS_AND_PATHS}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
include
|
||||||
|
)
|
||||||
|
|
||||||
|
IF(WIN32 AND NOT CYGWIN)
|
||||||
|
# MINGW should go here too
|
||||||
|
IF(MSVC)
|
||||||
|
# /MD and /MDd are the standard values - if someone wants to use
|
||||||
|
# others, the libnames have to change here too
|
||||||
|
# use also ssl and ssleay32 in debug as fallback for openssl < 0.9.8b
|
||||||
|
# TODO: handle /MT and static lib
|
||||||
|
# In Visual C++ naming convention each of these four kinds of Windows libraries has it's standard suffix:
|
||||||
|
# * MD for dynamic-release
|
||||||
|
# * MDd for dynamic-debug
|
||||||
|
# * MT for static-release
|
||||||
|
# * MTd for static-debug
|
||||||
|
|
||||||
|
# Implementation details:
|
||||||
|
# We are using the libraries located in the VC subdir instead of the parent directory eventhough :
|
||||||
|
# libeay32MD.lib is identical to ../libeay32.lib, and
|
||||||
|
# ssleay32MD.lib is identical to ../ssleay32.lib
|
||||||
|
FIND_LIBRARY(LIB_EAY_DEBUG
|
||||||
|
NAMES
|
||||||
|
libeay32MDd
|
||||||
|
libeay32
|
||||||
|
${_OPENSSL_ROOT_HINTS_AND_PATHS}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
"lib"
|
||||||
|
"VC"
|
||||||
|
"lib/VC"
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(LIB_EAY_RELEASE
|
||||||
|
NAMES
|
||||||
|
libeay32MD
|
||||||
|
libeay32
|
||||||
|
${_OPENSSL_ROOT_HINTS_AND_PATHS}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
"lib"
|
||||||
|
"VC"
|
||||||
|
"lib/VC"
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(SSL_EAY_DEBUG
|
||||||
|
NAMES
|
||||||
|
ssleay32MDd
|
||||||
|
ssleay32
|
||||||
|
ssl
|
||||||
|
${_OPENSSL_ROOT_HINTS_AND_PATHS}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
"lib"
|
||||||
|
"VC"
|
||||||
|
"lib/VC"
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(SSL_EAY_RELEASE
|
||||||
|
NAMES
|
||||||
|
ssleay32MD
|
||||||
|
ssleay32
|
||||||
|
ssl
|
||||||
|
${_OPENSSL_ROOT_HINTS_AND_PATHS}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
"lib"
|
||||||
|
"VC"
|
||||||
|
"lib/VC"
|
||||||
|
)
|
||||||
|
|
||||||
|
if( CMAKE_CONFIGURATION_TYPES OR CMAKE_BUILD_TYPE )
|
||||||
|
set( OPENSSL_LIBRARIES
|
||||||
|
optimized ${SSL_EAY_RELEASE} debug ${SSL_EAY_DEBUG}
|
||||||
|
optimized ${LIB_EAY_RELEASE} debug ${LIB_EAY_DEBUG}
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
set( OPENSSL_LIBRARIES ${SSL_EAY_RELEASE} ${LIB_EAY_RELEASE} )
|
||||||
|
endif()
|
||||||
|
MARK_AS_ADVANCED(SSL_EAY_DEBUG SSL_EAY_RELEASE)
|
||||||
|
MARK_AS_ADVANCED(LIB_EAY_DEBUG LIB_EAY_RELEASE)
|
||||||
|
ELSEIF(MINGW)
|
||||||
|
# same player, for MingW
|
||||||
|
FIND_LIBRARY(LIB_EAY
|
||||||
|
NAMES
|
||||||
|
libeay32
|
||||||
|
crypto
|
||||||
|
${_OPENSSL_ROOT_HINTS_AND_PATHS}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
"lib"
|
||||||
|
"lib/MinGW"
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(SSL_EAY
|
||||||
|
NAMES
|
||||||
|
ssleay32
|
||||||
|
ssl
|
||||||
|
${_OPENSSL_ROOT_HINTS_AND_PATHS}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
"lib"
|
||||||
|
"lib/MinGW"
|
||||||
|
)
|
||||||
|
|
||||||
|
MARK_AS_ADVANCED(SSL_EAY LIB_EAY)
|
||||||
|
set( OPENSSL_LIBRARIES ${SSL_EAY} ${LIB_EAY} )
|
||||||
|
ELSE(MSVC)
|
||||||
|
# Not sure what to pick for -say- intel, let's use the toplevel ones and hope someone report issues:
|
||||||
|
FIND_LIBRARY(LIB_EAY
|
||||||
|
NAMES
|
||||||
|
libeay32
|
||||||
|
HINTS
|
||||||
|
${_OPENSSL_LIBDIR}
|
||||||
|
${_OPENSSL_ROOT_HINTS_AND_PATHS}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
lib
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(SSL_EAY
|
||||||
|
NAMES
|
||||||
|
ssleay32
|
||||||
|
HINTS
|
||||||
|
${_OPENSSL_LIBDIR}
|
||||||
|
${_OPENSSL_ROOT_HINTS_AND_PATHS}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
lib
|
||||||
|
)
|
||||||
|
|
||||||
|
MARK_AS_ADVANCED(SSL_EAY LIB_EAY)
|
||||||
|
set( OPENSSL_LIBRARIES ${SSL_EAY} ${LIB_EAY} )
|
||||||
|
ENDIF(MSVC)
|
||||||
|
ELSE(WIN32 AND NOT CYGWIN)
|
||||||
|
|
||||||
|
FIND_LIBRARY(OPENSSL_SSL_LIBRARY
|
||||||
|
NAMES
|
||||||
|
ssl
|
||||||
|
ssleay32
|
||||||
|
ssleay32MD
|
||||||
|
HINTS
|
||||||
|
${_OPENSSL_LIBDIR}
|
||||||
|
${_OPENSSL_ROOT_HINTS_AND_PATHS}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
lib
|
||||||
|
)
|
||||||
|
|
||||||
|
FIND_LIBRARY(OPENSSL_CRYPTO_LIBRARY
|
||||||
|
NAMES
|
||||||
|
crypto
|
||||||
|
HINTS
|
||||||
|
${_OPENSSL_LIBDIR}
|
||||||
|
${_OPENSSL_ROOT_HINTS_AND_PATHS}
|
||||||
|
PATH_SUFFIXES
|
||||||
|
lib
|
||||||
|
)
|
||||||
|
|
||||||
|
MARK_AS_ADVANCED(OPENSSL_CRYPTO_LIBRARY OPENSSL_SSL_LIBRARY)
|
||||||
|
|
||||||
|
# compat defines
|
||||||
|
SET(OPENSSL_SSL_LIBRARIES ${OPENSSL_SSL_LIBRARY})
|
||||||
|
SET(OPENSSL_CRYPTO_LIBRARIES ${OPENSSL_CRYPTO_LIBRARY})
|
||||||
|
|
||||||
|
SET(OPENSSL_LIBRARIES ${OPENSSL_SSL_LIBRARY} ${OPENSSL_CRYPTO_LIBRARY})
|
||||||
|
|
||||||
|
ENDIF(WIN32 AND NOT CYGWIN)
|
||||||
|
|
||||||
|
function(from_hex HEX DEC)
|
||||||
|
string(TOUPPER "${HEX}" HEX)
|
||||||
|
set(_res 0)
|
||||||
|
string(LENGTH "${HEX}" _strlen)
|
||||||
|
|
||||||
|
while (_strlen GREATER 0)
|
||||||
|
math(EXPR _res "${_res} * 16")
|
||||||
|
string(SUBSTRING "${HEX}" 0 1 NIBBLE)
|
||||||
|
string(SUBSTRING "${HEX}" 1 -1 HEX)
|
||||||
|
if (NIBBLE STREQUAL "A")
|
||||||
|
math(EXPR _res "${_res} + 10")
|
||||||
|
elseif (NIBBLE STREQUAL "B")
|
||||||
|
math(EXPR _res "${_res} + 11")
|
||||||
|
elseif (NIBBLE STREQUAL "C")
|
||||||
|
math(EXPR _res "${_res} + 12")
|
||||||
|
elseif (NIBBLE STREQUAL "D")
|
||||||
|
math(EXPR _res "${_res} + 13")
|
||||||
|
elseif (NIBBLE STREQUAL "E")
|
||||||
|
math(EXPR _res "${_res} + 14")
|
||||||
|
elseif (NIBBLE STREQUAL "F")
|
||||||
|
math(EXPR _res "${_res} + 15")
|
||||||
|
else()
|
||||||
|
math(EXPR _res "${_res} + ${NIBBLE}")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
string(LENGTH "${HEX}" _strlen)
|
||||||
|
endwhile()
|
||||||
|
|
||||||
|
set(${DEC} ${_res} PARENT_SCOPE)
|
||||||
|
endfunction(from_hex)
|
||||||
|
|
||||||
|
if (OPENSSL_INCLUDE_DIR)
|
||||||
|
if (_OPENSSL_VERSION)
|
||||||
|
set(OPENSSL_VERSION "${_OPENSSL_VERSION}")
|
||||||
|
elseif(OPENSSL_INCLUDE_DIR AND EXISTS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h")
|
||||||
|
file(STRINGS "${OPENSSL_INCLUDE_DIR}/openssl/opensslv.h" openssl_version_str
|
||||||
|
REGEX "^#define[\t ]+OPENSSL_VERSION_NUMBER[\t ]+0x([0-9a-fA-F])+.*")
|
||||||
|
|
||||||
|
# The version number is encoded as 0xMNNFFPPS: major minor fix patch status
|
||||||
|
# The status gives if this is a developer or prerelease and is ignored here.
|
||||||
|
# Major, minor, and fix directly translate into the version numbers shown in
|
||||||
|
# the string. The patch field translates to the single character suffix that
|
||||||
|
# indicates the bug fix state, which 00 -> nothing, 01 -> a, 02 -> b and so
|
||||||
|
# on.
|
||||||
|
|
||||||
|
string(REGEX REPLACE "^.*OPENSSL_VERSION_NUMBER[\t ]+0x([0-9a-fA-F])([0-9a-fA-F][0-9a-fA-F])([0-9a-fA-F][0-9a-fA-F])([0-9a-fA-F][0-9a-fA-F])([0-9a-fA-F]).*$"
|
||||||
|
"\\1;\\2;\\3;\\4;\\5" OPENSSL_VERSION_LIST "${openssl_version_str}")
|
||||||
|
list(GET OPENSSL_VERSION_LIST 0 OPENSSL_VERSION_MAJOR)
|
||||||
|
list(GET OPENSSL_VERSION_LIST 1 OPENSSL_VERSION_MINOR)
|
||||||
|
from_hex("${OPENSSL_VERSION_MINOR}" OPENSSL_VERSION_MINOR)
|
||||||
|
list(GET OPENSSL_VERSION_LIST 2 OPENSSL_VERSION_FIX)
|
||||||
|
from_hex("${OPENSSL_VERSION_FIX}" OPENSSL_VERSION_FIX)
|
||||||
|
list(GET OPENSSL_VERSION_LIST 3 OPENSSL_VERSION_PATCH)
|
||||||
|
|
||||||
|
if (NOT OPENSSL_VERSION_PATCH STREQUAL "00")
|
||||||
|
from_hex("${OPENSSL_VERSION_PATCH}" _tmp)
|
||||||
|
# 96 is the ASCII code of 'a' minus 1
|
||||||
|
math(EXPR OPENSSL_VERSION_PATCH_ASCII "${_tmp} + 96")
|
||||||
|
unset(_tmp)
|
||||||
|
# Once anyone knows how OpenSSL would call the patch versions beyond 'z'
|
||||||
|
# this should be updated to handle that, too. This has not happened yet
|
||||||
|
# so it is simply ignored here for now.
|
||||||
|
string(ASCII "${OPENSSL_VERSION_PATCH_ASCII}" OPENSSL_VERSION_PATCH_STRING)
|
||||||
|
endif (NOT OPENSSL_VERSION_PATCH STREQUAL "00")
|
||||||
|
|
||||||
|
set(OPENSSL_VERSION "${OPENSSL_VERSION_MAJOR}.${OPENSSL_VERSION_MINOR}.${OPENSSL_VERSION_FIX}${OPENSSL_VERSION_PATCH_STRING}")
|
||||||
|
endif (_OPENSSL_VERSION)
|
||||||
|
endif (OPENSSL_INCLUDE_DIR)
|
||||||
|
|
||||||
|
include(FindPackageHandleStandardArgs)
|
||||||
|
|
||||||
|
if (OPENSSL_VERSION)
|
||||||
|
find_package_handle_standard_args(OpenSSL
|
||||||
|
REQUIRED_VARS
|
||||||
|
OPENSSL_LIBRARIES
|
||||||
|
OPENSSL_INCLUDE_DIR
|
||||||
|
VERSION_VAR
|
||||||
|
OPENSSL_VERSION
|
||||||
|
FAIL_MESSAGE
|
||||||
|
"Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR"
|
||||||
|
)
|
||||||
|
else (OPENSSL_VERSION)
|
||||||
|
find_package_handle_standard_args(OpenSSL "Could NOT find OpenSSL, try to set the path to OpenSSL root folder in the system variable OPENSSL_ROOT_DIR"
|
||||||
|
OPENSSL_LIBRARIES
|
||||||
|
OPENSSL_INCLUDE_DIR
|
||||||
|
)
|
||||||
|
endif (OPENSSL_VERSION)
|
||||||
|
|
||||||
|
MARK_AS_ADVANCED(OPENSSL_INCLUDE_DIR OPENSSL_LIBRARIES)
|
||||||
@@ -1,117 +0,0 @@
|
|||||||
#.rst:
|
|
||||||
# FindPng2Ico
|
|
||||||
# -----------
|
|
||||||
#
|
|
||||||
# Try to find png2ico.
|
|
||||||
#
|
|
||||||
# If the png2ico executable is not in your PATH, you can provide
|
|
||||||
# an alternative name or full path location with the ``Png2Ico_EXECUTABLE``
|
|
||||||
# variable.
|
|
||||||
#
|
|
||||||
# This will define the following variables:
|
|
||||||
#
|
|
||||||
# ``Png2Ico_FOUND``
|
|
||||||
# True if png2ico is available.
|
|
||||||
#
|
|
||||||
# ``Png2Ico_EXECUTABLE``
|
|
||||||
# The png2ico executable.
|
|
||||||
#
|
|
||||||
# If ``Png2Ico_FOUND`` is TRUE, it will also define the following imported
|
|
||||||
# target:
|
|
||||||
#
|
|
||||||
# ``Png2Ico::Png2Ico``
|
|
||||||
# The png2ico executable.
|
|
||||||
#
|
|
||||||
# and the following variables:
|
|
||||||
#
|
|
||||||
# ``Png2Ico_HAS_COLORS_ARGUMENT``
|
|
||||||
# Whether png2ico accepts a ``--colors`` argument. `Matthias Benkmann's
|
|
||||||
# tool <http://www.winterdrache.de/freeware/png2ico/>`_ does, while the
|
|
||||||
# version of png2ico from the `"KDE On Windows" (kdewin)
|
|
||||||
# <https://projects.kde.org/projects/kdesupport/kdewin>`_ project does not.
|
|
||||||
#
|
|
||||||
# ``Png2Ico_HAS_RCFILE_ARGUMENT``
|
|
||||||
# Whether png2ico accepts an ``--rcfile`` argument. The version of png2ico
|
|
||||||
# from the `"KDE On Windows" (kdewin)
|
|
||||||
# <https://projects.kde.org/projects/kdesupport/kdewin>`_ project does,
|
|
||||||
# while `Matthias Benkmann's tool
|
|
||||||
# <http://www.winterdrache.de/freeware/png2ico/>`_ does not.
|
|
||||||
#
|
|
||||||
# Since 1.7.0.
|
|
||||||
|
|
||||||
#=============================================================================
|
|
||||||
# Copyright 2014 Alex Merry <alex.merry@kde.org>
|
|
||||||
#
|
|
||||||
# Redistribution and use in source and binary forms, with or without
|
|
||||||
# modification, are permitted provided that the following conditions
|
|
||||||
# are met:
|
|
||||||
#
|
|
||||||
# 1. Redistributions of source code must retain the copyright
|
|
||||||
# notice, this list of conditions and the following disclaimer.
|
|
||||||
# 2. Redistributions in binary form must reproduce the copyright
|
|
||||||
# notice, this list of conditions and the following disclaimer in the
|
|
||||||
# documentation and/or other materials provided with the distribution.
|
|
||||||
# 3. The name of the author may not be used to endorse or promote products
|
|
||||||
# derived from this software without specific prior written permission.
|
|
||||||
#
|
|
||||||
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``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 AUTHOR 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.
|
|
||||||
#=============================================================================
|
|
||||||
|
|
||||||
include(${CMAKE_CURRENT_LIST_DIR}/ECMFindModuleHelpersStub.cmake)
|
|
||||||
|
|
||||||
ecm_find_package_version_check(Png2Ico)
|
|
||||||
|
|
||||||
# Find png2ico
|
|
||||||
find_program(Png2Ico_EXECUTABLE NAMES png2ico)
|
|
||||||
|
|
||||||
include(FindPackageHandleStandardArgs)
|
|
||||||
find_package_handle_standard_args(Png2Ico
|
|
||||||
FOUND_VAR
|
|
||||||
Png2Ico_FOUND
|
|
||||||
REQUIRED_VARS
|
|
||||||
Png2Ico_EXECUTABLE
|
|
||||||
)
|
|
||||||
|
|
||||||
mark_as_advanced(Png2Ico_EXECUTABLE)
|
|
||||||
|
|
||||||
if (Png2Ico_FOUND)
|
|
||||||
execute_process(
|
|
||||||
COMMAND "${Png2Ico_EXECUTABLE}" --help
|
|
||||||
OUTPUT_VARIABLE _png2ico_help_text
|
|
||||||
ERROR_VARIABLE _png2ico_help_text
|
|
||||||
)
|
|
||||||
if (_png2ico_help_text MATCHES ".*--rcfile .*")
|
|
||||||
set(Png2Ico_HAS_RCFILE_ARGUMENT TRUE)
|
|
||||||
else()
|
|
||||||
set(Png2Ico_HAS_RCFILE_ARGUMENT FALSE)
|
|
||||||
endif()
|
|
||||||
if (_png2ico_help_text MATCHES ".*--colors .*")
|
|
||||||
set(Png2Ico_HAS_COLORS_ARGUMENT TRUE)
|
|
||||||
else()
|
|
||||||
set(Png2Ico_HAS_COLORS_ARGUMENT FALSE)
|
|
||||||
endif()
|
|
||||||
unset(_png2ico_help_text)
|
|
||||||
|
|
||||||
if (NOT TARGET Png2Ico::Png2Ico)
|
|
||||||
add_executable(Png2Ico::Png2Ico IMPORTED)
|
|
||||||
set_target_properties(Png2Ico::Png2Ico PROPERTIES
|
|
||||||
IMPORTED_LOCATION "${Png2Ico_EXECUTABLE}"
|
|
||||||
)
|
|
||||||
endif()
|
|
||||||
endif()
|
|
||||||
|
|
||||||
include(FeatureSummary)
|
|
||||||
set_package_properties(Png2Ico PROPERTIES
|
|
||||||
URL "http://www.winterdrache.de/freeware/png2ico/ or https://projects.kde.org/projects/kdesupport/kdewin"
|
|
||||||
DESCRIPTION "Executable that converts a collection of PNG files into a Windows icon file"
|
|
||||||
)
|
|
||||||
|
|
||||||
30
cmake/modules/MacroAddPlugin.cmake
Normal file
30
cmake/modules/MacroAddPlugin.cmake
Normal file
@@ -0,0 +1,30 @@
|
|||||||
|
# - MACRO_ADD_PLUGIN(name [WITH_PREFIX] file1 .. fileN)
|
||||||
|
#
|
||||||
|
# Create a plugin from the given source files.
|
||||||
|
# If WITH_PREFIX is given, the resulting plugin will have the
|
||||||
|
# prefix "lib", otherwise it won't.
|
||||||
|
#
|
||||||
|
# Copyright (c) 2006, Alexander Neundorf, <neundorf@kde.org>
|
||||||
|
# Copyright (c) 2006, Laurent Montel, <montel@kde.org>
|
||||||
|
# Copyright (c) 2006, Andreas Schneider, <asn@cryptomilk.org>
|
||||||
|
#
|
||||||
|
# Redistribution and use is allowed according to the terms of the BSD license.
|
||||||
|
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||||
|
|
||||||
|
|
||||||
|
macro (MACRO_ADD_PLUGIN _target_NAME _with_PREFIX)
|
||||||
|
|
||||||
|
if (${_with_PREFIX} STREQUAL "WITH_PREFIX")
|
||||||
|
set(_first_SRC)
|
||||||
|
else (${_with_PREFIX} STREQUAL "WITH_PREFIX")
|
||||||
|
set(_first_SRC ${_with_PREFIX})
|
||||||
|
endif (${_with_PREFIX} STREQUAL "WITH_PREFIX")
|
||||||
|
|
||||||
|
add_library(${_target_NAME} MODULE ${_first_SRC} ${ARGN})
|
||||||
|
|
||||||
|
if (_first_SRC)
|
||||||
|
set_target_properties(${_target_NAME} PROPERTIES PREFIX "")
|
||||||
|
endif (_first_SRC)
|
||||||
|
|
||||||
|
endmacro (MACRO_ADD_PLUGIN _name _sources)
|
||||||
|
|
||||||
37
cmake/modules/MacroCopyFile.cmake
Normal file
37
cmake/modules/MacroCopyFile.cmake
Normal file
@@ -0,0 +1,37 @@
|
|||||||
|
# (c) 2014 Copyright ownCloud GmbH
|
||||||
|
# Redistribution and use is allowed according to the terms of the BSD license.
|
||||||
|
# For details see the accompanying COPYING* file.
|
||||||
|
|
||||||
|
# - macro_copy_file(_src _dst)
|
||||||
|
# Copies a file to ${_dst} only if ${_src} is different (newer) than ${_dst}
|
||||||
|
#
|
||||||
|
# Example:
|
||||||
|
# macro_copy_file(${CMAKE_CURRENT_SOURCE_DIR}/icon.png ${CMAKE_CURRENT_BINARY_DIR}/.)
|
||||||
|
# Copies file icon.png to ${CMAKE_CURRENT_BINARY_DIR} directory
|
||||||
|
#
|
||||||
|
# Copyright (c) 2006-2007 Wengo
|
||||||
|
# Copyright (c) 2006-2008 Andreas Schneider <asn@cryptomilk.org>
|
||||||
|
#
|
||||||
|
# Redistribution and use is allowed according to the terms of the BSD license.
|
||||||
|
# For details see the accompanying COPYING file.
|
||||||
|
|
||||||
|
|
||||||
|
macro (macro_copy_file _src _dst)
|
||||||
|
# Removes all path containing .svn or CVS or CMakeLists.txt during the copy
|
||||||
|
if (NOT ${_src} MATCHES ".*\\.svn|CVS|CMakeLists\\.txt.*")
|
||||||
|
|
||||||
|
if (CMAKE_VERBOSE_MAKEFILE)
|
||||||
|
message(STATUS "Copy file from ${_src} to ${_dst}")
|
||||||
|
endif (CMAKE_VERBOSE_MAKEFILE)
|
||||||
|
|
||||||
|
# Creates directory if necessary
|
||||||
|
get_filename_component(_path ${_dst} PATH)
|
||||||
|
file(MAKE_DIRECTORY ${_path})
|
||||||
|
|
||||||
|
execute_process(
|
||||||
|
COMMAND
|
||||||
|
${CMAKE_COMMAND} -E copy_if_different ${_src} ${_dst}
|
||||||
|
OUTPUT_QUIET
|
||||||
|
)
|
||||||
|
endif (NOT ${_src} MATCHES ".*\\.svn|CVS|CMakeLists\\.txt.*")
|
||||||
|
endmacro (macro_copy_file)
|
||||||
@@ -461,7 +461,6 @@ Section "${APPLICATION_NAME}" SEC_APPLICATION
|
|||||||
File "${MING_BIN}\libgcc_s_sjlj-1.dll"
|
File "${MING_BIN}\libgcc_s_sjlj-1.dll"
|
||||||
File "${MING_BIN}\libstdc++-6.dll"
|
File "${MING_BIN}\libstdc++-6.dll"
|
||||||
File "${MING_BIN}\libwinpthread-1.dll"
|
File "${MING_BIN}\libwinpthread-1.dll"
|
||||||
File "${MING_BIN}\libssp-0.dll"
|
|
||||||
|
|
||||||
;CSync configs
|
;CSync configs
|
||||||
File "${SOURCE_PATH}/sync-exclude.lst"
|
File "${SOURCE_PATH}/sync-exclude.lst"
|
||||||
@@ -604,35 +603,6 @@ Section Uninstall
|
|||||||
Abort $UNINSTALL_ABORT
|
Abort $UNINSTALL_ABORT
|
||||||
owncloud_installed:
|
owncloud_installed:
|
||||||
|
|
||||||
; Delete Navigation Pane entries added for Windows 10.
|
|
||||||
; On 64bit Windows, the client will be writing to the 64bit registry.
|
|
||||||
${If} ${RunningX64}
|
|
||||||
SetRegView 64
|
|
||||||
${EndIf}
|
|
||||||
StrCpy $0 0
|
|
||||||
loop:
|
|
||||||
; Look at every registered explorer namespace for HKCU and check if it was added by our application
|
|
||||||
; (we write to a custom "ApplicationName" value there).
|
|
||||||
EnumRegKey $1 HKCU "Software\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace" $0
|
|
||||||
StrCmp $1 "" done
|
|
||||||
|
|
||||||
ReadRegStr $R0 HKCU "Software\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\$1" "ApplicationName"
|
|
||||||
StrCmp $R0 "${APPLICATION_NAME}" deleteClsid
|
|
||||||
; Increment the index when not deleting the enumerated key.
|
|
||||||
IntOp $0 $0 + 1
|
|
||||||
goto loop
|
|
||||||
|
|
||||||
deleteClsid:
|
|
||||||
DetailPrint "Removing Navigation Pane CLSID $1"
|
|
||||||
; Should match FolderMan::updateCloudStorageRegistry
|
|
||||||
DeleteRegKey HKCU "Software\Microsoft\Windows\CurrentVersion\Explorer\Desktop\NameSpace\$1"
|
|
||||||
DeleteRegKey HKCU "Software\Classes\CLSID\$1"
|
|
||||||
DeleteRegValue HKCU "Software\Microsoft\Windows\CurrentVersion\Explorer\HideDesktopIcons\NewStartPanel" $1
|
|
||||||
goto loop
|
|
||||||
done:
|
|
||||||
; Go back to the 32bit registry.
|
|
||||||
SetRegView lastused
|
|
||||||
|
|
||||||
;Delete registry keys.
|
;Delete registry keys.
|
||||||
DeleteRegValue HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "VersionBuild"
|
DeleteRegValue HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "VersionBuild"
|
||||||
DeleteRegValue HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "VersionMajor"
|
DeleteRegValue HKLM "Software\${APPLICATION_VENDOR}\${APPLICATION_NAME}" "VersionMajor"
|
||||||
|
|||||||
197
cmake/modules/QtVersionAbstraction.cmake
Normal file
197
cmake/modules/QtVersionAbstraction.cmake
Normal file
@@ -0,0 +1,197 @@
|
|||||||
|
# (c) 2014 Copyright ownCloud GmbH
|
||||||
|
# Redistribution and use is allowed according to the terms of the BSD license.
|
||||||
|
# For details see the accompanying COPYING* file.
|
||||||
|
|
||||||
|
include (MacroOptionalFindPackage)
|
||||||
|
include (MacroLogFeature)
|
||||||
|
|
||||||
|
option(BUILD_WITH_QT4 "Build with Qt4 no matter if Qt5 was found" OFF)
|
||||||
|
|
||||||
|
if( BUILD_WITH_QT4 )
|
||||||
|
message(STATUS "Search for Qt5 was disabled by option BUILD_WITH_QT4")
|
||||||
|
else( BUILD_WITH_QT4 )
|
||||||
|
find_package(Qt5Core QUIET)
|
||||||
|
endif( BUILD_WITH_QT4 )
|
||||||
|
|
||||||
|
if( Qt5Core_FOUND )
|
||||||
|
message(STATUS "Found Qt5 core, checking for further dependencies...")
|
||||||
|
find_package(Qt5Network REQUIRED)
|
||||||
|
find_package(Qt5Xml REQUIRED)
|
||||||
|
find_package(Qt5Concurrent REQUIRED)
|
||||||
|
if(UNIT_TESTING)
|
||||||
|
find_package(Qt5Test REQUIRED)
|
||||||
|
endif()
|
||||||
|
if(NOT TOKEN_AUTH_ONLY)
|
||||||
|
find_package(Qt5Widgets REQUIRED)
|
||||||
|
if(APPLE)
|
||||||
|
find_package(Qt5MacExtras REQUIRED)
|
||||||
|
endif(APPLE)
|
||||||
|
|
||||||
|
if(NOT NO_SHIBBOLETH)
|
||||||
|
find_package(Qt5WebKitWidgets)
|
||||||
|
find_package(Qt5WebKit)
|
||||||
|
if(NOT Qt5WebKitWidgets_FOUND)
|
||||||
|
message(FATAL_ERROR "Qt5WebKit required for Shibboleth. Use -DNO_SHIBBOLETH=1 to disable it.")
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
else( Qt5Core_FOUND )
|
||||||
|
if(WIN32 OR APPLE)
|
||||||
|
if (NOT BUILD_WITH_QT4)
|
||||||
|
message(FATAL_ERROR "Qt 5 not found, but application depends on Qt5 on Windows and Mac OS X")
|
||||||
|
endif ()
|
||||||
|
endif(WIN32 OR APPLE)
|
||||||
|
endif( Qt5Core_FOUND )
|
||||||
|
|
||||||
|
|
||||||
|
if( Qt5Core_FOUND )
|
||||||
|
message(STATUS "Using Qt 5!")
|
||||||
|
|
||||||
|
# We need this to find the paths to qdbusxml2cpp and co
|
||||||
|
if (WITH_DBUS)
|
||||||
|
find_package(Qt5DBus REQUIRED)
|
||||||
|
include_directories(${Qt5DBus_INCLUDES})
|
||||||
|
add_definitions(${Qt5DBus_DEFINITIONS})
|
||||||
|
endif (WITH_DBUS)
|
||||||
|
include_directories(${Qt5Core_INCLUDES})
|
||||||
|
add_definitions(${Qt5Core_DEFINITIONS})
|
||||||
|
if (NOT WIN32) #implied on Win32
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -fPIC")
|
||||||
|
endif(NOT WIN32)
|
||||||
|
# set(CMAKE_CXX_FLAGS "${Qt5Widgets_EXECUTABLE_COMPILE_FLAGS}")
|
||||||
|
|
||||||
|
if(APPLE AND NOT TOKEN_AUTH_ONLY)
|
||||||
|
include_directories(${Qt5MacExtras_INCLUDE_DIRS})
|
||||||
|
add_definitions(${Qt5MacExtras_DEFINITIONS})
|
||||||
|
set (QT_LIBRARIES ${QT_LIBRARIES} ${Qt5MacExtras_LIBRARIES})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if(NOT BUILD_LIBRARIES_ONLY)
|
||||||
|
macro(qt_wrap_ui)
|
||||||
|
qt5_wrap_ui(${ARGN})
|
||||||
|
endmacro()
|
||||||
|
else()
|
||||||
|
# hack
|
||||||
|
SET(QT_UIC_EXECUTABLE "")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
macro(qt_add_resources)
|
||||||
|
qt5_add_resources(${ARGN})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
if(NOT TOKEN_AUTH_ONLY)
|
||||||
|
find_package(Qt5LinguistTools)
|
||||||
|
if(Qt5LinguistTools_FOUND)
|
||||||
|
macro(qt_add_translation)
|
||||||
|
qt5_add_translation(${ARGN})
|
||||||
|
endmacro()
|
||||||
|
else()
|
||||||
|
macro(qt_add_translation)
|
||||||
|
endmacro()
|
||||||
|
endif()
|
||||||
|
else()
|
||||||
|
macro(qt_add_translation)
|
||||||
|
endmacro()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
macro(qt_add_dbus_interface)
|
||||||
|
qt5_add_dbus_interface(${ARGN})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
macro(qt_add_dbus_adaptor)
|
||||||
|
qt5_add_dbus_adaptor(${ARGN})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
macro(qt_wrap_cpp)
|
||||||
|
qt5_wrap_cpp(${ARGN})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
macro(install_qt_executable)
|
||||||
|
install_qt5_executable(${ARGN})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
macro(setup_qt)
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
set(QT_RCC_EXECUTABLE "${Qt5Core_RCC_EXECUTABLE}")
|
||||||
|
|
||||||
|
#Enable deprecated symbols
|
||||||
|
add_definitions("-DQT_DISABLE_DEPRECATED_BEFORE=0")
|
||||||
|
|
||||||
|
add_definitions("-DQT_USE_QSTRINGBUILDER") #optimize string concatenation
|
||||||
|
add_definitions("-DQT_MESSAGELOGCONTEXT") #enable function name and line number in debug output
|
||||||
|
endif( Qt5Core_FOUND )
|
||||||
|
|
||||||
|
if(NOT Qt5Core_FOUND)
|
||||||
|
message(STATUS "Could not find Qt5, searching for Qt4 instead...")
|
||||||
|
|
||||||
|
set(NEEDED_QT4_COMPONENTS "QtCore" "QtXml" "QtNetwork" "QtGui" "QtWebkit")
|
||||||
|
if( BUILD_TESTS )
|
||||||
|
list(APPEND NEEDED_QT4_COMPONENTS "QtTest")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
find_package(Qt4 4.7.0 COMPONENTS ${NEEDED_QT4_COMPONENTS} )
|
||||||
|
macro_log_feature(QT4_FOUND "Qt" "A cross-platform application and UI framework" "http://www.qt-project.org" TRUE "" "If you see this, although libqt4-devel is installed, check whether the \n qtwebkit-devel package and whatever contains QtUiTools is installed too")
|
||||||
|
|
||||||
|
macro(qt5_use_modules)
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
macro(qt_wrap_ui)
|
||||||
|
qt4_wrap_ui(${ARGN})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
macro(qt_add_resources)
|
||||||
|
qt4_add_resources(${ARGN})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
macro(qt_add_translation)
|
||||||
|
qt4_add_translation(${ARGN})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
macro(qt_add_dbus_interface)
|
||||||
|
qt4_add_dbus_interface(${ARGN})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
macro(qt_add_dbus_adaptor)
|
||||||
|
qt4_add_dbus_adaptor(${ARGN})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
macro(qt_wrap_cpp)
|
||||||
|
qt4_wrap_cpp(${ARGN})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
macro(install_qt_executable)
|
||||||
|
install_qt4_executable(${ARGN})
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
macro(setup_qt)
|
||||||
|
set(QT_USE_QTGUI TRUE)
|
||||||
|
set(QT_USE_QTSQL TRUE)
|
||||||
|
set(QT_USE_QTNETWORK TRUE)
|
||||||
|
set(QT_USE_QTXML TRUE)
|
||||||
|
set(QT_USE_QTWEBKIT TRUE)
|
||||||
|
set(QT_USE_QTDBUS TRUE)
|
||||||
|
|
||||||
|
include( ${QT_USE_FILE} )
|
||||||
|
endmacro()
|
||||||
|
|
||||||
|
if (CMAKE_COMPILER_IS_GNUCC)
|
||||||
|
execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion
|
||||||
|
OUTPUT_VARIABLE GCC_VERSION)
|
||||||
|
if (GCC_VERSION VERSION_GREATER 4.7 OR GCC_VERSION VERSION_EQUAL 4.7)
|
||||||
|
add_definitions("-DQ_DECL_OVERRIDE=override")
|
||||||
|
else()
|
||||||
|
add_definitions("-DQ_DECL_OVERRIDE=")
|
||||||
|
endif()
|
||||||
|
else() #clang or others
|
||||||
|
add_definitions("-DQ_DECL_OVERRIDE=override")
|
||||||
|
endif()
|
||||||
|
|
||||||
|
endif()
|
||||||
|
|
||||||
|
if( Qt5Core_DIR )
|
||||||
|
set( HAVE_QT5 TRUE )
|
||||||
|
else( Qt5Core_DIR )
|
||||||
|
set( HAVE_QT5 FALSE )
|
||||||
|
endif( Qt5Core_DIR )
|
||||||
58
cmake/modules/UseAsciidoc.cmake
Normal file
58
cmake/modules/UseAsciidoc.cmake
Normal file
@@ -0,0 +1,58 @@
|
|||||||
|
# - macro_asciidoc2man(inputfile outputfile)
|
||||||
|
#
|
||||||
|
# Create a manpage with asciidoc.
|
||||||
|
# Example: macro_asciidoc2man(foo.txt foo.1)
|
||||||
|
#
|
||||||
|
# Copyright (c) 2006, Andreas Schneider, <asn@cryptomilk.org>
|
||||||
|
#
|
||||||
|
# Redistribution and use is allowed according to the terms of the BSD license.
|
||||||
|
# For details see the accompanying COPYING-CMAKE-SCRIPTS file.
|
||||||
|
|
||||||
|
include(MacroCopyFile)
|
||||||
|
|
||||||
|
macro(MACRO_ASCIIDOC2MAN _a2m_input _a2m_output)
|
||||||
|
find_program(A2X
|
||||||
|
NAMES
|
||||||
|
a2x
|
||||||
|
)
|
||||||
|
#message("+++ A2X: ${A2X}")
|
||||||
|
|
||||||
|
if (A2X)
|
||||||
|
|
||||||
|
#message("+++ ${A2X} --doctype=manpage --format=manpage --destination-dir=${CMAKE_CURRENT_BINARY_DIR} ${CMAKE_CURRENT_SOURCE_DIR}/${_a2m_input}")
|
||||||
|
macro_copy_file(${CMAKE_CURRENT_SOURCE_DIR}/${_a2m_input} ${CMAKE_CURRENT_BINARY_DIR}/${_a2m_input})
|
||||||
|
|
||||||
|
execute_process(
|
||||||
|
COMMAND
|
||||||
|
${A2X} --doctype=manpage --format=manpage ${_a2m_input}
|
||||||
|
WORKING_DIRECTORY
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}
|
||||||
|
RESULT_VARIABLE
|
||||||
|
A2M_MAN_GENERATED
|
||||||
|
ERROR_QUIET
|
||||||
|
)
|
||||||
|
|
||||||
|
#message("+++ A2M_MAN_GENERATED: ${A2M_MAN_GENERATED}")
|
||||||
|
if (A2M_MAN_GENERATED EQUAL 0)
|
||||||
|
find_file(A2M_MAN_FILE
|
||||||
|
NAME
|
||||||
|
${_a2m_output}
|
||||||
|
PATHS
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}
|
||||||
|
NO_DEFAULT_PATH
|
||||||
|
)
|
||||||
|
|
||||||
|
if (A2M_MAN_FILE)
|
||||||
|
get_filename_component(A2M_MAN_CATEGORY ${A2M_MAN_FILE} EXT)
|
||||||
|
string(SUBSTRING ${A2M_MAN_CATEGORY} 1 1 A2M_MAN_CATEGORY)
|
||||||
|
install(
|
||||||
|
FILES
|
||||||
|
${A2M_MAN_FILE}
|
||||||
|
DESTINATION
|
||||||
|
${MAN_INSTALL_DIR}/man${A2M_MAN_CATEGORY}
|
||||||
|
)
|
||||||
|
endif (A2M_MAN_FILE)
|
||||||
|
endif (A2M_MAN_GENERATED EQUAL 0)
|
||||||
|
|
||||||
|
endif (A2X)
|
||||||
|
endmacro(MACRO_ASCIIDOC2MAN _a2m_input _a2m_file)
|
||||||
@@ -3,12 +3,8 @@
|
|||||||
# For details see the accompanying COPYING* file.
|
# For details see the accompanying COPYING* file.
|
||||||
|
|
||||||
if (CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang")
|
if (CMAKE_CXX_COMPILER_ID MATCHES "GNU|Clang")
|
||||||
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -pedantic -Wno-long-long -Wno-gnu-zero-variadic-macro-arguments")
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -Wall -Wextra -pedantic -Wno-long-long")
|
||||||
|
set(CMAKE_CXX_FLAGS "${CMAKE_CXX_FLAGS} -std=c++0x")
|
||||||
# Fix sqlite compilation on macOS
|
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-incompatible-pointer-types-discards-qualifiers")
|
|
||||||
# Fix sqlite compilation on MinGW
|
|
||||||
set(CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wno-discarded-qualifiers")
|
|
||||||
|
|
||||||
if (CMAKE_CXX_COMPILER_ID MATCHES "GNU")
|
if (CMAKE_CXX_COMPILER_ID MATCHES "GNU")
|
||||||
execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion
|
execute_process(COMMAND ${CMAKE_C_COMPILER} -dumpversion
|
||||||
|
|||||||
@@ -17,13 +17,12 @@
|
|||||||
#cmakedefine APPLICATION_SHORTNAME "@APPLICATION_SHORTNAME@"
|
#cmakedefine APPLICATION_SHORTNAME "@APPLICATION_SHORTNAME@"
|
||||||
#cmakedefine APPLICATION_EXECUTABLE "@APPLICATION_EXECUTABLE@"
|
#cmakedefine APPLICATION_EXECUTABLE "@APPLICATION_EXECUTABLE@"
|
||||||
#cmakedefine APPLICATION_UPDATE_URL "@APPLICATION_UPDATE_URL@"
|
#cmakedefine APPLICATION_UPDATE_URL "@APPLICATION_UPDATE_URL@"
|
||||||
#cmakedefine APPLICATION_ICON_NAME "@APPLICATION_ICON_NAME@"
|
|
||||||
|
|
||||||
#cmakedefine ZLIB_FOUND @ZLIB_FOUND@
|
#cmakedefine ZLIB_FOUND @ZLIB_FOUND@
|
||||||
|
|
||||||
#cmakedefine SYSCONFDIR "@SYSCONFDIR@"
|
#cmakedefine SYSCONFDIR "@SYSCONFDIR@"
|
||||||
#cmakedefine SHAREDIR "@SHAREDIR@"
|
#cmakedefine SHAREDIR "@SHAREDIR@"
|
||||||
|
|
||||||
#cmakedefine WITH_TESTING 1
|
#cmakedefine WITH_UNIT_TESTING 1
|
||||||
|
|
||||||
#endif
|
#endif
|
||||||
|
|||||||
55
csync/CMakeLists.txt
Normal file
55
csync/CMakeLists.txt
Normal file
@@ -0,0 +1,55 @@
|
|||||||
|
|
||||||
|
|
||||||
|
# global needed variables
|
||||||
|
set(APPLICATION_NAME "ocsync")
|
||||||
|
|
||||||
|
set(LIBRARY_VERSION ${MIRALL_VERSION})
|
||||||
|
set(LIBRARY_SOVERSION "0")
|
||||||
|
|
||||||
|
# add definitions
|
||||||
|
include(DefineCMakeDefaults)
|
||||||
|
include(DefinePlatformDefaults)
|
||||||
|
include(DefineCompilerFlags)
|
||||||
|
include(DefineOptions.cmake)
|
||||||
|
|
||||||
|
include(DefineInstallationPaths)
|
||||||
|
|
||||||
|
# add macros
|
||||||
|
include(MacroAddPlugin)
|
||||||
|
include(MacroCopyFile)
|
||||||
|
|
||||||
|
if (NOT WIN32)
|
||||||
|
find_package(Iconv)
|
||||||
|
endif (NOT WIN32)
|
||||||
|
|
||||||
|
find_package(SQLite3 3.8.0 REQUIRED)
|
||||||
|
|
||||||
|
include(ConfigureChecks.cmake)
|
||||||
|
|
||||||
|
|
||||||
|
set(SOURCE_DIR ${CMAKE_SOURCE_DIR})
|
||||||
|
|
||||||
|
include_directories(${CMAKE_CURRENT_BINARY_DIR})
|
||||||
|
|
||||||
|
macro_copy_file(${CMAKE_CURRENT_SOURCE_DIR}/CTestCustom.cmake ${CMAKE_CURRENT_BINARY_DIR}/CTestCustom.cmake)
|
||||||
|
|
||||||
|
if (MEM_NULL_TESTS)
|
||||||
|
add_definitions(-DCSYNC_MEM_NULL_TESTS)
|
||||||
|
endif (MEM_NULL_TESTS)
|
||||||
|
|
||||||
|
add_subdirectory(src)
|
||||||
|
|
||||||
|
if (UNIT_TESTING)
|
||||||
|
set(WITH_TESTING ON)
|
||||||
|
|
||||||
|
find_package(CMocka)
|
||||||
|
if (CMOCKA_FOUND)
|
||||||
|
include(AddCMockaTest)
|
||||||
|
add_subdirectory(tests)
|
||||||
|
endif (CMOCKA_FOUND)
|
||||||
|
endif (UNIT_TESTING)
|
||||||
|
|
||||||
|
configure_file(config_csync.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config_csync.h)
|
||||||
|
configure_file(config_test.h.cmake ${CMAKE_CURRENT_BINARY_DIR}/config_test.h)
|
||||||
|
|
||||||
|
|
||||||
12
csync/CTestConfig.cmake
Normal file
12
csync/CTestConfig.cmake
Normal file
@@ -0,0 +1,12 @@
|
|||||||
|
set(UPDATE_TYPE "true")
|
||||||
|
|
||||||
|
set(MEMORYCHECK_SUPPRESSIONS_FILE ${CMAKE_SOURCE_DIR}/tests/valgrind-csync.supp)
|
||||||
|
|
||||||
|
set(CTEST_PROJECT_NAME "csync")
|
||||||
|
set(CTEST_NIGHTLY_START_TIME "01:00:00 UTC")
|
||||||
|
|
||||||
|
set(CTEST_DROP_METHOD "http")
|
||||||
|
set(CTEST_DROP_SITE "mock.cryptomilk.org")
|
||||||
|
set(CTEST_DROP_LOCATION "/submit.php?project=${CTEST_PROJECT_NAME}")
|
||||||
|
set(CTEST_DROP_SITE_CDASH TRUE)
|
||||||
|
|
||||||
4
csync/CTestCustom.cmake
Normal file
4
csync/CTestCustom.cmake
Normal file
@@ -0,0 +1,4 @@
|
|||||||
|
set(CTEST_CUSTOM_MEMCHECK_IGNORE
|
||||||
|
${CTEST_CUSTOM_MEMCHECK_IGNORE}
|
||||||
|
check_std_c_jhash
|
||||||
|
)
|
||||||
@@ -25,6 +25,16 @@ if (NOT LINUX)
|
|||||||
set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} )
|
set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} )
|
||||||
endif (NOT LINUX)
|
endif (NOT LINUX)
|
||||||
|
|
||||||
|
check_library_exists(rt clock_gettime "" HAVE_CLOCK_GETTIME)
|
||||||
|
if (HAVE_LIBRT OR HAVE_CLOCK_GETTIME)
|
||||||
|
set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} rt)
|
||||||
|
endif (HAVE_LIBRT OR HAVE_CLOCK_GETTIME)
|
||||||
|
|
||||||
|
check_library_exists(dl dlopen "" HAVE_LIBDL)
|
||||||
|
if (HAVE_LIBDL)
|
||||||
|
set(CMAKE_REQUIRED_LIBRARIES ${CMAKE_REQUIRED_LIBRARIES} dl)
|
||||||
|
endif (HAVE_LIBDL)
|
||||||
|
|
||||||
check_function_exists(asprintf HAVE_ASPRINTF)
|
check_function_exists(asprintf HAVE_ASPRINTF)
|
||||||
|
|
||||||
check_function_exists(fnmatch HAVE_FNMATCH)
|
check_function_exists(fnmatch HAVE_FNMATCH)
|
||||||
@@ -1,2 +1,5 @@
|
|||||||
|
if ( NOT WIN32 )
|
||||||
|
option(WITH_ICONV "Build csync with iconv support" ON)
|
||||||
|
endif()
|
||||||
option(UNIT_TESTING "Build with unit tests" OFF)
|
option(UNIT_TESTING "Build with unit tests" OFF)
|
||||||
option(MEM_NULL_TESTS "Enable NULL memory testing" OFF)
|
option(MEM_NULL_TESTS "Enable NULL memory testing" OFF)
|
||||||
@@ -6,13 +6,22 @@
|
|||||||
#cmakedefine BINARYDIR "${BINARYDIR}"
|
#cmakedefine BINARYDIR "${BINARYDIR}"
|
||||||
#cmakedefine SOURCEDIR "${SOURCEDIR}"
|
#cmakedefine SOURCEDIR "${SOURCEDIR}"
|
||||||
|
|
||||||
|
#cmakedefine HAVE_CLOCK_GETTIME
|
||||||
|
|
||||||
|
#cmakedefine WITH_LOG4C 1
|
||||||
|
#cmakedefine WITH_ICONV 1
|
||||||
|
|
||||||
#cmakedefine HAVE_ARGP_H 1
|
#cmakedefine HAVE_ARGP_H 1
|
||||||
|
#cmakedefine HAVE_ICONV_H 1
|
||||||
|
#cmakedefine HAVE_SYS_ICONV_H 1
|
||||||
|
|
||||||
#cmakedefine HAVE_TIMEGM 1
|
#cmakedefine HAVE_TIMEGM 1
|
||||||
#cmakedefine HAVE_STRERROR_R 1
|
#cmakedefine HAVE_STRERROR_R 1
|
||||||
#cmakedefine HAVE_UTIMES 1
|
#cmakedefine HAVE_UTIMES 1
|
||||||
#cmakedefine HAVE_LSTAT 1
|
#cmakedefine HAVE_LSTAT 1
|
||||||
#cmakedefine HAVE_FNMATCH 1
|
#cmakedefine HAVE_FNMATCH 1
|
||||||
|
#cmakedefine HAVE_ICONV 1
|
||||||
|
#cmakedefine HAVE_ICONV_CONST 1
|
||||||
|
|
||||||
#cmakedefine HAVE___MINGW_ASPRINTF 1
|
#cmakedefine HAVE___MINGW_ASPRINTF 1
|
||||||
#cmakedefine HAVE_ASPRINTF 1
|
#cmakedefine HAVE_ASPRINTF 1
|
||||||
7
csync/config_test.h.cmake
Normal file
7
csync/config_test.h.cmake
Normal file
@@ -0,0 +1,7 @@
|
|||||||
|
|
||||||
|
/* mind to have trailing slashes! */
|
||||||
|
|
||||||
|
#define TESTFILES_DIR "@SOURCE_DIR@/csync/tests/ownCloud/testfiles/"
|
||||||
|
|
||||||
|
#define TEST_CONFIG_DIR "@SOURCE_DIR@/csync/tests/ownCloud/"
|
||||||
|
|
||||||
144
csync/src/CMakeLists.txt
Normal file
144
csync/src/CMakeLists.txt
Normal file
@@ -0,0 +1,144 @@
|
|||||||
|
project(libcsync)
|
||||||
|
|
||||||
|
add_subdirectory(std)
|
||||||
|
|
||||||
|
# Statically include sqlite
|
||||||
|
|
||||||
|
set(CSYNC_PUBLIC_INCLUDE_DIRS
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}
|
||||||
|
${CMAKE_CURRENT_SOURCE_DIR}
|
||||||
|
${CMAKE_SOURCE_DIR}
|
||||||
|
CACHE INTERNAL "csync public include directories"
|
||||||
|
)
|
||||||
|
|
||||||
|
set(CSYNC_PRIVATE_INCLUDE_DIRS
|
||||||
|
${SQLITE3_INCLUDE_DIRS}
|
||||||
|
${CSTDLIB_PUBLIC_INCLUDE_DIRS}
|
||||||
|
${CMAKE_BINARY_DIR}
|
||||||
|
)
|
||||||
|
|
||||||
|
set(CSYNC_LIBRARY
|
||||||
|
ocsync
|
||||||
|
CACHE INTERNAL "ocsync library"
|
||||||
|
)
|
||||||
|
|
||||||
|
set(CSYNC_LINK_LIBRARIES
|
||||||
|
${CSTDLIB_LIBRARY}
|
||||||
|
${CSYNC_REQUIRED_LIBRARIES}
|
||||||
|
${SQLITE3_LIBRARIES}
|
||||||
|
)
|
||||||
|
|
||||||
|
if(HAVE_ICONV AND WITH_ICONV)
|
||||||
|
list(APPEND CSYNC_PRIVATE_INCLUDE_DIRS ${ICONV_INCLUDE_DIR})
|
||||||
|
list(APPEND CSYNC_LINK_LIBRARIES ${ICONV_LIBRARIES})
|
||||||
|
endif()
|
||||||
|
|
||||||
|
# Specific option for builds tied to servers that do not support renaming extensions
|
||||||
|
set(NO_RENAME_EXTENSION 0 CACHE BOOL "Do not issue rename if the extension changes")
|
||||||
|
if(NO_RENAME_EXTENSION)
|
||||||
|
add_definitions(-DNO_RENAME_EXTENSION)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
set(csync_SRCS
|
||||||
|
csync.c
|
||||||
|
csync_exclude.c
|
||||||
|
csync_log.c
|
||||||
|
csync_statedb.c
|
||||||
|
csync_time.c
|
||||||
|
csync_util.c
|
||||||
|
csync_misc.c
|
||||||
|
|
||||||
|
csync_update.c
|
||||||
|
csync_reconcile.c
|
||||||
|
|
||||||
|
csync_rename.cc
|
||||||
|
|
||||||
|
vio/csync_vio.c
|
||||||
|
vio/csync_vio_file_stat.c
|
||||||
|
)
|
||||||
|
|
||||||
|
if (WIN32)
|
||||||
|
list(APPEND csync_SRCS
|
||||||
|
vio/csync_vio_local_win.c
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
list(APPEND csync_SRCS
|
||||||
|
vio/csync_vio_local_unix.c
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
|
configure_file(csync_version.h.in ${CMAKE_CURRENT_BINARY_DIR}/csync_version.h)
|
||||||
|
|
||||||
|
set(csync_HDRS
|
||||||
|
${CMAKE_CURRENT_BINARY_DIR}/csync_version.h
|
||||||
|
csync.h
|
||||||
|
vio/csync_vio.h
|
||||||
|
vio/csync_vio_method.h
|
||||||
|
vio/csync_vio_module.h
|
||||||
|
)
|
||||||
|
|
||||||
|
# Statically include sqlite
|
||||||
|
if (USE_OUR_OWN_SQLITE3)
|
||||||
|
list(APPEND csync_SRCS ${SQLITE3_SOURCE})
|
||||||
|
if (WIN32)
|
||||||
|
# We want to export sqlite symbols from the ocsync DLL without
|
||||||
|
# having to patch both sqlite3.h and the amalgation sqlite3.c,
|
||||||
|
# so do the import/export magic manually through the build system.
|
||||||
|
remove_definitions(-DSQLITE_API=__declspec\(dllimport\))
|
||||||
|
add_definitions(-DSQLITE_API=__declspec\(dllexport\))
|
||||||
|
endif()
|
||||||
|
endif()
|
||||||
|
|
||||||
|
include_directories(
|
||||||
|
${CSYNC_PUBLIC_INCLUDE_DIRS}
|
||||||
|
${CSYNC_PRIVATE_INCLUDE_DIRS}
|
||||||
|
)
|
||||||
|
|
||||||
|
add_library(${CSYNC_LIBRARY} SHARED ${csync_SRCS})
|
||||||
|
#add_library(${CSYNC_LIBRARY}_static STATIC ${csync_SRCS})
|
||||||
|
|
||||||
|
generate_export_header( ${CSYNC_LIBRARY}
|
||||||
|
BASE_NAME ${CSYNC_LIBRARY}
|
||||||
|
EXPORT_MACRO_NAME OCSYNC_EXPORT
|
||||||
|
EXPORT_FILE_NAME ocsynclib.h
|
||||||
|
)
|
||||||
|
|
||||||
|
target_link_libraries(${CSYNC_LIBRARY} ${CSYNC_LINK_LIBRARIES})
|
||||||
|
#target_link_libraries(${CSYNC_LIBRARY}_static ${CSYNC_LINK_LIBRARIES})
|
||||||
|
|
||||||
|
set_target_properties(
|
||||||
|
${CSYNC_LIBRARY}
|
||||||
|
PROPERTIES
|
||||||
|
VERSION
|
||||||
|
${LIBRARY_VERSION}
|
||||||
|
SOVERSION
|
||||||
|
${LIBRARY_SOVERSION}
|
||||||
|
RUNTIME_OUTPUT_DIRECTORY
|
||||||
|
${BIN_OUTPUT_DIRECTORY}
|
||||||
|
)
|
||||||
|
if(BUILD_OWNCLOUD_OSX_BUNDLE)
|
||||||
|
INSTALL(
|
||||||
|
TARGETS
|
||||||
|
${CSYNC_LIBRARY}
|
||||||
|
LIBRARY DESTINATION
|
||||||
|
${LIB_INSTALL_DIR}
|
||||||
|
ARCHIVE DESTINATION
|
||||||
|
${LIB_INSTALL_DIR}
|
||||||
|
RUNTIME DESTINATION
|
||||||
|
${BIN_INSTALL_DIR}
|
||||||
|
)
|
||||||
|
else()
|
||||||
|
INSTALL(
|
||||||
|
TARGETS
|
||||||
|
${CSYNC_LIBRARY}
|
||||||
|
LIBRARY DESTINATION
|
||||||
|
${LIB_INSTALL_DIR}/${APPLICATION_EXECUTABLE}
|
||||||
|
ARCHIVE DESTINATION
|
||||||
|
${LIB_INSTALL_DIR}/${APPLICATION_EXECUTABLE}
|
||||||
|
RUNTIME DESTINATION
|
||||||
|
${BIN_INSTALL_DIR}/${APPLICATION_EXECUTABLE}
|
||||||
|
)
|
||||||
|
endif()
|
||||||
|
|
||||||
|
|
||||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user