1
0
Fork 0
Commit Graph

466 Commits

Author SHA1 Message Date
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 74b2c5761d Check compiler against CMAKE_CXX_COMPILER_ID
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-06-07 15:18:03 +02:00
Felix Weilbach cf616abc46 Remove obsolete AddAppIconMacro
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-05-26 08:54:12 +00:00
Dmytro Korchynskyi 8b6b3023ea use folders in CMake
Signed-off-by: Dmytro Korchynskyi <kdl.dima@gmail.com>
2021-05-18 09:59:17 +03: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
Matthieu Gallien 20357ca7fa Revert "Add CMake option to enable address sanitizers"
This reverts commit 3000e26640.

This was not intended for a direct push

Signed-off-by: Matthieu Gallien <matthieu_gallien@yahoo.fr>
2021-04-19 17:54:09 +02:00
Felix Weilbach 3000e26640 Add CMake option to enable address sanitizers
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-04-19 15:38:59 +02:00
Nicolas Fella 2548455f45 Copy FindSharedMimeInfo from ECM
Instead of relying on ECM being installed.

We copy other stuff from ECM so be consistent.

Signed-off-by: Nicolas Fella <nicolas.fella@gmx.de>
2021-04-15 14:32:46 +00:00
Felix Weilbach da1e5c448a CMake: Use own SQLite3 on macOS and Windows
Signed-off-by: Felix Weilbach <felix.weilbach@nextcloud.com>
2021-04-15 08:51:06 +02: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
Elsie Hupp 1183b3f7b9 Remove non-functional default CMAKE_BUILD_TYPE
Signed-off-by: Elsie Hupp <9206310+elsiehupp@users.noreply.github.com>
2021-04-12 11:26:08 +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
Hannah von Reth dc42ebb793
Don't recurse the whole tree looking for a git dir, use PROJECT_SOURCE_DIR 2020-12-15 10:59:26 +01:00
Dominik Schmidt ad033e40fd
Fix build with recent Clang (on Linux) 2020-12-15 10:58:56 +01:00
Dominik Schmidt 07f331717f
Rename ocsync library to ${APPLICATION_EXECUTABLE}_csync 2020-12-15 10:57:56 +01:00
Dominik Schmidt aad928a6be
Install libocsync to lib/ without subfolder.
Installing to lib/${APPLICATION_EXECUTABLE} has caused a bunch of
irritations in the past and subtle annoying to fix bugs. To avoid name
clashes with branded clients ${APPLICATION_EXECUTABLE} becomes now
part of the filename instead of the subfolder.

The concrete motivation to change this now is that on Windows there
is no RPATH and it's not possible to run owncloud directly from the
Craft Root folder, which is nice when you're developing on Windows.

It would have been possible to change this just for Windows but as
written earlier this has caused lots of issues and thus I think it's
a good idea to just stay consistent accross platforms when touching it.
2020-12-15 10:57:56 +01:00
Olivier Goffart d8e761ab61
FindSql3.cmake: Add the input variable in the search path
Issue #6278
2020-12-15 10:57:55 +01:00
Christian Kamm aa6f5f59c4
Rename Placeholders to Virtual Files in code #6531 2020-12-15 10:57:53 +01:00
Markus Goetz 8dcfd50a7d
Placeholders: Support for macOS #6290 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
Dominik Schmidt a50c665051
Simplify Sparkle handling in CMake 2020-11-25 09:43:59 +01:00
Kevin Ottens 3427dadaeb
Get rid of FindQt5Keychain.cmake
QtKeychain provides Qt5KeychainConfig.cmake and friends nowadays, so no
need to have a less reliable and outdated find module on our end.

Also this shows that we were including keychain.h in the wrong way and
were not using the link target, so both got fixed as well.

Signed-off-by: Kevin Ottens <kevin.ottens@nextcloud.com>
2020-11-02 13:19:48 +01:00
Michael Schuster 565fa18db2
macOS: Opt In to Dark Mode for building against older macOS SDKs < 10.14
Required for our build server that uses an older SDK to support previous macOS versions.

See: https://developer.apple.com/documentation/appkit/nsappearancecustomization/choosing_a_specific_appearance_for_your_macos_app

Signed-off-by: Michael Schuster <michael@schuster.ms>
2020-06-07 16:21:02 +02:00
Stephan Beyer 7f598b181e Add -fno-sanitize=vptr for SANITIZE_UNDEFINED=ON
The UndefinedBehaviorSanitizer includes the "vptr" check.  This
check, however, needs typeinfo for OCC::AccountManager because
otherwise its stub for FileManTest leads to undefined references
when linking.  Adding the -frtti flag to enable run-time typeinfo
did not solve the problem.  I do not know another solution, so this
commit disables the vptr check.

Signed-off-by: Stephan Beyer <s-beyer@gmx.net>
2020-05-19 10:57:58 +02: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
Sandro Knauß 6cdae6c19e Fix typos.
Debian has a list of known typos in their checking tools.

Signed-off-by: Sandro Knauß <hefee@debian.org>
2020-05-04 18:11:36 +00:00
JanDragon 7565c547ae Welcome to 2020 2020-01-13 09:28:51 +01:00
Michael Schuster 407864c40e Fix copyright year in MacOSXBundleInfo.plist.in for 2019
Signed-off-by: Michael Schuster <michael@schuster.ms>
2019-11-29 17:24:25 +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 a3825080db Use -Wno-gnu-zero-variadic-macro-arguments only for Clang
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
2019-09-09 19:35:30 +02:00
Dominique Fuchs 7ac6df24a3 Updated ECMAddAppIcon to newest ver fromhttps://github.com/KDE/extra-cmake-modules/blob/master/modules/ECMAddAppIcon.cmake with modifications for nc workflow (incl. png2imagemagick)
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
2019-09-04 16:51:16 +02:00
Dominique Fuchs b79a82cc3f Updated AddAppIconMacro (esp. for new macOS retina guidelines) and corrected filenames to not change pattern in cmake scripts
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
2019-09-03 17:54:22 +02:00
Dominique Fuchs 0380271499 Updated cmake module to current version (esp. worthy for newer windows versions reg. the sizes) in https://github.com/KDE/extra-cmake-modules/blob/master/modules/ECMAddAppIcon.cmake
Signed-off-by: Dominique Fuchs <32204802+DominiqueFuchs@users.noreply.github.com>
2019-09-03 17:25:05 +02:00
Oskar Kruschitz cf150caa2b
Merge branch 'master' into windows-large-app-icon 2018-09-05 13:24:08 +02:00
Oskar Kruschitz 2bfb99f174 Mac Application Icon
Replaced ownCloud.icns with APPLICATION_ICON_NAME variable
2018-09-05 11:57:26 +02:00
Oskar Kruschitz ea8676ad2c Larger Windows App Icon
Newer Windows versions are also displaying a 256x256 icon. If this icon size is not present, the 48x48 icon is used, but not resized. This means there is a possibly large empty area around the icon.
2018-08-28 10:06:28 +02:00
Markus Doits 2335688b68
allow to switch to the integrated gpu on MacOS
without that key, the client automatically runs on the dedicated gpu (if
present). now it allows the system to use the integrated one.

closes #501
2018-07-25 09:35:53 +02:00
Markus Goetz c04ae70cf5
NSIS: SVG imageformats plugin DLL #6515 2018-06-13 14:57:31 +02:00
Markus Goetz ae36f36d56
NSIS: SVG DLL #6515 2018-06-13 14:57:30 +02:00
Olivier Goffart fbc1747168
Fix a bunch of warning with clang
The option -Wno-discarded-qualifiers only exists with GCC, clang warns that
it has no effects.

Also it warns when some virtual fuction are marked with override but not
all of them.
2018-06-06 20:31:14 +02:00
Markus Goetz 0d182280c4
macdeployqt: Adjust minimum version based on our Qt #5932 2018-06-04 20:02:43 +02:00
Roeland Jago Douma 48bce4c6b0
Merge remote-tracking branch 'oc/master' into oc_up 2018-01-25 11:17:04 +01:00
Dominik Schmidt 81c20352e1 Use new ECMAddAppIcon macro for application icons.
cmake/modules/ECMAddAppIcon.cmake is heavily patched to support sidebar icons, OUTFILE_BASE parameter and to not include 64 and 64@2x icons on macOS which are not supported. All changes are made in a way that we can upstream this.
2018-01-13 13:58:17 +01:00
Dominik Schmidt da98e2aa28 Fix building sqlite on macOS and Windows 2018-01-13 13:58:17 +01:00
Dominik Schmidt 1f9763eda9 Package libssp-0.dll in NSIS installer.
It's needed since 586fd346ea activated stack-protector-strong
2018-01-13 13:58:17 +01:00
Dominik Schmidt 1f12d6344b Fix sqlite compilation (on OSX) 2018-01-13 13:58:17 +01:00
Olivier Goffart 41798cef18 Csync: remove some unused build system stuff 2018-01-13 13:58:17 +01:00
Olivier Goffart 257d8142b1 Build system: Get rid of QtVersionAbstraction.cmake
Use modern cmake with target_link_libraries and Qt5:: that
automatically add the include path and compile flags
2018-01-13 13:58:17 +01:00