diff options
Diffstat (limited to 'media-gfx/gmic')
-rw-r--r-- | media-gfx/gmic/Manifest | 2 | ||||
-rw-r--r-- | media-gfx/gmic/gmic-2.5.3.ebuild | 171 |
2 files changed, 173 insertions, 0 deletions
diff --git a/media-gfx/gmic/Manifest b/media-gfx/gmic/Manifest index cf64f92501c3..31050e3db56a 100644 --- a/media-gfx/gmic/Manifest +++ b/media-gfx/gmic/Manifest @@ -1,6 +1,8 @@ AUX gmic-2.4.3-curl.patch 2527 BLAKE2B 8bb6a9fb4aff5a1ae19437f93ec4336d87ab61f334a56c1d2083b0a8c02c37697795ea82f37d4caaf23edb37111d201db75315169a12f256571ad081f60b9890 SHA512 1c5cef3879749ab9a62e52ae5ac1c26ab60ff4b323352af9e7fb0f55b3ca7804290d03bd63dcaedb68c3d6fe43da332681a1eeb84543a1ac30163169ccee6368 DIST gmic_2.4.3.tar.gz 3816129 BLAKE2B 1c9dd6c7e45809d0cf8b8a45476a4b20ad321b5f34fbc5214cb149777c6e9a6aba845cd816cc1503010e281bda0b32e1059dd34d052afe2ebc086469163967be SHA512 482e70b0c82992799c5769ded1547904d16dbc9206d67279b6f524c1214258b97fa539678844a450d6f64144dc7a2715c754d6a1d85398e648bc34086fc3218f DIST gmic_2.4.5.tar.gz 3819428 BLAKE2B 71d19bf6d79ca00bf95006bd96595b83ee28caadf46a9c899176dcd96c5da1b3b9fa7b2150ea2383262c1db2357838c4c716c8ab09060c6c06faa5f7c52975c8 SHA512 39f7c35303704c579d62377f491830f6d310be672f3015aafbd6715c5fa1185d64671f841fd5e0cb818dfc96851afc6dbdbbb99f9b5156ccaeab91e7e1b08033 +DIST gmic_2.5.3.tar.gz 5278154 BLAKE2B 9549798eac0cf0cd869dcaeb14fca184bee3587ec8ac03f80e7f48002dfcd0afe4ad61f2c6a6f1929fb91c010aee3960d6301a0c6c6b6a2f32a7b62db9ddecb0 SHA512 fede101892d6867b83a8995dbc2b7f9e502401bf1ea952fbf95c459c932bb447693d6434e9562b00c9d96f109cbbb35d9ee876fa1f6ec9dfc52186276033e5a5 EBUILD gmic-2.4.3.ebuild 4306 BLAKE2B 608561cc5f9dc176f4b7951033a7a9cdcddf033bbc3f229a6a0a2ee72c08801ffc564b125eab25e1168bc8c93a8c60a6da2099337a1cd3483d087cff670bc094 SHA512 4b1501fd135e1133e6d8cf8404a20ee6155e04377821a00c0719679f8ce03e156d09a84f0c6104de356b9847f61c8d502db62bc1c2f31330f9d7b7d6b453ef99 EBUILD gmic-2.4.5.ebuild 4351 BLAKE2B e9baff4d80ff61668f29ed4fd4dc8ac4a289df1cd0e9b7981ba9de75880463a3a9371a6d38495a7186f04d9bb2be45ecbe23ddda7deca181981fc17bbcd36740 SHA512 135f2c950c90f0052c60c891b323a016d2ba9c78b937a88b0244c43e7239880a85742a178c4f5866aa75079ba28ce38db76d127c41f6aa4957d46b49c0087bcc +EBUILD gmic-2.5.3.ebuild 4346 BLAKE2B 7d403804948db22dec88c15ac345b8b76237370bbd879a1711154dee5d654b203b20d0416db23d2f313678b6965a42df033c678656d01e7b096fd1e180977d26 SHA512 53fb2252a564a6060587594498277037d3844ee5cf3837ae754104a7304895f3ca9d18fb779cf131b335d346d6b73ab255a3aa301b57b04b754a08457224438e MISC metadata.xml 547 BLAKE2B 0da3088e531217099bf3f690059d3725ba3c62ad9337dfbf3817584f95594a328b647b0a81eb4d58c2cbc030026bf2aa94e01c817b04072aea1caee435f6ef9f SHA512 e58e976f8e80eea8e3620888858d6386e5d922c842e08c39f7ad611a5fc96e5fb85e39864bc0e805dd20a2c19e02b9fb8d1a5eaaa470075ed73759dcdcd4fbee diff --git a/media-gfx/gmic/gmic-2.5.3.ebuild b/media-gfx/gmic/gmic-2.5.3.ebuild new file mode 100644 index 000000000000..bfd30752357e --- /dev/null +++ b/media-gfx/gmic/gmic-2.5.3.ebuild @@ -0,0 +1,171 @@ +# Copyright 1999-2019 Gentoo Authors +# Distributed under the terms of the GNU General Public License v2 + +EAPI=7 + +CMAKE_BUILD_TYPE=Release +CMAKE_MIN_VERSION=3.9 + +inherit cmake-utils bash-completion-r1 + +if [[ ${PV} == "9999" ]]; then + EGIT_REPO_URI="https://github.com/dtschump/gmic.git" + inherit git-r3 +else + SRC_URI="https://gmic.eu/files/source/${PN}_${PV}.tar.gz" + KEYWORDS="~amd64 ~x86" +fi + +DESCRIPTION="GREYC's Magic Image Converter" +HOMEPAGE="https://gmic.eu/ https://github.com/dtschump/gmic" + +LICENSE="CeCILL-2 GPL-3" +SLOT="0" +IUSE="+cli curl ffmpeg fftw gimp graphicsmagick jpeg krita opencv openexr openmp png qt5 static-libs tiff X zlib" +REQUIRED_USE=" + || ( cli gimp krita qt5 ) + gimp? ( png zlib fftw X ) + krita? ( png zlib fftw X ) + qt5? ( png zlib fftw X ) +" + +MIN_QT_VER="5.2.0" +QT_DEPEND=" + >=dev-qt/qtcore-${MIN_QT_VER}:5= + >=dev-qt/qtgui-${MIN_QT_VER}:5= + >=dev-qt/qtnetwork-${MIN_QT_VER}:5= + >=dev-qt/qtwidgets-${MIN_QT_VER}:5= +" +COMMON_DEPEND=" + curl? ( net-misc/curl ) + fftw? ( sci-libs/fftw:3.0=[threads] ) + gimp? ( + >=media-gfx/gimp-2.8.0 + ${QT_DEPEND} + ) + graphicsmagick? ( media-gfx/graphicsmagick:0= ) + jpeg? ( virtual/jpeg:0 ) + krita? ( ${QT_DEPEND} ) + opencv? ( >=media-libs/opencv-2.3.1a-r1:0= ) + openexr? ( + media-libs/ilmbase:0= + media-libs/openexr:0= + ) + png? ( media-libs/libpng:0= ) + qt5? ( ${QT_DEPEND} ) + tiff? ( media-libs/tiff:0 ) + X? ( + x11-libs/libX11 + x11-libs/libXext + ) + zlib? ( sys-libs/zlib:0= )" +RDEPEND="${COMMON_DEPEND} + ffmpeg? ( media-video/ffmpeg:0= ) +" +DEPEND="${COMMON_DEPEND} + virtual/pkgconfig + gimp? ( dev-qt/linguist-tools ) + krita? ( dev-qt/linguist-tools ) + qt5? ( dev-qt/linguist-tools ) +" + +pkg_pretend() { + if use openmp ; then + tc-has-openmp || die "Please switch to an openmp compatible compiler" + fi + + if ! test-flag-CXX -std=c++11 ; then + die "You need at least GCC 4.7.x or Clang >= 3.3 for C++11-specific compiler flags" + fi +} + +src_prepare() { + local PATCHES=( "${FILESDIR}"/${PN}-2.4.3-curl.patch ) + cmake-utils_src_prepare + sed -i '/CMAKE_CXX_FLAGS/s/-g //' CMakeLists.txt || die + + if use gimp || use krita || use qt5; then + sed -i '/CMAKE_CXX_FLAGS_RELEASE/d' gmic-qt/CMakeLists.txt || die + local S="${S}/gmic-qt" + PATCHES=() + cmake-utils_src_prepare + fi +} + +src_configure() { + local mycmakeargs=( + -DBUILD_LIB=ON + -DBUILD_LIB_STATIC=$(usex static-libs) + -DBUILD_CLI=$(usex cli) + -DBUILD_MAN=$(usex cli) + -DBUILD_BASH_COMPLETION=$(usex cli) + -DCUSTOM_CFLAGS=ON + -DENABLE_CURL=$(usex curl) + -DENABLE_X=$(usex X) + -DENABLE_FFMPEG=$(usex ffmpeg) + -DENABLE_FFTW=$(usex fftw) + -DENABLE_GRAPHICSMAGICK=$(usex graphicsmagick) + -DENABLE_JPEG=$(usex jpeg) + -DENABLE_OPENCV=$(usex opencv) + -DENABLE_OPENEXR=$(usex openexr) + -DENABLE_OPENMP=$(usex openmp) + -DENABLE_PNG=$(usex png) + -DENABLE_TIFF=$(usex tiff) + -DENABLE_ZLIB=$(usex zlib) + -DENABLE_DYNAMIC_LINKING=ON + ) + + cmake-utils_src_configure + + # configure gmic-qt frontends + local CMAKE_USE_DIR="${S}/gmic-qt" + mycmakeargs=( + -DENABLE_DYNAMIC_LINKING=ON + -DENABLE_CURL=$(usex curl) + -DGMIC_LIB_PATH="${BUILD_DIR}" + -DGMIC_PATH="${S}/src" + ) + + if use gimp; then + mycmakeargs+=( -DGMIC_QT_HOST=gimp ) + BUILD_DIR="${BUILD_DIR}"/gimp cmake-utils_src_configure + fi + + if use krita; then + mycmakeargs+=( -DGMIC_QT_HOST=krita ) + BUILD_DIR="${BUILD_DIR}"/krita cmake-utils_src_configure + fi + + if use qt5; then + mycmakeargs+=( -DGMIC_QT_HOST=none ) + BUILD_DIR="${BUILD_DIR}"/qt5 cmake-utils_src_configure + fi +} + +src_compile() { + cmake-utils_src_compile + + # build gmic-qt frontends + local S="${S}/gmic-qt" + use gimp && { BUILD_DIR="${BUILD_DIR}"/gimp cmake-utils_src_compile || die "failed building gimp plugin" ; } + use krita && { BUILD_DIR="${BUILD_DIR}"/krita cmake-utils_src_compile || die "failed building krita plugin" ; } + use qt5 && { BUILD_DIR="${BUILD_DIR}"/qt5 cmake-utils_src_compile || die "failed building qt5 GUI" ; } +} + +src_install() { + cmake-utils_src_install + dodoc README + use cli && newbashcomp "${BUILD_DIR}"/resources/gmic_bashcompletion.sh ${PN} + + local PLUGINDIR="/usr/$(get_libdir)/gimp/2.0/plug-ins" + insinto "${PLUGINDIR}" + doins resources/gmic_cluts.gmz + + # install gmic-qt frontends + if use gimp; then + exeinto "${PLUGINDIR}" + doexe "${BUILD_DIR}"/gimp/gmic_gimp_qt + fi + use krita && dobin "${BUILD_DIR}"/krita/gmic_krita_qt + use qt5 && dobin "${BUILD_DIR}"/qt5/gmic_qt +} |