aboutsummaryrefslogtreecommitdiff
path: root/en/gnome/docs/gnome_porting.sgml
blob: abce3be7b4576fe1e66310e18ff37d5576036185 (plain) (blame)
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
<!DOCTYPE HTML PUBLIC "-//FreeBSD//DTD HTML 4.01 Transitional-Based Extension//EN" [
<!ENTITY base CDATA "../..">
<!ENTITY date "$FreeBSD: www/en/gnome/docs/gnome_porting.sgml,v 1.20 2006/05/29 18:12:05 mezz Exp $">
<!ENTITY title "FreeBSD GNOME Project: GNOME Desktop-Independent Components">
<!ENTITY % navinclude.gnome "INCLUDE">
]>
<html>
  &header;

		<p> To see how to utilize these components, please examine the
		  <a href="example-Makefile.html">example Makefile</a>.
		</p>

<!-- Begin USE_GNOME components list -->
	  <table class="tblbasic" summary="GNOME desktop-independent components">
		    <tr>
			  <th>COMPONENT</th>
			  <th>ASSOCIATED PROGRAM</th>
			  <th>IMPLIED COMPONENTS</th>
			</tr>

			<tr>
			  <td><tt>esound</tt></td>
			  <td><tt>audio/esound</tt></td>
			  <td><tt>&nbsp;</tt></td>
			</tr>

			<tr>
			  <td><tt>gnomehack</tt></td>
			  <td colspan="2"><tt>gnomehack</tt> makes common GNOME
			    Makefile substitutions that nearly every GNOME port
			    requires to fit into the proper mtree structure.
			  </td>
			</tr>

			<tr>
			  <td><tt>gnomehier</tt></td>
			  <td colspan="2"><tt>gnomehier</tt> installs all the
			    directories needed for both the GNOME 1 and 2 desktops.
				Only include this option if your port calls <tt>@dirrm</tt>
				on one of the directories listed in the plist for
				<tt>gnomehier</tt>.
			  </td>
			</tr>

			<tr>
			  <td><tt>gnomemimedata</tt></td>
			  <td><tt>misc/gnome-mime-data</tt></td>
			  <td><tt>gnomehier pkgconfig</tt></td>
			</tr>

			<tr>
			  <td><tt>gnomeprefix</tt></td>
			  <td><tt>gnomeprefix</tt> sets some CONFIGURE_ARGS
			    to ensure data is placed properly within the GNOME hierarchy.
			  </td>
			  <td><tt>gnomehier</tt></td>
			</tr>

			<tr>
			  <td><tt>gnometarget</tt></td>
			  <td><tt>gnometarget</tt> sets
			    <tt>${CONFIGURE_TARGET}</tt> for ports whose
				<tt>configure</tt> script does not figure it out automatically.
			  </td>
			  <td><tt>&nbsp;</tt></td>
			</tr>

			<tr>
			  <td><tt>intlhack</tt></td>
			  <td><tt>intlhack</tt> registers a dependency upon
			    <tt>textproc/intltool</tt> and patches broken
				<tt>intltool-merge.in</tt> implementations.
			  </td>
			  <td><tt>intltool</tt></td>
			</tr>

			<tr>
			  <td><tt>intltool</tt></td>
			  <td><tt>intltool</tt> registers a
			    BUILD_DEPENDS on
			    <tt>textproc/intltool</tt>.
			  </td>
			  <td><tt>&nbsp;</tt></td>
		        </tr>

			<tr>
			  <td><tt>lthack</tt></td>
			  <td><tt>lthack</tt> prevents the installation of .la
			    files and ensures that <tt>${PTHREAD_LIBS}</tt>
			    will be passed to the linker.
			    <b>NOTE:</b> lthack is <b>DEPRECATED</b>,
			    and <tt>USE_AUTOTOOLS=libtool:15</tt> should be
			    used instead.  See the <a
			    href="porting.html#libtool">libtool
			    section</a> of the porting guide for more
			    details.
			  </td>
			  <td><tt>&nbsp;</tt></td>
			</tr>

			<tr>
			  <td><tt>ltverhack</tt></td>
			  <td><tt>ltverhack</tt> noralizes shared
			    object versions so that they do not change
			    needlessly.  Using <tt>ltverhack</tt>
			    keeps shared object versions in line with
			    what they should be and what they end up
			    being on other operating systems.  In
			    order to use <tt>ltverhack</tt> the port
			    must define
			    <tt>USE_AUTOTOOLS=libtool:15</tt>.
			  </td>
			  <td><tt>&nbsp;</tt></td>
			</tr>

			<tr>
			  <td><tt>pkgconfig</tt></td>
			  <td><tt>pkgconfig</tt> registers a dependency upon
			    <tt>devel/pkg-config</tt> to make sure it is installed.
			  </td>
			  <td><tt>&nbsp;</tt></td>
			</tr>

			<tr>
			  <td><tt>referencehack</tt></td>
			  <td><tt>referencehack</tt> is designed for
			    ports that install API reference
			    documentation.  These ports should use
			    <tt>referencehack</tt> then another port
			    with a <tt>-reference</tt> suffix should
			    be created to install this documentation.
			    See <tt>devel/glib20</tt> and
			    <tt>devel/glib20-reference</tt> for an
			    example.</td>
			  <td><tt>&nbsp;</tt></td>
			</tr>

		  </table>
<!-- End GNOME-related Makefile macros -->

          <p>If you still need help with your port, have a look at some of
	    the <a href="/ports/gnome.html">existing ports</a> for examples.
	    The <a href="mailto:&email;@FreeBSD.org">freebsd-gnome mailing
	    list</a> is also there for you.</p>

  &footer;
  </body>
</html>