Commit Graph

243 Commits

Author SHA1 Message Date
allexzander 9270d401e8 Move URI scheme variable from Nextcloud.cmake to root CmakeListst.
Signed-off-by: allexzander <blackslayer4@gmail.com>
2022-08-04 11:50:58 +03:00
alex-z 3400df461d Move CFAPI shell extensions variables to root CMakeLists.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-08-03 14:55:31 +03:00
Claudio Cambra 9dd9c46493 Do not compile things that require the app bundle when building the client without the app bundle on macOS
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-06-10 10:43:36 +02:00
Matthieu Gallien 75bcc9a24e require cmake 3.16
close #3572

Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-03-09 13:07:48 +00:00
alex-z 0776df65c3 Always build with updater. Use 'beta/stable' channel seletor in 'General Settins' dialog with default 'stable'.
Signed-off-by: alex-z <blackslayer4@gmail.com>
2022-02-02 10:46:11 +00:00
nextch b4d6c90c62
Merge branch 'master' into bug/4153-cloudproviders-dbus-build 2022-01-24 15:21:39 +02:00
Matthieu Gallien 18be0e88dc do not activate quick compiler by default
Signed-off-by: Matthieu Gallien <matthieu.gallien@nextcloud.com>
2022-01-12 11:37:13 +00:00
nextch e48879555b
Check for dbus-1 when building with cloudproviders
Resolves: 4153
Signed-off-by: nextch <97217716+nextch@users.noreply.github.com>
2022-01-08 16:56:40 +02:00
Claudio Cambra 044cf7ee13 Add QUICK_COMPILER option to drone builds, set quick compiler on by default
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-01-07 17:48:31 +00:00
Claudio Cambra a1d42b4177 Make compiler required when option is on, removed unused def
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-01-07 17:48:31 +00:00
Claudio Cambra e25140d72e Add option of enabling QtQuick compiler
Signed-off-by: Claudio Cambra <claudio.cambra@gmail.com>
2022-01-07 17:48:31 +00:00
Antonio Rojas 9d4d11df61 Unbreak loading translations
Commit 18ddb9df4a changed SHAREDIR to point to CMAKE_INSTALL_DATADIR, which is a relative path by default. This prevents the C++ code from finding the translations at runtime.

Signed-off-by: Antonio Rojas <arojas@archlinux.org>
2021-12-28 08:07:04 +00:00
Felix Weilbach ec64246dc7 Only build app bundle if requested
For development a app bundle is not needed. The app bundle is only
needed for distribution and macdeployqt takes a lot of time.

Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-11-23 11:41:29 +00:00
Felix Weilbach 0074d6c40a Disable Qt deprecation warnings
They don't help us during regular development and some of them are not
fixable (e.g. QNetworkMangerConfiguration) in the open source variant
of Qt5.

Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-09-17 13:32:26 +00:00
Nicolas Fella 18ddb9df4a Use CMAKE_INSTALL_DATADIR instead of custom DATADIR
CMake provides what we wan out of the box

Signed-off-by: Nicolas Fella <nicolas.fella@gmx.de>
2021-09-01 11:43:03 +00:00
Felix Weilbach b5b235c75f Color compile ouput when using Ninja build file generator
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-08-20 13:20:55 +00:00
Nicolas Fella 43cccb0a73 Don't use variables for CMake target identifiers
This makes the code a bit nicer to read and maybe a bit more robust.

Set the relevant OUTPUT_NAME target properties to keep the ability to
customize the names of the installed binaries.

Signed-off-by: Nicolas Fella <nicolas.fella@gmx.de>
2021-08-19 10:30:23 +00:00
Matthieu Gallien f9bfd8adec takes ECMCoverageOption from ECM to enable code coverage analysis
Signed-off-by: Matthieu Gallien <matthieu_gallien@yahoo.fr>
2021-07-28 09:26:40 +00:00
Felix Weilbach 7850551cad Start macOS app bundle name with uppercase letter
It's a convention on macOS that app bundle names start with an uppercase
letter. Also this aligns the app name with Windows and Linux.

Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-06-15 12:19:55 +00:00
Felix Weilbach e7c65a71b8 Remove conditional logic for OEM.cmake
This file is not used in Brander and in the desktop client and just
confused people.

Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-06-14 10:14:28 +00:00
Felix Weilbach e2d0481c64 Add CMake option to enable address sanitizers
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-05-17 11:43:55 +00:00
Nicolas Fella 2ad03d96ac Remove redundant CMake code
The same is done somewhere below

Signed-off-by: Nicolas Fella <nicolas.fella@gmx.de>
2021-04-15 14:13:36 +00:00
Felix Weilbach f3eed2ad1e Add feature summary to CMake
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-04-14 09:51:31 +02:00
Nicolas Fella 3bc66bea66 Improve Inotify cmake code
Use the FindInotify from ECM. It handles the case of Linux vs BSD
correctly automatically.

Also only find Inotify on Linux and BSD

Signed-off-by: Nicolas Fella <nicolas.fella@gmx.de>
2021-04-13 06:36:14 +00:00
Nicolas Fella b34a901838 Use FindPkgConfig to find libcloudproviders and related libs
Instead of using custom find modules.

This allows using imported targets which make the code much nicer.

Signed-off-by: Nicolas Fella <nicolas.fella@gmx.de>
2021-04-12 10:00:08 +00:00
Felix Weilbach db0f1e245d Remove NO_SHIBBOLETH flag and dead code
Signed-off-by: Felix Weilbach <felix.weilbach@t-online.de>
2021-01-05 12:58:58 +01:00
Hannah von Reth 3a3ccb0834
Don't hardcode PLUGINDIR 2020-12-15 10:59:06 +01:00
Dominik Schmidt 3288a36da6
Add GUI testing SocketApi extension 2020-12-15 10:58:56 +01:00
Markus Goetz 32c60c2f5d
macOS: Fix vfs suffix plugin paths #7090 2020-12-15 10:58:44 +01:00
Christian Kamm cc840534c0
Add PLUGINDIR cmake setting and define #7027
By default, plugins are only searched next to the binary or next to the
other Qt plugins. This optional build variable allows another path to be
configured.

The idea is that on linux the oC packaging probably wants the binary in
something like /opt/owncloud/bin and the plugins in
/opt/owncloud/lib/plugins.

Similarly, distribution packagers probably don't want the plugins next
to the binary or next to the other Qt plugins. This flag allows them to
configure another path that the executable will look in.
2020-12-15 10:58:43 +01:00
Dominik Schmidt 539cef345e
Switch to standard opt-out BUILD_TESTING instead of opt-in UNIT_TESTING
Compare https://cmake.org/cmake/help/v3.0/module/CTest.html
Craft automatically handles BUILD_TESTING, so we don't need to handle it
in our own blueprint.
2020-12-15 10:58:36 +01:00
Dominik Schmidt bd22caa5ec
Remove unused include directories 2020-12-15 10:58:24 +01:00
Christian Kamm 2b20985875
winvfs: initial work
Done by ckamm and dschmidt
2020-12-15 10:58:21 +01:00
Gerhard Gappmeier 6aead6425e
Add CMake option to disable GUI build 2020-12-15 10:58:18 +01:00
Olivier Goffart ac24cdbde6
New Discovery Algo: Permsission check 2020-12-15 10:58:01 +01:00
Dominik Schmidt 07f331717f
Rename ocsync library to ${APPLICATION_EXECUTABLE}_csync 2020-12-15 10:57:56 +01:00
Christian Kamm aa6f5f59c4
Rename Placeholders to Virtual Files in code #6531 2020-12-15 10:57:53 +01:00
Christian Kamm 6347aeeed2
CMake: Add a default placeholder_suffix
To make themes work that don't define it explicitly.
2020-12-15 10:57:51 +01:00
Christian Kamm 7dc65b060d
NSIS: Register placeholder extension
Also change the placeholder suffix config option to not include the dot,
the dotless form is needed in the nsis script.
2020-12-15 10:57:50 +01:00
Olivier Goffart 91f53521ae
Placeholder: The extension is now a branding option 2020-12-15 10:57:49 +01:00
Stephan Beyer 00574ef8b4 Make sanitizer options more fine-grained
The SANITIZE_ADDRESS option of our CMake configuration activates the
AddressSanitizer (and UBSan in a non-working way) for the whole project
(although, by the way, its documentation pretends that it is only enabled
for tests).

This commit introduces new options SANITIZE_LEAK, SANITIZE_MEMORY,
SANITIZE_UNDEFINED, SANITIZE_THREAD.  Each of these options (including
SANITIZE_ADDRESS) enables only the corresponding sanitizer.

Moreover, we mark all sanitizer options as advanced options, because these
options are only interesting for developers.

Note that some sanitizers are conflicting, that is, not all options can
be enabled simultaneously.  Also, not all sanitizers are available for
all compilers and versions.  We, however, do not check for this, instead
we let the compiler throw its errors in such cases.

The explicit usage of the Google Linker is removed, because it is not
necessary and can lead to problems with clang.

The commit can be considered a rewrite of cmake/modules/SanitizerFlags.cmake.

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
2020-05-19 10:57:02 +02:00
Michael Schuster e833e86da6 Updater: Add CMake option BUILD_UPDATER to make the updater optional
- Default: BUILD_UPDATER = NO

  To ease builds for distro packages and contributors (regardless of the specified update URL)

- Enable updater build for Drone CI and AppImage builds

Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-03-09 02:34:55 +01:00
asapelkin 704e34fa99 enabled address sanitizing for tests
Signed-off-by: asapelkin <asapelkin0x01@ya.ru>
2019-10-22 01:13:59 +03:00
Dominique Fuchs ba74c24d8f Added cmake preprocessor definitions when using msvc regarding the 'safe' versions of CRT functions
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
2019-09-08 14:47:35 +02:00
Dominique Fuchs 78543deee4 Updated WINVER/_WIN32_WINNT from 0x0600 to 0x0601 (e.g. Server 2008/Vista to 7) as 7 is reasonable and noted everywhere as requirement
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
2019-09-07 20:55:49 +02:00
Ronny Kunze 2b825a1748 rearange CMake find_package OpenSSL
the command seems to be malformed . The keyword VERSION is not valid .
And the version should follow direct after the packagename.
2018-08-04 16:53:06 +02:00
Roeland Jago Douma c1bebd1253
We require openssl 1.1
Signed-off-by: Roeland Jago Douma <roeland@famdouma.nl>
2018-06-26 16:37:44 +02:00
Olivier Goffart b0f539fc1f
cmake: Remove references of now unused WITH_TESTING
Issue #6318
2018-05-16 13:00:17 +02:00
Tomaz Canabrava d24a1e542e Merge branch 'master' into clientSideEncryptionV3 2018-01-29 14:06:12 +01:00
Roeland Jago Douma 48bce4c6b0
Merge remote-tracking branch 'oc/master' into oc_up 2018-01-25 11:17:04 +01:00