/usr/share/gtk-doc/html/libpanel-applet/getting-started.install.build-system.html is in libpanel-applet-doc 3.20.1-1.
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 | <!DOCTYPE html PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN">
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>Build system: Panel Applet Reference Manual</title>
<meta name="generator" content="DocBook XSL Stylesheets V1.79.1">
<link rel="home" href="index.html" title="Panel Applet Reference Manual">
<link rel="up" href="getting-started.install.html" title="Applet Registration, Installation and Build System">
<link rel="prev" href="getting-started.in-out-process.html" title="Out-of-Process vs In-Process">
<link rel="next" href="getting-started.integration.html" title="Proper Integration with the Panel">
<meta name="generator" content="GTK-Doc V1.25 (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="getting-started.install.html"><img src="up.png" width="16" height="16" border="0" alt="Up"></a></td>
<td><a accesskey="p" href="getting-started.in-out-process.html"><img src="left.png" width="16" height="16" border="0" alt="Prev"></a></td>
<td><a accesskey="n" href="getting-started.integration.html"><img src="right.png" width="16" height="16" border="0" alt="Next"></a></td>
</tr></table>
<div class="sect1">
<div class="titlepage"><div><div><h2 class="title" style="clear: both">
<a name="getting-started.install.build-system"></a>Build system</h2></div></div></div>
<div class="sect2">
<div class="titlepage"><div><div><h3 class="title">
<a name="id-1.3.7.7.2"></a>Configure</h3></div></div></div>
<p>
In <code class="constant">configure.ac</code> a variable should be defined that contains the location
where the .panel-applet files are installed.
You can fetch this directory during <code class="constant">configure</code> with the following code:
</p>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td class="listing_lines" align="right"><pre>1
2</pre></td>
<td class="listing_code"><pre class="programlisting">LIBPANEL_APPLET_DIR<span class="gtkdoc opt">=</span>`$PKG_CONFIG <span class="gtkdoc opt">--</span>variable<span class="gtkdoc opt">=</span>libpanel_applet_dir libpanel<span class="gtkdoc opt">-</span>applet`
<span class="function">AC_SUBST</span><span class="gtkdoc opt">(</span>LIBPANEL_APPLET_DIR<span class="gtkdoc opt">)</span></pre></td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="sect2">
<div class="titlepage"><div><div><h3 class="title">
<a name="id-1.3.7.7.3"></a>Makefiles</h3></div></div></div>
A typical Makefile for that is used to build and install an applet contains the following declarations:
<div class="itemizedlist"><ul class="itemizedlist" style="list-style-type: disc; ">
<li class="listitem"><p>A rule to install the <code class="constant">.panel-applet</code> file.</p></li>
<li class="listitem"><p>A rule to install the D-Bus service file if the applet is an out process applet.</p></li>
<li class="listitem"><p>The <code class="constant">.panel-applet</code> file and the D-Bus <code class="constant">.service</code> file
are added to EXTRA_DIST and CLEANFILES.</p></li>
</ul></div>
<div class="sect3">
<div class="titlepage"><div><div><h4 class="title">
<a name="id-1.3.7.7.3.3"></a>Installing the Panel Applet File</h4></div></div></div>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td class="listing_lines" align="right"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13</pre></td>
<td class="listing_code"><pre class="programlisting">appletdir <span class="gtkdoc opt">=</span> $<span class="gtkdoc opt">(</span>LIBPANEL_APPLET_DIR<span class="gtkdoc opt">)</span>
applet_in_files <span class="gtkdoc opt">=</span> org<span class="gtkdoc opt">.</span>gnome<span class="gtkdoc opt">.</span>HelloWorld<span class="gtkdoc opt">.</span>panel<span class="gtkdoc opt">-</span>applet<span class="gtkdoc opt">.</span>in
applet_DATA <span class="gtkdoc opt">=</span> $<span class="gtkdoc opt">(</span>applet_in_files<span class="gtkdoc opt">:.</span>panel<span class="gtkdoc opt">-</span>applet<span class="gtkdoc opt">.</span>in<span class="gtkdoc opt">=.</span>panel<span class="gtkdoc opt">-</span>applet<span class="gtkdoc opt">)</span>
$<span class="gtkdoc opt">(</span>applet_in_files<span class="gtkdoc opt">):</span> $<span class="gtkdoc opt">(</span>applet_in_files<span class="gtkdoc opt">).</span>in Makefile
$<span class="gtkdoc opt">(</span>AM_V_GEN<span class="gtkdoc opt">)</span>sed \
<span class="gtkdoc opt">-</span>e <span class="string">"s|\@LIBEXECDIR\@|$(libexecdir)|"</span> \
<span class="gtkdoc opt">-</span>e <span class="string">"s|\@VERSION\@|$(PACKAGE_VERSION)|"</span> \
$<span class="gtkdoc opt">< ></span> $@
<span class="gtkdoc opt">%.</span>panel<span class="gtkdoc opt">-</span>applet<span class="gtkdoc opt">: %.</span>panel<span class="gtkdoc opt">-</span>applet<span class="gtkdoc opt">.</span>in \
$<span class="gtkdoc opt">(</span>INTLTOOL_MERGE<span class="gtkdoc opt">)</span> $<span class="gtkdoc opt">(</span>wildcard $<span class="gtkdoc opt">(</span>top_srcdir<span class="gtkdoc opt">)/</span>po<span class="comment">/*po) ; \</span>
<span class="comment"> $(INTLTOOL_MERGE) $(top_srcdir)/po $< $@ -d -u -c $(top_builddir)/po/.intltool-merge-cache</span></pre></td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="sect3">
<div class="titlepage"><div><div><h4 class="title">
<a name="id-1.3.7.7.3.4"></a>Installing the D-Bus service file</h4></div></div></div>
<p>To install the service file the following rule can be placed in the applets Makefile:</p>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td class="listing_lines" align="right"><pre>1
2
3
4
5
6</pre></td>
<td class="listing_code"><pre class="programlisting">servicedir <span class="gtkdoc opt">=</span> $<span class="gtkdoc opt">(</span>datadir<span class="gtkdoc opt">)/</span>dbus<span class="gtkdoc opt">-</span><span class="number">1</span><span class="gtkdoc opt">/</span>services
service_in_files <span class="gtkdoc opt">=</span> org<span class="gtkdoc opt">.</span>gnome<span class="gtkdoc opt">.</span>panel<span class="gtkdoc opt">.</span>applet<span class="gtkdoc opt">.</span>HelloWorldFactory<span class="gtkdoc opt">.</span>service<span class="gtkdoc opt">.</span>in
service_DATA <span class="gtkdoc opt">=</span> $<span class="gtkdoc opt">(</span>service_in_files<span class="gtkdoc opt">:.</span>service<span class="gtkdoc opt">.</span>in<span class="gtkdoc opt">=.</span>service<span class="gtkdoc opt">)</span>
org<span class="gtkdoc opt">.</span>gnome<span class="gtkdoc opt">.</span>panel<span class="gtkdoc opt">.</span>applet<span class="gtkdoc opt">.</span>HelloWorldFactory<span class="gtkdoc opt">.</span>service<span class="gtkdoc opt">:</span> $<span class="gtkdoc opt">(</span>service_in_files<span class="gtkdoc opt">)</span>
$<span class="gtkdoc opt">(</span>AM_V_GEN<span class="gtkdoc opt">)</span> sed <span class="gtkdoc opt">-</span>e <span class="string">"s|\@LOCATION\@|$(APPLET_LOCATION)|"</span> $<span class="gtkdoc opt">< ></span> $@</pre></td>
</tr>
</tbody>
</table>
</div>
</div>
<div class="sect3">
<div class="titlepage"><div><div><h4 class="title">
<a name="id-1.3.7.7.3.5"></a>Distribution and Cleanup</h4></div></div></div>
<p>Add panel-applet .in.in and service file to EXTRA_DIST and $(applet_DATA) $(applet_DATA).in to CLEANFILES</p>
<div class="informalexample">
<table class="listing_frame" border="0" cellpadding="0" cellspacing="0">
<tbody>
<tr>
<td class="listing_lines" align="right"><pre>1
2
3
4
5
6
7</pre></td>
<td class="listing_code"><pre class="programlisting">EXTRA_DIST <span class="gtkdoc opt">=</span> \
GNOME_MixerApplet<span class="gtkdoc opt">.</span>panel<span class="gtkdoc opt">-</span>applet<span class="gtkdoc opt">.</span>in<span class="gtkdoc opt">.</span>in \
$<span class="gtkdoc opt">(</span>service_in_files<span class="gtkdoc opt">)</span> \
$<span class="gtkdoc opt">(</span>ui_DATA<span class="gtkdoc opt">)</span> \
$<span class="gtkdoc opt">(</span>schemas_in_files<span class="gtkdoc opt">)</span>
CLEANFILES <span class="gtkdoc opt">=</span> $<span class="gtkdoc opt">(</span>applet_DATA<span class="gtkdoc opt">)</span> $<span class="gtkdoc opt">(</span>applet_DATA<span class="gtkdoc opt">).</span>in $<span class="gtkdoc opt">(</span>service_DATA<span class="gtkdoc opt">)</span> $<span class="gtkdoc opt">(</span>schemas_DATA<span class="gtkdoc opt">)</span></pre></td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</div>
<div class="footer">
<hr>Generated by GTK-Doc V1.25</div>
</body>
</html>
|