Hi ports@, Attaching an update to fotowall 1.0
Notable port changes: - qt4 -> qt5. - Using github tarball instead of google code. - Adjusted WANTLIB/LIB_DEPENDS. - Added EXTRACT_CASES and pre-extract because the upstream tarball spills over WRKDIST instead of extracting to a sub directory. - Had to patch enricomath.h to not use the provided sincos(3) since we now have our own. This happened because I upstreamed our previous patch that enabled this path for us when we still didn't have it. I will upstream the revert also. - Patching out qstrcpy for strlcpy. This is because our x11/qt5 has patched out qstrcpy and the lib is not longer exposing it for external consumers. I saw two ways in how ports are handling it. 1. x11/qt5 itself replaced all uses with strlcpy 2. multimedia/phonon-backend patch qstrcpy -> strlcpy I opted for #1 but obviously having a close look on the patch is advised here. Upstream changelog: https://github.com/enricoros/fotowall/releases/tag/v1.0 Tested on -current amd64. Feedback? OK's? Regards, Adam Wolk
Index: Makefile =================================================================== RCS file: /cvs/ports/graphics/fotowall/Makefile,v retrieving revision 1.9 diff -u -p -r1.9 Makefile --- Makefile 12 Jul 2019 20:46:58 -0000 1.9 +++ Makefile 2 Feb 2020 21:58:35 -0000 @@ -2,9 +2,9 @@ COMMENT = Pictures collage & creativity tool -DISTNAME = Fotowall-0.9 -PKGNAME = ${DISTNAME:L} -REVISION = 3 +V = 1.0 +DISTNAME = Fotowall-${V}-RETRO +PKGNAME = fotowall-${V} CATEGORIES = graphics @@ -14,18 +14,26 @@ MAINTAINER = Adam Wolk <aw...@openbsd.or PERMIT_PACKAGE = Yes -WANTLIB += GL ICE QtGui QtNetwork QtOpenGL QtSvg QtXml SM X11 -WANTLIB += Xext Xi Xinerama Xrender c fontconfig freetype m pthread +WANTLIB += GL Qt5Core Qt5Gui Qt5Network Qt5OpenGL Qt5PrintSupport +WANTLIB += Qt5Svg Qt5Widgets Qt5Xml c m pthread WANTLIB += ${COMPILER_LIBCXX} +LIB_DEPENDS = x11/qt5/qtsvg + COMPILER = base-clang ports-gcc base-gcc -MASTER_SITES = ${MASTER_SITE_GOOGLECODE:=fotowall/} +MASTER_SITES = https://github.com/enricoros/fotowall/releases/download/v${V}/ EXTRACT_SUFX = .tar.bz2 +# avoid WRKDIST = ${WRKDIR} +EXTRACT_CASES= *.tar.bz2) \ + bzip2 -dc ${FULLDISTDIR}/$$archive| ${TAR} xf - -C ${WRKDIST};; -MODULES = devel/qmake x11/qt4 +MODULES = devel/qmake x11/qt5 RUN_DEPENDS = devel/desktop-file-utils + +pre-extract: + @mkdir ${WRKDIST} pre-configure: @sed -i 's,/usr/,${TRUEPREFIX}/,' ${WRKSRC}/fotowall.pro Index: distinfo =================================================================== RCS file: /cvs/ports/graphics/fotowall/distinfo,v retrieving revision 1.1.1.1 diff -u -p -r1.1.1.1 distinfo --- distinfo 30 Aug 2016 15:19:49 -0000 1.1.1.1 +++ distinfo 2 Feb 2020 21:58:35 -0000 @@ -1,2 +1,2 @@ -SHA256 (Fotowall-0.9.tar.bz2) = 5NDABdLLHXwJQ4v8MJjq3rwIlG5PvAZVt/yLBG3jgQ0= -SIZE (Fotowall-0.9.tar.bz2) = 640175 +SHA256 (Fotowall-1.0-RETRO.tar.bz2) = u9jGEI7LrBlDEiqDmEdTgYZdmDOou6jBDw0yYqV4+58= +SIZE (Fotowall-1.0-RETRO.tar.bz2) = 1454741 Index: patches/patch-3rdparty_enricomath_h =================================================================== RCS file: patches/patch-3rdparty_enricomath_h diff -N patches/patch-3rdparty_enricomath_h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-3rdparty_enricomath_h 2 Feb 2020 21:58:35 -0000 @@ -0,0 +1,20 @@ +$OpenBSD$ + +Revert https://github.com/enricoros/fotowall/commit/23b1bc61f1341c5ce61da1e81cc3888a3407e7f4#diff-0e3d52718f9d6fda9c5499355baf17b0 +since we now have sincos(3). + +Index: 3rdparty/enricomath.h +--- 3rdparty/enricomath.h.orig ++++ 3rdparty/enricomath.h +@@ -286,9 +286,9 @@ class Matrix3 + #define M_PI 3.141592653589793238462643 + #endif // !M_PI + +-#if !defined(Q_CC_GNU) || defined(Q_OS_WIN32) || defined(Q_OS_OS2) || defined(Q_OS_ANDROID) || defined(Q_OS_OPENBSD) ++#if !defined(Q_CC_GNU) || defined(Q_OS_WIN32) || defined(Q_OS_OS2) || defined(Q_OS_ANDROID) + #if !defined(__MINGW32__) +-//sincos is not defined in win32, MAC, OS/2, Android and OpenBSD ++//sincos is not defined in win32, MAC, OS/2 and Android + static inline void sincos(double th, double *s, double *c) + { + *s = sin(th); Index: patches/patch-Shared_PropertyEditors_h =================================================================== RCS file: patches/patch-Shared_PropertyEditors_h diff -N patches/patch-Shared_PropertyEditors_h --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-Shared_PropertyEditors_h 2 Feb 2020 21:58:35 -0000 @@ -0,0 +1,16 @@ +$OpenBSD$ + +We patch out qstrcpy from x11/qt5* so use strlcpy + +Index: Shared/PropertyEditors.h +--- Shared/PropertyEditors.h.orig ++++ Shared/PropertyEditors.h +@@ -99,7 +99,7 @@ class PE_Combo : public PE_TypeControl<QComboBox> + if (nameLength < 255) { \ + char signalName[256]; \ + signalName[0] = '0' + QSIGNAL_CODE; \ +- qstrcpy(signalName + 1, notifySignal.methodSignature()); \ ++ strlcpy(signalName + 1, notifySignal.methodSignature(), sizeof(signalName) - 1); \ + connect(m_target.data(), signalName, this, SLOT(slotName)); \ + } \ + }