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 options,fix 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 glib2 ≥2.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