Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 16 Feb 2018 23:40:56 +0000 (UTC)
From:      Jan Beich <jbeich@FreeBSD.org>
To:        ports-committers@freebsd.org, svn-ports-all@freebsd.org, svn-ports-head@freebsd.org
Subject:   svn commit: r462073 - in head/emulators/citra: . files
Message-ID:  <201802162340.w1GNeu4c008513@repo.freebsd.org>

next in thread | raw e-mail | index | archive | help
Author: jbeich
Date: Fri Feb 16 23:40:56 2018
New Revision: 462073
URL: https://svnweb.freebsd.org/changeset/ports/462073

Log:
  emulators/citra: unbreak in C++17 mode

Added:
  head/emulators/citra/files/extra-patch-c++14   (contents, props changed)
  head/emulators/citra/files/patch-externals_cryptopp_cryptopp_config.h   (contents, props changed)
Modified:
  head/emulators/citra/Makefile   (contents, props changed)
  head/emulators/citra/files/patch-CMakeLists.txt   (contents, props changed)

Modified: head/emulators/citra/Makefile
==============================================================================
--- head/emulators/citra/Makefile	Fri Feb 16 23:40:41 2018	(r462072)
+++ head/emulators/citra/Makefile	Fri Feb 16 23:40:56 2018	(r462073)
@@ -39,6 +39,8 @@ GH_TUPLE=	citra-emu:ext-soundtouch:019d208:soundtouch/
 
 USES=		cmake:outsource compiler:c++14-lang iconv localbase:ldflags
 USE_SDL=	sdl2
+EXTRA_PATCHES+=	${EXTRA_PATCHES_${OPSYS}_${OSREL:R}}
+EXTRA_PATCHES_FreeBSD_10=	${PATCHDIR}/extra-patch-c++14
 CXXFLAGS+=	-D_GLIBCXX_USE_C99 -D_GLIBCXX_USE_C99_MATH_TR1 \
 		-D_DECLARE_C99_LDBL_MATH # XXX ports/193528
 

Added: head/emulators/citra/files/extra-patch-c++14
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/citra/files/extra-patch-c++14	Fri Feb 16 23:40:56 2018	(r462073)
@@ -0,0 +1,28 @@
+libc++ on FreeBSD 10.* doesn't support c++17 yet
+
+In file included from src/core/core_timing.cpp:12:
+In file included from /usr/include/c++/v1/unordered_map:350:
+/usr/include/c++/v1/__hash_table:1165:43: error: conflicting types for '__hash_table<_Tp, _Hash, _Equal, _Alloc>'
+__hash_table<_Tp, _Hash, _Equal, _Alloc>::__hash_table()
+                                          ^
+/usr/include/c++/v1/__hash_table:852:5: note: previous declaration is here
+    __hash_table()
+    ^
+/usr/include/c++/v1/__hash_table:1233:43: error: conflicting types for '__hash_table<_Tp, _Hash, _Equal, _Alloc>'
+__hash_table<_Tp, _Hash, _Equal, _Alloc>::__hash_table(__hash_table&& __u)
+                                          ^
+/usr/include/c++/v1/__hash_table:866:5: note: previous declaration is here
+    __hash_table(__hash_table&& __u)
+    ^
+
+--- CMakeLists.txt.orig	2018-02-14 15:32:26 UTC
++++ CMakeLists.txt
+@@ -89,7 +88,7 @@ message(STATUS "Target architecture: ${ARCHITECTURE}")
+ # Configure compilation flags
+ # ===========================
+ 
+-set(CMAKE_CXX_STANDARD 17)
++set(CMAKE_CXX_STANDARD 14)
+ set(CMAKE_CXX_STANDARD_REQUIRED ON)
+ 
+ if (NOT MSVC)

Modified: head/emulators/citra/files/patch-CMakeLists.txt
==============================================================================
--- head/emulators/citra/files/patch-CMakeLists.txt	Fri Feb 16 23:40:41 2018	(r462072)
+++ head/emulators/citra/files/patch-CMakeLists.txt	Fri Feb 16 23:40:56 2018	(r462073)
@@ -1,17 +1,7 @@
-c++17 lacks std::bind2nd
 citra-qt currently needs SDL for audio and input
 
 --- CMakeLists.txt.orig	2017-08-09 15:54:29 UTC
 +++ CMakeLists.txt
-@@ -89,7 +88,7 @@ message(STATUS "Target architecture: ${ARCHITECTURE}")
- # Configure compilation flags
- # ===========================
- 
--set(CMAKE_CXX_STANDARD 17)
-+set(CMAKE_CXX_STANDARD 14)
- set(CMAKE_CXX_STANDARD_REQUIRED ON)
- 
- if (NOT MSVC)
 @@ -207,15 +207,15 @@ if (ENABLE_SDL2)
      else()
          find_package(SDL2 REQUIRED)

Added: head/emulators/citra/files/patch-externals_cryptopp_cryptopp_config.h
==============================================================================
--- /dev/null	00:00:00 1970	(empty, because file is newly added)
+++ head/emulators/citra/files/patch-externals_cryptopp_cryptopp_config.h	Fri Feb 16 23:40:56 2018	(r462073)
@@ -0,0 +1,13 @@
+https://github.com/citra-emu/citra/issues/3435
+
+--- externals/cryptopp/cryptopp/config.h.orig	2018-01-22 20:54:51 UTC
++++ externals/cryptopp/cryptopp/config.h
+@@ -1027,7 +1027,7 @@ NAMESPACE_END
+ #endif // alignof
+ 
+ // lambdas: MS at VS2012 (17.00); GCC at 4.9; Clang at 3.3; Intel 12.0; SunCC 5.14.
+-#if (CRYPTOPP_MSC_VERSION >= 1700) || __has_feature(cxx_lambda) || \
++#if (CRYPTOPP_MSC_VERSION >= 1700) || __has_feature(cxx_lambdas) || \
+ 	(__INTEL_COMPILER >= 1200) || (CRYPTOPP_GCC_VERSION >= 40900) || (__SUNPRO_CC >= 0x5140)
+ #  define CRYPTOPP_CXX11_LAMBDA 1
+ #endif // lambdas



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201802162340.w1GNeu4c008513>