Martchus
e14b5bf335
Remove unused CMake variable
2019-08-20 22:08:47 +02:00
Martchus
0feb7d667e
Add inline/constexpr to more functions in chrono lib
2019-08-19 19:09:19 +02:00
Martchus
bc9e05ccb7
Fix typo in Damerau–Levenshtein documentation
2019-08-16 14:38:57 +02:00
Martchus
014127e4c4
Enable NativeFileStream under Linux by default
...
It is supposed to work and libstdc++'s __gnu_cxx::stdio_filebuf is
available anyways. Maybe sendfile() can be used at some point with
this to speed up Tag Editor.
2019-08-14 01:15:21 +02:00
Martchus
3947504a63
Prevent clang-format from messing CPP_UTILITIES_MARK_FLAG_ENUM_CLASS
2019-08-13 00:34:07 +02:00
Martchus
db4cba4fe5
Add NativeFileStream overloads to CopyHelper
...
In a future version these overloads could use native APIs such
as POSIX sendfile() to improve the speed. Libraries such as
tagparser will benefit from this change automatically when in
places where NativeFileStream is already used anyways.
2019-08-13 00:32:59 +02:00
Martchus
5bed21c9d2
Improve NativeFileStream
...
* Expose native file descriptor/handle to be able to
use native APIs like POSIX sendfile()
* Fix using Boost.Iostreams under Windows
* Make it compile
* Workaround issue with append flag
2019-08-13 00:28:25 +02:00
Martchus
e8d829cadd
Add helper to ease creation of flag enums
...
Not sure whether this is the best way, especially the regarding
the namespacing - hence still experimental
2019-08-12 20:21:53 +02:00
Martchus
f9bd0b5987
Don't use @META_CONFIG_SUFFIX@ in APP_SPECIFIC_QT_TRANSLATION_FILES
...
See a40d2974e0
2019-08-09 23:20:10 +02:00
Martchus
c483dcc7bf
Remove obsolete code for handling static targets
2019-08-06 17:43:12 +02:00
Martchus
99bc257755
Apply cmake-format
2019-08-06 00:02:38 +02:00
Martchus
d168717023
Configure install destinations already in BasicConfig.cmake
...
It might be already useful before the library config is applied.
2019-08-05 23:46:09 +02:00
Martchus
de2d6f6d98
Improve pkg-config file generation
...
* Prevent imported library paths pointing to build directory
ending up in pkg-config file
* Handle targets which reference other targets but have not pkg-config
module
* Fix check for BUNDLED_TARGETS
2019-08-05 23:45:08 +02:00
Martchus
79855f285d
Improve pkg-config file generation
...
* Don't refer to bundles libraries via its imported location
* Add dependencies of imported targets
2019-08-05 19:07:49 +02:00
Martchus
389a0ef4da
Apply clang-format
2019-07-26 22:01:25 +02:00
Martchus
3d47869bcd
Use META_PLUGIN_CATEGORY within build directory
...
The *.so file might not be found when not in the right
subdirectory.
2019-07-26 22:01:00 +02:00
Martchus
780ba7bc18
Show description in --help
2019-07-22 18:17:39 +02:00
Martchus
eb34ce610d
Add domain to ApplicationInfo
2019-07-20 20:57:56 +02:00
Martchus
d184370fea
Add note about project()
...
So I don't get the bright idea to revert recent
changes again in some future refactoring.
2019-07-20 18:04:10 +02:00
Martchus
284e3df47a
Merge pull request #15 from yan12125/fix-for-old-macos
...
Fix building on Mac OS X/macOS
2019-07-20 17:21:32 +02:00
Chih-Hsuan Yen
5f65ca43fa
Fix building on Mac OS X/macOS
...
Without project(), compiler flags like -std=gnu++17 are not applied
for non-Apple clang on Mac OS X/macOS.
2019-07-20 23:11:02 +08:00
Martchus
666b7f7c34
Merge pull request #14 from yan12125/macos-icons
...
Add icons (*.icns) for Mac OS X/macOS .app bundles
2019-07-20 09:40:12 +02:00
Chih-Hsuan Yen
9264f1ac76
Add icons (*.icns) for Mac OS X/macOS .app bundles
2019-07-20 12:14:30 +08:00
Martchus
a7a11e72be
Merge pull request #13 from yan12125/fix-macos-app-bundles
...
Make .app bundles work on macOS
2019-07-17 12:31:15 +02:00
Chih-Hsuan Yen
6f3a1fa086
Make .app bundles work on macOS
...
By setting CMake variables for Info.plist generation. Some of them are
necessary and others are good to have.
2019-07-17 17:53:16 +08:00
Martchus
23dc7580a4
Document USE_STANDARD_FILESYSTEM
2019-07-13 14:11:45 +02:00
Martchus
d318585fb2
Add EXCLUDED_FILES variable
...
When adding source files to the _FILES variables conditionally
those are so far not being formatted or translated. Adding
these files at least to the EXCLUDED_FILES will fix this.
Replaces DOC_ONLY_FILES which served the same purpose but was
limited to documentation.
2019-07-13 14:01:25 +02:00
Martchus
a841f1932f
Merge pull request #12 from yan12125/xcode
...
Fix building with Xcode
2019-07-13 09:07:43 +02:00
Chih-Hsuan Yen
ee31e5c1d1
Fix building with Xcode
2019-07-13 10:22:21 +08:00
Martchus
81a3d4fa94
Don't skip entire use_pkg_config_module if target exists
...
Otherwise the same library can not be added to another library
variable.
2019-07-09 18:36:28 +02:00
Martchus
1be20da35a
Make use of std::filesystem optional
...
It is not available under Android yet and only used for
Bash completion. So make it optional to support Android by
disabling that part of the Bash completion which is not
useful under Android anyways.
2019-07-02 18:40:25 +02:00
Martchus
6b1a9cec01
Fix build with NativeFileStream for Windows
2019-06-25 10:20:48 +02:00
Martchus
f098a83a18
Fix namespace in Windows-specific macros
2019-06-20 22:55:29 +02:00
Martchus
e71d54d93f
Make run the default arg of TestApplication
2019-06-17 21:04:13 +02:00
Martchus
66bb3e5253
Rename TestApplication::m_instance to TestApplication::s_instance
2019-06-17 21:03:37 +02:00
Martchus
5efb1b4710
Install the version template
2019-06-16 18:23:42 +02:00
Martchus
76b24ceae8
Enable NativeFileStream by default under Windows and Android
...
* Under Windows is is required to open files which path contains
non-ASCII characters.
* Under Android it is useful to use open "content://" URLs with
standard streams.
2019-06-16 18:11:30 +02:00
Martchus
7249751d30
Apply clang-format and cmake-format
2019-06-16 16:54:26 +02:00
Martchus
869a3b2ae2
Don't try to install Qt plugins outside of the install prefix
...
Even if QMake tells us that would be the right location because
it breaks development setups which use a custom install prefix
and set QT_PLUGIN_PATH accordingly.
2019-06-16 16:54:00 +02:00
Martchus
fc9e1ff703
Add version header to libraries
2019-06-16 15:33:10 +02:00
Martchus
5607691251
Deal with "bundled" dependencies
...
* Allow exporting targets from 3rd party projects which are
built within my own projects. This is required if the build
scripts of these 3rd party projects don't have an export on
their own but are used in the public interface or as a dependency
of a static library.
* Add those libraries to the pkg-config file as well.
2019-06-15 15:30:56 +02:00
Martchus
428a67d68b
Improve test application for cppunit
...
* Allow to list available tests
* Fail the test if at least one explicitely specified unit
is not available
2019-06-14 18:07:45 +02:00
Martchus
fd531bdd6a
Prefix most of the macros in global.h
2019-06-12 20:34:25 +02:00
Martchus
4e2539548d
Remove FALLTHROUGH macro
...
Since this is requiring C++17 anyways there's no need for
it anymore.
2019-06-12 20:33:43 +02:00
Martchus
6c9a956a4f
Apply cmake-format
2019-06-10 22:43:42 +02:00
Martchus
b48b2f5c06
Have everything in one top-level namespace
2019-06-10 21:56:46 +02:00
Martchus
d9e498ba79
Remove DECLARE_ENUM and DECLARE_ENUM_CLASS
...
lupdate seems to be fixed since quite a while now.
2019-06-10 16:20:56 +02:00
Martchus
e18731d438
Remove polyfill for std::make_unique
2019-06-10 16:15:48 +02:00
Martchus
4c1b733290
Rework ArgumentParser::parseArgs()
...
* Remove "ext()" and "orExit()" versions
* Exit by default (might be intrusive but it is the most
common use)
* Rename Failure to ParseError
2019-06-10 16:03:27 +02:00
Martchus
93bdf5b4f1
Do not error-out if file system lib not found
2019-06-07 16:45:06 +02:00