Michael wrote (2023-08-28 23:59 CEST): > On Sun, Aug 27, 2023 at 11:19:22PM +0200, Stefan Hagen wrote: > > Michael wrote (2023-08-27 02:07 CEST): > > > On Fri, Aug 25, 2023 at 02:41:25PM +0200, Michael wrote: > > > > Hi ports@, > > > > > > > > this is an update to the latest fvwm3 release [1]. > > > > > > > > Unfortunately there was a bug [2] that caused consistent crashes on > > > > OpenBSD. Reverting the commit in question seems to resolve that issue, > > > > which is also what others [3] seem to be doing for now. Patch for this > > > > is included as 'patch-fvwm_ewmh_names_c'. > > > > > > > > Tested on amd64. > > > > > > > > > > > > [1] https://github.com/fvwmorg/fvwm3/releases/tag/1.0.7 > > > > [2] https://github.com/fvwmorg/fvwm3/issues/873 > > > > [3] > > > > https://github.com/freebsd/freebsd-ports/commit/3e35051e913e46e0132df070d5a718d443bfd0b8 > > > > > > Upstream commited a fix for the mentioned issue so let's use this > > > instead, see 'patch-fvwm_ewmh_c'. Patch below. > > > > > > Tested on amd64. > > > > Works here. It starts and most buttons work (default setup). I have > > not seen any crashes. > > > > OK sdk > > > > However, the default config could use some attention: > > * It doesn't honor --program-transform-name (executables and manpages) > > * It links to manpages that don't exist > > * It links to manpages from base fvwm > > > > - Stefan > > > > Thank you for your feedback Stefan. I had a look into this and it looks > like manpages were never built at all. Enabling this required adding > textproc/asciidoctor and switching to gmake. The wildcard expansion in > doc/Makefile.in didn't seem to work so I put the file names in there > manually for now. Further some *.adoc files required setting the correct > absolute path in the include statement which is what the sed run in > pre-configure is for. Those manpages should conflict with x11/fvwm2 so I > think we need '@conflict fvwm2-*' in PLIST now. I am not sure if this > requires adding an additional entry to quirks too?
There's no good way to handle a conflict that's introduced with an update. So what we would do is to move the manpages into the install directory. (thanks to espie@ for the suggestion) You'll then get a nice little info to add this path to your man path when the package is installed: --- +fvwm3-1.0.7 ------------------- You may wish to add /usr/local/share/fvwm3/man to /etc/man.conf > I don't really like the patch or sed call to get the manpages built. > Does someone have any ideas how to improve this? Then again it works > for now... If you don't set SEPARATE_BUILD=yes, then the manpage generation happens as intended and the mess goes away :) Patch below with the following changes: - remove separate build - move manpages to install dir (--mandir at configure time has no effect) - rename FvwmCommand.1 man page to FvwmCommand3.1 to match the executable Only build tested for now because I have to leave for work. - Stefan Index: x11/fvwm3/Makefile =================================================================== RCS file: /cvs/ports/x11/fvwm3/Makefile,v retrieving revision 1.8 diff -u -p -u -p -r1.8 Makefile --- x11/fvwm3/Makefile 24 Jan 2023 18:05:35 -0000 1.8 +++ x11/fvwm3/Makefile 30 Aug 2023 07:30:45 -0000 @@ -1,6 +1,6 @@ COMMENT= multiple virtual desktop window manager -VERSION= 1.0.6a +VERSION= 1.0.7 DISTNAME= fvwm3-${VERSION} CATEGORIES= x11 @@ -20,13 +20,14 @@ WANTLIB += readline rsvg-2 event_core ev MASTER_SITES= https://github.com/fvwmorg/fvwm3/releases/download/${VERSION}/ +BUILD_DEPENDS+= textproc/asciidoctor + LIB_DEPENDS+= graphics/png \ x11/gnome/librsvg \ devel/libevent2 SUBST_VARS= VERSION -SEPARATE_BUILD= Yes CONFIGURE_STYLE= gnu CONFIGURE_ARGS+= --enable-mandoc \ @@ -39,7 +40,12 @@ CONFIGURE_ENV+= CPPFLAGS="${CPPFLAGS} - DEBUG_PACKAGES = ${BUILD_PACKAGES} +USE_GMAKE = yes + post-install: + ${INSTALL_DATA_DIR} ${WRKINST}/${TRUEPREFIX}/share/fvwm3/man/ + mv ${WRKINST}/${TRUEPREFIX}/man/man1 ${WRKINST}/${TRUEPREFIX}/share/fvwm3/man/ + mv ${WRKINST}/${TRUEPREFIX}/share/fvwm3/man/man1/FvwmCommand{,3}.1 mv ${WRKINST}/${TRUEPREFIX}/bin/FvwmCommand{,3} mv ${WRKINST}/${TRUEPREFIX}/share/FvwmScript-* \ ${WRKINST}/${TRUEPREFIX}/share/fvwm3/ Index: x11/fvwm3/distinfo =================================================================== RCS file: /cvs/ports/x11/fvwm3/distinfo,v retrieving revision 1.3 diff -u -p -u -p -r1.3 distinfo --- x11/fvwm3/distinfo 22 Jan 2023 12:11:26 -0000 1.3 +++ x11/fvwm3/distinfo 30 Aug 2023 07:30:45 -0000 @@ -1,2 +1,2 @@ -SHA256 (fvwm3-1.0.6a.tar.gz) = RmWmYTPgcLeRkXsHlMxt9rdUZ56+kTBxhCfbZHm7W2g= -SIZE (fvwm3-1.0.6a.tar.gz) = 4538100 +SHA256 (fvwm3-1.0.7.tar.gz) = OqzXz+/2DbG82cdzMtxXX+dxHS0wbwR5UlN43G2z0x4= +SIZE (fvwm3-1.0.7.tar.gz) = 4512128 Index: x11/fvwm3/patches/patch-configure =================================================================== RCS file: /cvs/ports/x11/fvwm3/patches/patch-configure,v retrieving revision 1.3 diff -u -p -u -p -r1.3 patch-configure --- x11/fvwm3/patches/patch-configure 13 Oct 2022 16:00:45 -0000 1.3 +++ x11/fvwm3/patches/patch-configure 30 Aug 2023 07:30:45 -0000 @@ -1,7 +1,7 @@ Index: configure --- configure.orig +++ configure -@@ -11779,7 +11779,7 @@ then : +@@ -11726,7 +11726,7 @@ then : else $as_nop with_intl=maybe Index: x11/fvwm3/patches/patch-default-config_Makefile_in =================================================================== RCS file: /cvs/ports/x11/fvwm3/patches/patch-default-config_Makefile_in,v retrieving revision 1.3 diff -u -p -u -p -r1.3 patch-default-config_Makefile_in --- x11/fvwm3/patches/patch-default-config_Makefile_in 13 Oct 2022 16:00:45 -0000 1.3 +++ x11/fvwm3/patches/patch-default-config_Makefile_in 30 Aug 2023 07:30:45 -0000 @@ -1,7 +1,7 @@ Index: default-config/Makefile.in --- default-config/Makefile.in.orig +++ default-config/Makefile.in -@@ -593,9 +593,10 @@ uninstall-am: uninstall-configDATA +@@ -574,9 +574,10 @@ uninstall-am: uninstall-configDATA install-data-hook: cp -r $(srcdir)/images $(inst_location)/default-config Index: x11/fvwm3/patches/patch-fvwm_ewmh_c =================================================================== RCS file: x11/fvwm3/patches/patch-fvwm_ewmh_c diff -N x11/fvwm3/patches/patch-fvwm_ewmh_c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ x11/fvwm3/patches/patch-fvwm_ewmh_c 30 Aug 2023 07:30:45 -0000 @@ -0,0 +1,24 @@ +https://github.com/fvwmorg/fvwm3/commit/4d5a697fac3282af18cacebb6d061c92db410f1a +Fixes https://github.com/fvwmorg/fvwm3/issues/873 + +Index: fvwm/ewmh.c +--- fvwm/ewmh.c.orig ++++ fvwm/ewmh.c +@@ -458,7 +458,7 @@ void *atom_get(Window win, Atom to_get, Atom type, int + int asize; + + asize = atom_size(format_ret); +- data = fxmalloc(num_ret * asize); ++ data = fxmalloc(num_ret * asize + 1); + if (format_ret == 32 && asize * 8 != format_ret) + { + int i; +@@ -472,7 +472,7 @@ void *atom_get(Window win, Atom to_get, Atom type, int + { + if (data) + { +- memcpy(data, retval, num_ret * asize); ++ memcpy(data, retval, num_ret * asize + 1); + } + } + XFree(retval); Index: x11/fvwm3/pkg/PLIST =================================================================== RCS file: /cvs/ports/x11/fvwm3/pkg/PLIST,v retrieving revision 1.3 diff -u -p -u -p -r1.3 PLIST --- x11/fvwm3/pkg/PLIST 22 Jan 2023 12:11:26 -0000 1.3 +++ x11/fvwm3/pkg/PLIST 30 Aug 2023 07:30:45 -0000 @@ -25,9 +25,6 @@ libexec/fvwm3/${VERSION}/FvwmPerl @bin libexec/fvwm3/${VERSION}/FvwmRearrange @bin libexec/fvwm3/${VERSION}/FvwmScript libexec/fvwm3/${VERSION}/FvwmTalk -@man man/man1/fvwm3-menu-directory.1 -@man man/man1/fvwm3-menu-xlock.1 -@man man/man1/fvwm3-perllib.1 share/fvwm3/ share/fvwm3/ConfigFvwmBacker share/fvwm3/ConfigFvwmButtons @@ -139,6 +136,35 @@ share/fvwm3/locale/zh_CN/ share/fvwm3/locale/zh_CN/LC_MESSAGES/ share/fvwm3/locale/zh_CN/LC_MESSAGES/FvwmScript.mo share/fvwm3/locale/zh_CN/LC_MESSAGES/fvwm.mo +@mandir share/fvwm3/man/ +share/fvwm3/man/man1/ +@man share/fvwm3/man/man1/FvwmAnimate.1 +@man share/fvwm3/man/man1/FvwmAuto.1 +@man share/fvwm3/man/man1/FvwmBacker.1 +@man share/fvwm3/man/man1/FvwmButtons.1 +@man share/fvwm3/man/man1/FvwmCommand3.1 +@man share/fvwm3/man/man1/FvwmConsole.1 +@man share/fvwm3/man/man1/FvwmEvent.1 +@man share/fvwm3/man/man1/FvwmForm.1 +@man share/fvwm3/man/man1/FvwmIconMan.1 +@man share/fvwm3/man/man1/FvwmIdent.1 +@man share/fvwm3/man/man1/FvwmMFL.1 +@man share/fvwm3/man/man1/FvwmPager.1 +@man share/fvwm3/man/man1/FvwmPerl.1 +@man share/fvwm3/man/man1/FvwmPrompt.1 +@man share/fvwm3/man/man1/FvwmRearrange.1 +@man share/fvwm3/man/man1/FvwmScript.1 +@man share/fvwm3/man/man1/fvwm3-convert-2.6.1 +@man share/fvwm3/man/man1/fvwm3-menu-desktop.1 +@man share/fvwm3/man/man1/fvwm3-menu-directory.1 +@man share/fvwm3/man/man1/fvwm3-menu-xlock.1 +@man share/fvwm3/man/man1/fvwm3-perllib.1 +@man share/fvwm3/man/man1/fvwm3-root.1 +@man share/fvwm3/man/man1/fvwm3.1 +@man share/fvwm3/man/man1/fvwm3all.1 +@man share/fvwm3/man/man1/fvwm3commands.1 +@man share/fvwm3/man/man1/fvwm3menus.1 +@man share/fvwm3/man/man1/fvwm3styles.1 share/fvwm3/perllib/ share/fvwm3/perllib/FVWM/ share/fvwm3/perllib/FVWM/Commands.pm