From 2fbae4c16bd07f08f2c38d150903dfa4a9b9f2c0 Mon Sep 17 00:00:00 2001 From: CentOS Sources Date: Tue, 8 Nov 2022 02:00:41 -0500 Subject: [PATCH] import gtk-doc-1.28-4.el8 --- .gitignore | 1 + .gtk-doc.metadata | 1 + ...-Please-make-the-output-reproducible.patch | 54 +++ ...ke-G_MAXINT-appear-as-such-on-32-bit.patch | 38 ++ SOURCES/gtk-doc-1.28-fix-opaque-class.patch | 38 ++ SPECS/gtk-doc.spec | 364 ++++++++++++++++++ 6 files changed, 496 insertions(+) create mode 100644 .gitignore create mode 100644 .gtk-doc.metadata create mode 100644 SOURCES/0001-Please-make-the-output-reproducible.patch create mode 100644 SOURCES/0001-scangobj-Make-G_MAXINT-appear-as-such-on-32-bit.patch create mode 100644 SOURCES/gtk-doc-1.28-fix-opaque-class.patch create mode 100644 SPECS/gtk-doc.spec diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..00f8260 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +SOURCES/gtk-doc-1.28.tar.xz diff --git a/.gtk-doc.metadata b/.gtk-doc.metadata new file mode 100644 index 0000000..254b1ab --- /dev/null +++ b/.gtk-doc.metadata @@ -0,0 +1 @@ +f48311fd3def5b393ebb32d5480a61ec6dfd2809 SOURCES/gtk-doc-1.28.tar.xz diff --git a/SOURCES/0001-Please-make-the-output-reproducible.patch b/SOURCES/0001-Please-make-the-output-reproducible.patch new file mode 100644 index 0000000..ba0f0de --- /dev/null +++ b/SOURCES/0001-Please-make-the-output-reproducible.patch @@ -0,0 +1,54 @@ +From 06eda7ca8fa42c654fd2ad861c1c43c1b395bc57 Mon Sep 17 00:00:00 2001 +From: Chris Lamb +Date: Sat, 7 Dec 2019 13:56:24 +0000 +Subject: [PATCH] Please make the output reproducible +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Whilst working on the Reproducible Builds effort [0] we noticed that +gtk-doc generates unreproducible output. + +There will likely be more issues but this one is at least fairly +simple in that it iterates over a set structure when printing +some .devhelp2 headers, for example: + +│ │ │ │ - +│ │ │ │ - +│ │ │ │ +│ │ │ │ - +│ │ │ │ + +│ │ │ │ +│ │ │ │ + +│ │ │ │ +│ │ │ │ - +│ │ │ │ +│ │ │ │ + +│ │ │ │ + + +This was originally filed in Debian as #946311 [1]. + + [0] https://reproducible-builds.org/ + [1] https://bugs.debian.org/946331 + +Signed-off-by: Chris Lamb +--- + gtkdoc/mkdb.py | 2 +- + 1 file changed, 1 insertion(+), 1 deletion(-) + +diff --git a/gtkdoc/mkdb.py b/gtkdoc/mkdb.py +index 9404452..9184567 100644 +--- a/gtkdoc/mkdb.py ++++ b/gtkdoc/mkdb.py +@@ -2491,7 +2491,7 @@ def OutputBook(main_file, book_top, book_bottom, obj_tree): + + + ''') +- for version in set(Since.values()): ++ for version in sorted(set(Since.values())): + dash_version = version.replace('.', '-') + OUTPUT.write(''' + Index of new API in %s +-- +2.26.2 + diff --git a/SOURCES/0001-scangobj-Make-G_MAXINT-appear-as-such-on-32-bit.patch b/SOURCES/0001-scangobj-Make-G_MAXINT-appear-as-such-on-32-bit.patch new file mode 100644 index 0000000..a6ec72e --- /dev/null +++ b/SOURCES/0001-scangobj-Make-G_MAXINT-appear-as-such-on-32-bit.patch @@ -0,0 +1,38 @@ +From 12f8e2014309403afc3bceabcea5e38b29fe5447 Mon Sep 17 00:00:00 2001 +From: Bastien Nocera +Date: Tue, 4 Sep 2018 09:50:15 +0200 +Subject: [PATCH] scangobj: Make G_MAXINT appear as such on 32-bit + +Don't overwrite the boundaries of integer properties when they match +both G_MAXINT and G_MAXLONG. This also fixes a memory leak in the +generated scanobj code. + +Closes: #49 +--- + gtkdoc/scangobj.py | 10 ++++++---- + 1 file changed, 6 insertions(+), 4 deletions(-) + +diff --git a/gtkdoc/scangobj.py b/gtkdoc/scangobj.py +index 237863c..73c23b0 100644 +--- a/gtkdoc/scangobj.py ++++ b/gtkdoc/scangobj.py +@@ -690,10 +690,12 @@ describe_unsigned_constant (gsize size, guint64 value) + else if (value == G_MAXUINT) + desc = g_strdup ("G_MAXUINT"); + } +- if (value == (guint64)G_MAXLONG) +- desc = g_strdup ("G_MAXLONG"); +- else if (value == G_MAXULONG) +- desc = g_strdup ("G_MAXULONG"); ++ if (desc == NULL) { ++ if (value == (guint64)G_MAXLONG) ++ desc = g_strdup ("G_MAXLONG"); ++ else if (value == G_MAXULONG) ++ desc = g_strdup ("G_MAXULONG"); ++ } + break; + case 8: + if (value == G_MAXINT64) +-- +2.29.2 + diff --git a/SOURCES/gtk-doc-1.28-fix-opaque-class.patch b/SOURCES/gtk-doc-1.28-fix-opaque-class.patch new file mode 100644 index 0000000..681c757 --- /dev/null +++ b/SOURCES/gtk-doc-1.28-fix-opaque-class.patch @@ -0,0 +1,38 @@ +From c8c288ab35f913603fb3f49dd4141aacbd7e8562 Mon Sep 17 00:00:00 2001 +From: Lubomir Rintel +Date: Fri, 29 Jun 2018 21:45:28 +0200 +Subject: [PATCH] scan: set title also when the class structure is opaque + +libnm doesn't like to include the structure definitions of many object +types in a public header, since they're not supposed to be subclassed +and maintaining a stable ABI would me a maintanance burden: + +nm-setting-user.c: struct _NMSettingUserClass { ... }; +nm-setting-user.h: typedef struct _NMSettingUserClass NMSettingUserClass; + +However, gtkdoc-scan only sets for Class/Iface typedefs only when the +structs are defined in the header. Fix that. +--- + gtkdoc/scan.py | 6 ++++++ + 1 file changed, 6 insertions(+) + +diff --git a/gtkdoc/scan.py b/gtkdoc/scan.py +index f1f1672..b59dd17 100644 +--- a/gtkdoc/scan.py ++++ b/gtkdoc/scan.py +@@ -434,6 +434,12 @@ def ScanHeader(input_file, section_list, decl_list, get_types, options): + forward_decls[m9.group(2)] = '<%s>\n<NAME>%s</NAME>\n%s</%s>\n' % ( + structsym, m9.group(2), deprecated, structsym) + ++ bm = re.search(r'^(\S+)(Class|Iface|Interface)\b', m9.group(2)) ++ if bm: ++ objectname = bm.group(1) ++ logging.info('Found object: "%s"', objectname) ++ title = '<TITLE>%s' % objectname ++ + elif re.search(r'^\s*(?:struct|union)\s+_(\w+)\s*;', line): + # Skip private structs/unions. + logging.info('private struct/union') +-- +GitLab + diff --git a/SPECS/gtk-doc.spec b/SPECS/gtk-doc.spec new file mode 100644 index 0000000..4c06611 --- /dev/null +++ b/SPECS/gtk-doc.spec @@ -0,0 +1,364 @@ +%global debug_package %{nil} + +%global __python %{__python3} + +Name: gtk-doc +Version: 1.28 +Release: 4%{?dist} +Summary: API documentation generation tool for GTK+ and GNOME + +License: GPLv2+ and GFDL +URL: http://www.gtk.org/gtk-doc +Source0: http://download.gnome.org/sources/gtk-doc/1.28/gtk-doc-%{version}.tar.xz + +# Backported from upstream +# https://bugzilla.redhat.com/show_bug.cgi?id=1634770 +Patch0: 0001-Please-make-the-output-reproducible.patch + +# Backported from upstream +# https://bugzilla.redhat.com/show_bug.cgi?id=1853142 +Patch1: 0001-scangobj-Make-G_MAXINT-appear-as-such-on-32-bit.patch + +# https://bugzilla.redhat.com/show_bug.cgi?id=2052721 +Patch2: gtk-doc-1.28-fix-opaque-class.patch + +BuildRequires: dblatex +BuildRequires: docbook-utils +BuildRequires: /usr/bin/xsltproc +BuildRequires: docbook-style-xsl +BuildRequires: gettext +BuildRequires: python3-devel +BuildRequires: python3-six +BuildRequires: source-highlight +BuildRequires: yelp-tools + +# Following are not automatically installed +Requires: docbook-utils /usr/bin/xsltproc docbook-style-xsl +Requires: python3-six +Requires: source-highlight + +%description +gtk-doc is a tool for generating API reference documentation. +It is used for generating the documentation for GTK+, GLib +and GNOME. + +%prep +%autosetup -p1 + +# Move this doc file to avoid name collisions +mv doc/README doc/README.docs + +%build +export PYTHON=%{__python3} +%configure +make %{?_smp_mflags} + +%install +%make_install + +%check +# For reasons unknown first make check fails with texlive debug spew in log +# files. Just run it twice to work this around. +make check || make check + +%files +%license COPYING COPYING-DOCS +%doc AUTHORS README doc/* examples +%{_bindir}/* +%{_datadir}/aclocal/ +%{_datadir}/gtk-doc/ +%{_datadir}/pkgconfig/gtk-doc.pc +%{_datadir}/help/*/gtk-doc-manual/ +%{_libdir}/cmake/ + +%changelog +* Thu Apr 07 2022 David King - 1.28-4 +- Generate documentation for forward declarations (#2052721) + +* Mon Feb 01 2021 Kalev Lember - 1.28-3 +- Backport an upstream patch to fix G_MAXINT appearing as G_MAXLONG on 32 bit +- Related: #1853142 + +* Mon Jul 20 2020 Kalev Lember - 1.28-2 +- Backport a patch to fix x86_64/i686 differences in generated documentation +- Resolves: #1634770 + +* Sat Mar 24 2018 Kalev Lember - 1.28-1 +- Update to 1.28 +- Switch to Python 3 (#1509660) + +* Wed Feb 07 2018 Fedora Release Engineering - 1.27-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_28_Mass_Rebuild + +* Thu Dec 07 2017 Kalev Lember - 1.27-1 +- Update to 1.27 + +* Fri Oct 06 2017 Kalev Lember - 1.26-2 +- Add missing pkgconfig(glib-2.0) dep + +* Tue Aug 15 2017 Kalev Lember - 1.26-1 +- Update to 1.26 +- Don't own /usr/share/gtk-doc/html/ -- packages that drop files in there need + to co-own the directory, instead of depending on gtk-doc + +* Mon Aug 07 2017 Björn Esser - 1.25-6 +- Rebuilt for AutoReq cmake-filesystem + +* Wed Aug 02 2017 Fedora Release Engineering - 1.25-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Binutils_Mass_Rebuild + +* Wed Jul 26 2017 Fedora Release Engineering - 1.25-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_27_Mass_Rebuild + +* Fri Feb 10 2017 Fedora Release Engineering - 1.25-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_26_Mass_Rebuild + +* Tue Oct 18 2016 Kalev Lember - 1.25-2 +- Use make_install macro +- Don't set group tags +- Run self tests +- Drop unused build deps + +* Tue Mar 22 2016 Kalev Lember - 1.25-1 +- Update to 1.25 +- Make the package not noarch as it is now putting files in archful directories + +* Thu Feb 04 2016 David King - 1.24-4 +- Require xsltproc, not libxslt + +* Wed Feb 03 2016 Fedora Release Engineering - 1.24-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_24_Mass_Rebuild + +* Wed Jun 17 2015 Fedora Release Engineering - 1.24-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_23_Mass_Rebuild + +* Sun May 31 2015 Kalev Lember - 1.24-1 +- Update to 1.24 + +* Sun May 17 2015 Kalev Lember - 1.23-1 +- Update to 1.23 + +* Sun May 10 2015 Kalev Lember - 1.22-1 +- Update to 1.22 +- Use license macro for the COPYING files + +* Thu Jul 17 2014 Kalev Lember - 1.21-1 +- Update to 1.21 + +* Sat Jun 07 2014 Fedora Release Engineering - 1.20-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_21_Mass_Rebuild + +* Mon Feb 17 2014 Richard Hughes - 1.20-1 +- Update to 1.20 + +* Tue Oct 29 2013 Matthias Clasen - 1.19-4 +- Fix sorting of the annotation glossary + +* Sat Aug 03 2013 Fedora Release Engineering - 1.19-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_20_Mass_Rebuild + +* Wed Jul 17 2013 Petr Pisar - 1.19-2 +- Perl 5.18 rebuild + +* Wed Jun 5 2013 Matthias Clasen - 1.19-1 +- Update to 1.19 + +* Thu Apr 25 2013 Colin Walters - 1.18-5.20130425gitdf075f +- New git snapshot; attempting to fix for #910830 + +* Thu Feb 14 2013 Fedora Release Engineering - 1.18-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_19_Mass_Rebuild + +* Thu Jul 19 2012 Fedora Release Engineering - 1.18-3 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_18_Mass_Rebuild + +* Fri Jan 13 2012 Fedora Release Engineering - 1.18-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_17_Mass_Rebuild + +* Mon Sep 19 2011 Matthias Clasen - 1.18-1 +- Update to 1.18 + +* Mon Mar 7 2011 Matthias Clasen - 1.17-1 +- Update to 1.17 + +* Wed Feb 09 2011 Fedora Release Engineering - 1.16-2 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild + +* Fri Jan 14 2011 Matthias Clasen - 1.16-1 +- Update to 1.16 + +* Fri Sep 24 2010 Parag Nemade - 1.15-2 +- Merge-review cleanup (#225870) + +* Sun May 23 2010 Matthias Clasen - 1.15-1 +- Update to 1.15 + +* Sun Mar 28 2010 Matthias Clasen - 1.14-1 +- Update to 1.14 + +* Wed Jan 6 2010 Matthias Clasen - 1.13-2 +- Fix issues with gtkdoc-fixxref + +* Tue Dec 22 2009 Matthias Clasen - 1.13-1 +- Update to 1.13 + +* Thu Dec 3 2009 Matthias Clasen - 1.11-6 +- Drop unnecessary BRs + +* Fri Jul 24 2009 Fedora Release Engineering - 1.11-5 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_12_Mass_Rebuild + +* Tue Feb 24 2009 Fedora Release Engineering - 1.11-4 +- Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild + +* Sun Nov 23 2008 Matthias Clasen - 1.11-3 +- Fix an index generation problem + +* Fri Nov 21 2008 Matthias Clasen - 1.11-2 +- Update to 1.11 + +* Fri Jul 25 2008 Tom "spot" Callaway - 1.10-2 +- fix license tag + +* Thu Apr 24 2008 Matthias Clasen - 1.10-1 +- Update to 1.10 + +* Tue Jan 8 2008 Matthias Clasen - 1.9-4 +- Try again + +* Mon Jan 7 2008 Matthias Clasen - 1.9-3 +- Improve the fix + +* Tue Dec 18 2007 Matthias Clasen - 1.9-2 +- Fix a problem in gtk-doc.make + +* Sun Nov 18 2007 Matthias Clasen - 1.9-1 +- Update to 1.9 + +* Tue Aug 7 2007 Matthias Clasen - 1.8-3 +- Update the license field + +* Thu Mar 29 2007 Matthias Clasen - 1.8-2 +- Drop a no longer needed patch + +* Wed Feb 21 2007 Matthias Clasen - 1.8-1 +- Update to 1.8 +- Fix some directory ownership issues + +* Fri Feb 2 2007 Matthias Clasen - 1.7-3 +- Fix the omf file (#223684) + +* Wed Dec 20 2006 Matthias Clasen - 1.7-2 +- Own the /usr/share/gtk-doc/html directory (#220230) + +* Wed Aug 2 2006 Matthias Clasen - 1.7-1.fc6 +- Update to 1.7 + +* Wed Jul 12 2006 Jesse Keating - 1.6-3.1 +- rebuild + +* Mon May 22 2006 Matthias Clasen 1.6-3 +- Make it build in mock + +* Mon Apr 10 2006 Matthias Clasen 1.6-2 +- Update to 1.6 + +* Fri Dec 09 2005 Jesse Keating +- rebuilt + +* Wed Jul 6 2005 Matthias Clasen 1.4-1 +- update to 1.4 + +* Thu May 5 2005 Matthias Clasen 1.3-1 +- accept ':' in ids + +* Wed Jan 26 2005 Matthias Clasen 1.3-1 +- update to 1.3 + +* Tue Sep 21 2004 Matthias Clasen 1.2-2 +- rebuild + +* Fri Mar 12 2004 Alex Larsson 1.2-1 +- update to 1.2 + +* Fri Feb 13 2004 Elliot Lee +- rebuilt + +* Thu Aug 28 2003 Owen Taylor 1.1-3.0 +- Move gtk-doc.pc file to %%{_datadir}/pkgconfig (#98595) +- Require: /usr/bin/cmp (#88763, Thomas Vander Stichele) +- Added libxslt docbook-style-xsl to Require: and BuildPrereq + (#99143, Ken MacFarlane) + +* Tue Jul 8 2003 Owen Taylor 1.1-2.0 +- Bump for rebuild + +* Thu Jun 12 2003 Owen Taylor 1.1-1 +- Version 1.1 + +* Wed Apr 30 2003 Elliot Lee 0.10-6 +- Patch to s/head -1/head -n 1/ for ppc64 etc. + +* Wed Feb 12 2003 Elliot Lee 0.10-5 +- BuildRequires: libxslt + +* Wed Jan 22 2003 Tim Powers +- rebuilt + +* Mon Jan 13 2003 Owen Taylor 0.10-3 +- Clean up some spec file mess + +* Mon Jan 13 2003 Tim Powers 0.10-2 +- fiter out the broken perl dep + +* Sun Jan 12 2003 Havoc Pennington +- 0.10 + +* Wed Dec 11 2002 Tim Powers 0.9-6 +- rebuild + +* Fri Jun 21 2002 Tim Powers +- automated rebuild + +* Thu May 30 2002 Chip Turner +- add dependency filter for bogus perl dependencies + +* Thu May 23 2002 Tim Powers +- automated rebuild + +* Thu Apr 25 2002 Havoc Pennington +- rebuild in different environment + +* Thu Apr 4 2002 Jeremy Katz +- update to 0.9 + +* Wed Jan 09 2002 Tim Powers +- automated rebuild + +* Wed Jan 2 2002 Havoc Pennington +- new cvs snap 0.7.90 + +* Mon Sep 17 2001 Matt Wilson +- version 0.7 + +* Thu May 17 2001 Havoc Pennington +- upgrade to a CVS snapshot +- remove patches applied upstream + +* Tue Jan 16 2001 Tim Waugh +- Replace docbook, sgml-common, and stylesheets requirements with + docbook-utils requirement. +- Use public identifier in custom stylesheets. + +* Thu Dec 14 2000 Bill Nottingham +- rebuild because of broken fileutils + +* Mon Nov 13 2000 Owen Taylor +- Version 0.4b1 (CVS snapshot) + +* Fri Apr 23 1999 Owen Taylor +- added Requires + +* Fri Apr 23 1999 Owen Taylor +- Initial RPM, version 0.2 +