The following is an example Makefile for a FreeBSD GNOME port.
# New ports collection makefile for: gnomeapp # Date created: 27 December 2003 # Whom: Some GNOME User <freebsd-gnome@FreeBSD.org> # # $FreeBSD: www/en/gnome/docs/example-Makefile.sgml,v 1.10 2006/05/29 18:12:05 mezz Exp $ # # For this example, assume there was already a gnomeapp in the tree, and that this # is the GTK+-2 version (i.e. gnomeapp2 versus gnomeapp). PORTNAME= gnomeapp2 PORTVERSION= 2.14.2 MASTER_SITES= ${MASTER_SITE_GNOME} MASTER_SITE_SUBDIR= sources/${PORTNAME:S/2//}/${PORTVERSION:C/^([0-9]+\.[0-9]+).*/\1/} DISTNAME= ${PORTNAME:S/2//}-${PORTVERSION} DIST_SUBDIR= gnome2 MAINTAINER= gnome@FreeBSD.org COMMENT= A GNOME app that does some stuff USE_BZIP2= yes USE_X_PREFIX= yes GNU_CONFIGURE= yes # NOTE: if the port needs ltverhack, this must be USE_AUTOTOOLS=libtool:15 USE_GMAKE= yes # same with GNU make # This is for i18n: CONFIGURE_ENV+= CPPFLAGS="-I${LOCALBASE}/include" \ LDFLAGS="-L${LOCALBASE}/lib" USE_GNOME= gnomehack gnometarget 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 <bsd.port.pre.mk> .if ${HAVE_GNOME:Mgnomepanel}!="" USE_GNOME+= gnomepanel CONFIGURE_ARGS+= --with-gnome PKGNAMESUFFIX= -gnome .else CONFIGURE_ARGS+= --without-gnome .endif # Given all the above code, the package name is either "gnomeapp2-gnome-2.14.2" or # "gnomeapp2-2.14.2", depending upon whether you want gnomepanel support. The downloaded # distfile will be "gnomeapp-2.14.2.tar.bz2." .include <bsd.port.post.mk>