Skip site navigation (1)Skip section navigation (2)
Date:      Mon, 26 Mar 2018 22:01:27 +0000
From:      bugzilla-noreply@freebsd.org
To:        gnome@FreeBSD.org
Subject:   maintainer-approval requested: [Bug 226920] devel/glib20: pull the latest file monitor fix from upstream : [Attachment 191855] Proposed patch (since 460230 revision)
Message-ID:  <bug-226920-6497-gJoGleYaib@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-226920-6497@https.bugs.freebsd.org/bugzilla/>
References:  <bug-226920-6497@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
lightside <lightside@gmx.com> has asked gnome@FreeBSD.org for
maintainer-approval:
Bug 226920: devel/glib20: pull the latest file monitor fix from upstream
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D226920

Attachment 191855: Proposed patch (since 460230 revision)
https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D191855&action=3Dedit



--- Comment #4 from lightside <lightside@gmx.com> ---
Created attachment 191855
  --> https://bugs.freebsd.org/bugzilla/attachment.cgi?id=3D191855&action=
=3Dedit
Proposed patch (since 460230 revision)

Hello.

(In reply to Ting-Wei Lan from comment #3)
> I am not going to reroll patches in patch-gio_filemonitor just to pass
> 'make checkpatch' unless it is strictly required.
There is not only `make checkpatch` error:=20
-8<--
% make checkpatch
<..>
=3D=3D=3D>  Patching for glib-2.50.3_2,1
=3D=3D=3D>  Applying FreeBSD patches for glib-2.50.3_2,1
2 out of 2 hunks failed while patching gio/kqueue/kqueue-helper.c
=3D> FreeBSD patch patch-gio_filemonitor failed to apply cleanly.
*** Error code 1

Stop.
<..>
-->8-

because of three patches for gio/kqueue/kqueue-helper.c:
-8<--
cat files/patch-gio_filemonitor | grep "^+++ gio/kqueue/kqueue-helper.c" | =
wc
-l | tr -d ' '
3
-->8-

But also a `make check-plist` errors:
-8<--
% make check-plist
<..>
=3D=3D=3D=3D> Running Q/A tests (stage-qa)
=3D=3D=3D=3D> Checking for pkg-plist issues (check-plist)
=3D=3D=3D> Parsing plist
=3D=3D=3D> Checking for items in STAGEDIR missing from pkg-plist
Error: Orphaned: lib/charset.alias
Error: Orphaned: share/doc/gio/GAction.html
<..>
Error: Orphaned: share/doc/gobject/up.png
=3D=3D=3D> Checking for items in pkg-plist which are not in STAGEDIR
=3D=3D=3D> Error: Plist issues found.
*** Error code 1

Stop.
<..>
-->8-

because of USES+=3Dautoreconf usage, which requires to patch configure.ac i=
nstead
of configure, Makefile.am instead of Makefile.in, etc.

I fixed these issues in attached patch.

The files/patch-gio_filemonitor patch was recreated with using known commits
(based on attachment #191837):
-8<--
% cat files/patch-gio_filemonitor | grep ^commit
commit e305fe971e4647d971428a772b7290b9c308a96f
commit 76072a2dde4a4acc8be8d3c47efbc6811ebe0c1e
commit aa39a0557c679fc345b0ba72a87c33152eb8ebcd
commit ba4a9538e14e8ba0ea037cab5f4b23aa47272a4c
-->8-

from https://github.com/GNOME/glib in some user's directory:
-8<--
% git clone https://github.com/GNOME/glib.git
<..>
% git clone glib glib-devel
<..>
% cd glib-devel
% git checkout -b devel 2.50.3
<..>
% git cherry-pick e305fe971e4647d971428a772b7290b9c308a96f
76072a2dde4a4acc8be8d3c47efbc6811ebe0c1e
<..>
% git cherry-pick aa39a0557c679fc345b0ba72a87c33152eb8ebcd
<..>
% git diff
* Unmerged path gio/kqueue/meson.build
% git rm gio/kqueue/meson.build
<..>
% git commit --no-edit
<..>
% git cherry-pick ba4a9538e14e8ba0ea037cab5f4b23aa47272a4c
<..>
% git show -s --format=3D"# %s%n# https://github.com/GNOME/glib/commit/%H"
e305fe971e4647d971428a772b7290b9c308a96f
76072a2dde4a4acc8be8d3c47efbc6811ebe0c1e
aa39a0557c679fc345b0ba72a87c33152eb8ebcd
ba4a9538e14e8ba0ea037cab5f4b23aa47272a4c > ../patch-gio_filemonitor
% echo >> ../patch-gio_filemonitor
% git diff --no-color --no-prefix 2.50.3 HEAD | sed -e '/^index/d ;
/^deleted/d' >> ../patch-gio_filemonitor
-->8-

Remove local glib-devel repository (including glib directory, if needed):
% cd .. && rm -rf glib-devel

I think, there is no much point to include removal of
gio/kqueue/gkqueuefilemonitor.h, gio/kqueue/kqueue-thread.c,
gio/kqueue/kqueue-thread.h, gio/kqueue/kqueue-sub.c, gio/kqueue/kqueue-sub.=
h,
etc. files to patch-gio_filemonitor patch, because changes for
gio/kqueue/Makefile.am removes them from build. So, I removed such files wi=
th
"+++ /dev/null" from patch-gio_filemonitor patch manually.

Next step was to move patch-gio_filemonitor to
<..>/glib20/files/patch-gio_filemonitor of the port and recreate patch with
`make makepatch` command. I created a backup of files directory and removed=
 all
patches from files directory, except patch-gio_filemonitor, then:
-8<--
% make extract
<..>
% find work -type f -iname "*.orig" -delete
% make patch
<..>
% make makepatch
<..>
% make clean
<..>
-->8-
and copy/move generated files/patch-gio_filemonitor to backup files directo=
ry,
then replace files directory in the port with backup files directory.

The attached patch was created with using following command:
% svn diff --ignore-properties > ../glib20.diff



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-226920-6497-gJoGleYaib>