[110028] trunk/dports/multimedia/mkvtoolnix
jeremyhu at macports.org
jeremyhu at macports.org
Sat Aug 24 19:00:26 PDT 2013
Revision: 110028
https://trac.macports.org/changeset/110028
Author: jeremyhu at macports.org
Date: 2013-08-24 19:00:26 -0700 (Sat, 24 Aug 2013)
Log Message:
-----------
mkvtoolnix: Mavericks fix (from #40231)
Modified Paths:
--------------
trunk/dports/multimedia/mkvtoolnix/Portfile
Added Paths:
-----------
trunk/dports/multimedia/mkvtoolnix/files/patch-clang_errors.diff
trunk/dports/multimedia/mkvtoolnix/files/patch-df750c2.diff
Removed Paths:
-------------
trunk/dports/multimedia/mkvtoolnix/files/patch-src-common-logger.cpp
Modified: trunk/dports/multimedia/mkvtoolnix/Portfile
===================================================================
--- trunk/dports/multimedia/mkvtoolnix/Portfile 2013-08-25 01:25:35 UTC (rev 110027)
+++ trunk/dports/multimedia/mkvtoolnix/Portfile 2013-08-25 02:00:26 UTC (rev 110028)
@@ -41,21 +41,19 @@
port:ruby \
port:zlib
-# http://lists.freebsd.org/pipermail/freebsd-multimedia/2013-July/014157.html
-patchfiles patch-src-common-logger.cpp
+patch.pre_args -p1
+patchfiles patch-clang_errors.diff
+# Remove when version > 6.3.0 is released
+patchfiles-append patch-df750c2.diff
-# configure complains about gcc < 4.6 and clang
-compiler.whitelist macports-gcc-4.7 macports-gcc-4.8 macports-gcc-4.9
platform darwin {
- if {${os.major} >= 13} {
- # This project needs to be updated to build with clang++ against libc++
- depends_lib
- depends_run
- pre-fetch {
- ui_error "$name does not build on Mavericks or later."
- error "unsupported platform"
- }
+ if {${os.major} < 13} {
+ # TODO: Need to link against static versions of boost and icu for this to work right
+ # See: https://trac.macports.org/ticket/40231
+
+ # configure complains about gcc < 4.6 and clang
+ compiler.whitelist macports-gcc-4.7 macports-gcc-4.8 macports-gcc-4.9
}
}
Added: trunk/dports/multimedia/mkvtoolnix/files/patch-clang_errors.diff
===================================================================
--- trunk/dports/multimedia/mkvtoolnix/files/patch-clang_errors.diff (rev 0)
+++ trunk/dports/multimedia/mkvtoolnix/files/patch-clang_errors.diff 2013-08-25 02:00:26 UTC (rev 110028)
@@ -0,0 +1,31 @@
+diff -pur mkvtoolnix-6.3.0.orig/src/common/command_line.cpp mkvtoolnix-6.3.0/src/common/command_line.cpp
+--- mkvtoolnix-6.3.0.orig/src/common/command_line.cpp 2013-08-24 18:35:22.000000000 -0400
++++ mkvtoolnix-6.3.0/src/common/command_line.cpp 2013-08-24 18:36:30.000000000 -0400
+@@ -285,6 +285,7 @@ handle_common_cli_args(std::vector<std::
+ } else if ((args[i] == "-h") || (args[i] == "-?") || (args[i] == "--help"))
+ usage();
+
++#if 0
+ #if defined(HAVE_CURL_EASY_H)
+ else if (args[i] == "--check-for-updates") {
+ mtx_release_version_t rel = get_latest_release_version();
+@@ -304,6 +305,7 @@ handle_common_cli_args(std::vector<std::
+ mxexit(rel.current_version < rel.latest_source ? 1 : 0);
+ }
+ #endif // defined(HAVE_CURL_EASY_H)
++#endif
+
+ else
+ ++i;
+diff -pur mkvtoolnix-6.3.0.orig/src/common/version.cpp mkvtoolnix-6.3.0/src/common/version.cpp
+--- mkvtoolnix-6.3.0.orig/src/common/version.cpp 2013-08-24 18:35:22.000000000 -0400
++++ mkvtoolnix-6.3.0/src/common/version.cpp 2013-08-24 18:35:43.000000000 -0400
+@@ -220,7 +220,7 @@ get_latest_release_version() {
+ std::stringstream urls;
+ brng::for_each(release.urls, [&](std::pair<std::string, std::string> const &kv) { urls << " " << kv.first << ":" << kv.second; });
+ mxdebug(boost::format("update check: current %1% latest source %2% latest winpre %3% URLs%4%\n")
+- % release.current_version.to_string() % release.latest_source.to_string() % release.latest_windows_build.to_string() % urls);
++ % release.current_version.to_string() % release.latest_source.to_string() % release.latest_windows_build.to_string() % urls.str());
+ }
+
+ return release;
Added: trunk/dports/multimedia/mkvtoolnix/files/patch-df750c2.diff
===================================================================
--- trunk/dports/multimedia/mkvtoolnix/files/patch-df750c2.diff (rev 0)
+++ trunk/dports/multimedia/mkvtoolnix/files/patch-df750c2.diff 2013-08-25 02:00:26 UTC (rev 110028)
@@ -0,0 +1,41 @@
+From df750c28b6f7258dd4c3037e1132c81300b8cdfa Mon Sep 17 00:00:00 2001
+From: Moritz Bunkus <moritz at bunkus.org>
+Date: Sun, 14 Jul 2013 17:25:42 +0200
+Subject: [PATCH] Fix compilation with clang/libc++ on FreeBSD
+
+On FreeBSD the high_resolution_clock is an alias for the steady_clock
+-- which doesn't support converting into time_t. As we only need a
+precision of seconds for outputting timestamps using system_clock
+instead is enough.
+---
+ src/common/logger.cpp | 6 +++---
+ 1 file changed, 3 insertions(+), 3 deletions(-)
+
+diff --git a/src/common/logger.cpp b/src/common/logger.cpp
+index 7f6e5f2..04251d2 100644
+--- a/src/common/logger.cpp
++++ b/src/common/logger.cpp
+@@ -20,7 +20,7 @@
+
+ logger_cptr logger_c::s_default_logger;
+
+-static auto s_program_start_time = std::chrono::high_resolution_clock::now();
++static auto s_program_start_time = std::chrono::system_clock::now();
+
+ logger_c::logger_c(bfs::path const &file_name)
+ : m_file_name(file_name)
+@@ -41,9 +41,9 @@
+ mm_text_io_c out(new mm_file_io_c(m_file_name.string(), bfs::exists(m_file_name) ? MODE_WRITE : MODE_CREATE));
+ out.setFilePointer(0, seek_end);
+
+- auto now = std::chrono::high_resolution_clock::now();
++ auto now = std::chrono::system_clock::now();
+ auto diff = now - s_program_start_time;
+- auto tnow = std::chrono::high_resolution_clock::to_time_t(now);
++ auto tnow = std::chrono::system_clock::to_time_t(now);
+
+ // 2013-03-02 15:42:32
+ char timestamp[30];
+--
+1.8.1.6
+
Deleted: trunk/dports/multimedia/mkvtoolnix/files/patch-src-common-logger.cpp
===================================================================
--- trunk/dports/multimedia/mkvtoolnix/files/patch-src-common-logger.cpp 2013-08-25 01:25:35 UTC (rev 110027)
+++ trunk/dports/multimedia/mkvtoolnix/files/patch-src-common-logger.cpp 2013-08-25 02:00:26 UTC (rev 110028)
@@ -1,41 +0,0 @@
---- src/common/logger.cpp.orig 2013-06-27 23:02:44.000000000 +0300
-+++ src/common/logger.cpp 2013-07-14 10:13:25.026646733 +0300
-@@ -12,6 +12,7 @@
-
- #include <chrono>
- #include <ctime>
-+#include <ciso646>
-
- #include "common/logger.h"
- #include "common/fs_sys_helpers.h"
-@@ -20,7 +21,11 @@
-
- logger_cptr logger_c::s_default_logger;
-
-+#if defined( _LIBCPP_VERSION )
-+static auto s_program_start_time = std::chrono::system_clock::now();
-+#else
- static auto s_program_start_time = std::chrono::high_resolution_clock::now();
-+#endif
-
- logger_c::logger_c(bfs::path const &file_name)
- : m_file_name(file_name)
-@@ -41,9 +46,17 @@
- mm_text_io_c out(new mm_file_io_c(m_file_name.string(), bfs::exists(m_file_name) ? MODE_WRITE : MODE_CREATE));
- out.setFilePointer(0, seek_end);
-
-- auto now = std::chrono::high_resolution_clock::now();
-+ #if defined( _LIBCPP_VERSION )
-+ auto now = std::chrono::system_clock::now();
-+ #else
-+ auto now = std::chrono::high_resolution_clock::now();
-+ #endif
- auto diff = now - s_program_start_time;
-+ #if defined( _LIBCPP_VERSION )
-+ auto tnow = std::chrono::system_clock::to_time_t(now);
-+ #else
- auto tnow = std::chrono::high_resolution_clock::to_time_t(now);
-+ #endif
-
- // 2013-03-02 15:42:32
- char timestamp[30];
\ No newline at end of file
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.macosforge.org/pipermail/macports-changes/attachments/20130824/d8778135/attachment.html>
More information about the macports-changes
mailing list