Skip to content

Commit

Permalink
media-libs/pangolin: new package, add 0.8
Browse files Browse the repository at this point in the history
  • Loading branch information
alexfanqi committed Nov 25, 2022
1 parent c648334 commit 8805d49
Show file tree
Hide file tree
Showing 4 changed files with 121 additions and 0 deletions.
1 change: 1 addition & 0 deletions media-libs/pangolin/Manifest
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
DIST pangolin-0.8.tar.gz 694204 BLAKE2B 42167409605f058f8cf606bf5cffd7398f9dc18697d2d24e4d1d8ade0ff34d308fdb78f7b36dacceef3250b495ad7ee5a68a04ceb7bfc1cb7866ae29e45f25b0 SHA512 d4ca405097e8c439a4f74495f374bc5d5e4febafcf59ee88d985a8764ed36da1753ca4a3a73476dfb74c7d92df31a99242df6e1b47c648e860eee835a6f4f434
31 changes: 31 additions & 0 deletions media-libs/pangolin/files/pangolin-fix-multilib.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,31 @@
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 607d762..523e259 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -133,20 +133,21 @@ ${CMAKE_CURRENT_BINARY_DIR}/${PROJECT_NAME}Config.cmake @ONLY IMMEDIATE )
#######################################################
## Install headers / targets

+include(GNUInstallDirs)
# This relative path allows installed files to be relocatable.
-set( CMAKECONFIG_INSTALL_DIR lib/cmake/${PROJECT_NAME} )
+set( CMAKECONFIG_INSTALL_DIR ${CMAKE_INSTALL_LIBDIR}/cmake/${PROJECT_NAME} )
file( RELATIVE_PATH REL_INCLUDE_DIR
"${CMAKE_INSTALL_PREFIX}/${CMAKECONFIG_INSTALL_DIR}"
"${CMAKE_INSTALL_PREFIX}/include"
)

install(
TARGETS ${component_list}
EXPORT ${PROJECT_NAME}Targets
- LIBRARY DESTINATION lib
- ARCHIVE DESTINATION lib
- RUNTIME DESTINATION bin
- INCLUDES DESTINATION include
+ LIBRARY DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ ARCHIVE DESTINATION ${CMAKE_INSTALL_LIBDIR}
+ RUNTIME DESTINATION ${CMAKE_INSTALL_BINDIR}
+ INCLUDES DESTINATION ${CMAKE_INSTALL_INCLUDEDIR}
)

install(
18 changes: 18 additions & 0 deletions media-libs/pangolin/files/pangolin-libatomic.patch
Original file line number Diff line number Diff line change
@@ -0,0 +1,18 @@
diff --git a/components/pango_core/CMakeLists.txt b/components/pango_core/CMakeLists.txt
index 315913d..d9c757a 100644
--- a/components/pango_core/CMakeLists.txt
+++ b/components/pango_core/CMakeLists.txt
@@ -44,7 +44,12 @@ install(DIRECTORY "${CMAKE_CURRENT_LIST_DIR}/include"
DESTINATION ${CMAKE_INSTALL_PREFIX}
)

-find_package(Threads QUIET)
+set(THREADS_PREFER_PTHREAD_FLAG TRUE)
+find_package(Threads REQUIRED)
+if(CMAKE_USE_PTHREADS_INIT)
+ target_link_libraries(Threads::Threads INTERFACE -pthread)
+endif()
+
if(Threads_FOUND)
target_link_libraries(${COMPONENT} PUBLIC Threads::Threads)
endif()
71 changes: 71 additions & 0 deletions media-libs/pangolin/pangolin-0.8.ebuild
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
# Copyright 1999-2022 Gentoo Authors
# Distributed under the terms of the GNU General Public License v2

EAPI=8

PYTHON_COMPAT=( python3_{8..10} )

inherit cmake flag-o-matic python-single-r1

DESCRIPTION="A library for managing OpenGL display / interaction and abstracting video input"
HOMEPAGE="https://github.com/stevenlovegrove/Pangolin"
SRC_URI="https://github.com/stevenlovegrove/Pangolin/archive/refs/tags/v${PV}.tar.gz -> ${P}.tar.gz"
S="${WORKDIR}/Pangolin-${PV}"

LICENSE="MIT"
SLOT="0"
KEYWORDS="amd64 riscv"
IUSE="+python test"
REQUIRED_USE="python? ( ${PYTHON_REQUIRED_USE} )"

RESTRICT="!test? ( test )"

RDEPEND="
media-libs/libpng:0=
media-libs/libjpeg-turbo:=
media-libs/openexr:0=
dev-cpp/eigen:3
media-libs/glew:=
x11-libs/libxkbcommon
python? (
${PYTHON_DEPS}
$(python_gen_cond_dep '
dev-python/pybind11[${PYTHON_USEDEP}]
')
)
"
DEPEND="${RDEPEND}
test? ( <dev-cpp/catch-3 )
"

PATCHES=(
"${FILESDIR}/${PN}-fix-multilib.patch"
"${FILESDIR}/${PN}-libatomic.patch"
)

DOCS=( README.md )

pkg_setup() {
use python && python-single-r1_pkg_setup
}

src_prepare() {
cmake_src_prepare

pushd components/pango_python > /dev/null || die
cmake_comment_add_subdirectory pybind11
popd > /dev/null || die
}

src_configure() {
local mycmakeargs=(
-DBUILD_TESTS=$(usex test)
-DBUILD_PANGOLIN_PYTHON=$(usex python)
)
cmake_src_configure
}

src_install() {
cmake_src_install
einstalldocs
}

0 comments on commit 8805d49

Please sign in to comment.