• 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
81Patch6071:      backport-CVE-2024-34397.patch
82
83
84BuildRequires:  chrpath gcc gcc-c++ gettext perl-interpreter
85BUildRequires:  glibc-devel libattr-devel libselinux-devel meson
86BuildRequires:  systemtap-sdt-devel pkgconfig(libelf) pkgconfig(libffi)
87BuildRequires:  pkgconfig(libpcre2-8) pkgconfig(mount) pkgconfig(zlib)
88BuildRequires:  python3-devel
89%ifnarch i686
90BuildRequires:  desktop-file-utils shared-mime-info gtk-doc
91%endif
92
93Provides:  %{name}-fam = %{version}-%{release}
94Obsoletes: %{name}-fam < %{version}-%{release}
95
96Recommends:     shared-mime-info
97Conflicts:      gcr < 3.28.1
98
99Provides: bundled(gnulib)
100Provides: bundled(gvdb)
101Provides: bundled(libcharset)
102Provides: bundled(xdgmime)
103
104%description
105GLib is a bundle of three (formerly five) low-level system libraries
106written in C and developed mainly by GNOME. GLib's code was separated
107from GTK, so it can be used by software other than GNOME and has been
108developed in parallel ever since.
109
110%package        devel
111Summary:        Development for the GLib library
112Requires:       %{name} = %{version}-%{release}
113Requires:       gdb-headless
114
115%description    devel
116Development for the GLib library.
117
118%package        static
119Summary:        glib static
120Requires:       pcre2-static
121Requires:       %{name}-devel = %{version}-%{release}
122Provides:       %{name}-static = %{version}-%{release}
123Obsoletes:      %{name}-static < %{version}-%{release}
124
125%description    static
126The %{name}-static subpackage contains libraries for %{name}.
127
128%package        tests
129Summary:        Tests for the glib2 package
130Requires:       %{name}-devel = %{version}-%{release}
131Provides:       %{name}-tests = %{version}-%{release}
132Obsoletes:      %{name}-tests < %{version}-%{release}
133
134%description    tests
135The glib2-tests package contains tests that can be used to verify
136the functionality of the installed package.
137
138%ifnarch i686
139%package        help
140Summary:        help document for the glib2 package
141Buildarch:      noarch
142Provides:       %{name}-doc = %{version}-%{release}
143Obsoletes:      %{name}-doc < %{version}-%{release}
144
145%description    help
146help document for the glib2 package.
147%endif
148
149%prep
150%autosetup -n glib-%{version} -p1
151
152%build
153
154%meson --default-library=both  -Ddtrace=true  \
155%ifnarch i686
156    -Dman=true -Dgtk_doc=true \
157%else
158    -Dman=false -Dgtk_doc=false \
159%endif
160    -Dsystemtap=true -Dinstalled_tests=true \
161    -Dglib_debug=disabled -Dsysprof=disabled
162
163%meson_build
164find . -name *.dtrace-temp.c -exec rm -f {} \;
165
166%check
167%meson_test
168
169%install
170%meson_install
171%global py_reproducible_pyc_path %{buildroot}%{_datadir}
172touch -r gio/gdbus-2.0/codegen/config.py.in %{buildroot}%{_datadir}/glib-2.0/codegen/*.py
173chrpath --delete %{buildroot}%{_libdir}/*.so
174
175export PYTHONHASHSEED=0
176%py_byte_compile %{__python3} %{buildroot}%{_datadir}
177
178mv %{buildroot}%{_bindir}/gio-querymodules %{buildroot}%{_bindir}/gio-querymodules-%{__isa_bits}
179sed -i -e "/^gio_querymodules=/s/gio-querymodules/gio-querymodules-%{__isa_bits}/" %{buildroot}%{_libdir}/pkgconfig/gio-2.0.pc
180mkdir -p %{buildroot}%{_libdir}/gio/modules
181touch %{buildroot}%{_libdir}/gio/modules/giomodule.cache
182
183# remove pycache
184rm -rf %{buildroot}/%{_datadir}/gdb/auto-load/%{_libdir}/__pycache__
185rm -rf %{buildroot}/%{_datadir}/glib-2.0/codegen/__pycache__
186rm -rf %{buildroot}/%{_datadir}/glib-2.0/gdb/__pycache__
187
188# remove rpath
189chrpath -d %{buildroot}%{_libexecdir}/installed-tests/glib/gdbus-peer
190
191%find_lang glib20
192
193%transfiletriggerin -- %{_libdir}/gio/modules
194gio-querymodules-%{__isa_bits} %{_libdir}/gio/modules &> /dev/null || :
195
196%transfiletriggerpostun -- %{_libdir}/gio/modules
197gio-querymodules-%{__isa_bits} %{_libdir}/gio/modules &> /dev/null || :
198
199%transfiletriggerin -- %{_datadir}/glib-2.0/schemas
200glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
201
202%transfiletriggerpostun -- %{_datadir}/glib-2.0/schemas
203glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
204
205%files -f glib20.lang
206%defattr(-,root,root)
207%doc AUTHORS NEWS README
208%license COPYING
209%{_libdir}/*.so.*
210%dir %{_libdir}/gio
211%ghost %{_libdir}/gio/modules/giomodule.cache
212
213%dir %{_datadir}/glib-2.0
214%dir %{_datadir}/bash-completion
215%{_datadir}/bash-completion/completions/gapplication
216%{_datadir}/bash-completion/completions/gdbus
217%{_datadir}/bash-completion/completions/gio
218%{_datadir}/bash-completion/completions/gsettings
219
220%{_bindir}/gio
221%{_bindir}/gio-querymodules*
222%{_bindir}/glib-compile-schemas
223%{_bindir}/gsettings
224%{_bindir}/gdbus
225%{_bindir}/gapplication
226
227%files devel
228%{_libdir}/lib*.so
229%{_libdir}/glib-2.0
230%{_libdir}/pkgconfig/*
231%{_includedir}/*
232
233%{_datadir}/aclocal/*
234%{_datadir}/glib-2.0/*
235%{_datadir}/bash-completion/completions/gresource
236%{_datadir}/gdb/auto-load/%{_libdir}/*-gdb.py
237%{_datadir}/gettext/
238%{_datadir}/systemtap/
239
240%{_bindir}/glib-genmarshal
241%{_bindir}/glib-gettextize
242%{_bindir}/glib-mkenums
243%{_bindir}/gobject-query
244%{_bindir}/gtester
245%{_bindir}/gdbus-codegen
246%{_bindir}/glib-compile-resources
247%{_bindir}/gresource
248%attr (0755, root, root) %{_bindir}/gtester-report
249
250%files static
251%{_libdir}/*.a
252
253%files tests
254%{_libexecdir}/installed-tests
255%exclude %{_libexecdir}/installed-tests/glib/cert-tests
256%exclude %{_libexecdir}/installed-tests/glib/tls-certificate
257
258%{_datadir}/installed-tests
259%exclude %{_datadir}/installed-tests/glib/tls-certificate.test
260
261%ifnarch i686
262%files help
263%defattr(-,root,root)
264%{_mandir}/man1/*
265%doc %{_datadir}/gtk-doc/html/*
266%endif
267
268%changelog
269* Mon Feb 19 2024 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-14
270- disable sysprof
271
272* Thu Jan 11 2024 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-13
273- fix pcre2 error , memory leak and log domains error
274
275* Mon Sep 25 2023 liningjie <liningjie@xfusion.com> - 2.72.2-12
276- glocalfilemonitor: Avoid file monitor destruction from event thread
277
278* Sat Aug 19 2023 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-11
279- fix double unref and fix group comment management
280
281* Sat Apr 1 2023 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-10
282- fix CVE-2023-24593 and CVE-2023-25180
283
284* Tue Mar 14 2023 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-9
285- fix a use-after-free of GDBusMethodInvocation
286
287* Thu Feb 16 2023 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-8
288- backport some patches from community
289
290* Tue Jan 10 2023 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-7
291- adjust pcre2 requires
292
293* Tue Dec 27 2022 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-6
294- fix some pcre2 error
295
296* Wed Nov 9 2022 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-5
297- separate the test and static package from devel package
298
299* Sat Oct 15 2022 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-4
300- backport some patches from community
301
302* Mon Sep 5 2022 hanhuihui <hanhuihui5@huawei.com> - 2.72.2-3
303- replace pcre1 with pcre2
304
305* Sat Jun 18 2022 zhujunhao <zhujunhao11@huawei.com> - 2.72.2-2
306- remove gnutls require
307
308* Mon Jun 6 2022 lin zhang <lin.zhang@turbolinux.com.cn> - 2.72.2-1
309- Update to 2.72.2
310
311* Thu Jun 2 2022 lin zhang <lin.zhang@turbolinux.com.cn> - 2.72.0-1
312- Update to 2.72.0
313
314* Thu Apr 28 2022 yanan <yanan@huawei.com> - 2.68.1-12
315- Type:bugfix
316- DESC:fix issues found by svace static code analyzer
317       fix segfault,memory leak,EOF,arguments leak
318
319* Wed Apr 6 2022 hanhui <hanhui15@h-partners.com> - 2.68.1-11
320- DESC:fix gfileenumerator/gdbusobjectmanagerservice/gdbusauth of memory leak
321
322* Fri Mar 11 2022 weijin deng <weijin.deng@turbolinux.com.cn> - 2.68.1-10
323- Type:bugfix
324- DESC:solve glib2 enable "glib2_debug" option causes gnome-calendar reopen
325       coredumped in gtk3's _gtk_widget_get_toplevel()
326
327* Wed Mar 9 2022 yangcheng<yangcheng87@h-partners.com> - 2.68.1-9
328- Type:bugfix
329- Id:NA
330- SUG:NA
331- DESC:remove gdbus-peer rpath compile option
332
333* Wed Mar 2 2022 hanhui<hanhui15@h-partners.com> - 2.68.1-8
334- Type:bugfix
335- Id:NA
336- SUG:NA
337- DESC:custom installation depend on sysprof
338
339* Sat Feb 19 2022 wangkerong<wangkerong@h-partners.com> - 2.68.1-7
340- Type:bugfix
341- Id:NA
342- SUG:NA
343- DESC:add i686 optionsfix build failure on i686
344
345* Sun Nov 14 2021 fengtao<fengtao40@huawei.com> - 2.68.1-6
346- Type:bugfix
347- Id:NA
348- SUG:NA
349- DESC:add require gdb-headless for devel
350
351
352* Tue Sep 14 2021 yangcheng<yangcheng87@huawei.com> - 2.68.1-5
353- Type:bugfix
354- Id:NA
355- SUG:NA
356- DESC:Drop dependebcy on gamin
357
358* Tue Sep 7 2021 fengtao<fengtao40@huawei.com> - 2.68.1-4
359- Type:bugfix
360- Id:NA
361- SUG:NA
362- DESC:enable all tests
363
364* Sat Aug 14 2021 liuyumeng<liuyumeng5@huawei.com> - 2.68.1-3
365- Type:bugfix
366- Id:NA
367- SUG:NA
368- DESC:fix a memory leak
369
370* Tue Aug 10 2021 liuyumeng<liuyumeng5@huawei.com> - 2.68.1-2
371- Type:bugfix
372- Id:NA
373- SUG:NA
374- DESC:fix the third parameter of clise-range
375
376* Wed Jun 30 2021 weijin deng <weijin.deng@turbolinux.com.cn> - 2.68.1-1
377- Upgrade to 2.68.1 because gnome-builder and more new gnome applications
378  need function g_memdup2 which needs glib22.67.3 to instead of g_memdup
379
380* Wed May 19 2021 weijin deng <weijin.deng@turbolinux.com.cn> - 2.66.8-1
381- Upgrade to 2.66.8
382- Update Version, Release
383- Delete patch files, delete gio-launch-desktop(not exist in 2.66.8)
384- Correct date, make it match weekday
385
386* Tue Apr 13 2021 hanhui<hanhui15@huawei.com> - 2.62.5-5
387- Type:cve
388- Id:CVE-2021-28153
389- SUG:NA
390- DESC:fix CVE-2021-28153
391
392* Sat Mar 6 2021 hanhui<hanhui15@huawei.com> - 2.62.5-4
393- Type:cve
394- Id:CVE-2021-27219
395- SUG:NA
396- DESC:fix CVE-2021-27219
397
398* Mon Mar 1 2021 jinzhimin<jinzhimin2@huawei.com> - 2.62.5-3
399- Type:cve
400- Id:CVE-2021-27218
401- SUG:NA
402- DESC:fix CVE-2021-27218
403
404* Sat Feb 27 2021 zhujunhao<zhujunhao8@huawei.com> - 2.62.5-2
405- Type:cve
406- Id:CVE-2020-35457
407- SUG:NA
408- DESC:fix CVE-2020-35457
409
410* Tue Jul 21 2020 hanhui<hanhui15@huawei.com> - 2.62.5-1
411- Update to 2.62.5
412
413* Mon Mar 2 2020 hexiujun<hexiujun1@huawei.com> - 2.62.1-4
414- Type:bugfix
415- Id:NA
416- SUG:NA
417- DESC:fix accidentally delete temp file within dtrace
418
419* Fri Feb 28 2020 zhangrui <zhangrui182@huawei.com> - 2.62.1-3
420- Type:bugfix
421- Id:NA
422- SUG:NA
423- DESC:remove dist in spec
424
425* Mon Feb 24 2020 openEuler Buildteam <buildteam@openeuler.org> - 2.62.1-2
426- Type:bugfix
427- Id:NA
428- SUG:NA
429- DESC:exclude some unnecessary files
430
431* Thu Jan 9 2020 openEuler Buildteam <buildteam@openeuler.org> - 2.62.1-1
432- update to 2.62.1
433
434* Tue Dec 24 2019 openEuler Buildteam <buildteam@openeuler.org> - 2.58.1-6
435- change the path of files
436
437* Sat Dec 21 2019 openEuler Buildteam <buildteam@openeuler.org> - 2.58.1-5
438- Type:bugfix
439- Id:NA
440- SUG:NA
441- DESC:Fix a leaking GRemoteActionGroup member
442
443* Sat Nov 23 2019 openEuler Buildteam <buildteam@openeuler.org> - 2.58.1-4
444- Type:bugfix
445- Id:NA
446- SUG:NA
447- DESC:add the libxslt in buildrequires
448
449* Wed Sep 25 2019 huzunhao<huzunhao2@huawei.com> - 2.58.1-3
450- Type:cves
451- ID:CVE-2019-12450 CVE-2019-13012
452- SUG:restart
453- DESC:fix CVE-2019-12450 CVE-2019-13012
454
455* Thu Sep 19 2019 Lijin Yang <yanglijin@huawei.com> - 2.58.1-2
456- Package init
457