Commit Graph

716 Commits

Author SHA1 Message Date
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
Martchus d9b4ca5381 Fix build when not file system library required 2019-06-06 15:20:42 +02:00
Martchus c701fc25ee Remove directoryEntries() 2019-06-05 23:50:38 +02:00
Martchus 83b7658b04 Add test for Bash completion of directory names 2019-06-05 23:49:53 +02:00
Martchus 1ad90eb770 Use std::filesystem in argumentparser.cpp 2019-06-05 23:49:35 +02:00
Martchus 579199fa73 Fix missing std:: in BinaryWriter::writeByte 2019-06-05 23:48:33 +02:00
Martchus aebd324cf4 Add CMake function to use std::filesystem 2019-06-05 23:48:01 +02:00
Martchus 96dda1b862 Prevent use of extra buffer in BinaryReader::readTerminatedString() 2019-06-04 19:40:12 +02:00
Martchus 0f2f98393f Allow inlining more BinaryReader/BinaryWriter functions 2019-06-04 19:27:49 +02:00
Martchus d8a70bb795 Fix implicit signedness conversion 2019-06-04 19:12:08 +02:00
Martchus f95e16bc80 Remove readMultibyteTerminatedString*() functions 2019-06-04 19:10:52 +02:00
Martchus 6d2544b908 Return argument parents by reference 2019-06-04 19:08:46 +02:00
Martchus bfdd6ada2b Disable mingw-w64 packaging specific code by default 2019-06-01 16:32:21 +02:00
Martchus 5a8029692b Fix some Doxygen warnings 2019-06-01 15:07:08 +02:00
Martchus bc0d7af67f Apply cmake-format 0.5.1
* Disable autosort as it messes with add_library and
  add_executable calls
2019-06-01 12:14:30 +02:00
Martchus 1179160fb9 Cover NativeFileStream in README.md 2019-05-30 14:05:03 +02:00
Martchus e120a897c5 Add use_package to 3rdParty 2019-05-30 14:04:04 +02:00
Martchus 9a2679e57d Fix compile error with GCC 7.2.1
Prevents "error: uninitialized variable 'tmp' in 'constexpr' function"
2019-05-29 14:07:50 +02:00
Martchus a865522e67 Use existing TARGET_INCLUDE_DIRECTORY_BUILD_INTERFACE 2019-05-28 17:55:28 +02:00
Martchus 8729fb1e87 Update documentation 2019-05-28 17:55:18 +02:00
Martchus 01f21e63c9 Fix appdata.xml.in 2019-05-19 14:14:25 +02:00
Martchus 6489cae19e Apply cmake-format 2019-05-15 15:52:29 +02:00
Martchus 9a66824739 Add read-only accessors to TestApplication 2019-05-15 15:52:06 +02:00
Martchus c904014794 Make math functions templates and move to misc 2019-05-13 22:42:17 +02:00
Martchus 6e75a293a8 Use override in Failure 2019-05-13 22:41:43 +02:00
Martchus 54aaad49a3 Use std::forward in argsToString() 2019-05-11 19:19:59 +02:00
Martchus eef6cd2f9e Use constexpr or inline in stringbuilder where possible 2019-05-11 19:10:36 +02:00
Martchus f16703ffc0 Remove workingCopyPathMode() 2019-05-11 19:02:32 +02:00
Martchus f0c6035609 Simplify dealing with multiple testfile paths 2019-05-11 18:47:14 +02:00