Commit Graph

159 Commits

Author SHA1 Message Date
Moritz Bunkus
5f3f995fde build system: add accidentally ignored compilation_database.rb 2018-02-27 20:42:23 +01:00
Moritz Bunkus
0dc4ed132c Rakefile: read build-config.local if present and overlay over build-config 2018-01-22 23:41:32 +01:00
Moritz Bunkus
de37cf3418 build system: output error if command to execute isn't found 2018-01-21 12:48:15 +01:00
Moritz Bunkus
eebe77f6a3 build system: use FileUtils.mkdir_p instead of a mutex for creating directories
No need for a full-blown mutex as `mkdir_p` already handles the
directory existing correctly via catching the corresponding
exception.

See #2194.
2018-01-13 21:30:56 +01:00
Moritz Bunkus
635e546a58 build system: avoid race condition when creating dependency directories 2018-01-08 21:10:52 +01:00
Moritz Bunkus
92e67523bd build system: add direct dependency for .moc → .h 2018-01-06 10:09:20 +01:00
Moritz Bunkus
c2f7fbb05a build system: extend RUN_SHOW_START_STOP to runq_git 2018-01-02 22:36:54 +01:00
Moritz Bunkus
80761260be build system: show start/stop messages including duration with RUN_SHOW_START_STOP 2018-01-02 15:40:24 +01:00
Moritz Bunkus
26f8fec50c Rakefile: fix Qt dependencies to .ui for .moc 2018-01-01 12:17:44 +01:00
Moritz Bunkus
740838f793 Rakefile: Qt: fix building the qt_resources.qrc file 2018-01-01 12:01:04 +01:00
Moritz Bunkus
8b073325ea Rakefile: Qt: handle #includes in .h for .ui-based .h, too 2018-01-01 11:25:28 +01:00
Moritz Bunkus
17eb6205e0 Rakefile: add task for dumping a task's dependencies 2018-01-01 11:02:38 +01:00
Moritz Bunkus
8d4ed87ca7 Rakefile: fix building mkvinfo-gui, mkvinfo 2017-12-31 12:22:39 +01:00
Moritz Bunkus
e2c4b169b6 build system: fix Qt dependencies for mkvinfo's GUI 2017-12-31 11:05:09 +01:00
Moritz Bunkus
0fc23cd7bd build system: option for running unit tests with valgrind 2017-12-18 22:02:50 +01:00
Moritz Bunkus
cd155df59b configure rework compiler type & version check 2017-11-18 10:46:36 +01:00
Moritz Bunkus
88a2dc55af macOS: ensure MACOSX_DEPLOYMENT_TARGET is set during compilation 2017-08-20 19:46:57 +02:00
Moritz Bunkus
6710d27554 build: add tests for header/include guard syntax 2017-07-15 11:57:45 +02:00
Moritz Bunkus
5886f4cf75 build system: run test suite with LC_ALL=C
Otherwise the translations of an existing installation of MKVToolNix
might be used causing tests such as the file size formatting functions
to fail as translated unit names are used.

See #2011.
2017-06-18 11:50:18 +02:00
Moritz Bunkus
4772eaa20a Rakefile: method for updating Windows installer translation files from English 2017-05-20 19:00:31 +02:00
Moritz Bunkus
485030bcc0 build system: only build files intended for target 2017-04-04 19:26:54 +02:00
Moritz Bunkus
8b295e1332 build system: fix pugixml again
Another part of the implementation of #1891.
2017-02-13 21:37:29 +01:00
Moritz Bunkus
c1213feac3 build system: try detecting pugixml via pkg-config with fallback
Implements #1891.
2017-02-13 20:47:45 +01:00
Moritz Bunkus
040c0fccf4 build system: remove included drake 2017-01-08 21:00:55 +01:00
Moritz Bunkus
d7b691b6f5 all: remove --check-for-updates command line option & dependency on CURL 2016-12-30 15:01:30 +01:00
Moritz Bunkus
c7e004efa1 PCH #include scanner: force string encoding to be UTF-8
If the locale is set to non-UTF-8 when (d)rake is invoked then Ruby will
set the encoding of all strings read from files to US-ASCII. As several
source files do use non-ASCII characters this results in warnings from
Ruby about "invalid byte sequence in US-ASCII".

As all of my source code files are encoded in UTF-8 we can simply
enforce this.

This happens when building the RPMs which sets the locale to C.
2016-12-10 11:32:50 +01:00
Moritz Bunkus
9c2ecc392a build system: update Project-Id-Version PO header on manual updates, too 2016-11-20 17:27:08 +01:00
Moritz Bunkus
d2e4b377d6 build system: normalize-po: constrict msgstr entries to number of plurals in header 2016-11-02 15:28:26 +01:00
Moritz Bunkus
1bf229372e po helpers: don't remove fuzzy flag in orig item if present in updated item, too 2016-07-23 14:20:05 +02:00
Moritz Bunkus
e0c97ab528 format string verification: ignore fuzzy entries 2016-07-11 21:53:14 +02:00
Moritz Bunkus
38b05acd3a translations: mark "0.3%" entry not to contain format strings 2016-07-11 21:52:43 +02:00
Moritz Bunkus
3c2b49200f build: extend format string verification to plurals 2016-07-11 20:59:19 +02:00
Moritz Bunkus
e1862cbc3a build system: ignore one more translatable string in c-format checks 2016-07-10 17:53:56 +02:00
Moritz Bunkus
56af6d1273 update_translations.rb: merge new entries instead of copying the file
That way changes to the source locations won't trigger huge diffs.
2016-05-23 09:31:01 +02:00
Moritz Bunkus
f22fc8b426 update_translation.rb: normalize po file after copying it 2016-04-10 15:22:19 +02:00
KonaBlend
8ae78da74e build system: fix open file leak 2016-04-08 10:39:27 -04:00
Moritz Bunkus
dd54191eba build: accept unchanged strings from Transifex if original is fuzzy 2016-04-02 10:56:06 +02:00
Moritz Bunkus
3c27ccf5d0 Rakefile: optionally include Transifex push/pull targets for languages in -T 2016-03-29 14:57:08 +02:00
Moritz Bunkus
9a2beaca81 build system: add git sub-command to action side of non-verbose output 2016-03-28 17:41:07 +02:00
Moritz Bunkus
9bbe8da474 build system: puts_runq has been refactored to puts_qaction, not puts_vaction 2016-03-28 17:40:48 +02:00
Moritz Bunkus
39f421bffb Transifex pull: use Plural-Forms meta entry from Transifex 2016-03-28 17:36:47 +02:00
Moritz Bunkus
78a561113d build system: puts_runq has been refactored to puts_vaction 2016-03-28 17:34:32 +02:00
KonaBlend
ca686f2ff8 build system: consolidate puts_runq and $verbose 2016-03-28 05:32:00 -04:00
KonaBlend
693de4f112 build system: fix moc dependencies
- fix is a combination of 95c2edd3 and cee1debe progression
- 95c2edd3 masked a cee1debe regression

When pch is enabled we must establish a .moco => .moc dependency
(regressed by cee1debe).

Other changes are cosmetic.
2016-03-27 17:21:58 -04:00
Moritz Bunkus
95c2edd329 build system: fix dependencies for pre-compiled headers
The error was that a dependency was set from the source files to the
pre-compiled header (e.g. src/mkvmerge/mkvmerge.cpp =>
src/common/common_pch.h.pch). The dependency must be for the object
file, though, otherwise the source files will always be considered to be
out of date.
2016-03-26 13:21:59 +01:00
Moritz Bunkus
98e5bda5e9 build system: fix indentation 2016-03-26 13:10:31 +01:00
Moritz Bunkus
7e600c7e70 build system: centralize runq output
That way adjusting to a uniform width is easier.
2016-03-26 12:34:52 +01:00
Moritz Bunkus
8af78d72fc build system: add targets for pushing to Transifex 2016-03-26 12:15:11 +01:00
KonaBlend
cee1debeaf add explicit pch support
- convert gcc to use -include
- add clang support for -include
- new target namespace: pch (invoke rake -T or pch:overview for details)
- move pch logic into rake.d/pch.rb
- convert a few troublesome source files from ISO-8859-1 -> UTF-8
- add persistent config: config.pch.json
- add TTY support for running commands with filters (keeps pretty
  color diagnostics even when filtering compiler stdout/stderr)
- for fun try:

        drake "pch[pretty]"
        drake -j4
        drake pch:status
2016-03-26 03:52:21 -04:00
Moritz Bunkus
9d4098f2da build system: update .po meta info when pulling from Transifex 2016-02-28 16:37:03 +01:00