Commit Graph

14 Commits (master)

Author SHA1 Message Date
jcdr428 0ccf21968a if(MSVC) add_definitions(-D_CRT_SECURE_NO_WARNINGS)
To prevent compiler warnings on the unsafe/deprecated methods strcpy, strncpy, gmtime, localtime...
gcc does not accept the safe _s method alternatives.
2022-01-23 18:13:00 +01:00
Daniel Kamil Kozar 1d478daf7e
Use static freetype from Homebrew in MacOS native builds (#496) 2022-01-12 12:39:40 +01:00
Daniel Kamil Kozar 88316ec3e9
Cleanup CMakeLists.txt a bit and add coverage builds (#493)
Add TSMUXER_COVERAGE which will result in building binaries with coverage information when set to true.
Move MSVC flag utf-8 from tsMuxerGUI to the general CMakeLists.txt as there is no reason not to enable it globally.
Replace NOT MSVC with checking if the build is for Linux : the effect is the same, but the intent is clearer.
Restructure the platform-specific conditions for building tsMuxerGUI.
Bind the XP build to windows-2019 hosts as windows-2022 includes Visual Studio 2022 which dropped XP support.
Don't install zlib via homebrew in macos in order to avoid conflicts with the system-provided one.
2021-11-14 02:06:30 +01:00
jcdr428 83a6cae62a Upgrade to c++17
Add #define WIN32_LEAN_AND_MEAN to avoid conflict between new c++17 std::byte and windows.h byte type.
2021-09-22 21:33:14 +01:00
Richard e6b1ed8ebe
CMake tweaks to make the project more linux packager friendly (#384)
* CMake tweaks to make the project more linux packager friendly

- Add install target for tsMuxerGUI
- Add install for contributed desktop file
- Install icon for desktop file
- Don't check for C when all sources are C++.
2020-12-27 20:53:53 +01:00
Daniel Kamil Kozar 146be40555
Don't use the git revision count in the version tag
GitHub runners only checkout the particular revision that's going to be built
instead of the whole tree, which results in the revision count always being set
to 1. The short revision checksum is enough anyway.
2020-01-17 18:18:44 +01:00
Daniel Kamil Kozar e8007adba5
Use the checked out Git revision as app version if building in a Git repository (#144)
This replaces the occurrences of the static version number with a version string
if building in a Git repository and Git is available on the build host.

This isn't perfect, since the revision is only going to be fetched when running
qmake or cmake, while it's possible that it changes between consecutive
compilations, not just reconfigurations. However, the main purpose of this is
to add a version tag to the builds built centrally by the GitHub runners, which
always configure the project from scratch.

Fixes #127.
2020-01-17 17:58:23 +01:00
Daniel Kamil Kozar a654b465a5
Remove setting custom platform defines from main CMakeLists.txt 2019-12-08 16:58:59 +01:00
Dan Bryant a4ac48dacd update C++ standard from 11 to 14 2019-11-18 20:15:55 +00:00
Dan Bryant 810a885ff7 update build instructions for all platforms, add MacOS target and fix small issue in subtitles rendering includes 2019-10-30 09:13:51 +00:00
Daniel Kamil Kozar 6b7fddfdab
Fix code which needed -fpermissive on LLP64 platforms 2019-10-26 09:34:18 +02:00
Daniel Kamil Kozar 9994ee5f44
Completely rework the CMake build system 2019-10-25 17:28:31 +02:00
Dan Bryant fc967d829f switch from make to cmake 2019-10-24 20:04:05 +01:00
Stephen Hutchinson 309bdb210d Add rudimentary CMake build system
Currently can build tsmuxer CLI and libmediation in native 64-bit
on Linux.  Windows, Mac, and 32-bit untested (32-bit is mostly
a function of the user's CXX_FLAGS settings anyway).

As a consequence of trying to get it to build the correct files,
the textSubtitleRender{FT|Win32}.* files had to be moved to an
osdep/ subdirectory.  Some #include cases were also fixed to
point to the correct headers and directories in the source
tree or elsewhere.

Install rules need to be fleshed out for static/shared libs and
headers for libmediation, uninstall rules need to be added.

tsMuxerGUI needs to be hooked in as well.
2019-08-11 15:00:42 -04:00