소스 검색

EAPI=7 for psi and psimedia

Sergey Ilinykh 5 년 전
부모
커밋
c1c7afe145

+ 21 - 31
net-im/psi/psi-9999.ebuild

@@ -1,12 +1,12 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=6
+EAPI=7
 
 PLOCALES="be bg ca cs de en eo es et fa fi fr he hu it ja kk mk nl pl pt pt_BR ru sk sl sr@latin sv sw uk ur_PK vi zh_CN zh_TW"
 PLOCALE_BACKUP="en"
 
-inherit l10n git-r3 qmake-utils xdg-utils
+inherit l10n git-r3 qmake-utils xdg
 
 DESCRIPTION="Qt XMPP client"
 HOMEPAGE="https://psi-im.org"
@@ -20,7 +20,7 @@ EGIT_MIN_CLONE_TYPE="single"
 LICENSE="GPL-2"
 SLOT="0"
 KEYWORDS=""
-IUSE="aspell crypt dbus debug doc enchant extras +hunspell iconsets keyring jingle ssl webengine webkit webp whiteboarding xscreensaver"
+IUSE="aspell crypt dbus debug doc enchant extras +hunspell iconsets keyring media ssl webengine webkit webp whiteboarding xscreensaver"
 
 REQUIRED_USE="
 	?? ( aspell enchant hunspell )
@@ -28,14 +28,20 @@ REQUIRED_USE="
 	webengine? ( !webkit )
 "
 
-RDEPEND="
-	app-crypt/qca:2[qt5(+)]
+BDEPEND="
+	dev-qt/linguist-tools:5
+	virtual/pkgconfig
+	doc? ( app-doc/doxygen )
+	extras? ( >=sys-devel/qconf-2.4 )
+"
+DEPEND="
+	app-crypt/qca:2[ssl]
 	dev-qt/qtconcurrent:5
 	dev-qt/qtcore:5
 	dev-qt/qtgui:5
 	dev-qt/qtmultimedia:5
 	dev-qt/qtnetwork:5
-	dev-qt/qtsql:5
+	dev-qt/qtsql:5[sqlite]
 	dev-qt/qtwidgets:5
 	dev-qt/qtx11extras:5
 	dev-qt/qtxml:5
@@ -57,20 +63,11 @@ RDEPEND="
 	whiteboarding? ( dev-qt/qtsvg:5 )
 	xscreensaver? ( x11-libs/libXScrnSaver )
 "
-DEPEND="${RDEPEND}
-	dev-qt/linguist-tools:5
-	virtual/pkgconfig
-	doc? ( app-doc/doxygen )
-	extras? ( >=sys-devel/qconf-2.4 )
-"
-PDEPEND="
-	crypt? ( app-crypt/qca[gpg] )
-	jingle? (
-		net-im/psimedia[extras?]
-		app-crypt/qca:2[ssl]
+RDEPEND="${DEPEND}
+	media? (
+		net-im/psimedia
 	)
-	ssl? ( app-crypt/qca:2[ssl] )
-	webp? ( dev-qt/qtimageformats )
+	dev-qt/qtimageformats
 "
 
 RESTRICT="test iconsets? ( bindist )"
@@ -79,14 +76,12 @@ pkg_setup() {
 	MY_PN=psi
 	if use extras; then
 		MY_PN=psi-plus
-		echo
 		ewarn "You're about to build patched version of Psi called Psi+."
 		ewarn "It has new nice features not yet included to Psi."
 		ewarn "Take a look at homepage for more info: http://psi-plus.com/"
-		echo
 
 		if use iconsets; then
-			echo
+			ewarn
 			ewarn "Some artwork is from open source projects, but some is provided 'as-is'"
 			ewarn "and has not clear licensing."
 			ewarn "Possibly this build is not redistributable in some countries."
@@ -175,7 +170,7 @@ src_install() {
 	emake INSTALL_ROOT="${D}" install
 
 	# this way the docs will be installed in the standard gentoo dir
-	rm "${ED}"/usr/share/${MY_PN}/{COPYING,README.html} || die "Installed file set seems to be changed by upstream"
+	rm "${ED}"/usr/share/${MY_PN}/{COPYING,README.html} || die "doc files set seems to have changed"
 	newdoc iconsets/roster/README README.roster
 	newdoc iconsets/system/README README.system
 	newdoc certs/README README.certs
@@ -196,11 +191,6 @@ src_install() {
 }
 
 pkg_postinst() {
-	xdg_icon_cache_update
-	xdg_desktop_database_update
-}
-
-pkg_postrm() {
-	xdg_icon_cache_update
-	xdg_desktop_database_update
+	xdg_pkg_postinst
+	einfo "For GPG support make sure app-crypt/qca is compiled with gpg USE flag."
 }

+ 0 - 23
net-im/psimedia/ChangeLog

@@ -1,23 +0,0 @@
-# ChangeLog for net-im/psimedia
-# Copyright 1999-2018 Gentoo Foundation; Distributed under the GPL v2
-# $Header: $
-
-  02 Apr 2011; Nikoli <nikoli@lavabit.com>
-  +psimedia-1.0.3_p20110125-r1.ebuild,
-  +files/psimedia-1.0.3-linux-headers-2.6.38.patch,
-  +files/psimedia-1.0.3-remove-v4l-driver.patch:
-  gst-plugins-v4l is hard masked, fix build
-
-  25 Jan 2011; Nikoli <nikoli@lavabit.com> +psimedia-1.0.3_p20110125.ebuild:
-  add snapshot
-
-  25 Jan 2011; Nikoli <nikoli@lavabit.com> psimedia-9999.ebuild,
-  metadata.xml:
-  fix deps, sync with portage
-
-  18 Jan 2011; Rion <rion4ik@gmail.com> psimedia-9999.ebuild:
-  fix install path for psi-plus
-
-  11 Oct 2010; Rion <rion4ik@gmail.com> psimedia-9999.ebuild:
-  fix QA
-

+ 0 - 86
net-im/psimedia/files/psimedia-1.0.3-linux-headers-2.6.38.patch

@@ -1,86 +0,0 @@
-http://pkgs.fedoraproject.org/gitweb/?p=psimedia.git;a=blob_plain;f=psimedia-remove-v4l.patch;hb=HEAD
-
---- gstprovider/deviceenum/deviceenum_unix.cpp
-+++ gstprovider/deviceenum/deviceenum_unix.cpp
-@@ -35,7 +35,7 @@
- # include <sys/stat.h>
- # include <dirent.h>
- # include <sys/ioctl.h>
--# include <linux/videodev.h>
-+# include <linux/videodev2.h>
- #endif
- 
- namespace DeviceEnum {
-@@ -478,72 +478,7 @@
- // v4l detection scheme adapted from PWLib (used by Ekiga/Gnomemeeting)
- static QList<Item> get_v4l_items()
- {
--#ifdef Q_OS_LINUX
--	QList<Item> out;
--
--	QList<V4LName> list = get_v4l_names("/sys/class/video4linux", true);
--	if(list.isEmpty())
--		list = get_v4l_names("/proc/video/dev", false);
--
--	// if we can't find anything, then do a raw scan for possibilities
--	if(list.isEmpty())
--	{
--		QStringList possible = scan_for_videodevs("/dev");
--		foreach(QString str, possible)
--		{
--			V4LName v;
--			v.dev = str;
--			list += v;
--		}
--	}
--
--	for(int n = 0; n < list.count(); ++n)
--	{
--		V4LName &v = list[n];
--
--		// if we already have a friendly name then we'll skip the confirm
--		//   in order to save resources.  the only real drawback here that
--		//   I can think of is if the device isn't a capture type.  but
--		//   what does it mean to have a V4L device that isn't capture??
--		if(v.friendlyName.isEmpty())
--		{
--			int fd = open(QFile::encodeName(v.dev).data(), O_RDONLY | O_NONBLOCK);
--			if(fd == -1)
--				continue;
--
--			// get video capabilities and close
--			struct video_capability caps;
--			memset(&caps, 0, sizeof(caps));
--			int ret = ioctl(fd, VIDIOCGCAP, &caps);
--			close(fd);
--			if(ret == -1)
--				continue;
--
--			if(!(caps.type & VID_TYPE_CAPTURE))
--				continue;
--
--			v.friendlyName = caps.name;
--		}
--
--		Item i;
--		i.type = Item::Video;
--		i.dir = Item::Input;
--		i.name = v.friendlyName;
--		i.driver = "v4l";
--		i.id = v.dev;
--
--		// HACK
--		if(v.friendlyName == "Labtec Webcam Notebook")
--			i.explicitCaptureSize = QSize(640, 480);
--
--		out += i;
--	}
--
--	return out;
--#else
--	// return empty list if non-linux
- 	return QList<Item>();
--#endif
- }
- 
- static QList<Item> get_v4l2_items()

+ 0 - 51
net-im/psimedia/files/psimedia-1.0.3-remove-v4l-driver.patch

@@ -1,51 +0,0 @@
-diff -ur ../psimedia-1.0.3-old/gstprovider/devices.cpp gstprovider/devices.cpp
---- gstprovider/devices.cpp	2009-06-09 10:12:11.000000000 +0200
-+++ gstprovider/devices.cpp	2011-04-02 11:47:21.898041830 +0200
-@@ -90,7 +90,6 @@
- 		element_name == "alsasink" ||
- 		element_name == "osssrc" ||
- 		element_name == "osssink" ||
--		element_name == "v4lsrc" ||
- 		element_name == "v4l2src" ||
- 		element_name == "osxaudiosrc" ||
- 		element_name == "osxaudiosink" ||
-@@ -224,11 +223,6 @@
- 		if(type == PDevice::VideoIn)
- 			element_name = "osxvideosrc";
- 	}
--	else if(driver == "v4l")
--	{
--		if(type == PDevice::VideoIn)
--			element_name = "v4lsrc";
--	}
- 	else if(driver == "v4l2")
- 	{
- 		if(type == PDevice::VideoIn)
-@@ -380,7 +374,7 @@
- 			bool first = true;
- 			foreach(const DeviceEnum::Item &i, list)
- 			{
--				if(type == PDevice::VideoIn && (element_name == "v4lsrc" || element_name == "v4l2src"))
-+				if(type == PDevice::VideoIn && element_name == "v4l2src")
- 				{
- 					if(!test_video(element_name, i.id))
- 						continue;
-@@ -444,7 +438,6 @@
- 	else // PDevice::VideoIn
- 	{
- 		drivers
--		<< "v4l"
- 		<< "v4l2"
- 		<< "osxvideo"
- 		<< "winks";
-diff -ur ../psimedia-1.0.3-old/gstprovider/gstthread.cpp gstprovider/gstthread.cpp
---- gstprovider/gstthread.cpp	2009-05-17 19:55:27.000000000 +0200
-+++ gstprovider/gstthread.cpp	2011-04-02 11:48:28.581514484 +0200
-@@ -235,7 +235,6 @@
- #elif defined(Q_OS_LINUX)
- 			reqelem
- 			<< "alsasrc" << "alsasink"
--			<< "v4lsrc"
- 			<< "v4l2src";
- #elif defined(Q_OS_UNIX)
- 			reqelem

+ 2 - 2
net-im/psimedia/metadata.xml

@@ -2,8 +2,8 @@
 <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
 <pkgmetadata>
 	<maintainer type="person">
-		<email>nikoli@lavabit.com</email>
-		<name>Nikoli</name>
+		<email>rion4ik@gmail.com</email>
+		<name>Sergey Ilinykh</name>
 	</maintainer>
 	<use>
 		<flag name='demo'>Build simple test application for the PsiMedia system</flag>

+ 19 - 31
net-im/psimedia/psimedia-9999.ebuild

@@ -1,53 +1,41 @@
-# Copyright 1999-2018 Gentoo Foundation
+# Copyright 1999-2020 Gentoo Authors
 # Distributed under the terms of the GNU General Public License v2
 
-EAPI=6
+EAPI=7
 
-inherit qmake-utils multilib eutils git-r3
+inherit cmake-utils multilib eutils git-r3
 
 DESCRIPTION="Psi plugin for voice/video calls"
-HOMEPAGE="http://delta.affinix.com/psimedia/"
+HOMEPAGE="https://psi-im.org/"
+
 EGIT_REPO_URI="https://github.com/psi-im/psimedia.git"
-#EGIT_BRANCH="gstreamer-1.0"
 
 LICENSE="GPL-2"
 SLOT="0"
 KEYWORDS=""
-IUSE="debug demo extras qt5"
+IUSE="debug extras"
 
-COMMON_DEPEND="
+BDEPEND="sys-devel/qconf"
+DEPEND="
 	dev-libs/glib
+	dev-qt/qtcore:5
+	dev-qt/qtgui:5
+	dev-qt/qtwidgets:5
 	media-libs/gstreamer:1.0
 	media-libs/gst-plugins-base:1.0
 	media-libs/gst-plugins-good:1.0
-	qt5? (
-		dev-qt/qtcore:5
-		dev-qt/qtgui:5
-		dev-qt/qtwidgets:5
-	)
 "
-RDEPEND="${COMMON_DEPEND}
+RDEPEND="${DEPEND}
+	media-plugins/gst-plugins-jpeg:1.0
 	media-plugins/gst-plugins-opus:1.0
 	media-plugins/gst-plugins-v4l2:1.0
-	media-plugins/gst-plugins-jpeg:1.0
-	net-im/psi
-"
-DEPEND="${COMMON_DEPEND}
-	sys-devel/qconf
+	net-im/psi[extras?]
 "
 
 src_configure() {
-	qconf
-	./configure --prefix="${EPREFIX}/usr" --qtselect=5
-}
-
-src_install() {
-	if use extras; then
-		pname="psi-plus"
-	else
-		pname="psi"
-	fi
-
-	insinto "/usr/$(get_libdir)/${pname}/plugins"
-	doins gstprovider/libgstprovider.so
+	local mycmakeargs=(
+		-DUSE_PSI=$(usex extras 0 1)
+		-DBUILD_DEMO=0
+	)
+	cmake-utils_src_configure
 }