diff options
-rw-r--r-- | eclass/cmake-utils.eclass | 53 | ||||
-rw-r--r-- | games-action/badland/Manifest | 2 | ||||
-rw-r--r-- | games-action/badland/badland-121.ebuild | 67 | ||||
-rw-r--r-- | games-action/badland/metadata.xml | 8 | ||||
-rw-r--r-- | media-gfx/imagemagick/Manifest | 1 | ||||
-rw-r--r-- | media-gfx/imagemagick/imagemagick-7.0.8.16.ebuild | 250 | ||||
-rw-r--r-- | profiles/arch/amd64/no-multilib/package.mask | 1 |
7 files changed, 370 insertions, 12 deletions
diff --git a/eclass/cmake-utils.eclass b/eclass/cmake-utils.eclass index 98f5fa41b55a..776de76b31d4 100644 --- a/eclass/cmake-utils.eclass +++ b/eclass/cmake-utils.eclass @@ -9,7 +9,7 @@ # Maciej Mrozowski <reavertm@gentoo.org> # (undisclosed contributors) # Original author: Zephyrus (zephyrus@mirach.it) -# @SUPPORTED_EAPIS: 5 6 +# @SUPPORTED_EAPIS: 5 6 7 # @BLURB: common ebuild functions for cmake-based packages # @DESCRIPTION: # The cmake-utils eclass makes creating ebuilds for cmake-based packages much easier. @@ -50,10 +50,12 @@ _CMAKE_UTILS_ECLASS=1 # Set to enable in-source build. # @ECLASS-VARIABLE: CMAKE_MAKEFILE_GENERATOR +# @DEFAULT_UNSET # @DESCRIPTION: # Specify a makefile generator to be used by cmake. # At this point only "emake" and "ninja" are supported. -: ${CMAKE_MAKEFILE_GENERATOR:=emake} +# In EAPI 7 and above, the default is set to "ninja", +# whereas in EAPIs below 7, it is set to "emake". # @ECLASS-VARIABLE: CMAKE_MIN_VERSION # @DESCRIPTION: @@ -105,27 +107,39 @@ _CMAKE_UTILS_ECLASS=1 case ${EAPI} in 5) : ${CMAKE_WARN_UNUSED_CLI:=no} ;; - 6) : ${CMAKE_WARN_UNUSED_CLI:=yes} ;; + 6|7) : ${CMAKE_WARN_UNUSED_CLI:=yes} ;; *) die "EAPI=${EAPI:-0} is not supported" ;; esac inherit toolchain-funcs ninja-utils flag-o-matic multiprocessing xdg-utils case ${EAPI} in - 5|6) inherit eutils multilib ;; + [56]) + : ${CMAKE_MAKEFILE_GENERATOR:=emake} + inherit eutils multilib + ;; + *) + : ${CMAKE_MAKEFILE_GENERATOR:=ninja} + ;; esac EXPORT_FUNCTIONS src_prepare src_configure src_compile src_test src_install -[[ ${WANT_CMAKE} ]] && eqawarn "\${WANT_CMAKE} has been removed and is a no-op now" +if [[ ${WANT_CMAKE} ]]; then + if [[ ${EAPI} != [56] ]]; then + die "\${WANT_CMAKE} has been removed and is a no-op now" + else + eqawarn "\${WANT_CMAKE} has been removed and is a no-op now" + fi +fi [[ ${PREFIX} ]] && die "\${PREFIX} has been removed and is a no-op now" case ${CMAKE_MAKEFILE_GENERATOR} in emake) - DEPEND="sys-devel/make" + BDEPEND="sys-devel/make" ;; ninja) - DEPEND="dev-util/ninja" + BDEPEND="dev-util/ninja" ;; *) eerror "Unknown value for \${CMAKE_MAKEFILE_GENERATOR}" @@ -134,9 +148,14 @@ case ${CMAKE_MAKEFILE_GENERATOR} in esac if [[ ${PN} != cmake ]]; then - DEPEND+=" >=dev-util/cmake-${CMAKE_MIN_VERSION}" + BDEPEND+=" >=dev-util/cmake-${CMAKE_MIN_VERSION}" fi +case ${EAPI} in + 7) ;; + *) DEPEND=" ${BDEPEND}" ;; +esac + # Internal functions used by cmake-utils_use_* _cmake_use_me_now() { debug-print-function ${FUNCNAME} "$@" @@ -195,8 +214,13 @@ _cmake_check_build_dir() { # Respect both the old variable and the new one, depending # on which one was set by the ebuild. if [[ ! ${BUILD_DIR} && ${CMAKE_BUILD_DIR} ]]; then - eqawarn "The CMAKE_BUILD_DIR variable has been renamed to BUILD_DIR." - eqawarn "Please migrate the ebuild to use the new one." + if [[ ${EAPI} != [56] ]]; then + eerror "The CMAKE_BUILD_DIR variable has been renamed to BUILD_DIR." + die "The ebuild must be migrated to BUILD_DIR." + else + eqawarn "The CMAKE_BUILD_DIR variable has been renamed to BUILD_DIR." + eqawarn "Please migrate the ebuild to use the new one." + fi # In the next call, both variables will be set already # and we'd have to know which one takes precedence. @@ -211,7 +235,7 @@ _cmake_check_build_dir() { fi # Backwards compatibility for getting the value. - CMAKE_BUILD_DIR=${BUILD_DIR} + [[ ${EAPI} == [56] ]] && CMAKE_BUILD_DIR=${BUILD_DIR} mkdir -p "${BUILD_DIR}" || die echo ">>> Working in BUILD_DIR: \"$BUILD_DIR\"" @@ -495,7 +519,11 @@ cmake-utils_src_configure() { debug-print-function ${FUNCNAME} "$@" if [[ ! ${_CMAKE_UTILS_SRC_PREPARE_HAS_RUN} ]]; then - eqawarn "cmake-utils_src_prepare has not been run, please open a bug on https://bugs.gentoo.org/" + if [[ ${EAPI} != [56] ]]; then + die "FATAL: cmake-utils_src_prepare has not been run" + else + eqawarn "cmake-utils_src_prepare has not been run, please open a bug on https://bugs.gentoo.org/" + fi fi [[ ${EAPI} == 5 ]] && _cmake_cleanup_cmake @@ -617,6 +645,7 @@ cmake-utils_src_configure() { if [[ ${EAPI} != [56] ]]; then cat >> "${common_config}" <<- _EOF_ || die SET (CMAKE_INSTALL_DOCDIR "${EPREFIX}/usr/share/doc/${PF}" CACHE PATH "") + SET (BUILD_SHARED_LIBS ON CACHE BOOLEAN "") _EOF_ fi diff --git a/games-action/badland/Manifest b/games-action/badland/Manifest new file mode 100644 index 000000000000..984eb00c0fd9 --- /dev/null +++ b/games-action/badland/Manifest @@ -0,0 +1,2 @@ +DIST Badland_GotY_121.tar 191872792 BLAKE2B ed1c75d378b742a9f2c82f2ca1055837ff302e1438d4d1a48118ff0caf0455ce0001bb3b90e7c80361672435d2a846d67c94d1c8f28e8ecf8afe87d4177aaa86 SHA512 db018e79fada80c2e6f4ce9dc1f23bf43a8b6257207e52dbb583c484bb71e4e6b0109f750ab8fb7b1e221e2618a1994828c4525d478b7d45bf7d60012f9cf13a +DIST badland.png 42439 BLAKE2B 9439349c8f0a0133fdc042a373a4f625d0988ef4b9de71456ccc1dab4b0f8f56ab386e5f2ba5b322ca5f885c9784c325c9be25d691a740a89dc237afa2216451 SHA512 30387f1906fb35ff9684a8ad28535de7804e456ff545fd69bc6bad3d96c6e2149ca9c5fe19a6dc711f145191d72311538b402d3891971185fc07edabd61ba52f diff --git a/games-action/badland/badland-121.ebuild b/games-action/badland/badland-121.ebuild new file mode 100644 index 000000000000..78a303c69884 --- /dev/null +++ b/games-action/badland/badland-121.ebuild @@ -0,0 +1,67 @@ +# Copyright 1999-2018 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +inherit desktop eutils gnome2-utils + +DESCRIPTION="Atmospheric side-scrolling action adventure platformer set in a gorgeous forest" +HOMEPAGE="http://badlandgame.com" +SRC_URI="Badland_GotY_${PV}.tar + https://dev.gentoo.org/~chewi/distfiles/${PN}.png" +LICENSE="all-rights-reserved" +SLOT="0" +KEYWORDS="-* ~amd64 ~x86" +RESTRICT="bindist splitdebug" + +QA_PREBUILT="opt/${PN}/*" + +DEPEND=" + app-admin/chrpath +" + +RDEPEND=" + dev-db/sqlite:3[abi_x86_32] + media-libs/fontconfig:1.0[abi_x86_32] + media-libs/freetype:2[abi_x86_32] + media-libs/libpng:1.2[abi_x86_32] + media-libs/libsdl2[abi_x86_32,joystick,opengl,sound,threads,video] + net-misc/curl[abi_x86_32] + >=sys-devel/gcc-4.6[cxx] + >=sys-libs/glibc-2.14 + virtual/opengl[abi_x86_32] + x11-libs/libX11[abi_x86_32] +" + +S="${WORKDIR}" + +pkg_nofetch() { + einfo "Please buy and download ${SRC_URI} from:" + einfo " https://www.humblebundle.com/store/badland-game-of-the-year-humble-deluxe-edition" + einfo "and move it to your distfiles directory." +} + +src_prepare() { + default + + # Replace insecure RPATH. + chrpath -r '$ORIGIN' ${PN} || die +} + +src_install() { + local dir=/opt/${PN} + + insinto "${dir}" + doins -r Resources + + exeinto "${dir}" + doexe ${PN} *.so + + make_wrapper ${PN} "./${PN}" "${dir}" + make_desktop_entry ${PN} "Badland" + + doicon -s 128 "${DISTDIR}"/${PN}.png +} + +pkg_postinst() { gnome2_icon_cache_update; } +pkg_postrm() { gnome2_icon_cache_update; } diff --git a/games-action/badland/metadata.xml b/games-action/badland/metadata.xml new file mode 100644 index 000000000000..26079e608bed --- /dev/null +++ b/games-action/badland/metadata.xml @@ -0,0 +1,8 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>games@gentoo.org</email> + <name>Gentoo Games Project</name> + </maintainer> +</pkgmetadata> diff --git a/media-gfx/imagemagick/Manifest b/media-gfx/imagemagick/Manifest index 2ce3cf1ca049..b28c5474f4f2 100644 --- a/media-gfx/imagemagick/Manifest +++ b/media-gfx/imagemagick/Manifest @@ -1,2 +1,3 @@ DIST ImageMagick-6.9.10-14.tar.xz 8931552 BLAKE2B e064648947f661c41fe86dea6484c0b9e01e54fcd3428b8d6dd39b2b7f93735200af9e4b49f0bdc92b574afbaa53ed044aab2b4b751e087ba126e58cdda1f497 SHA512 1a2c9fb717b0441a18c638991cf5365c42d00c19c0f67bc7cce4bd2cba42bac602e4dba8bd4abc1dbc6609a08b1292403acc3657b61c58ed0609e2bf740d0725 DIST ImageMagick-7.0.8-14.tar.xz 8634400 BLAKE2B 1d5ad294ce29f275790c3b6ba76445ffb4aeaa2ff94d91af4d52a00b407dca0e5a4f589ec1a860bf6695952f8e7943d507baee58b885dc5fca3510de1d84c8eb SHA512 0a5f3357f4ce5b245d60b178d81b58c3483effb45b669791d4686514a8c3b0ad04244e31caf0a4a614e73e3e071c17d851992670917ebcf2761c977d77c58dd6 +DIST ImageMagick-7.0.8-16.tar.xz 8646148 BLAKE2B 5a9c287164f99886c411cbb1416aaa72bdf527ba3be097a0ea6638cc6b0ae383057acab09974c7d3954a2985ec39e0ce4f6d6a2423ff4bb020d011bd1988c337 SHA512 fbc0b0410702c15352989652c055e4e1a099878e30b859c75322e162eccd384cabb98e14cac14e3fb2c902f25f80a5b62f94380ef78f891731980de9a40b6867 diff --git a/media-gfx/imagemagick/imagemagick-7.0.8.16.ebuild b/media-gfx/imagemagick/imagemagick-7.0.8.16.ebuild new file mode 100644 index 000000000000..adf47c49a562 --- /dev/null +++ b/media-gfx/imagemagick/imagemagick-7.0.8.16.ebuild @@ -0,0 +1,250 @@ +# Copyright 1999-2018 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI="6" + +inherit eapi7-ver eutils flag-o-matic libtool perl-functions toolchain-funcs multilib + +if [[ ${PV} == "9999" ]] ; then + EGIT_REPO_URI="https://github.com/ImageMagick/ImageMagick.git" + inherit git-r3 + MY_P="imagemagick-9999" +else + MY_P=ImageMagick-$(ver_rs 3 '-') + SRC_URI="mirror://${PN}/${MY_P}.tar.xz" + KEYWORDS="~alpha ~amd64 ~arm ~arm64 ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~ppc-aix ~amd64-fbsd ~x86-fbsd ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~x64-solaris ~x86-solaris" +fi + +DESCRIPTION="A collection of tools and libraries for many image formats" +HOMEPAGE="https://www.imagemagick.org/" + +LICENSE="imagemagick" +SLOT="0/${PV}" +IUSE="bzip2 corefonts cxx djvu fftw fontconfig fpx graphviz hdri heif jbig jpeg jpeg2k lcms lqr lzma opencl openexr openmp pango perl png postscript q32 q8 raw static-libs svg test tiff truetype webp wmf X xml zlib" + +RDEPEND=" + dev-libs/libltdl:0 + bzip2? ( app-arch/bzip2 ) + corefonts? ( media-fonts/corefonts ) + djvu? ( app-text/djvu ) + fftw? ( sci-libs/fftw:3.0 ) + fontconfig? ( media-libs/fontconfig ) + fpx? ( >=media-libs/libfpx-1.3.0-r1 ) + graphviz? ( media-gfx/graphviz ) + heif? ( media-libs/libheif:= ) + jbig? ( >=media-libs/jbigkit-2:= ) + jpeg? ( virtual/jpeg:0 ) + jpeg2k? ( >=media-libs/openjpeg-2.1.0:2 ) + lcms? ( media-libs/lcms:2= ) + lqr? ( media-libs/liblqr ) + opencl? ( virtual/opencl ) + openexr? ( media-libs/openexr:0= ) + pango? ( x11-libs/pango ) + perl? ( >=dev-lang/perl-5.8.8:0= ) + png? ( media-libs/libpng:0= ) + postscript? ( app-text/ghostscript-gpl ) + raw? ( media-libs/libraw:= ) + svg? ( gnome-base/librsvg ) + tiff? ( media-libs/tiff:0= ) + truetype? ( + media-fonts/urw-fonts + >=media-libs/freetype-2 + ) + webp? ( media-libs/libwebp:0= ) + wmf? ( media-libs/libwmf ) + X? ( + x11-libs/libICE + x11-libs/libSM + x11-libs/libXext + x11-libs/libXt + ) + xml? ( dev-libs/libxml2:= ) + lzma? ( app-arch/xz-utils ) + zlib? ( sys-libs/zlib:= )" +DEPEND="${RDEPEND} + !media-gfx/graphicsmagick[imagemagick] + virtual/pkgconfig + X? ( x11-base/xorg-proto )" + +REQUIRED_USE="corefonts? ( truetype ) + test? ( corefonts )" + +S="${WORKDIR}/${MY_P}" + +src_prepare() { + default + + # Apply hardening #664236 + cp "${FILESDIR}"/policy-hardening.snippet "${S}" || die + sed -i -e '/^<policymap>$/ { + r policy-hardening.snippet + d + }' \ + config/policy.xml || \ + die "Failed to apply hardening of policy.xml" + einfo "policy.xml hardened" + + elibtoolize # for Darwin modules + + # For testsuite, see https://bugs.gentoo.org/show_bug.cgi?id=500580#c3 + local ati_cards mesa_cards nvidia_cards render_cards + shopt -s nullglob + ati_cards=$(echo -n /dev/ati/card* | sed 's/ /:/g') + if test -n "${ati_cards}"; then + addpredict "${ati_cards}" + fi + mesa_cards=$(echo -n /dev/dri/card* | sed 's/ /:/g') + if test -n "${mesa_cards}"; then + addpredict "${mesa_cards}" + fi + nvidia_cards=$(echo -n /dev/nvidia* | sed 's/ /:/g') + if test -n "${nvidia_cards}"; then + addpredict "${nvidia_cards}" + fi + render_cards=$(echo -n /dev/dri/renderD128* | sed 's/ /:/g') + if test -n "${render_cards}"; then + addpredict "${render_cards}" + fi + shopt -u nullglob + addpredict /dev/nvidiactl +} + +src_configure() { + local depth=16 + use q8 && depth=8 + use q32 && depth=32 + + local openmp=disable + use openmp && { tc-has-openmp && openmp=enable; } + + use perl && perl_check_env + + [[ ${CHOST} == *-solaris* ]] && append-ldflags -lnsl -lsocket + + local myeconfargs=( + $(use_enable static-libs static) + $(use_enable hdri) + $(use_enable opencl) + --with-threads + --with-modules + --with-quantum-depth=${depth} + $(use_with cxx magick-plus-plus) + $(use_with perl) + --with-perl-options='INSTALLDIRS=vendor' + --with-gs-font-dir="${EPREFIX}"/usr/share/fonts/urw-fonts + $(use_with bzip2 bzlib) + $(use_with X x) + $(use_with zlib) + --without-autotrace + $(use_with postscript dps) + $(use_with djvu) + --with-dejavu-font-dir="${EPREFIX}"/usr/share/fonts/dejavu + $(use_with fftw) + $(use_with fpx) + $(use_with fontconfig) + $(use_with truetype freetype) + $(use_with postscript gslib) + $(use_with graphviz gvc) + $(use_with heif heic) + $(use_with jbig) + $(use_with jpeg) + $(use_with jpeg2k openjp2) + $(use_with lcms) + $(use_with lqr) + $(use_with lzma) + $(use_with openexr) + $(use_with pango) + $(use_with png) + $(use_with raw) + $(use_with svg rsvg) + $(use_with tiff) + $(use_with webp) + $(use_with corefonts windows-font-dir "${EPREFIX}"/usr/share/fonts/corefonts) + $(use_with wmf) + $(use_with xml) + --${openmp}-openmp + --with-gcc-arch=no-automagic + ) + CONFIG_SHELL=$(type -P bash) econf "${myeconfargs[@]}" +} + +src_test() { + # Install default (unrestricted) policy in $HOME for test suite #664238 + local _im_local_config_home="${HOME}/.config/ImageMagick" + mkdir -p "${_im_local_config_home}" || \ + die "Failed to create IM config dir in '${_im_local_config_home}'" + cp "${FILESDIR}"/policy.test.xml "${_im_local_config_home}/policy.xml" || \ + die "Failed to install default blank policy.xml in '${_im_local_config_home}'" + + local im_command= IM_COMMANDS=() + IM_COMMANDS+=( "magick -version" ) # Verify that we are using version we just built + IM_COMMANDS+=( "magick -list policy" ) # Verify that policy.xml is used + IM_COMMANDS+=( "emake check" ) # Run tests + + for im_command in "${IM_COMMANDS[@]}"; do + "${S}"/magick.sh \ + ${im_command} || die + done +} + +src_install() { + # Ensure documentation installation files and paths with each release! + emake \ + DESTDIR="${D}" \ + DOCUMENTATION_PATH="${EPREFIX}"/usr/share/doc/${PF}/html \ + install + + rm -f "${ED%/}"/usr/share/doc/${PF}/html/{ChangeLog,LICENSE,NEWS.txt} + dodoc {AUTHORS,README}.txt ChangeLog + + if use perl; then + find "${ED}" -type f -name perllocal.pod -exec rm -f {} + + find "${ED}" -depth -mindepth 1 -type d -empty -exec rm -rf {} + + fi + + find "${ED}" -name '*.la' -exec sed -i -e "/^dependency_libs/s:=.*:='':" {} + + + if use opencl; then + cat <<-EOF > "${T}"/99${PN} + SANDBOX_PREDICT="/dev/nvidiactl:/dev/nvidia-uvm:/dev/ati/card:/dev/dri/card:/dev/dri/renderD128" + EOF + + insinto /etc/sandbox.d + doins "${T}"/99${PN} #472766 + fi + + insinto /usr/share/${PN} + doins config/*icm +} + +pkg_postinst() { + local _show_policy_xml_notice= + + if [[ -z "${REPLACING_VERSIONS}" ]]; then + # This is a new installation + _show_policy_xml_notice=yes + else + local v + for v in ${REPLACING_VERSIONS}; do + if ! ver_test "${v}" -gt "7.0.8.10-r2"; then + # This is an upgrade + _show_policy_xml_notice=yes + + # Show this elog only once + break + fi + done + fi + + if [[ -n "${_show_policy_xml_notice}" ]]; then + elog "For security reasons, a policy.xml file was installed in /etc/ImageMagick-7" + elog "which will prevent the usage of the following coders by default:" + elog "" + elog " - PS" + elog " - PS2" + elog " - PS3" + elog " - EPS" + elog " - PDF" + elog " - XPS" + fi +} diff --git a/profiles/arch/amd64/no-multilib/package.mask b/profiles/arch/amd64/no-multilib/package.mask index 86db307b5e4e..4fda87811fdd 100644 --- a/profiles/arch/amd64/no-multilib/package.mask +++ b/profiles/arch/amd64/no-multilib/package.mask @@ -35,6 +35,7 @@ dev-embedded/openocd dev-util/android-ndk dev-util/android-sdk-update-manager dev-util/biew +games-action/badland games-action/beathazardultra games-action/brutal-legend games-action/cs2d |