• Home
  • Line#
  • Scopes#
  • Navigate#
  • Raw
  • Download
1Name:           glib2
2Version:        2.72.2
3Release:        14
4Summary:        The core library that forms the basis for projects such as GTK+ and GNOME
5License:        LGPLv2+
6URL:            http://www.gtk.org
7Source0:        https://download.gnome.org/sources/glib/2.71/glib-%{version}.tar.xz
8
9Patch6000:      backport-add-version-macros-for-GLib-2.74.patch
10Patch6001:      backport-gtype-Add-G_TYPE_FLAG_NONE.patch
11Patch6002:      backport-gioenums-Add-G_TLS_CERTIFICATE_FLAGS_NONE.patch
12Patch6003:      backport-gtestutils-Add-G_TEST_SUBPROCESS_DEFAULT.patch
13Patch6004:      backport-gsignal-Add-G_CONNECT_DEFAULT.patch
14Patch6005:      backport-giomodule-test-Dont-pass-a-magic-number-to-g_test_trap_subprocess.patch
15Patch6006:      backport-giochannel-Add-G_IO_FLAG_NONE.patch
16Patch6007:      backport-gmarkup-Add-G_MARKUP_PARSE_FLAGS_NONE.patch
17Patch6008:      backport-gregex-Add-G_REGEX_DEFAULT-G_REGEX_MATCH_DEFAULT.patch
18Patch6009:      backport-replace-pcre1-with-pcre2.patch
19Patch6010:      backport-gregex-format-specifier-for-localized-error-message.patch
20Patch6011:      backport-gregex-ensure-we-translate-the-errcode.patch
21Patch6012:      backport-gregex-Free-match-info-if-offset-matching-recalc-failed.patch
22Patch6013:      backport-gregex-use-G_REGEX_OPTIMIZE-flag-to-enable-JIT-compilation.patch
23Patch6014:      backport-gregex-use-g_debug-instead-of-g_warning-in-case-JIT-is-not-available.patch
24Patch6015:      backport-gregex-do-not-set-match-and-recursion-limits-on-match-context.patch
25Patch6016:      backport-gregex-add-original-test-case.patch
26Patch6017:      backport-gregex-use-correct-size-for-pcre2_pattern_info.patch
27Patch6018:      backport-regex-Add-debug-strings-for-compile-and-match-option-flags.patch
28Patch6019:      backport-regex-Actually-check-for-match-options-changes.patch
29Patch6020:      backport-regex-Do-not-mix-PCRE2-Compile-Match-Newline-and-BSR-flags.patch
30Patch6021:      backport-regex-Add-test-for-gtksourceview-regression.patch
31Patch6022:      backport-gregex-Mark-g_match_info_get_regex-as-transfer-none.patch
32Patch6023:      backport-gregex-Do-not-try-access-the-undefined-match-offsets.patch
33Patch6024:      backport-gregex-Fix-a-potential-PCRE2-code-leak-on-reallocation-failures.patch
34Patch6025:      backport-regex-Use-size-types-more-in-line-with-PCRE2-returned-values.patch
35Patch6026:      backport-gregex-Handle-the-case-we-need-to-re-allocate-the-match-data.patch
36Patch6027:      backport-gregex-Avoid-re-allocating-if-we-have-no-size-change.patch
37Patch6028:      backport-regex-Compute-the-offsets-size-based-on-match-results.patch
38Patch6029:      backport-regex-Avoid-allocating-offsets-until-we-ve-a-match.patch
39Patch6030:      backport-regex-Handle-JIT-errors-more-explicitly.patch
40Patch6031:      backport-regex-Make-possible-to-test-replacements-with-options.patch
41Patch6032:      backport-regex-Do-not-use-JIT-when-using-unsupported-match-options.patch
42Patch6033:      backport-regex-Perform-more-tests-both-with-and-without-optimizations.patch
43Patch6034:      backport-gsocketclient-Fix-still-reachable-references-to-cancellables.patch
44Patch6035:      backport-Add-lock-in-_g_get_unix_mount_points-around-fsent-functions.patch
45Patch6036:      backport-g_get_unix_mount_points-reduce-syscalls-inside-loop.patch
46Patch6037:      backport-xdgmime-fix-double-free.patch
47Patch6038:      backport-Implement-GFileIface.set_display_name-for-resource-files.patch
48Patch6039:      backport-tests-dbus-appinfo-Add-test-case-for-flatpak-opening-an-invalid-file.patch
49Patch6040:      backport-documentportal-Fix-small-leak-in-add_documents-with-empty-URI-list.patch
50Patch6041:      backport-gio-tests-gdbus-proxy-threads-Unref-GVariant-s-that-we-own.patch
51Patch6042:      backport-gio-tests-gdbus-peer-Unref-cached-property-GVariant-value.patch
52Patch6043:      backport-gdesktopappinfo-Unref-the-GDBus-call-results.patch
53Patch6044:      backport-Handling-collision-between-standard-i-o-file-descriptors-and-newly-created-ones.patch
54Patch6045:      backport-glocalfileoutputstream-Do-not-double-close-an-fd-on-unlink-error.patch
55Patch6046:      backport-gregex-Use-pcre2-error-messages-if-we-dont-provide-a-specific-one.patch
56Patch6047:      backport-regex-Use-critical-messages-if-an-unexpected-NULL-parameter-is-provided.patch
57Patch6048:      backport-gregex-Allow-G_REGEX_JAVASCRIPT_COMPAT-in-compile-mask-for-g_regex_new.patch
58Patch6049:      backport-gregex-Drop-explanation-G_REGEX_JAVASCRIPT_COMPAT.patch
59Patch6050:      backport-gregex-Remove-an-unreachable-return-statement.patch
60Patch6051:      backport-gmessages-Add-missing-trailing-newline-in-fallback-log-hander.patch
61Patch6052:      backport-Revert-Handling-collision-between-standard-i-o-filedescriptors-and-newly-created-ones.patch
62patch6053:      backport-gdbusinterfaceskeleton-Fix-a-use-after-free-of-a-GDBusMethodInvocation.patch
63patch6054:      backport-CVE-2023-24593_CVE-2023-25180-1.patch
64patch6055:      backport-CVE-2023-24593_CVE-2023-25180-2.patch
65patch6056:      backport-gdbusconnection-Fix-double-unref-on-timeout-cancel-sending-a-message.patch
66patch6057:      backport-add-g_free_sized-and-g_aligned_free_sized.patch
67patch6058:      backport-gkeyfile-Fix-group-comment-management.patch
68patch6059:      backport-gkeyfile-Ensure-we-don-t-add-extra-blank-line-above-new-group.patch
69patch6060:      backport-gkeyfile-Skip-group-comment-when-adding-a-new-key-to-a-group.patch
70patch6061:      backport-glocalfilemonitor-Avoid-file-monitor-destruction-from-event-thread.patch
71patch6062:      backport-glocalfilemonitor-Skip-event-handling-if-the-source-has-been-destroyed.patch
72patch6063:      backport-tests-Add-a-test-for-GFileMonitor-deadlocks.patch
73
74Patch6064:      backport-gregex-set-default-max-stack-size-for-PCRE2-JIT-compiler-to-512KiB.patch
75Patch6065:      backport-gregex-if-JIT-stack-limit-is-reached-fall-back-to-interpretive-matching.patch
76Patch6066:      backport-Make-sure-the-GTask-is-freed-on-a-graceful-disconnect.patch
77Patch6067:      backport-gmessages-fix-dropping-irrelevant-log-domains.patch
78Patch6068:      backport-gutils-Fix-an-unlikely-minor-leak-in-g_build_user_data_dir.patch
79Patch6069:      backport-openharmony-adapt.patch
80Patch6070:      backport-openharmony-dummy.patch
81
82
83BuildRequires:  chrpath gcc gcc-c++ gettext perl-interpreter
84BUildRequires:  glibc-devel libattr-devel libselinux-devel meson
85BuildRequires:  systemtap-sdt-devel pkgconfig(libelf) pkgconfig(libffi)
86BuildRequires:  pkgconfig(libpcre2-8) pkgconfig(mount) pkgconfig(zlib)
87BuildRequires:  python3-devel
88%ifnarch i686
89BuildRequires:  desktop-file-utils shared-mime-info gtk-doc
90%endif
91
92Provides:  %{name}-fam = %{version}-%{release}
93Obsoletes: %{name}-fam < %{version}-%{release}
94
95Recommends:     shared-mime-info
96Conflicts:      gcr < 3.28.1
97
98Provides: bundled(gnulib)
99Provides: bundled(gvdb)
100Provides: bundled(libcharset)
101Provides: bundled(xdgmime)
102
103%description
104GLib is a bundle of three (formerly five) low-level system libraries
105written in C and developed mainly by GNOME. GLib's code was separated
106from GTK, so it can be used by software other than GNOME and has been
107developed in parallel ever since.
108
109%package        devel
110Summary:        Development for the GLib library
111Requires:       %{name} = %{version}-%{release}
112Requires:       gdb-headless
113
114%description    devel
115Development for the GLib library.
116
117%package        static
118Summary:        glib static
119Requires:       pcre2-static
120Requires:       %{name}-devel = %{version}-%{release}
121Provides:       %{name}-static = %{version}-%{release}
122Obsoletes:      %{name}-static < %{version}-%{release}
123
124%description    static
125The %{name}-static subpackage contains libraries for %{name}.
126
127%package        tests
128Summary:        Tests for the glib2 package
129Requires:       %{name}-devel = %{version}-%{release}
130Provides:       %{name}-tests = %{version}-%{release}
131Obsoletes:      %{name}-tests < %{version}-%{release}
132
133%description    tests
134The glib2-tests package contains tests that can be used to verify
135the functionality of the installed package.
136
137%ifnarch i686
138%package        help
139Summary:        help document for the glib2 package
140Buildarch:      noarch
141Provides:       %{name}-doc = %{version}-%{release}
142Obsoletes:      %{name}-doc < %{version}-%{release}
143
144%description    help
145help document for the glib2 package.
146%endif
147
148%prep
149%autosetup -n glib-%{version} -p1
150
151%build
152
153%meson --default-library=both  -Ddtrace=true  \
154%ifnarch i686
155    -Dman=true -Dgtk_doc=true \
156%else
157    -Dman=false -Dgtk_doc=false \
158%endif
159    -Dsystemtap=true -Dinstalled_tests=true \
160    -Dglib_debug=disabled -Dsysprof=disabled
161
162%meson_build
163find . -name *.dtrace-temp.c -exec rm -f {} \;
164
165%check
166%meson_test
167
168%install
169%meson_install
170%global py_reproducible_pyc_path %{buildroot}%{_datadir}
171touch -r gio/gdbus-2.0/codegen/config.py.in %{buildroot}%{_datadir}/glib-2.0/codegen/*.py
172chrpath --delete %{buildroot}%{_libdir}/*.so
173
174export PYTHONHASHSEED=0
175%py_byte_compile %{__python3} %{buildroot}%{_datadir}
176
177mv %{buildroot}%{_bindir}/gio-querymodules %{buildroot}%{_bindir}/gio-querymodules-%{__isa_bits}
178sed -i -e "/^gio_querymodules=/s/gio-querymodules/gio-querymodules-%{__isa_bits}/" %{buildroot}%{_libdir}/pkgconfig/gio-2.0.pc
179mkdir -p %{buildroot}%{_libdir}/gio/modules
180touch %{buildroot}%{_libdir}/gio/modules/giomodule.cache
181
182# remove pycache
183rm -rf %{buildroot}/%{_datadir}/gdb/auto-load/%{_libdir}/__pycache__
184rm -rf %{buildroot}/%{_datadir}/glib-2.0/codegen/__pycache__
185rm -rf %{buildroot}/%{_datadir}/glib-2.0/gdb/__pycache__
186
187# remove rpath
188chrpath -d %{buildroot}%{_libexecdir}/installed-tests/glib/gdbus-peer
189
190%find_lang glib20
191
192%transfiletriggerin -- %{_libdir}/gio/modules
193gio-querymodules-%{__isa_bits} %{_libdir}/gio/modules &> /dev/null || :
194
195%transfiletriggerpostun -- %{_libdir}/gio/modules
196gio-querymodules-%{__isa_bits} %{_libdir}/gio/modules &> /dev/null || :
197
198%transfiletriggerin -- %{_datadir}/glib-2.0/schemas
199glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
200
201%transfiletriggerpostun -- %{_datadir}/glib-2.0/schemas
202glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
203
204%files -f glib20.lang
205%defattr(-,root,root)
206%doc AUTHORS NEWS README
207%license COPYING
208%{_libdir}/*.so.*
209%dir %{_libdir}/gio
210%ghost %{_libdir}/gio/modules/giomodule.cache
211
212%dir %{_datadir}/glib-2.0
213%dir %{_datadir}/bash-completion
214%{_datadir}/bash-completion/completions/gapplication
215%{_datadir}/bash-completion/completions/gdbus
216%{_datadir}/bash-completion/completions/gio
217%{_datadir}/bash-completion/completions/gsettings
218
219%{_bindir}/gio
220%{_bindir}/gio-querymodules*
221%{_bindir}/glib-compile-schemas
222%{_bindir}/gsettings
223%{_bindir}/gdbus
224%{_bindir}/gapplication
225
226%files devel
227%{_libdir}/lib*.so
228%{_libdir}/glib-2.0
229%{_libdir}/pkgconfig/*
230%{_includedir}/*
231
232%{_datadir}/aclocal/*
233%{_datadir}/glib-2.0/*
234%{_datadir}/bash-completion/completions/gresource
235%{_datadir}/gdb/auto-load/%{_libdir}/*-gdb.py
236%{_datadir}/gettext/
237%{_datadir}/systemtap/
238
239%{_bindir}/glib-genmarshal
240%{_bindir}/glib-gettextize
241%{_bindir}/glib-mkenums
242%{_bindir}/gobject-query
243%{_bindir}/gtester
244%{_bindir}/gdbus-codegen
245%{_bindir}/glib-compile-resources
246%{_bindir}/gresource
247%attr (0755, root, root) %{_bindir}/gtester-report
248
249%files static
250%{_libdir}/*.a
251
252%files tests
253%{_libexecdir}/installed-tests
254%exclude %{_libexecdir}/installed-tests/glib/cert-tests
255%exclude %{_libexecdir}/installed-tests/glib/tls-certificate
256
257%{_datadir}/installed-tests
258%exclude %{_datadir}/installed-tests/glib/tls-certificate.test
259
260%ifnarch i686
261%files help
262%defattr(-,root,root)
263%{_mandir}/man1/*
264%doc %{_datadir}/gtk-doc/html/*
265%endif
266
267%changelog
268* Mon Feb 19 2024 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-14
269- disable sysprof
270
271* Thu Jan 11 2024 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-13
272- fix pcre2 error , memory leak and log domains error
273
274* Mon Sep 25 2023 liningjie <liningjie@xfusion.com> - 2.72.2-12
275- glocalfilemonitor: Avoid file monitor destruction from event thread
276
277* Sat Aug 19 2023 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-11
278- fix double unref and fix group comment management
279
280* Sat Apr 1 2023 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-10
281- fix CVE-2023-24593 and CVE-2023-25180
282
283* Tue Mar 14 2023 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-9
284- fix a use-after-free of GDBusMethodInvocation
285
286* Thu Feb 16 2023 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-8
287- backport some patches from community
288
289* Tue Jan 10 2023 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-7
290- adjust pcre2 requires
291
292* Tue Dec 27 2022 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-6
293- fix some pcre2 error
294
295* Wed Nov 9 2022 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-5
296- separate the test and static package from devel package
297
298* Sat Oct 15 2022 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-4
299- backport some patches from community
300
301* Mon Sep 5 2022 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-3
302- replace pcre1 with pcre2
303
304* Sat Jun 18 2022 zhujunhao <zhujunhao11@huawei.com> - 2.72.2-2
305- remove gnutls require
306
307* Mon Jun 6 2022 lin zhang <lin.zhang@turbolinux.com.cn> - 2.72.2-1
308- Update to 2.72.2
309
310* Thu Jun 2 2022 lin zhang <lin.zhang@turbolinux.com.cn> - 2.72.0-1
311- Update to 2.72.0
312
313* Thu Apr 28 2022 yanan <yanan@huawei.com> - 2.68.1-12
314- Type:bugfix
315- DESC:fix issues found by svace static code analyzer
316       fix segfault,memory leak,EOF,arguments leak
317
318* Wed Apr 6 2022 hanhui <hanhui15@h-partners.com> - 2.68.1-11
319- DESC:fix gfileenumerator/gdbusobjectmanagerservice/gdbusauth of memory leak
320
321* Fri Mar 11 2022 weijin deng <weijin.deng@turbolinux.com.cn> - 2.68.1-10
322- Type:bugfix
323- DESC:solve glib2 enable "glib2_debug" option causes gnome-calendar reopen
324       coredumped in gtk3's _gtk_widget_get_toplevel()
325
326* Wed Mar 9 2022 yangcheng<yangcheng87@h-partners.com> - 2.68.1-9
327- Type:bugfix
328- Id:NA
329- SUG:NA
330- DESC:remove gdbus-peer rpath compile option
331
332* Wed Mar 2 2022 hanhui<hanhui15@h-partners.com> - 2.68.1-8
333- Type:bugfix
334- Id:NA
335- SUG:NA
336- DESC:custom installation depend on sysprof
337
338* Sat Feb 19 2022 wangkerong<wangkerong@h-partners.com> - 2.68.1-7
339- Type:bugfix
340- Id:NA
341- SUG:NA
342- DESC:add i686 optionsfix build failure on i686
343
344* Sun Nov 14 2021 fengtao<fengtao40@huawei.com> - 2.68.1-6
345- Type:bugfix
346- Id:NA
347- SUG:NA
348- DESC:add require gdb-headless for devel
349
350
351* Tue Sep 14 2021 yangcheng<yangcheng87@huawei.com> - 2.68.1-5
352- Type:bugfix
353- Id:NA
354- SUG:NA
355- DESC:Drop dependebcy on gamin
356
357* Tue Sep 7 2021 fengtao<fengtao40@huawei.com> - 2.68.1-4
358- Type:bugfix
359- Id:NA
360- SUG:NA
361- DESC:enable all tests
362
363* Sat Aug 14 2021 liuyumeng<liuyumeng5@huawei.com> - 2.68.1-3
364- Type:bugfix
365- Id:NA
366- SUG:NA
367- DESC:fix a memory leak
368
369* Tue Aug 10 2021 liuyumeng<liuyumeng5@huawei.com> - 2.68.1-2
370- Type:bugfix
371- Id:NA
372- SUG:NA
373- DESC:fix the third parameter of clise-range
374
375* Wed Jun 30 2021 weijin deng <weijin.deng@turbolinux.com.cn> - 2.68.1-1
376- Upgrade to 2.68.1 because gnome-builder and more new gnome applications
377  need function g_memdup2 which needs glib22.67.3 to instead of g_memdup
378
379* Wed May 19 2021 weijin deng <weijin.deng@turbolinux.com.cn> - 2.66.8-1
380- Upgrade to 2.66.8
381- Update Version, Release
382- Delete patch files, delete gio-launch-desktop(not exist in 2.66.8)
383- Correct date, make it match weekday
384
385* Tue Apr 13 2021 hanhui<hanhui15@huawei.com> - 2.62.5-5
386- Type:cve
387- Id:CVE-2021-28153
388- SUG:NA
389- DESC:fix CVE-2021-28153
390
391* Sat Mar 6 2021 hanhui<hanhui15@huawei.com> - 2.62.5-4
392- Type:cve
393- Id:CVE-2021-27219
394- SUG:NA
395- DESC:fix CVE-2021-27219
396
397* Mon Mar 1 2021 jinzhimin<jinzhimin2@huawei.com> - 2.62.5-3
398- Type:cve
399- Id:CVE-2021-27218
400- SUG:NA
401- DESC:fix CVE-2021-27218
402
403* Sat Feb 27 2021 zhujunhao<zhujunhao8@huawei.com> - 2.62.5-2
404- Type:cve
405- Id:CVE-2020-35457
406- SUG:NA
407- DESC:fix CVE-2020-35457
408
409* Tue Jul 21 2020 hanhui<hanhui15@huawei.com> - 2.62.5-1
410- Update to 2.62.5
411
412* Mon Mar 2 2020 hexiujun<hexiujun1@huawei.com> - 2.62.1-4
413- Type:bugfix
414- Id:NA
415- SUG:NA
416- DESC:fix accidentally delete temp file within dtrace
417
418* Fri Feb 28 2020 zhangrui <zhangrui182@huawei.com> - 2.62.1-3
419- Type:bugfix
420- Id:NA
421- SUG:NA
422- DESC:remove dist in spec
423
424* Mon Feb 24 2020 openEuler Buildteam <buildteam@openeuler.org> - 2.62.1-2
425- Type:bugfix
426- Id:NA
427- SUG:NA
428- DESC:exclude some unnecessary files
429
430* Thu Jan 9 2020 openEuler Buildteam <buildteam@openeuler.org> - 2.62.1-1
431- update to 2.62.1
432
433* Tue Dec 24 2019 openEuler Buildteam <buildteam@openeuler.org> - 2.58.1-6
434- change the path of files
435
436* Sat Dec 21 2019 openEuler Buildteam <buildteam@openeuler.org> - 2.58.1-5
437- Type:bugfix
438- Id:NA
439- SUG:NA
440- DESC:Fix a leaking GRemoteActionGroup member
441
442* Sat Nov 23 2019 openEuler Buildteam <buildteam@openeuler.org> - 2.58.1-4
443- Type:bugfix
444- Id:NA
445- SUG:NA
446- DESC:add the libxslt in buildrequires
447
448* Wed Sep 25 2019 huzunhao<huzunhao2@huawei.com> - 2.58.1-3
449- Type:cves
450- ID:CVE-2019-12450 CVE-2019-13012
451- SUG:restart
452- DESC:fix CVE-2019-12450 CVE-2019-13012
453
454* Thu Sep 19 2019 Lijin Yang <yanglijin@huawei.com> - 2.58.1-2
455- Package init
456