From 4f2d7949f03e1c198bc888f2d05f421d35c57e21 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Mon, 9 Oct 2017 18:53:29 +0100 Subject: reinit the tree, so we can have metadata --- media-gfx/povray/Manifest | 12 ++ .../povray/files/povray-3.7.0.0-automagic.patch | 27 ++++ .../povray/files/povray-3.7.0.0-boost-1.50.patch | 72 ++++++++++ .../files/povray-3.7.0.0-r1-boost-1.50.patch | 108 +++++++++++++++ .../povray/files/povray-3.7.0.0-user-conf.patch | 27 ++++ .../files/povray-3.7.0_rc6-darwin-defaults.patch | 21 +++ media-gfx/povray/metadata.xml | 14 ++ media-gfx/povray/povray-3.7.0.0-r1.ebuild | 141 ++++++++++++++++++++ media-gfx/povray/povray-3.7.0.0.ebuild | 146 +++++++++++++++++++++ 9 files changed, 568 insertions(+) create mode 100644 media-gfx/povray/Manifest create mode 100644 media-gfx/povray/files/povray-3.7.0.0-automagic.patch create mode 100644 media-gfx/povray/files/povray-3.7.0.0-boost-1.50.patch create mode 100644 media-gfx/povray/files/povray-3.7.0.0-r1-boost-1.50.patch create mode 100644 media-gfx/povray/files/povray-3.7.0.0-user-conf.patch create mode 100644 media-gfx/povray/files/povray-3.7.0_rc6-darwin-defaults.patch create mode 100644 media-gfx/povray/metadata.xml create mode 100644 media-gfx/povray/povray-3.7.0.0-r1.ebuild create mode 100644 media-gfx/povray/povray-3.7.0.0.ebuild (limited to 'media-gfx/povray') diff --git a/media-gfx/povray/Manifest b/media-gfx/povray/Manifest new file mode 100644 index 000000000000..af21bb4f964f --- /dev/null +++ b/media-gfx/povray/Manifest @@ -0,0 +1,12 @@ +AUX povray-3.7.0.0-automagic.patch 812 SHA256 dc37eb1505fcea73c2d30bef3939efa9ffb1921ee88d60e36e3aae0668336ab9 SHA512 c76ccc429b2868fbae4d40f66d81c07d8b5eba3ec419b2377d3ee541f34b7e597ecf232d1a268abd85fa47abd4f9c7b3cbf26293746b2b10361cef2ea4c34709 WHIRLPOOL 976db9c966d8f6e5e3c05c207f6d0c8f2c62cac9454bbd06f6a2dd8f3d478617b0436e9571bcfb9e8ebc32248561d472f747cc875715b2accc7b42c01fec8c12 +AUX povray-3.7.0.0-boost-1.50.patch 2739 SHA256 c8d4e6809bfcd1a33457b493fa9ba9d2a9983e1a4be750508d766d129dd0b180 SHA512 90b5f03bd290b8fd4431fae208a38d8d54c56bbe3e39db728546a0598ce953eb6f98745bd2ad527d4f8f39dc02cb066b4aee999e7fc7e1348c0da98e9f6bbc1b WHIRLPOOL ebfe59545a53562cbcccfd2da690f4fce80da28599978410f723efb76c589570fc44266a66691d065874701113f1efc37ce4748e6681d7a38ed578722a1f63e3 +AUX povray-3.7.0.0-r1-boost-1.50.patch 3582 SHA256 c837b6173e8600061e8eec338c27f8d59b4b8afa131861ab85acc2e55c48fed7 SHA512 5ab0f29e67e98e47fe8fb991d8a510cb1ff92f27be6e0191c7d8c8f91ec3d67b3127d7227bdbfe8f263b9c6ada216ac46d0bb2e1f221230b253f07424ba689db WHIRLPOOL 4bf9c7b395d97c25b7e006fd700fc2ff6e827b15c77cbb3a46332687ac25c247f86f529d77bec6630d2cb91875f3a5da948845848b4126d46f9b05cfeb870cb0 +AUX povray-3.7.0.0-user-conf.patch 1491 SHA256 f29cb95a171005422ae56aef93d420ab6cff03e88a0fdb0ddae1549c07675501 SHA512 f25ad7e0738a6e0e759aba7405d29839f69a3013170b7072e17afebda7e5d700906280491499628859a8d61c27ee3fc54f0b9fd3f472e0771cdad4f7a3bf6664 WHIRLPOOL 4128514106a5ea157f29d7545e2daaf9ad2138b2e48e7fd7cec53835d9364f841d32a31388af7bc5eb4461b6e38b31aa416cfb9ebaaa7727116a8dd20994bc56 +AUX povray-3.7.0_rc6-darwin-defaults.patch 920 SHA256 68c8094b916fc4c78c294f33502391c579505ae91b14d091c6fb78d91b147167 SHA512 17ae635430f0d57157c9915ce5b25a88afcb34f6dd9552b27a42b32d638fdfbcb8b4e41ec89b52048db9d054812535b7b41f328ffe4554e719e4a3de21cbfdee WHIRLPOOL a8e0d22fce5fe47e12ebb0c8c3b56aa364fd8ec7d963cd02e6b64d4a8825e2d98337b194820b588551e18e3e35fdf414f47e046c05f61ab9a0acc8183f378d79 +DIST povray-3.7.0.0.tar.gz 38191521 SHA256 bf68861d648e3acafbd1d83a25016a0c68547b257e4fa79fb36eb5f08d665f27 SHA512 82e3dbcd58b7ae921fe3b953815ca4dbbfb22eda434554baee4accabd1455b18cb511061f1cf9cf93128fab0a042df374fe2f68186d78c19853a465bd4bcbe10 WHIRLPOOL 6fc85ef9dc0d31a96d98f52d4c0c42cb37264f4e90da842b0e976076fcb1abad3a38d5f5ce82ebdd111babc67d8f16e460f8b04fd40f9dadf8f115f9493e933f +DIST povray-3.7.0.0_p20160914-fix-c++14.patch.bz2 12876 SHA256 adc1a1cfda6494dfa18bb4a8c62e5a949e4369afc01d520975687c92edee69f8 SHA512 3329da12a822762559445e208a746ff208c39f7b63e27ba84a390074bb52a105c9a2f66180e58c5157795bb16346e11b5b05efaf077ee0d8246179975a692b04 WHIRLPOOL b3adb9f515841471ca7f1130e0991bbd362571f9c20c3f694cc73c03d3311b7143267b626bf08f2ac72b724ecf91274c24d4527e7a29c5368f1df874410a339f +EBUILD povray-3.7.0.0-r1.ebuild 4418 SHA256 a442ea6e2f27f5aedd5c605c38f376d888ed4798747bac9d78382141f649c815 SHA512 6a44afc7b482fb9e09d8c14ad1a75f9672295844507ef2f63b464ddf8da3564f2fc76c1fd7152dd51ffb043ce01a6ad9afa3cabff485b2cd2aa31b44f0c762af WHIRLPOOL dfe6f4008c8627a0311670fb84f9bca27ab7ecc5cc53bcb08c9fd339539c6173e37a7d14955601efd25fd2d402867f4ab39ac3413602e6c9d3a1428f0116884c +EBUILD povray-3.7.0.0.ebuild 4391 SHA256 0430f475b037ce7323af682b486d7498eca88ed86be259a62a9eb2753e9c2604 SHA512 1f213b1860b156d6f5cd6a19c41c6582f47ff96b5653f5d23e7baad787c2ce7ee592e80d03ff515ccffef7bacae0c7dcd8adb45a9f61b71055245a00e69221f7 WHIRLPOOL 766aec6a04e1ddb9dc72a35c8f19ce95b11e4310bdc4cf62230b077dea688d6e93d01eb7770144ef7675fe3699179ac29e3d36f318b16fa87f09127c273db109 +MISC ChangeLog 4461 SHA256 c4071c3126584e31059b43db61fd7dc6a04a3c38b39a1d1c458176d11e3e7f30 SHA512 f24e824b827c13dadfeec0d55c161a6504e84c13d5c29ad8935da23ce82ad337c5c0a6434ef1ca7c62545415b4ec2e8277133731140f872d78d46f3c3ea697ca WHIRLPOOL a24326057b24c822ee2206552d093c2d391bad5d39332991b949bec540600213b31fdd222fe16a529440a5570c237d122b7bedec5b2d99171d93424fab7fe500 +MISC ChangeLog-2015 24250 SHA256 870f69fa3163b4e0e7b6e8a2d2b9878b650207206473bff2015729b268b6b89e SHA512 0cd411490a29d40b039f81ae6c09e9ebad4603bb3d54aa0ec50b03587e6a69e45dc0272f60fa01a22954c07ad221ce31ac7cd203962cde0f9be075558c27e5f9 WHIRLPOOL 302588ae268cc92cadf6374dc946cd98eb6d83c110d1402433d1ba53189505d25806ceba8aa739b9709e9cbfbdb358ed5fdc831af84d3e13b5b96bdd00f04039 +MISC metadata.xml 504 SHA256 e6ca51e08746ac5d94195664f44174105c57706d9c7163bad5cb2c27c41b8790 SHA512 e2146892acd26bd3fc03fe1733f67073a1db1106f568ac886548b7c3e4fef508d1f3a619d74b8573696f007ae764d26e1f8556c3dbb03b9434b71258f0bcbb00 WHIRLPOOL ea6c829ba975cb190a6648dc8f0c95486c7c982771bab7775dce05ce4d105ccf85643bad01c58b1b232dcc6d25113b82adc6ef931d5e0d948372138107aa258e diff --git a/media-gfx/povray/files/povray-3.7.0.0-automagic.patch b/media-gfx/povray/files/povray-3.7.0.0-automagic.patch new file mode 100644 index 000000000000..a7c776f13fb6 --- /dev/null +++ b/media-gfx/povray/files/povray-3.7.0.0-automagic.patch @@ -0,0 +1,27 @@ + unix/configure.ac | 13 +++++++++---- + 1 file changed, 9 insertions(+), 4 deletions(-) + +diff --git a/configure.ac b/configure.ac +index f62f5d4..d9a3750 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -335,10 +335,15 @@ fi + AC_DEFINE([USE_OFFICIAL_BOOST], [], [Use the official Boost libraries.]) + + # Intel Math Kernel library +-pov_save_ldflags="$LDFLAGS" +-test x"$with_libmkl" != x"" && LDFLAGS="-L$with_libmkl $LDFLAGS" +-AC_CHECK_LIB([mkl], [sin]) +-test x"ac_cv_lib_mkl_sin" = x"no" && LDFLAGS="$pov_save_ldflags" ++AS_IF([test x"$with_libmkl" != x"no"], [ ++ pov_save_ldflags="$LDFLAGS" ++ AS_IF([test x"$with_libmkl" != x"yes"], [ ++ LDFLAGS="-L$with_libmkl $LDFLAGS" ++ ]) ++ AC_CHECK_LIB([mkl], [sin], [], [ ++ AC_MSG_ERROR([Cannot find working mkl library]) ++ ]) ++]) + + # libm + AC_CHECK_LIB([m], [sin]) diff --git a/media-gfx/povray/files/povray-3.7.0.0-boost-1.50.patch b/media-gfx/povray/files/povray-3.7.0.0-boost-1.50.patch new file mode 100644 index 000000000000..f8e807ad647d --- /dev/null +++ b/media-gfx/povray/files/povray-3.7.0.0-boost-1.50.patch @@ -0,0 +1,72 @@ + configure.ac | 26 ++++++-------------------- + vfe/unix/platformbase.cpp | 2 +- + 2 files changed, 7 insertions(+), 21 deletions(-) + +diff --git a/configure.ac b/configure.ac +index 51596f8..900c150 100644 +--- a/configure.ac ++++ b/configure.ac +@@ -57,8 +57,6 @@ AC_CONFIG_SRCDIR([unix/disp_text.cpp]) + m4_include([unix/config/acx_pthread.m4]) + m4_include([unix/config/ax_arg_enable.m4]) + m4_include([unix/config/ax_arg_with.m4]) +-m4_include([unix/config/ax_boost_base.m4]) +-m4_include([unix/config/ax_boost_thread.m4]) + m4_include([unix/config/ax_test_compiler_flags.m4]) + m4_include([unix/config/ax_check_lib.m4]) + m4_include([unix/config/ax_check_libjpeg.m4]) +@@ -168,6 +166,7 @@ AC_CANONICAL_HOST + + AM_INIT_AUTOMAKE([1.9 dist-bzip2]) + AM_MAINTAINER_MODE ++LT_INIT + + AX_FIX_INCORRECT_PATH(C_INCLUDE_PATH, ".", [pov_warn_path="$pov_warn_path C_INCLUDE_PATH"]) + AX_FIX_INCORRECT_PATH(CPLUS_INCLUDE_PATH, ".", [pov_warn_path="$pov_warn_path CPLUS_INCLUDE_PATH"]) +@@ -298,28 +297,15 @@ LIBS="$LIBS $PTHREAD_CFLAGS $PTHREAD_LIBS" # append + + # Boost; required library + # the following macro stops with error when boost is not found +-AX_BOOST_BASE([$required_libboost_version]) +-AX_BOOST_THREAD +-if test x"$ax_cv_boost_thread" != x"yes"; then ++BOOST_REQUIRE([$required_libboost_version]) ++BOOST_THREADS ++if test x"$boost_cv_lib_thread" != x"yes"; then + AC_MSG_ERROR([cannot find a suitable boost thread library]) + else + CPPFLAGS="$CPPFLAGS $BOOST_CPPFLAGS" # append +- LDFLAGS="$LDFLAGS $BOOST_LDFLAGS" # append +- LIBS="$BOOST_THREAD_LIB $LIBS" ++ LDFLAGS="$LDFLAGS -L$BOOST_LDPATH" # append ++ LIBS="$BOOST_THREAD_LIBS $LIBS" + fi +-AC_MSG_CHECKING([whether the boost thread library is usable]) +-AC_RUN_IFELSE( +- [AC_LANG_PROGRAM([[ +-#include +- ]], +- [[boost::defer_lock_t(); return 0;]])], +- [AC_MSG_RESULT([yes])], +- [ +- AC_MSG_RESULT([no]) +- AC_MSG_FAILURE([cannot link with the boost thread library]) +- ], +- [AC_MSG_RESULT([cross-compiling])] # FIXME +-) + AC_DEFINE([USE_OFFICIAL_BOOST], [], [Use the official Boost libraries.]) + + # Intel Math Kernel library +diff --git a/vfe/unix/platformbase.cpp b/vfe/unix/platformbase.cpp +index 8669d19..83c0191 100644 +--- a/vfe/unix/platformbase.cpp ++++ b/vfe/unix/platformbase.cpp +@@ -68,7 +68,7 @@ namespace pov_base + #else + // taken from source/base/timer.cpp + boost::xtime t; +- boost::xtime_get(&t, boost::TIME_UTC); ++ boost::xtime_get(&t, POV_TIME_UTC); + POV_ULONG ns = (POV_ULONG)(t.sec) * (POV_ULONG)(1000000000) + (POV_ULONG)(t.nsec) + (POV_ULONG)(msec) * (POV_ULONG)(1000000); + t.sec = (boost::xtime::xtime_sec_t)(ns / (POV_ULONG)(1000000000)); + t.nsec = (boost::xtime::xtime_nsec_t)(ns % (POV_ULONG)(1000000000)); diff --git a/media-gfx/povray/files/povray-3.7.0.0-r1-boost-1.50.patch b/media-gfx/povray/files/povray-3.7.0.0-r1-boost-1.50.patch new file mode 100644 index 000000000000..8a30041469f8 --- /dev/null +++ b/media-gfx/povray/files/povray-3.7.0.0-r1-boost-1.50.patch @@ -0,0 +1,108 @@ +Remove bundled m4 macros, instead use system ones from +sys-devel/autoconf-archive. Use AX_BOOST_SYSTEM to prevent +underlinking issues with more recent boost versions. +See also: https://bugs.gentoo.org/show_bug.cgi?id=550018 + +--- povray-3.7.0.0/unix/configure.ac ++++ povray-3.7.0.0/unix/configure.ac +@@ -54,23 +54,7 @@ + AC_CONFIG_SRCDIR([unix/disp_text.cpp]) + + # Additional autoconf macros. +-m4_include([unix/config/acx_pthread.m4]) +-m4_include([unix/config/ax_arg_enable.m4]) +-m4_include([unix/config/ax_arg_with.m4]) +-m4_include([unix/config/ax_boost_base.m4]) +-m4_include([unix/config/ax_boost_thread.m4]) +-m4_include([unix/config/ax_test_compiler_flags.m4]) +-m4_include([unix/config/ax_check_lib.m4]) +-m4_include([unix/config/ax_check_libjpeg.m4]) +-m4_include([unix/config/ax_check_libsdl.m4]) +-m4_include([unix/config/ax_check_libtiff.m4]) +-m4_include([unix/config/ax_check_openexr.m4]) +-m4_include([unix/config/ax_compare_version.m4]) +-m4_include([unix/config/ax_compiler_vendor.m4]) +-m4_include([unix/config/ax_compiler_version.m4]) +-m4_include([unix/config/ax_fix_incorrect_path.m4]) +-m4_include([unix/config/ax_prog_ld_static.m4]) +-m4_include([unix/config/ax_x86_arch.m4]) ++AC_CONFIG_MACRO_DIR([unix/config]) + + # Required versions of the support libraries. + # Must be declared after AC_INIT. +@@ -166,7 +150,7 @@ + AC_CANONICAL_BUILD + AC_CANONICAL_HOST + +-AM_INIT_AUTOMAKE([1.9 dist-bzip2]) ++AM_INIT_AUTOMAKE([1.9 dist-bzip2 subdir-objects]) + AM_MAINTAINER_MODE + + AX_FIX_INCORRECT_PATH(C_INCLUDE_PATH, ".", [pov_warn_path="$pov_warn_path C_INCLUDE_PATH"]) +@@ -184,6 +168,7 @@ + CFLAGS="$CFLAGS" + AC_PROG_CC + AC_PROG_CPP ++AM_PROG_AR + + # Force checking essential (ANSI-compliant) headers. + AC_CHECK_HEADERS([stdlib.h]) +@@ -292,13 +277,14 @@ + fi + + # Posix threads +-ACX_PTHREAD ++AX_PTHREAD + CXXFLAGS="$CXXFLAGS $PTHREAD_CFLAGS" # append + LIBS="$LIBS $PTHREAD_CFLAGS $PTHREAD_LIBS" # append + + # Boost; required library + # the following macro stops with error when boost is not found + AX_BOOST_BASE([$required_libboost_version]) ++AX_BOOST_SYSTEM + AX_BOOST_THREAD + if test x"$ax_cv_boost_thread" != x"yes"; then + AC_MSG_ERROR([cannot find a suitable boost thread library]) +@@ -307,19 +293,6 @@ + LDFLAGS="$LDFLAGS $BOOST_LDFLAGS" # append + LIBS="$BOOST_THREAD_LIB $LIBS" + fi +-AC_MSG_CHECKING([whether the boost thread library is usable]) +-AC_RUN_IFELSE( +- [AC_LANG_PROGRAM([[ +-#include +- ]], +- [[boost::defer_lock_t(); return 0;]])], +- [AC_MSG_RESULT([yes])], +- [ +- AC_MSG_RESULT([no]) +- AC_MSG_FAILURE([cannot link with the boost thread library]) +- ], +- [AC_MSG_RESULT([cross-compiling])] # FIXME +-) + AC_DEFINE([USE_OFFICIAL_BOOST], [], [Use the official Boost libraries.]) + + # Intel Math Kernel library +--- povray-3.7.0.0/unix/prebuild.sh ++++ povray-3.7.0.0/unix/prebuild.sh +@@ -439,7 +439,8 @@ + # Beware: order does matter! + LDADD = \\ + \$(top_builddir)/vfe/libvfe.a \\ +- \$(top_builddir)/source/libpovray.a ++ \$(top_builddir)/source/libpovray.a \\ ++ @BOOST_SYSTEM_LIB@ + pbEOF + ;; + esac +--- povray-3.7.0.0/vfe/unix/platformbase.cpp ++++ povray-3.7.0.0/vfe/unix/platformbase.cpp +@@ -68,7 +68,7 @@ + #else + // taken from source/base/timer.cpp + boost::xtime t; +- boost::xtime_get(&t, boost::TIME_UTC); ++ boost::xtime_get(&t, POV_TIME_UTC); + POV_ULONG ns = (POV_ULONG)(t.sec) * (POV_ULONG)(1000000000) + (POV_ULONG)(t.nsec) + (POV_ULONG)(msec) * (POV_ULONG)(1000000); + t.sec = (boost::xtime::xtime_sec_t)(ns / (POV_ULONG)(1000000000)); + t.nsec = (boost::xtime::xtime_nsec_t)(ns % (POV_ULONG)(1000000000)); diff --git a/media-gfx/povray/files/povray-3.7.0.0-user-conf.patch b/media-gfx/povray/files/povray-3.7.0.0-user-conf.patch new file mode 100644 index 000000000000..b3c279fcdeff --- /dev/null +++ b/media-gfx/povray/files/povray-3.7.0.0-user-conf.patch @@ -0,0 +1,27 @@ + Makefile.am | 13 ------------- + 1 files changed, 0 insertions(+), 13 deletions(-) + +diff --git a/Makefile.am b/Makefile.am +index 76b394c..9822c52 100644 +--- a/Makefile.am ++++ b/Makefile.am +@@ -107,19 +107,6 @@ install-data-local: + for f in $$filelist ; do \ + $(INSTALL_DATA) $(top_srcdir)/doc/$$f $(DESTDIR)$(povdocdir)/$$f && echo "$(DESTDIR)$(povdocdir)/$$f" >> $(povinstall); \ + done +- @echo "Creating user directories..."; \ +- for p in $(povuser) $(povconfuser) ; do \ +- $(MKDIR_P) $$p && chown $(povowner) $$p && chgrp $(povgroup) $$p && printf "%s\n" "$$p" "`cat $(povinstall)`" > $(povinstall); \ +- done +- @echo "Copying user configuration and INI files..."; \ +- for f in povray.conf povray.ini ; do \ +- if test -f $(povconfuser)/$$f; then \ +- echo "Creating backup of $(povconfuser)/$$f"; \ +- mv -f $(povconfuser)/$$f $(povconfuser)/$$f.bak; \ +- fi; \ +- done; \ +- $(INSTALL_DATA) $(top_srcdir)/povray.conf $(povconfuser)/povray.conf && chown $(povowner) $(povconfuser)/povray.conf && chgrp $(povgroup) $(povconfuser)/povray.conf && echo "$(povconfuser)/povray.conf" >> $(povinstall); \ +- $(INSTALL_DATA) $(top_builddir)/povray.ini $(povconfuser)/povray.ini && chown $(povowner) $(povconfuser)/povray.ini && chgrp $(povgroup) $(povconfuser)/povray.ini && echo "$(povconfuser)/povray.ini" >> $(povinstall) + + # Remove data, config, and empty folders for 'make uninstall'. + # Use 'hook' instead of 'local' so as to properly remove *empty* folders (e.g. scripts). diff --git a/media-gfx/povray/files/povray-3.7.0_rc6-darwin-defaults.patch b/media-gfx/povray/files/povray-3.7.0_rc6-darwin-defaults.patch new file mode 100644 index 000000000000..16e09c749b2e --- /dev/null +++ b/media-gfx/povray/files/povray-3.7.0_rc6-darwin-defaults.patch @@ -0,0 +1,21 @@ +# Darwin does not support thread-local storage (__thread) +# http://lists.apple.com/archives/xcode-users/2006/Jun/msg00551.html +# so use default from boost thread + +# use lseek for lseek64 +# sys/types.h is needed because of uint + +--- povray-3.7.0.RC6/vfe/unix/syspovconfig.h.orig 2013-03-01 11:09:42.000000000 -0700 ++++ povray-3.7.0.RC6/vfe/unix/syspovconfig.h 2013-03-01 11:07:14.000000000 -0700 +@@ -171,9 +171,7 @@ + #define METADATA_PLATFORM_STRING BUILD_ARCH + #define METADATA_COMPILER_STRING COMPILER_VERSION + +-#define DECLARE_THREAD_LOCAL_PTR(ptrType, ptrName) __thread ptrType *ptrName +-#define IMPLEMENT_THREAD_LOCAL_PTR(ptrType, ptrName, ignore) __thread ptrType *ptrName +-#define GET_THREAD_LOCAL_PTR(ptrName) (ptrName) +-#define SET_THREAD_LOCAL_PTR(ptrName, ptrValue) (ptrName = ptrValue) ++#define lseek64 lseek ++#include + + #endif diff --git a/media-gfx/povray/metadata.xml b/media-gfx/povray/metadata.xml new file mode 100644 index 000000000000..a23bbb8953d4 --- /dev/null +++ b/media-gfx/povray/metadata.xml @@ -0,0 +1,14 @@ + + + + + sci@gentoo.org + + + Enable support for Intel Vector Math Library, part of sci-libs/mkl + POV-Ray's mechanism for control of I/O operations + + + POV-Ray/povray + + diff --git a/media-gfx/povray/povray-3.7.0.0-r1.ebuild b/media-gfx/povray/povray-3.7.0.0-r1.ebuild new file mode 100644 index 000000000000..35f061a14759 --- /dev/null +++ b/media-gfx/povray/povray-3.7.0.0-r1.ebuild @@ -0,0 +1,141 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit autotools flag-o-matic versionator virtualx + +POVRAY_MAJOR_VER=$(get_version_component_range 1-3) +POVRAY_MINOR_VER=$(get_version_component_range 4) +if [ -n "$POVRAY_MINOR_VER" ]; then + POVRAY_MINOR_VER=${POVRAY_MINOR_VER/rc/RC} + MY_PV="${POVRAY_MAJOR_VER}.${POVRAY_MINOR_VER}" +else + MY_PV=${POVRAY_MAJOR_VER} +fi + +DESCRIPTION="The Persistence of Vision Raytracer" +HOMEPAGE="http://www.povray.org/" +SRC_URI="https://github.com/POV-Ray/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz + https://dev.gentoo.org/~soap/distfiles/${P}_p20160914-fix-c++14.patch.bz2" + +LICENSE="AGPL-3" +SLOT="0" +KEYWORDS="alpha amd64 ~arm hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" +IUSE="debug +io-restrictions openexr static-libs tiff X" + +DEPEND=" + >=dev-libs/boost-1.50.0:=[threads(+)] + media-libs/libpng:0 + sys-libs/zlib + virtual/jpeg:0 + openexr? ( + media-libs/ilmbase + media-libs/openexr ) + tiff? ( media-libs/tiff:0 ) + X? ( media-libs/libsdl )" +RDEPEND="${DEPEND}" +DEPEND="${DEPEND} + sys-devel/autoconf-archive" + +S=${WORKDIR}/${PN}-${MY_PV} + +PATCHES=( + "${FILESDIR}"/${P}-user-conf.patch + "${FILESDIR}"/${P}-automagic.patch + "${WORKDIR}"/${P}_p20160914-fix-c++14.patch +) + +src_prepare() { + [[ ${CHOST} == *-darwin* ]] && \ + PATCHES+=( "${FILESDIR}"/${PN}-3.7.0_rc6-darwin-defaults.patch ) + eapply "${FILESDIR}"/${PF}-boost-1.50.patch + + pushd unix &>/dev/null || die + pushd config &>/dev/null || die + rm -rf \ + acx_pthread.m4 \ + ax_boost_base.m4 \ + ax_boost_thread.m4 \ + ax_compare_version.m4 \ + ax_compiler_vendor.m4 \ + ax_compiler_version.m4 || die + popd &>/dev/null || die + bash -x prebuild.sh || die + popd &>/dev/null || die + + rm -rf libraries || die + + # Change some destination directories that cannot be adjusted via configure + sed \ + -e 's:${povsysconfdir}/$PACKAGE/$VERSION_BASE:${povsysconfdir}/'${PN}':g' \ + -e 's:${povdatadir}/$PACKAGE-$VERSION_BASE:${povdatadir}/'${PN}':g' \ + -e 's:${povdatadir}/doc/$PACKAGE-$VERSION_BASE:${povdatadir}/doc/'${PF}':g' \ + -e 's:BOOST_THREAD_LIBS $LIBS:BOOST_THREAD_LIBS $LIBS -lboost_date_time:g' \ + -i configure.ac || die + + sed \ + -e "s:^povlibdir = .*:povlibdir = @datadir@/${PN}:" \ + -e "s:^povdocdir = .*:povdocdir = @datadir@/doc/${PF}:" \ + -e "s:^povconfdir = .*:povconfdir = @sysconfdir@/${PN}:" \ + -e 's:mkdir_p:MKDIR_P:g' \ + -i Makefile.am || die + + # The "+p" option on the test command line causes a pause and + # prompts the user to interact, so remove it. + sed -i -e "s:biscuit.pov -f +d +p:biscuit.pov -f +d:" Makefile.am || die + default + + eautoreconf +} + +src_configure() { + # Fixes bug 71255 + if [[ $(get-flag march) == k6-2 ]]; then + filter-flags -fomit-frame-pointer + fi + + # The config files are installed correctly (e.g. povray.conf), + # but the code compiles using incorrect [default] paths + # (based on /usr/local...), so povray will not find the system + # config files without the following fix: + append-cppflags -DPOVLIBDIR=\\\"${EROOT}usr/share/${PN}\\\" -DPOVCONFDIR=\\\"${EROOT}etc/${PN}\\\" + + econf \ + COMPILED_BY="Portage (Gentoo $(uname)) on $(hostname -f)" \ + $(use_enable debug) \ + $(use_enable io-restrictions) \ + $(use_with openexr openexr "${EPREFIX}/usr/$(get_libdir)") \ + $(use_with tiff libtiff "${EPREFIX}/usr/$(get_libdir)") \ + $(use_with X libsdl "${EPREFIX}/usr/$(get_libdir)") \ + $(use_with X x "${EPREFIX}/usr/$(get_libdir)") \ + $(use_enable static-libs static) \ + $(usex tiff "" "NON_REDISTRIBUTABLE_BUILD=yes") \ + --without-libmkl \ + --disable-pipe \ + --disable-strip \ + --disable-optimiz \ + --disable-optimiz-arch +} + +src_test() { + virtx default +} + +pkg_preinst() { + # Copy the old config files if they are in the old location + # but do not yet exist in the new location. + # This way, they can be treated by CONFIG_PROTECT as normal. + local conf_file version_dir + for conf_file in "${ED}"/etc/"${PN}"/*; do + if [ ! -e "${EROOT}etc/${PN}/${conf_file}" ]; then + for version_dir in $(echo "${EROOT}"etc/"${PN}"/* | grep "^[0-9]" | sort -rn); do + if [ -e "${EROOT}etc/${PN}/${version_dir}/${conf_file}" ]; then + mv "${EROOT}etc/${PN}/${version_dir}/${conf_file}" "${EROOT}etc/${PN}" || die + elog "Note: ${conf_file} moved from ${EROOT}etc/povray/${version_dir}/ to ${EROOT}etc/povray/" + break + fi + done + fi + done +} diff --git a/media-gfx/povray/povray-3.7.0.0.ebuild b/media-gfx/povray/povray-3.7.0.0.ebuild new file mode 100644 index 000000000000..9a8ae2aa94b5 --- /dev/null +++ b/media-gfx/povray/povray-3.7.0.0.ebuild @@ -0,0 +1,146 @@ +# Copyright 1999-2015 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 + +AUTOTOOLS_AUTORECONF=true + +inherit autotools-utils flag-o-matic multilib versionator virtualx + +POVRAY_MAJOR_VER=$(get_version_component_range 1-3) +POVRAY_MINOR_VER=$(get_version_component_range 4) +if [ -n "$POVRAY_MINOR_VER" ]; then + POVRAY_MINOR_VER=${POVRAY_MINOR_VER/rc/RC} + MY_PV="${POVRAY_MAJOR_VER}.${POVRAY_MINOR_VER}" +else + MY_PV=${POVRAY_MAJOR_VER} +fi + +DESCRIPTION="The Persistence of Vision Raytracer" +HOMEPAGE="http://www.povray.org/" +SRC_URI="https://github.com/POV-Ray/${PN}/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="AGPL-3" +SLOT="0" +KEYWORDS="alpha amd64 ~arm hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos" +IUSE="debug +io-restrictions mkl openexr static-libs tiff X" + +DEPEND=" + >=dev-libs/boost-1.50.0:=[threads(+)] + media-libs/libpng:0 + sys-libs/zlib + virtual/jpeg + mkl? ( sci-libs/mkl ) + openexr? ( + media-libs/ilmbase + media-libs/openexr ) + tiff? ( media-libs/tiff:0 ) + X? ( media-libs/libsdl )" +RDEPEND="${DEPEND}" +DEPEND="${DEPEND} + sys-devel/boost-m4" + +S=${WORKDIR}/${PN}-${MY_PV} + +PATCHES=( + "${FILESDIR}"/${P}-user-conf.patch + "${FILESDIR}"/${P}-boost-1.50.patch + "${FILESDIR}"/${P}-automagic.patch + ) + +src_prepare() { + [[ ${CHOST} == *-darwin* ]] && \ + PATCHES+=( "${FILESDIR}"/${PN}-3.7.0_rc6-darwin-defaults.patch ) + + cd unix || die + bash -x prebuild.sh || die + cd .. || die + rm -rf libraries || die + + # Change some destination directories that cannot be adjusted via configure + sed \ + -e 's:${povsysconfdir}/$PACKAGE/$VERSION_BASE:${povsysconfdir}/'${PN}':g' \ + -e 's:${povdatadir}/$PACKAGE-$VERSION_BASE:${povdatadir}/'${PN}':g' \ + -e 's:${povdatadir}/doc/$PACKAGE-$VERSION_BASE:${povdatadir}/doc/'${PF}':g' \ + -e 's:BOOST_THREAD_LIBS $LIBS:BOOST_THREAD_LIBS $LIBS -lboost_date_time:g' \ + -i configure.ac || die + + sed \ + -e "s:^povlibdir = .*:povlibdir = @datadir@/${PN}:" \ + -e "s:^povdocdir = .*:povdocdir = @datadir@/doc/${PF}:" \ + -e "s:^povconfdir = .*:povconfdir = @sysconfdir@/${PN}:" \ + -e 's:mkdir_p:MKDIR_P:g' \ + -i Makefile.am || die + + # The "+p" option on the test command line causes a pause and + # prompts the user to interact, so remove it. + sed -i -e "s:biscuit.pov -f +d +p:biscuit.pov -f +d:" Makefile.am || die + + autotools-utils_src_prepare +} + +_src_compile() { + einfo "${LDFLAGS}" + autotools-utils_src_compile LDFLAGS="${LDFLAGS}" +} + +src_configure() { + local non_redist_conf + + # Fixes bug 71255 + if [[ $(get-flag march) == k6-2 ]]; then + filter-flags -fomit-frame-pointer + fi + + # The config files are installed correctly (e.g. povray.conf), + # but the code compiles using incorrect [default] paths + # (based on /usr/local...), so povray will not find the system + # config files without the following fix: + append-cppflags -DPOVLIBDIR=\\\"${EROOT}usr/share/${PN}\\\" -DPOVCONFDIR=\\\"${EROOT}etc/${PN}\\\" + + if ! use tiff ; then + non_redist_conf="NON_REDISTRIBUTABLE_BUILD=yes" + else + non_redist_conf="" + fi + + local myeconfargs=( + ${non_redist_conf} + COMPILED_BY="Portage (Gentoo `uname`) on `hostname -f`" + $(use_enable debug) + $(use_enable io-restrictions) + $(use_with openexr openexr "${EPREFIX}/usr/$(get_libdir)") + $(use_with mkl libmkl "${EPREFIX}/usr/$(get_libdir)") + $(use_with tiff libtiff "${EPREFIX}/usr/$(get_libdir)") + $(use_with X libsdl "${EPREFIX}/usr/$(get_libdir)") + $(use_with X x "${EPREFIX}/usr/$(get_libdir)") + --disable-pipe + --disable-strip + --disable-optimiz + --disable-optimiz-arch + ) + autotools-utils_src_configure +} + +src_test() { + # For the beta releases, we generate a license extension in case needed + VIRTUALX_COMMAND="autotools-utils_src_test" + virtualmake +} + +pkg_preinst() { + # Copy the old config files if they are in the old location + # but do not yet exist in the new location. + # This way, they can be treated by CONFIG_PROTECT as normal. + for conf_file in $(ls "${ED}/etc/${PN}"); do + if [ ! -e "${EROOT}etc/${PN}/${conf_file}" ]; then + for version_dir in $(ls "${EROOT}etc/${PN}" | grep "^[0-9]" | sort -rn); do + if [ -e "${EROOT}etc/${PN}/${version_dir}/${conf_file}" ]; then + mv "${EROOT}etc/${PN}/${version_dir}/${conf_file}" "${EROOT}etc/${PN}" + elog "Note: ${conf_file} moved from ${EROOT}etc/povray/${version_dir}/ to ${EROOT}etc/povray/" + break + fi + done + fi + done +} -- cgit v1.2.3