Accepting request 537544 from GNOME:Next

Let's use python3 for gtk-doc

OBS-URL: https://build.opensuse.org/request/show/537544
OBS-URL: https://build.opensuse.org/package/show/GNOME:Factory/gtk-doc?expand=0&rev=54
This commit is contained in:
Dominique Leuenberger 2017-10-30 14:26:37 +00:00 committed by Git OBS Bridge
parent f6ebdac743
commit 512cb7f8cc
3 changed files with 638 additions and 1 deletions

View File

@ -0,0 +1,626 @@
commit 8ad03e164f3091df68a9fed5492b54cd61d0ac51
Author: Stefan Sauer <ensonic@users.sf.net>
Date: Thu Oct 26 22:16:57 2017 +0200
mkdb: don't uses sys.exit in library
Just print a warning and go on.
diff --git a/gtkdoc/mkdb.py b/gtkdoc/mkdb.py
index 3b0bc15..d89d078 100644
--- a/gtkdoc/mkdb.py
+++ b/gtkdoc/mkdb.py
@@ -31,7 +31,6 @@ import logging
import os
import re
import string
-import sys
from . import common, md_to_db
@@ -1123,7 +1122,8 @@ def OutputDeclaration(symbol, declaration):
elif dtype == 'USER_FUNCTION':
return OutputFunction(symbol, declaration, dtype)
else:
- sys.exit("Unknown symbol type " + dtype)
+ logging.warning("Unknown symbol type %s for symbol %s", dtype, symbol)
+ return ('', '')
def OutputSymbolTraits(symbol):
commit a4a719606bfa0abdea794f6a7d4f46b3e3fcb77e
Author: Stefan Sauer <ensonic@users.sf.net>
Date: Thu Oct 26 21:06:17 2017 +0200
mkdb: fix missing info on typedefs
This was a regression from the perl->python port.
diff --git a/gtkdoc/mkdb.py b/gtkdoc/mkdb.py
index 7bb6d3e..3b0bc15 100644
--- a/gtkdoc/mkdb.py
+++ b/gtkdoc/mkdb.py
@@ -1281,7 +1281,7 @@ def OutputTypedef(symbol, declaration):
desc += "\n"
desc += OutputSymbolExtraLinks(symbol)
- if symbol in DeclarationConditional:
+ if symbol not in DeclarationConditional:
decl_out = CreateValidSGML(declaration)
desc += "<programlisting language=\"C\">%s</programlisting>\n" % decl_out
commit 21358879180c9e988fc0473840ab8ab673f69513
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date: Wed Oct 25 21:27:05 2017 +0200
mkdb: Mark multiple Unicode strings as such
These are utf-8 encoded byte strings under Python 2 and when concatonated
with unicode objects get auto-decoded using the default ascii encoding,
which fails as they are not ascii.
https://bugzilla.gnome.org/show_bug.cgi?id=787862
diff --git a/gtkdoc/mkdb.py b/gtkdoc/mkdb.py
index 6c1538f..7bb6d3e 100644
--- a/gtkdoc/mkdb.py
+++ b/gtkdoc/mkdb.py
@@ -2784,14 +2784,14 @@ def MakeHashXRef(symbol, tag):
if '::' in symbol:
o, s = symbol.split('::', 1)
symbol = '%s-%s' % (o, s)
- text = '“' + s + '”'
+ text = u'“' + s + u'”'
# If the symbol is in the form "Object:property", then change the symbol to
# "Object--property" and use "property" as the text.
if ':' in symbol:
o, p = symbol.split(':', 1)
symbol = '%s--%s' % (o, p)
- text = '“' + p + '”'
+ text = u'“' + p + u'”'
if tag != '':
text = tagify(text, tag)
@@ -3311,7 +3311,7 @@ def GetSignals(gobject):
symbol = '%s::%s' % (gobject, name)
sid = common.CreateValidSGMLID('%s-%s' % (gobject, name))
- desc += "<refsect2 id=\"%s\" role=\"signal\"><title>The <literal>“%s”</literal> signal</title>\n" % (
+ desc += u"<refsect2 id=\"%s\" role=\"signal\"><title>The <literal>“%s”</literal> signal</title>\n" % (
sid, name)
desc += MakeIndexterms(symbol, sid)
desc += "\n"
@@ -3546,13 +3546,13 @@ def GetArgs(gobject):
arg_synop = "<row><entry role=\"property_type\">%s</entry><entry role=\"property_name\"><link linkend=\"%s\">%s</link></entry><entry role=\"property_flags\">%s</entry></row>\n" % (
type_output, sid, name, flags_string)
- arg_desc = "<refsect2 id=\"%s\" role=\"property\"><title>The <literal>“%s”</literal> %s</title>\n" % (
+ arg_desc = u"<refsect2 id=\"%s\" role=\"property\"><title>The <literal>“%s”</literal> %s</title>\n" % (
sid, name, kind)
arg_desc += MakeIndexterms(symbol, sid)
arg_desc += "\n"
arg_desc += OutputSymbolExtraLinks(symbol)
- arg_desc += "<programlisting> “%s”%s %s</programlisting>\n" % (name, pad1, type_output)
+ arg_desc += u"<programlisting> “%s”%s %s</programlisting>\n" % (name, pad1, type_output)
arg_desc += blurb
if symbol in SymbolAnnotations:
param_desc = SymbolAnnotations[symbol]
commit 1eeec38a9a06a9956cdab9789cbd2ea105866198
Author: Christoph Reiter <reiter.christoph@gmail.com>
Date: Mon Sep 18 22:49:09 2017 +0200
Always open files in text mode and always use utf-8
Introduces a common.open_text() helper with saner defaults for opening
text files across Python versions.
open() defaults to the locale encoding which on a properly configured
Unix is utf-8, but cp-1252 on Windows which can't handle all of Unicode.
Instead of using the default always use utf-8 for text files.
To reduce the difference of types processed by Python 2 vs 3 use
codecs.open() to open text files in text mode on Python 2. The
resulting file object will return unicode like on Python 3, but still
allows passing in ASCII only str.
Also fixes a few missing file.close() operations, which is important on
Windows as non-closed files can't be renamed/deleted on Windows.
https://bugzilla.gnome.org/show_bug.cgi?id=787862
diff --git a/gtkdoc/check.py b/gtkdoc/check.py
index 0a58b0c..7f32b60 100755
--- a/gtkdoc/check.py
+++ b/gtkdoc/check.py
@@ -32,6 +32,8 @@ import os
import re
from glob import glob
+from . import common
+
class FileFormatError(Exception):
pass
@@ -46,14 +48,14 @@ def grep(regexp, lines, what):
def check_empty(filename):
- with open(filename) as f:
+ with open(filename, "rb") as f:
count = sum(1 for line in f if line.strip())
return count
def check_includes(filename):
# Check that each XML file in the xml directory is included in doc_main_file
- with open(filename) as f:
+ with common.open_text(filename) as f:
lines = f.read().splitlines()
num_missing = 0
for include in glob('xml/*.xml'):
@@ -73,7 +75,7 @@ def get_variable(env, lines, variable):
def read_file(filename):
- with open(filename) as f:
+ with common.open_text(filename) as f:
return f.read().splitlines()
diff --git a/gtkdoc/common.py b/gtkdoc/common.py
index 50c9f5f..9dfebef 100644
--- a/gtkdoc/common.py
+++ b/gtkdoc/common.py
@@ -28,10 +28,35 @@ import os
import re
import subprocess
import sys
+import six
+import codecs
from . import config
+def open_text(filename, mode="r", encoding="utf-8"):
+ """An open() which removes some differences between Python 2 and 3 and
+ has saner defaults.
+
+ Unlike the builtin open by default utf-8 is use and not the locale
+ encoding (which is ANSI on Windows for example, not very helpful)
+
+ For Python 2, files are opened in text mode like with Python 3.
+ """
+
+ if mode not in ("r", "w"):
+ raise ValueError("mode %r not supported, must be 'r' or 'w'" % mode)
+
+ if six.PY3:
+ return open(filename, mode, encoding=encoding)
+ else:
+ # We can't use io.open() here as its write method is too strict and
+ # only allows unicode instances and not everything in the codebase
+ # forces unicode at the moment. codecs.open() on the other hand
+ # happily takes ASCII str and decodes it.
+ return codecs.open(filename, mode, encoding=encoding)
+
+
def setup_logging():
"""Check GTKDOC_TRACE environment variable.
diff --git a/gtkdoc/fixxref.py b/gtkdoc/fixxref.py
index 3027c10..164b008 100755
--- a/gtkdoc/fixxref.py
+++ b/gtkdoc/fixxref.py
@@ -175,7 +175,7 @@ def ReadDevhelp(file, use_absolute_links):
logging.info('Scanning index file=%s, absolute=%d, dir=%s', file, use_absolute_links, dir)
- for line in open(file):
+ for line in common.open_text(file):
m = re.search(r' link="([^#]*)#([^"]*)"', line)
if m:
link = m.group(1) + '#' + m.group(2)
@@ -184,7 +184,7 @@ def ReadDevhelp(file, use_absolute_links):
def ReadSections(options):
- for line in open(options.module + '-sections.txt'):
+ for line in common.open_text(options.module + '-sections.txt'):
m1 = re.search(r'^<SUBSECTION\s*(.*)>', line)
if line.startswith('#') or line.strip() == '':
continue
@@ -220,9 +220,7 @@ def FixCrossReferences(options):
def FixHTMLFile(options, file):
logging.info('Fixing file: %s', file)
- content = open(file).read()
- if sys.version_info < (3,):
- content = content.decode('utf-8')
+ content = common.open_text(file).read()
if config.highlight:
# FIXME: ideally we'd pass a clue about the example language to the highligher
@@ -266,9 +264,8 @@ def FixHTMLFile(options, file):
new_file = file + '.new'
content = '\n'.join(lines)
- if sys.version_info < (3,):
- content = content.encode('utf-8')
- open(new_file, 'w').write(content)
+ with common.open_text(new_file, 'w') as h:
+ h.write(content)
os.unlink(file)
os.rename(new_file, file)
@@ -381,7 +378,7 @@ def HighlightSourceVim(options, type, source):
script += "%s -n -e -u NONE -T xterm >/dev/null" % config.highlight
subprocess.check_call([script], shell=True)
- highlighted_source = open(temp_source_file + ".html").read()
+ highlighted_source = common.open_text(temp_source_file + ".html").read()
highlighted_source = re.sub(r'.*<pre\b[^>]*>\n', '', highlighted_source, flags=re.MULTILINE)
highlighted_source = re.sub(r'</pre>.*', '', highlighted_source, flags=re.MULTILINE)
diff --git a/gtkdoc/mkdb.py b/gtkdoc/mkdb.py
index e103138..6c1538f 100644
--- a/gtkdoc/mkdb.py
+++ b/gtkdoc/mkdb.py
@@ -302,7 +302,8 @@ def Run(options):
OutputSinceIndexes()
OutputAnnotationGlossary()
- open(os.path.join(ROOT_DIR, 'sgml.stamp'), 'w').write('timestamp')
+ with open(os.path.join(ROOT_DIR, 'sgml.stamp'), 'w') as h:
+ h.write('timestamp')
def OutputObjectList():
@@ -315,7 +316,7 @@ def OutputObjectList():
old_object_index = os.path.join(DB_OUTPUT_DIR, "object_index.sgml")
new_object_index = os.path.join(DB_OUTPUT_DIR, "object_index.new")
- OUTPUT = open(new_object_index, 'w')
+ OUTPUT = common.open_text(new_object_index, 'w')
OUTPUT.write('''%s
<informaltable pgwide="1" frame="none">
@@ -377,7 +378,7 @@ def OutputDB(file, options):
"""
logging.info("Reading: %s", file)
- INPUT = open(file)
+ INPUT = common.open_text(file)
filename = ''
book_top = ''
book_bottom = ''
@@ -1001,7 +1002,7 @@ def OutputAnnotationGlossary():
rerun = True
break
- OUTPUT = open(new_glossary, 'w')
+ OUTPUT = common.open_text(new_glossary, 'w')
OUTPUT.write('''%s
<glossary id="annotation-glossary">
@@ -1049,7 +1050,7 @@ def ReadKnownSymbols(file):
subsection = ''
logging.info("Reading: %s", file)
- INPUT = open(file)
+ INPUT = common.open_text(file)
for line in INPUT:
if line.startswith('#'):
continue
@@ -2157,7 +2158,7 @@ def OutputDBFile(file, title, section_id, includes, functions_synop, other_synop
old_db_file = os.path.join(DB_OUTPUT_DIR, file + '.xml')
new_db_file = os.path.join(DB_OUTPUT_DIR, file + '.xml.new')
- OUTPUT = open(new_db_file, 'w')
+ OUTPUT = common.open_text(new_db_file, 'w')
object_anchors = ''
for fobject in file_objects:
@@ -2324,7 +2325,7 @@ def OutputProgramDBFile(program, section_id):
old_db_file = os.path.join(DB_OUTPUT_DIR, program + ".xml")
new_db_file = os.path.join(DB_OUTPUT_DIR, program + ".xml.new")
- OUTPUT = open(new_db_file, 'w')
+ OUTPUT = common.open_text(new_db_file, 'w')
OUTPUT.write('''%s
<refentry id="%s">
@@ -2367,9 +2368,9 @@ def OutputExtraFile(file):
old_db_file = os.path.join(DB_OUTPUT_DIR, basename)
new_db_file = os.path.join(DB_OUTPUT_DIR, basename + ".new")
- contents = open(file).read()
+ contents = common.open_text(file).read()
- OUTPUT = open(new_db_file, 'w')
+ OUTPUT = common.open_text(new_db_file, 'w')
OUTPUT.write(ExpandAbbreviations(basename + " file", contents))
OUTPUT.close()
@@ -2378,7 +2379,7 @@ def OutputExtraFile(file):
def GetDocbookHeader(main_file):
if os.path.exists(main_file):
- INPUT = open(main_file)
+ INPUT = common.open_text(main_file)
header = ''
for line in INPUT:
if re.search(r'^\s*<(book|chapter|article)', line):
@@ -2421,7 +2422,7 @@ def OutputBook(main_file, book_top, book_bottom):
old_file = os.path.join(DB_OUTPUT_DIR, MODULE + "-doc.top")
new_file = os.path.join(DB_OUTPUT_DIR, MODULE + "-doc.top.new")
- OUTPUT = open(new_file, 'w')
+ OUTPUT = common.open_text(new_file, 'w')
OUTPUT.write(book_top)
OUTPUT.close()
@@ -2430,7 +2431,7 @@ def OutputBook(main_file, book_top, book_bottom):
old_file = os.path.join(DB_OUTPUT_DIR, MODULE + "-doc.bottom")
new_file = os.path.join(DB_OUTPUT_DIR, MODULE + "-doc.bottom.new")
- OUTPUT = open(new_file, 'w')
+ OUTPUT = common.open_text(new_file, 'w')
OUTPUT.write(book_bottom)
OUTPUT.close()
@@ -2439,7 +2440,7 @@ def OutputBook(main_file, book_top, book_bottom):
# If the main docbook file hasn't been created yet, we create it here.
# The user can tweak it later.
if main_file and not os.path.exists(main_file):
- OUTPUT = open(main_file, 'w')
+ OUTPUT = common.open_text(main_file, 'w')
logging.info("no master doc, create default one at: " + main_file)
@@ -3665,7 +3666,7 @@ def ScanSourceFile(ifile, ignore_files):
logging.info("Scanning source file: %s", ifile)
- SRCFILE = open(ifile)
+ SRCFILE = common.open_text(ifile)
in_comment_block = False
symbol = None
in_part = ''
@@ -3983,7 +3984,7 @@ def OutputMissingDocumentation():
buffer_deprecated = ''
buffer_descriptions = ''
- UNDOCUMENTED = open(new_undocumented_file, 'w')
+ UNDOCUMENTED = common.open_text(new_undocumented_file, 'w')
for symbol in sorted(iterkeys(AllSymbols)):
# FIXME: should we print common.LogWarnings for undocumented stuff?
@@ -4064,7 +4065,7 @@ def OutputUndeclaredSymbols():
old_undeclared_file = os.path.join(ROOT_DIR, MODULE + "-undeclared.txt")
new_undeclared_file = os.path.join(ROOT_DIR, MODULE + "-undeclared.new")
- UNDECLARED = open(new_undeclared_file, 'w')
+ UNDECLARED = common.open_text(new_undeclared_file, 'w')
if UndeclaredSymbols:
UNDECLARED.write("\n".join(sorted(iterkeys(UndeclaredSymbols))))
@@ -4089,7 +4090,7 @@ def OutputUnusedSymbols():
old_unused_file = os.path.join(ROOT_DIR, MODULE + "-unused.txt")
new_unused_file = os.path.join(ROOT_DIR, MODULE + "-unused.new")
- UNUSED = open(new_unused_file, 'w')
+ UNUSED = common.open_text(new_unused_file, 'w')
for symbol in sorted(iterkeys(Declarations)):
if not symbol in DeclarationOutput:
@@ -4110,7 +4111,7 @@ def OutputUnusedSymbols():
def OutputAllSymbols():
"""Outputs list of all symbols to a file."""
- SYMBOLS = open(os.path.join(ROOT_DIR, MODULE + "-symbols.txt"), 'w')
+ SYMBOLS = common.open_text(os.path.join(ROOT_DIR, MODULE + "-symbols.txt"), 'w')
for symbol in sorted(iterkeys(AllSymbols)):
SYMBOLS.write(symbol + "\n")
@@ -4119,7 +4120,7 @@ def OutputAllSymbols():
def OutputSymbolsWithoutSince():
"""Outputs list of all symbols without a since tag to a file."""
- SYMBOLS = open(os.path.join(ROOT_DIR, MODULE + "-nosince.txt"), 'w')
+ SYMBOLS = common.open_text(os.path.join(ROOT_DIR, MODULE + "-nosince.txt"), 'w')
for symbol in sorted(iterkeys(SourceSymbolDocs)):
if symbol in Since:
@@ -4257,7 +4258,7 @@ def ReadDeclarationsFile(ifile, override):
DeclarationConditional.clear()
DeclarationOutput.clear()
- INPUT = open(ifile)
+ INPUT = common.open_text(ifile)
declaration_type = ''
declaration_name = None
declaration = None
@@ -4371,7 +4372,7 @@ def ReadSignalsFile(ifile):
if not os.path.isfile(ifile):
return
- INPUT = open(ifile)
+ INPUT = common.open_text(ifile)
line_number = 0
for line in INPUT:
line_number += 1
@@ -4437,7 +4438,7 @@ def ReadObjectHierarchy(ifile):
logging.debug('no *-hierarchy.tx')
return
- INPUT = open(ifile)
+ INPUT = common.open_text(ifile)
# Only emit objects if they are supposed to be documented, or if
# they have documented children. To implement this, we maintain a
@@ -4488,7 +4489,7 @@ def ReadObjectHierarchy(ifile):
logging.debug('got %d entries for hierarchy', len(tree))
- OUTPUT = open(new_tree_index, 'w')
+ OUTPUT = common.open_text(new_tree_index, 'w')
OUTPUT.write(MakeDocHeader("screen") + "\n<screen>\n" + AddTreeLineArt(tree) + "\n</screen>\n")
OUTPUT.close()
@@ -4509,7 +4510,7 @@ def ReadInterfaces(ifile):
if not os.path.isfile(ifile):
return
- INPUT = open(ifile)
+ INPUT = common.open_text(ifile)
for line in INPUT:
line = line.strip()
@@ -4542,7 +4543,7 @@ def ReadPrerequisites(ifile):
if not os.path.isfile(ifile):
return
- INPUT = open(ifile)
+ INPUT = common.open_text(ifile)
for line in INPUT:
line = line.strip()
@@ -4593,7 +4594,7 @@ def ReadArgsFile(ifile):
if not os.path.isfile(ifile):
return
- INPUT = open(ifile)
+ INPUT = common.open_text(ifile)
line_number = 0
for line in INPUT:
line_number += 1
diff --git a/gtkdoc/mkhtml.py b/gtkdoc/mkhtml.py
index 80ddadf..3d03e0a 100644
--- a/gtkdoc/mkhtml.py
+++ b/gtkdoc/mkhtml.py
@@ -90,5 +90,6 @@ def run(options):
for f in glob(styledir + '/*.png') + glob(styledir + '/*.css'):
shutil.copy(f, '.')
- open('../html.stamp', 'w').write('timestamp')
+ with open('../html.stamp', 'w') as h:
+ h.write('timestamp')
return res
diff --git a/gtkdoc/mkpdf.py b/gtkdoc/mkpdf.py
index 5fd9ecb..485b487 100755
--- a/gtkdoc/mkpdf.py
+++ b/gtkdoc/mkpdf.py
@@ -37,7 +37,8 @@ def run_xsltproc(options, args):
command += ['--path', path]
pc = subprocess.Popen(command + args, stderr=subprocess.PIPE)
(o, stde) = pc.communicate()
- open('profile.txt', 'wb').write(stde)
+ with open('profile.txt', 'wb') as h:
+ h.write(stde)
return pc.returncode
@@ -118,5 +119,6 @@ def run(options):
print("dblatex or fop must be installed to use gtkdoc-mkpdf.")
res = 1
- open('pdf.stamp', 'w').write('timestamp')
+ with open('pdf.stamp', 'w') as h:
+ h.write('timestamp')
return res
diff --git a/gtkdoc/rebase.py b/gtkdoc/rebase.py
index e518586..b329c51 100755
--- a/gtkdoc/rebase.py
+++ b/gtkdoc/rebase.py
@@ -136,7 +136,7 @@ gunzip %s/%s
def ReadDevhelp(dir, file):
onlinedir = None
- for line in open(os.path.join(dir, file)):
+ for line in common.open_text(os.path.join(dir, file)):
# online must come before chapter/functions
if '<chapters' in line or '<functions' in line:
break
@@ -150,7 +150,7 @@ def ReadDevhelp(dir, file):
def ReadIndex(dir, file):
onlinedir = None
- for line in open(os.path.join(dir, file)):
+ for line in common.open_text(os.path.join(dir, file)):
# ONLINE must come before any ANCHORs
if '<ANCHOR' in line:
break
@@ -207,10 +207,11 @@ def RebaseFile(filename, options):
def repl_func(match):
return match.group(1) + RebaseLink(match.group(2), options) + match.group(3)
- contents = open(filename).read()
+ contents = common.open_text(filename).read()
processed = re.sub(regex, repl_func, contents)
newfilename = filename + '.new'
- open(newfilename, 'w').write(processed)
+ with common.open_text(newfilename, 'w') as h:
+ h.write(processed)
os.unlink(filename)
os.rename(newfilename, filename)
diff --git a/gtkdoc/scan.py b/gtkdoc/scan.py
index 0843519..a106e48 100644
--- a/gtkdoc/scan.py
+++ b/gtkdoc/scan.py
@@ -77,16 +77,16 @@ def Run(options):
for dir in options.source_dir:
ScanHeaders(dir, section_list, decl_list, get_types, options)
- with open(new_decl_list, 'w') as f:
+ with common.open_text(new_decl_list, 'w') as f:
for section in sorted(iterkeys(section_list)):
f.write(section_list[section])
- with open(new_decl, 'w') as f:
+ with common.open_text(new_decl, 'w') as f:
for decl in decl_list:
f.write(decl)
if options.rebuild_types:
- with open(new_types, 'w') as f:
+ with common.open_text(new_types, 'w') as f:
for func in sorted(get_types):
f.write(func + '\n')
@@ -226,7 +226,7 @@ def ScanHeader(input_file, section_list, decl_list, get_types, options):
logging.info('Scanning %s', input_file)
- for line in open(input_file):
+ for line in common.open_text(input_file):
# If this is a private header, skip it.
if re.search(r'%^\s*/\*\s*<\s*private_header\s*>\s*\*/', line):
return
diff --git a/gtkdoc/scangobj.py b/gtkdoc/scangobj.py
index e6db6cd..116270a 100644
--- a/gtkdoc/scangobj.py
+++ b/gtkdoc/scangobj.py
@@ -1185,7 +1185,7 @@ MAIN_CODE_END = """
def run(options):
c_file = options.module + '-scan.c'
- output = open(c_file, 'w')
+ output = common.open_text(c_file, 'w')
base_filename = os.path.join(options.output_dir, options.module)
old_signals_filename = base_filename + '.signals'
@@ -1206,7 +1206,7 @@ def run(options):
get_types = ""
ntypes = 1
- for line in open(options.types):
+ for line in common.open_text(options.types):
if line.startswith('#include'):
includes += line
elif line.startswith('%') or line.strip() == '':

View File

@ -1,3 +1,11 @@
-------------------------------------------------------------------
Tue Oct 24 14:40:59 UTC 2017 - dimstar@opensuse.org
- Switch to python3: add PYTHON=%{_bindir}/python3 to configure.
- Add: gtk-doc-open-docs-as-utf8.patch: Always open files using
utf-8. In python3, strings are differently represented
internally.
-------------------------------------------------------------------
Fri Oct 20 09:08:01 UTC 2017 - dimstar@opensuse.org

View File

@ -27,6 +27,8 @@ Url: http://www.gtk.org/gtk-doc/
Source: https://download.gnome.org/sources/gtk-doc/1.26/%{name}-%{version}.tar.xz
# PATCH-FIX-UPSTREAM gtk-doc-Generate-main-sgml.patch bgo#786174 -- Generate main sgml file by waiting on mkdb
Patch0: gtk-doc-Generate-main-sgml.patch
# PATCH-FIX-UPSTREAM gtk-doc-open-docs-as-utf8.patch dimstar@opensuse.org -- Always open files using utf-8
Patch1: gtk-doc-open-docs-as-utf8.patch
BuildRequires: docbook-xsl-stylesheets
BuildRequires: libtool
BuildRequires: libxml2-tools
@ -61,10 +63,11 @@ generate the documentation for GLib, Gtk+, and GNOME.
%prep
%setup -q
%patch0 -p1
%patch1 -p1
%build
autoreconf -fiv
%configure
%configure PYTHON=%{_bindir}/python3
make %{?_smp_mflags}
%install