This file is indexed.

/usr/share/gtk-doc/html/gi/gi-building.html is in libgirepository1.0-doc 1.46.0-3ubuntu1.

This file is owned by root:root, with mode 0o644.

The actual contents of the file can be viewed below.

  1
  2
  3
  4
  5
  6
  7
  8
  9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
<!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Compiling the GObject Introspection package: GObject Introspection Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.78.1">
<link rel="home" href="index.html" title="GObject Introspection Reference Manual">
<link rel="up" href="overview.html" title="Part I. GObject-Introspection Overview">
<link rel="prev" href="overview.html" title="Part I. GObject-Introspection Overview">
<link rel="next" href="gi-programming.html" title="Writing introspected libraries">
<meta name="generator" content="GTK-Doc V1.24 (XML mode)">
<link rel="stylesheet" href="style.css" type="text/css">
</head>
<body bgcolor="white" text="black" link="#0000FF" vlink="#840084" alink="#0000FF">
<table class="navigation" id="top" width="100%" summary="Navigation header" cellpadding="2" cellspacing="5"><tr valign="middle">
<td width="100%" align="left" class="shortcuts"></td>
<td><a accesskey="h" href="index.html"><img src="home.png" width="16" height="16" border="0" alt="Home"></a></td>
<td><a accesskey="u" href="overview.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="overview.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="gi-programming.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="refentry">
<a name="gi-building"></a><div class="titlepage"></div>
<div class="refnamediv"><table width="100%"><tr>
<td valign="top">
<h2><span class="refentrytitle">Compiling the GObject Introspection package</span></h2>
<p>Compiling the GObject Introspection Package — How to compile GObject Introspection itself</p>
</td>
<td class="gallery_image" valign="top" align="right"></td>
</tr></table></div>
<div class="refsect1">
<a name="gi-buildtools"></a><h2>Building on UNIX</h2>
<p>
      On UNIX, GObject Introspection uses the standard GNU build system,
      using <span class="application">autoconf</span> for package
      configuration and resolving portability issues,
      <span class="application">automake</span> for building makefiles
      that comply with the GNU Coding Standards, and
      <span class="application">libtool</span> for building shared
      libraries on multiple platforms. The normal sequence for
      compiling and installing the GObject Introspection package is thus:

      </p>
<div class="literallayout"><p><br>
        <strong class="userinput"><code>./configure</code></strong><br>
        <strong class="userinput"><code>make</code></strong><br>
        <strong class="userinput"><code>make install</code></strong><br>
      </p></div>
<p>
    </p>
<p>
      The standard options provided by <span class="application">GNU
      autoconf</span> may be passed to the
      <span class="command"><strong>configure</strong></span> script.  Please see the
      <span class="application">autoconf</span> documentation or run
      <span class="command"><strong>./configure --help</strong></span> for information about
      the standard options.
    </p>
</div>
<div class="refsect1">
<a name="dependencies"></a><h2>Dependencies</h2>
<p>
      Before you can compile GObject Introspection, you need to have
      various other tools and libraries installed on your
      system. The tools needed during the build process (as
      differentiated from the basic build tools mentioned
      <a class="link" href="gi-building.html#gi-buildtools" title="Building on UNIX">before</a> are:
    </p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem"><p>
          <a class="ulink" href="http://www.freedesktop.org/software/pkgconfig/" target="_top">pkg-config</a>
          is a tool for tracking the compilation flags needed for
          libraries that are used by the GObjecct Introspection. (For each
          library, a small <code class="literal">.pc</code> text file is
          installed in a standard location that contains the compilation
          flags needed for that library along with version number
          information.)
        </p></li>
<li class="listitem"><p>
          The GObject-Introspection makefiles will mostly work with different
          versions of <span class="command"><strong>make</strong></span>, however, there tends to be a
          few incompatibilities, so the GObject-Introspection team recommends
          installing <a class="ulink" href="http://www.gnu.org/software/make" target="_top">GNU
          make</a> if you don't already have it on your system
          and using it. (It may be called <span class="command"><strong>gmake</strong></span>
          rather than <span class="command"><strong>make</strong></span>.)
        </p></li>
</ul></div>
<p>
      GObject-Introspection depends on a number of libraries and tools
      maintained under the umbrella of the GNOME project:
    </p>
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem"><p>
          The GLib library provides core non-graphical functionality
          such as high level data types, Unicode manipulation, and
          an object and type system to C programs. It is available
          from the <a class="ulink" href="ftp.gnome.org/pub/gnome/sources/glib" target="_top">GNOME
          FTP site</a> or
          <a class="ulink" href="http://download.gnome.org/sources/glib/" target="_top">here</a>.
        </p></li>
<li class="listitem"><p>
          TODO: GTK-Doc
        </p></li>
</ul></div>
<div class="itemizedlist">
<p class="title"><b>External dependencies</b></p>
<ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem"><p>
          Python
        </p></li>
<li class="listitem"><p>
          GObject Introspection has an option dependency on the
          <a class="ulink" href="TODO" target="_top">libffi</a> library. When available,
          ...
        </p></li>
<li class="listitem">
<p>
        </p>
<p>
          <a class="ulink" href="http://www.cairographics.org" target="_top">Cairo</a>
          is a graphics library that supports vector graphics and image
          compositing. When available, GObject Introspection uses
          Cairo in its unit tests.
        </p>
<p>
        </p>
</li>
</ul>
</div>
</div>
<div class="refsect1">
<a name="extra-configuration-options"></a><h2>Extra Configuration Options</h2>
<p>
      In addition to the normal options, the
      <span class="command"><strong>configure</strong></span> script in the GObject Introspection
      package supports these additional arguments:
    </p>
<p><b><code class="systemitem">--disable-Bsymbolic</code> and
        <code class="systemitem">--enable-Bsymbolic</code></b>
        By default, the GObject Introspection package uses the
        -Bsymbolic-functions linker flag to avoid intra-library
        PLT jumps. A side-effect of this is that it is no longer
        possible to override internal uses of GObject Introspection
        functions with <code class="envar">LD_PRELOAD</code>. Therefore, it may
        make sense to turn this feature off in some situations.
        The <code class="option">--disable-Bsymbolic</code> option allows
        to do that.
      </p>
<p><b><code class="systemitem">--disable-gtk-doc</code> and
        <code class="systemitem">--enable-gtk-doc</code></b>
        By default the <span class="command"><strong>configure</strong></span> script will try
        to auto-detect whether the
        <span class="application">gtk-doc</span> package is installed.
        If it is, then it will use it to extract and build the
        documentation for the GObject Introspection package. These options
        can be used to explicitly control whether
        <span class="application">gtk-doc</span> should be
        used or not. If it is not used, the distributed,
        pre-generated HTML files will be installed instead of
        building them on your machine.
      </p>
<p><b><code class="systemitem">--disable-doctool</code> and
        <code class="systemitem">--enable-doctool</code></b>
        TODO
      </p>
<p><b><code class="systemitem">--with-python</code></b>
        Allows specifying the Python interpreter to use, either as an
        absolute path, or as a program name. GObject Introspection can
        be built with Python 2 (at least version 2.6) but does not yet
        support Python 3.
      </p>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.24</div>
</body>
</html>