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? 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... Slightly tested on amd64, updated patch below. Index: Makefile =================================================================== RCS file: /cvs/ports/x11/fvwm3/Makefile,v retrieving revision 1.8 diff -u -p -r1.8 Makefile --- Makefile 24 Jan 2023 18:05:35 -0000 1.8 +++ Makefile 28 Aug 2023 21:29:04 -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,6 +20,8 @@ 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 @@ -27,17 +29,22 @@ LIB_DEPENDS+= graphics/png \ SUBST_VARS= VERSION SEPARATE_BUILD= Yes +USE_GMAKE= Yes CONFIGURE_STYLE= gnu CONFIGURE_ARGS+= --enable-mandoc \ --disable-bidi \ - --program-transform-name='s/^fvwm-/fvwm3-/' \ - --localedir=${TRUEPREFIX}/share/fvwm3/locale + --localedir=${TRUEPREFIX}/share/fvwm3/locale \ + --program-transform-name='s/^fvwm-/fvwm3-/' CONFIGURE_ENV+= CPPFLAGS="${CPPFLAGS} -I${LOCALBASE}/include" \ LDFLAGS="${LDFLAGS} -L${LOCALBASE}/lib" DEBUG_PACKAGES = ${BUILD_PACKAGES} + +pre-configure: + sed -Ei 's#^(include::)(.*\.ad)(\[.*\])#\1'${WRKBUILD}'/doc/\2\3#' \ + ${WRKSRC}/doc/*.adoc post-install: mv ${WRKINST}/${TRUEPREFIX}/bin/FvwmCommand{,3} Index: distinfo =================================================================== RCS file: /cvs/ports/x11/fvwm3/distinfo,v retrieving revision 1.3 diff -u -p -r1.3 distinfo --- distinfo 22 Jan 2023 12:11:26 -0000 1.3 +++ distinfo 28 Aug 2023 21:29:04 -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: patches/patch-configure =================================================================== RCS file: /cvs/ports/x11/fvwm3/patches/patch-configure,v retrieving revision 1.3 diff -u -p -r1.3 patch-configure --- patches/patch-configure 13 Oct 2022 16:00:45 -0000 1.3 +++ patches/patch-configure 28 Aug 2023 21:29:04 -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: 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 -r1.3 patch-default-config_Makefile_in --- patches/patch-default-config_Makefile_in 13 Oct 2022 16:00:45 -0000 1.3 +++ patches/patch-default-config_Makefile_in 28 Aug 2023 21:29:04 -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: patches/patch-doc_Makefile_in =================================================================== RCS file: patches/patch-doc_Makefile_in diff -N patches/patch-doc_Makefile_in --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-doc_Makefile_in 28 Aug 2023 21:29:04 -0000 @@ -0,0 +1,38 @@ +Index: doc/Makefile.in +--- doc/Makefile.in.orig ++++ doc/Makefile.in +@@ -345,14 +345,31 @@ xrandr_LIBS = @xrandr_LIBS@ + xt_CFLAGS = @xt_CFLAGS@ + xt_LIBS = @xt_LIBS@ + MODULE_ADOC_SRCS = \ ++ FvwmAnimate.adoc \ ++ FvwmAuto.adoc \ ++ FvwmBacker.adoc \ ++ FvwmButtons.adoc \ ++ FvwmCommand.adoc \ ++ FvwmConsole.adoc \ ++ FvwmEvent.adoc \ ++ FvwmForm.adoc \ ++ FvwmIconMan.adoc \ ++ FvwmIdent.adoc \ ++ FvwmMFL.adoc \ ++ FvwmPager.adoc \ ++ FvwmPerl.adoc \ ++ FvwmPrompt.adoc \ ++ FvwmRearrange.adoc \ ++ FvwmScript.adoc \ ++ fvwm-convert-2.6.adoc \ ++ fvwm-menu-desktop.adoc \ ++ fvwm-root.adoc \ + fvwm3.adoc \ ++ fvwm3_manpage_source.adoc \ + fvwm3all.adoc \ + fvwm3commands.adoc \ +- fvwm3_manpage_source.adoc \ + fvwm3menus.adoc \ + fvwm3styles.adoc \ +- $(wildcard Fvwm*.adoc) \ +- $(wildcard fvwm-*.adoc) + + @FVWM_BUILD_GOLANG_FALSE@MODULE_ADOC = $(MODULE_ADOC_SRCS) + Index: patches/patch-fvwm_ewmh_c =================================================================== RCS file: patches/patch-fvwm_ewmh_c diff -N patches/patch-fvwm_ewmh_c --- /dev/null 1 Jan 1970 00:00:00 -0000 +++ patches/patch-fvwm_ewmh_c 28 Aug 2023 21:29:04 -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: pkg/PLIST =================================================================== RCS file: /cvs/ports/x11/fvwm3/pkg/PLIST,v retrieving revision 1.3 diff -u -p -r1.3 PLIST --- pkg/PLIST 22 Jan 2023 12:11:26 -0000 1.3 +++ pkg/PLIST 28 Aug 2023 21:29:04 -0000 @@ -1,3 +1,4 @@ +@conflict fvwm2-* bin/FvwmCommand3 @bin bin/fvwm3 bin/fvwm3-convert-2.6 @@ -25,9 +26,33 @@ libexec/fvwm3/${VERSION}/FvwmPerl @bin libexec/fvwm3/${VERSION}/FvwmRearrange @bin libexec/fvwm3/${VERSION}/FvwmScript libexec/fvwm3/${VERSION}/FvwmTalk +@man man/man1/FvwmAnimate.1 +@man man/man1/FvwmAuto.1 +@man man/man1/FvwmBacker.1 +@man man/man1/FvwmButtons.1 +@man man/man1/FvwmCommand.1 +@man man/man1/FvwmConsole.1 +@man man/man1/FvwmEvent.1 +@man man/man1/FvwmForm.1 +@man man/man1/FvwmIconMan.1 +@man man/man1/FvwmIdent.1 +@man man/man1/FvwmMFL.1 +@man man/man1/FvwmPager.1 +@man man/man1/FvwmPerl.1 +@man man/man1/FvwmPrompt.1 +@man man/man1/FvwmRearrange.1 +@man man/man1/FvwmScript.1 +@man man/man1/fvwm3-convert-2.6.1 +@man man/man1/fvwm3-menu-desktop.1 @man man/man1/fvwm3-menu-directory.1 @man man/man1/fvwm3-menu-xlock.1 @man man/man1/fvwm3-perllib.1 +@man man/man1/fvwm3-root.1 +@man man/man1/fvwm3.1 +@man man/man1/fvwm3all.1 +@man man/man1/fvwm3commands.1 +@man man/man1/fvwm3menus.1 +@man man/man1/fvwm3styles.1 share/fvwm3/ share/fvwm3/ConfigFvwmBacker share/fvwm3/ConfigFvwmButtons