Re-import Polkit-Qt. It supports both Qt4 and Qt5 versions now, which

could be built and installed simultaneously from the same sources.
The PKGSTEM+CMAKESTEM variables in SUBST_VARS look like somewhat ugly,
but this way update-plist does its job correctly for default FLAVOR
at least.

One more patch added speficially for Qt5 case, forcing linking to
libestdc++.

While here, added NO_TEST and fixed COMMENT.

Much input & okay aja@ (MAINTAINER).

Next steps are: switching bulk builds from x11/polkit-qt4 to x11/polkit-qt,
and then removing the former.
This commit is contained in:
zhuk 2016-01-03 16:42:15 +00:00
parent 006fa27529
commit 5a87b46528
7 changed files with 161 additions and 0 deletions

83
x11/polkit-qt/Makefile Normal file
View File

@ -0,0 +1,83 @@
# $OpenBSD: Makefile,v 1.1.1.1 2016/01/03 16:42:15 zhuk Exp $
SHARED_ONLY= Yes
COMMENT= PolicyKit authentication agent for Qt
V= 0.112.0
DISTNAME= polkit-qt-1-${V}
REVISION= 2
SHARED_LIBS += polkit-qt-agent-1 2.0 # 0.99
SHARED_LIBS += polkit-qt-core-1 2.0 # 0.99
SHARED_LIBS += polkit-qt-gui-1 2.0 # 0.99
# XXX keep versions below in sync with above, due to patch-PolkitQt-1Config_cmake_in
SHARED_LIBS += polkit-qt5-agent-1 2.0 # 0.99
SHARED_LIBS += polkit-qt5-core-1 2.0 # 0.99
SHARED_LIBS += polkit-qt5-gui-1 2.0 # 0.99
CATEGORIES= x11 sysutils
EXTRACT_SUFX= .tar.bz2
HOMEPAGE= http://techbase.kde.org/Polkit-Qt-1
MAINTAINER= Antoine Jacoutot <ajacoutot@openbsd.org>
# LGPLv2+
PERMIT_PACKAGE_CDROM= Yes
WANTLIB += gio-2.0 glib-2.0 gmodule-2.0 gobject-2.0
WANTLIB += gthread-2.0 m polkit-agent-1 polkit-gobject-1
MASTER_SITES= ${MASTER_SITE_KDE:=stable/apps/KDE4.x/admin/}
FLAVORS= qt5
FLAVOR?=
MODULES= devel/cmake
BUILD_DEPENDS= devel/automoc
LIB_DEPENDS= sysutils/polkit
# polkit(8) almost always needs to know the "active" session
RUN_DEPENDS += sysutils/consolekit
CONFIGURE_ARGS= -DCMAKE_SHARED_LINKER_FLAGS:STRING="-L${LOCALBASE}/lib"
#
# We use PKGSTEM+CMAKESTEM instead of simple QT5=5 because otherwise
# update-plist will fail in both qt4 and qt5 cases:
# * for qt4 it'll drop ${QT5} from plist;
# * for qt5 it'll use ${FLAVORS} instead, see the
# PKG_ARGS+=-DFLAVORS=${FLAVOR_EXT:Q} line in bsd.port.mk.
#
.if ${FLAVOR:Mqt5}
FULLPKGNAME= polkit-qt5-${V}
MODULES+= x11/qt5
CONFIGURE_ARGS+=-DUSE_QT5=Yes \
-DOPENBSD_STDCPP=estdc++
WANTLIB+= Qt5Core Qt5DBus Qt5Gui Qt5Widgets
PKGSTEM= polkit-qt5-
CMAKESTEM= PolkitQt5-1
.else
FULLPKGNAME= polkit-qt4-${V}
MODULES+= x11/qt4
CONFIGURE_ARGS+=-DUSE_QT4=Yes \
-DOPENBSD_STDCPP=
WANTLIB+= QtDBus QtGui stdc++
PKGSTEM= polkit-qt-
CMAKESTEM= PolkitQt-1
.endif
# N.B.: run update-plist with qt4 FLAVOR
SUBST_VARS= PKGSTEM CMAKESTEM
NO_TEST= Yes
pre-configure:
${SUBST_CMD} ${WRKSRC}/PolkitQt-1Config.cmake.in
.include <bsd.port.mk>

2
x11/polkit-qt/distinfo Normal file
View File

@ -0,0 +1,2 @@
SHA256 (polkit-qt-1-0.112.0.tar.bz2) = Z/sDv2yj4L29mNN037WxZRoH0Xrmwj4RqBtLCERH58Y=
SIZE (polkit-qt-1-0.112.0.tar.bz2) = 67725

View File

@ -0,0 +1,16 @@
$OpenBSD: patch-PolkitQt-1Config_cmake_in,v 1.1.1.1 2016/01/03 16:42:15 zhuk Exp $
--- PolkitQt-1Config.cmake.in.orig Thu Jul 10 10:37:25 2014
+++ PolkitQt-1Config.cmake.in Sat Aug 30 10:51:42 2014
@@ -42,9 +42,9 @@ elseif(APPLE)
set(POLKITQT-1_AGENT_LIBRARY "${POLKITQT-1_LIB_DIR}/lib@POLKITQT-1_AGENT_PCNAME@.dylib")
set(POLKITQT-1_GUI_LIBRARY "${POLKITQT-1_LIB_DIR}/lib@POLKITQT-1_GUI_PCNAME@.dylib")
else()
- set(POLKITQT-1_CORE_LIBRARY "${POLKITQT-1_LIB_DIR}/lib@POLKITQT-1_CORE_PCNAME@.so")
- set(POLKITQT-1_AGENT_LIBRARY "${POLKITQT-1_LIB_DIR}/lib@POLKITQT-1_AGENT_PCNAME@.so")
- set(POLKITQT-1_GUI_LIBRARY "${POLKITQT-1_LIB_DIR}/lib@POLKITQT-1_GUI_PCNAME@.so")
+ set(POLKITQT-1_CORE_LIBRARY "${POLKITQT-1_LIB_DIR}/lib@POLKITQT-1_CORE_PCNAME@.so.${LIBpolkit-qt-core-1_VERSION}")
+ set(POLKITQT-1_AGENT_LIBRARY "${POLKITQT-1_LIB_DIR}/lib@POLKITQT-1_AGENT_PCNAME@.so.${LIBpolkit-qt-agent-1_VERSION}")
+ set(POLKITQT-1_GUI_LIBRARY "${POLKITQT-1_LIB_DIR}/lib@POLKITQT-1_GUI_PCNAME@.so.${LIBpolkit-qt-gui-1_VERSION}")
endif()
########## The PolkitQt-1 libraries ##########

View File

@ -0,0 +1,12 @@
$OpenBSD: patch-core_CMakeLists_txt,v 1.1.1.1 2016/01/03 16:42:15 zhuk Exp $
Make sure libestdc++ is picked up earlier than libstdc++.
--- core/CMakeLists.txt.orig Thu Jul 10 12:37:25 2014
+++ core/CMakeLists.txt Mon Dec 28 12:42:10 2015
@@ -14,6 +14,7 @@ add_library(${POLKITQT-1_CAMEL_NAME}::Core ALIAS ${POL
target_link_libraries(${POLKITQT-1_CORE_PCNAME}
LINK_PUBLIC
${QT_QTCORE_LIBRARY}
+ ${OPENBSD_STDCPP}
LINK_PRIVATE
${QT_QTDBUS_LIBRARY}
${POLKIT_LIBRARIES}

4
x11/polkit-qt/pkg/DESCR Normal file
View File

@ -0,0 +1,4 @@
${PKGSTEM}1 is a library that lets developers use the PolicyKit API
through a nice Qt-styled API. It is mainly a wrapper around QAction and
QAbstractButton that lets you integrate those two component easily with
PolicyKit.

View File

@ -0,0 +1,2 @@
@comment $OpenBSD: PFRAG.no-qt5,v 1.1.1.1 2016/01/03 16:42:15 zhuk Exp $
@pkgpath x11/polkit-qt4

42
x11/polkit-qt/pkg/PLIST Normal file
View File

@ -0,0 +1,42 @@
@comment $OpenBSD: PLIST,v 1.1.1.1 2016/01/03 16:42:15 zhuk Exp $
!%%qt5%%
include/${PKGSTEM}1/
include/${PKGSTEM}1/PolkitQt1/
include/${PKGSTEM}1/PolkitQt1/ActionDescription
include/${PKGSTEM}1/PolkitQt1/Agent/
include/${PKGSTEM}1/PolkitQt1/Agent/Listener
include/${PKGSTEM}1/PolkitQt1/Agent/Session
include/${PKGSTEM}1/PolkitQt1/Authority
include/${PKGSTEM}1/PolkitQt1/Details
include/${PKGSTEM}1/PolkitQt1/Gui/
include/${PKGSTEM}1/PolkitQt1/Gui/Action
include/${PKGSTEM}1/PolkitQt1/Gui/ActionButton
include/${PKGSTEM}1/PolkitQt1/Gui/ActionButtons
include/${PKGSTEM}1/PolkitQt1/Identity
include/${PKGSTEM}1/PolkitQt1/Subject
include/${PKGSTEM}1/PolkitQt1/TemporaryAuthorization
include/${PKGSTEM}1/polkitqt1-actiondescription.h
include/${PKGSTEM}1/polkitqt1-agent-listener.h
include/${PKGSTEM}1/polkitqt1-agent-session.h
include/${PKGSTEM}1/polkitqt1-authority.h
include/${PKGSTEM}1/polkitqt1-details.h
include/${PKGSTEM}1/polkitqt1-export.h
include/${PKGSTEM}1/polkitqt1-gui-action.h
include/${PKGSTEM}1/polkitqt1-gui-actionbutton.h
include/${PKGSTEM}1/polkitqt1-gui-actionbuttons.h
include/${PKGSTEM}1/polkitqt1-identity.h
include/${PKGSTEM}1/polkitqt1-subject.h
include/${PKGSTEM}1/polkitqt1-temporaryauthorization.h
include/${PKGSTEM}1/polkitqt1-version.h
lib/cmake/${CMAKESTEM}/
lib/cmake/${CMAKESTEM}/${CMAKESTEM}Config.cmake
lib/cmake/${CMAKESTEM}/${CMAKESTEM}ConfigVersion.cmake
lib/cmake/${CMAKESTEM}/${CMAKESTEM}Targets${MODCMAKE_BUILD_SUFFIX}
lib/cmake/${CMAKESTEM}/${CMAKESTEM}Targets.cmake
@lib lib/lib${PKGSTEM}agent-1.so.${LIB${PKGSTEM}agent-1_VERSION}
@lib lib/lib${PKGSTEM}core-1.so.${LIB${PKGSTEM}core-1_VERSION}
@lib lib/lib${PKGSTEM}gui-1.so.${LIB${PKGSTEM}gui-1_VERSION}
lib/pkgconfig/${PKGSTEM}1.pc
lib/pkgconfig/${PKGSTEM}agent-1.pc
lib/pkgconfig/${PKGSTEM}core-1.pc
lib/pkgconfig/${PKGSTEM}gui-1.pc