Date: Fri, 3 Aug 2018 17:36:23 +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: r476312 - in head/games/freeorion: . files Message-ID: <201808031736.w73HaNok075730@repo.freebsd.org>
next in thread | raw e-mail | index | archive | help
Author: jbeich Date: Fri Aug 3 17:36:22 2018 New Revision: 476312 URL: https://svnweb.freebsd.org/changeset/ports/476312 Log: games/freeorion: unbreak with boost 1.68 In file included from GG/src/GUI.cpp:44: GG/src/gilext/io/png_io.hpp:39:10: fatal error: 'boost/gil/extension/io/io_error.hpp' file not found #include <boost/gil/extension/io/io_error.hpp> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ GG/src/gilext/io/png_io_private.hpp:46:37: error: use of undeclared identifier 'bits8' template <> struct png_is_supported<bits8,gray_t> {BOOST_STATIC_CONSTANT(bool,value=true);}; ^ In file included from GG/src/Texture.cpp:39: GG/src/gilext/io/png_dynamic_io.hpp:37:10: fatal error: 'boost/gil/extension/io/dynamic_io.hpp' file not found #include <boost/gil/extension/io/dynamic_io.hpp> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ In file included from GG/src/gilext/io/png_dynamic_io.hpp:43: In file included from GG/src/gilext/io/png_io.hpp:38: In file included from GG/src/gilext/io/png_io_private.hpp:30: GG/src/gilext/io/../typedefs.hpp:30:40: error: too few arguments provided to function-like macro invocation GIL_DEFINE_BASE_TYPEDEFS(8, gray_alpha) ^ /usr/local/include/boost/gil/typedefs.hpp:86:9: note: macro 'GIL_DEFINE_BASE_TYPEDEFS' defined here #define GIL_DEFINE_BASE_TYPEDEFS(B, CM, CS) \ ^ In file included from GG/src/GUI.cpp:44: In file included from GG/src/gilext/io/png_io.hpp:40: GG/src/gilext/io/png_io_private.hpp:167:27: error: expected class name class png_reader : public file_mgr { ^ PR: 229699 Obtained from: upstream Approved by: maintainer timeout (2 weeks) Added: head/games/freeorion/files/patch-boost168 (contents, props changed) Modified: head/games/freeorion/Makefile (contents, props changed) Modified: head/games/freeorion/Makefile ============================================================================== --- head/games/freeorion/Makefile Fri Aug 3 17:13:49 2018 (r476311) +++ head/games/freeorion/Makefile Fri Aug 3 17:36:22 2018 (r476312) @@ -4,6 +4,7 @@ PORTNAME= freeorion DISTVERSIONPREFIX= v DISTVERSION= 0.4.8-rc1 +PORTREVISION= 1 CATEGORIES= games MAINTAINER= amdmi3@FreeBSD.org Added: head/games/freeorion/files/patch-boost168 ============================================================================== --- /dev/null 00:00:00 1970 (empty, because file is newly added) +++ head/games/freeorion/files/patch-boost168 Fri Aug 3 17:36:22 2018 (r476312) @@ -0,0 +1,168 @@ +https://github.com/freeorion/freeorion/pull/2221 + +--- GG/CMakeLists.txt.orig 2018-06-14 14:12:09 UTC ++++ GG/CMakeLists.txt +@@ -144,6 +144,16 @@ if(USE_STATIC_LIBS) + ) + endif() + ++target_compile_definitions(GiGi ++ PRIVATE ++ ++ # Starting with boost 1.68 boost::gil integrates support for ++ # grayscale-alpha png images, so prefer their implementation ++ # instead of our hacky gilext code. ++ $<$<VERSION_LESS:${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION},1.68>:GIGI_CONFIG_USE_OLD_IMPLEMENTATION_OF_GIL_PNG_IO> ++ $<$<VERSION_GREATER:${Boost_MAJOR_VERSION}.${Boost_MINOR_VERSION},1.67>:BOOST_GIL_IO_ENABLE_GRAY_ALPHA> ++) ++ + target_include_directories(GiGi SYSTEM + PRIVATE + ${Boost_INCLUDE_DIRS} +--- GG/src/GUI.cpp.orig 2018-06-14 14:12:09 UTC ++++ GG/src/GUI.cpp +@@ -37,14 +37,19 @@ + #include <GG/ZList.h> + + #if GG_HAVE_LIBPNG +-# if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 7) +-# pragma GCC diagnostic push +-# pragma GCC diagnostic ignored "-Wunused-local-typedefs" ++# if GIGI_CONFIG_USE_OLD_IMPLEMENTATION_OF_GIL_PNG_IO ++# if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 7) ++# pragma GCC diagnostic push ++# pragma GCC diagnostic ignored "-Wunused-local-typedefs" ++# endif ++# include "gilext/io/png_io.hpp" ++# include "gilext/io/png_io_v2_compat.hpp" ++# if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 7) ++# pragma GCC diagnostic pop ++# endif ++# else ++# include <boost/gil/extension/io/png.hpp> + # endif +-# include "gilext/io/png_io.hpp" +-# if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ > 7) +-# pragma GCC diagnostic pop +-# endif + #endif + + #include <boost/algorithm/string/predicate.hpp> +@@ -132,12 +137,15 @@ namespace { + glPopClientAttrib(); + + using namespace boost::gil; +- png_write_view(filename, +- flipped_up_down_view( +- interleaved_view(Value(size.x), +- Value(size.y), +- static_cast<rgba8_pixel_t*>(static_cast<void*>(&bytes[0])), +- Value(size.x) * sizeof(rgba8_pixel_t)))); ++ write_view( ++ filename, ++ flipped_up_down_view( ++ interleaved_view( ++ Value(size.x), ++ Value(size.y), ++ static_cast<rgba8_pixel_t*>(static_cast<void*>(&bytes[0])), ++ Value(size.x) * sizeof(rgba8_pixel_t))), ++ png_tag()); + #endif + } + } +--- GG/src/Texture.cpp.orig 2018-06-14 14:12:09 UTC ++++ GG/src/Texture.cpp +@@ -36,7 +36,12 @@ + #include <boost/algorithm/string/case_conv.hpp> + + #if GG_HAVE_LIBPNG +-# include "gilext/io/png_dynamic_io.hpp" ++# if GIGI_CONFIG_USE_OLD_IMPLEMENTATION_OF_GIL_PNG_IO ++# include "gilext/io/png_dynamic_io.hpp" ++# include "gilext/io/png_io_v2_compat.hpp" ++# else ++# include <boost/gil/extension/io/png.hpp> ++# endif + #endif + + #include <iostream> +@@ -241,12 +246,12 @@ void Texture::Load(const boost::filesystem::path& path + // formats above. + #if GG_HAVE_LIBPNG + if (extension == ".png") +- gil::png_read_image(path, image); ++ gil::read_image(filename, image, gil::image_read_settings<gil::png_tag>()); + else + #endif + #if GG_HAVE_LIBTIFF + if (extension == ".tif" || extension == ".tiff") +- gil::tiff_read_image(filename, image); ++ gil::read_image(filename, image, gil::image_read_settings<gil::tiff_tag>()); + else + #endif + throw BadFile("Texture file \"" + filename + "\" does not have a supported file extension"); +@@ -256,14 +261,14 @@ void Texture::Load(const boost::filesystem::path& path + #if GG_HAVE_LIBPNG + if (extension == ".png") { + gil::rgba8_image_t rgba_image; +- gil::png_read_and_convert_image(path, rgba_image); ++ gil::read_and_convert_image(filename, rgba_image, gil::image_read_settings<gil::png_tag>()); + image.move_in(rgba_image); + } + #endif + #if GG_HAVE_LIBTIFF + if (extension == ".tif" || extension == ".tiff") { + gil::rgba8_image_t rgba_image; +- gil::tiff_read_and_convert_image(filename, rgba_image); ++ gil::read_and_convert_image(filename, rgba_image, gil::image_read_settings<gil::tiff_tag>()); + image.move_in(rgba_image); + } + #endif +--- GG/src/gilext/io/png_io_v2_compat.hpp.orig 2018-07-20 13:44:48 UTC ++++ GG/src/gilext/io/png_io_v2_compat.hpp +@@ -0,0 +1,45 @@ ++#ifndef GILEXT_PNG_IO_V2_COMPAT_H ++#define GILEXT_PNG_IO_V2_COMPAT_H ++ ++namespace boost { namespace gil { ++ ++struct png_tag {}; ++ ++template< typename Tag> ++struct image_read_settings {}; ++ ++template< typename String ++ , typename Image ++ , typename FormatTag ++ > ++inline ++void read_image( const String& file_name ++ , Image& image ++ , const FormatTag& tag ++ ) ++{ boost::gil::png_read_image(file_name, image); } ++ ++template< typename String ++ , typename Image ++ , typename FormatTag ++ > ++inline ++void read_and_convert_image( const String& file_name ++ , Image& image ++ , const FormatTag& tag ++ ) ++{ boost::gil::png_read_and_convert_image(file_name, image); } ++} } ++ ++template< typename String ++ , typename View ++ , typename FormatTag ++ > ++inline ++void write_view( const String& file_name ++ , const View& view ++ , const FormatTag& tag ++ ) ++{ boost::gil::png_write_view( file_name, view); } ++ ++#endif
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?201808031736.w73HaNok075730>