Give an example Makefile for a GNOME port. Hopefully this will make

porting gnome apps a bit less daunting.
This commit is contained in:
Adam Weinberger 2003-12-28 03:06:00 +00:00
parent 9625d4aa95
commit e2d3b7fdde
Notes: svn2git 2020-12-08 03:00:23 +00:00
svn path=/www/; revision=19313
3 changed files with 76 additions and 2 deletions

View file

@ -1,4 +1,4 @@
# $FreeBSD: www/en/gnome/docs/Makefile,v 1.10 2003/09/18 16:13:26 bland Exp $
# $FreeBSD: www/en/gnome/docs/Makefile,v 1.11 2003/12/27 23:03:10 marcus Exp $
.if exists(../Makefile.conf)
.include "../Makefile.conf"
@ -15,5 +15,6 @@ DOCS+= bugging.sgml
DOCS+= volunteer.sgml
DOCS+= knownissues.sgml
DOCS+= develfaq.sgml
DOCS+= example-Makefile.sgml
.include "${WEB_PREFIX}/share/mk/web.site.mk"

View file

@ -0,0 +1,68 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" [
<!ENTITY base CDATA "../..">
<!ENTITY date "$FreeBSD$">
<!ENTITY title "FreeBSD GNOME Project: Example GNOME Makefile">
<!ENTITY % gnomeincludes SYSTEM "../includes.sgml"> %gnomeincludes;
<!ENTITY % includes SYSTEM "../../includes.sgml"> %includes;
]>
<html>
&header;
<p>The following is an example Makefile for a FreeBSD GNOME port.</p>
<pre>
# New ports collection makefile for: gnomeapp
# Date created: 27 December 2003
# Whom: Some GNOME User &lt;&email;@FreeBSD.org&gt;
#
# $FreeBSD$
#
# For this example assume there was already a gnomeapp in the tree, and this
# is the GTK+-2 version (i.e. gnomeapp2 versus gnomeapp).
PORTNAME= gnomeapp2
PORTVERSION= &gnomever;.2
MASTER_SITES= ${MASTER_SITE_GNOME}
MASTER_SITE_SUBDIR= sources/${PORTNAME:S/2//}/&gnomever;
DISTNAME= ${PORTNAME:S/2//}-${PORTVERSION}
DIST_SUBDIR= gnome2
MAINTAINER= &email;@FreeBSD.org
COMMENT= A GNOME app that does some stuff
USE_BZIP2= yes
USE_X_PREFIX= yes
GNU_CONFIGURE= yes # most GNOME apps need GNU configure
USE_GMAKE= yes # same with GNU make
# This is for i18n:
CONFIGURE_ENV+= CPPFLAGS="-I${LOCALBASE}/include" \
LIBS="-L${LOCALBASE}/lib"
USE_GNOME= gnomehack gnomeprefix gnometarget lthack gtk20
# This application can dock in the GNOME panel, or it can not.
# But there's no need to build support for it if the GNOME panel
# libraries are not installed, so only build GNOME panel support
# if the gnomepanel port is already installed.
WANT_GNOME= yes
.include &lt;bsd.port.pre.mk&gt;
.if ${HAVE_GNOME:Mgnomepanel}!=""
USE_GNOME+= gnomepanel
CONFIGURE_ARGS+= --with-gnome
PKGNAMESUFFIX= -gnome
.else
CONFIGURE_ARGS+= --without-gnome
.endif
.include &lt;bsd.port.post.mk&gt;
# Given all the above code, the package name is either "gnomeapp2-&gnomever;.2-gnome" or
# "gnomeapp2-&gnomever;.2", depending upon whether you want gnomepanel support. The downloaded
# distfile will be "gnomeapp-&gnomever;.2.tar.bz2."
</pre>
&footer;
</body>
</html>

View file

@ -1,6 +1,6 @@
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN" [
<!ENTITY base CDATA "../..">
<!ENTITY date "$FreeBSD: www/en/gnome/docs/porting.sgml,v 1.33 2003/09/20 18:56:25 adamw Exp $">
<!ENTITY date "$FreeBSD: www/en/gnome/docs/porting.sgml,v 1.34 2003/10/02 22:01:04 marcus Exp $">
<!ENTITY title "FreeBSD GNOME Project: How To Make a Port">
<!ENTITY % gnomeincludes SYSTEM "../includes.sgml"> %gnomeincludes;
<!ENTITY % includes SYSTEM "../../includes.sgml"> %includes;
@ -14,6 +14,11 @@
<a href="http://www.freebsd.org/doc/en_US.ISO8859-1/books/porters-handbook/index.html">FreeBSD Porter's Handbook</a>.
</p>
<h2>Example Makefile</h2>
<p>There is an <a href="example-Makefile.html">example Makefile</a> for a GNOME
port, which uses many of the tricks outlined in this document. Please feel free to
use it as a guide for creating your own ports.</p>
<h2>GNOME Makefile Macros</h2>
<p>GNOME applications under FreeBSD use the <b>USE_GNOME</b>
infrastructure. To specify which components of the GNOME