auto-plist , almost same idea as with plist in Tools.

Jeremy Messenger mezz7 at cox.net
Wed May 18 06:55:07 GMT 2005


Hello folks,

I wrote it back in 2003 (hide in my machine :-)), but recently I have  
decided to let others know and did a near rewrite, then ahze has helped me  
to improvement on it a lot. marcus has helped me some too. I use it very  
often when I work with ports and it's always useful for me, so I think  
it's time to release it in public. What the hell is it? Let me copy and  
paste part from the auto-plist(8) that I wrote it tonight.

===================================
The auto-plist script automates the procedure of generating and editing
port's plist.  It also will informing you what you need to edit plist and
Makefile if there is something that can't be done by automatically.  Take
MAN, INFO, GCONF_SCHEMAS, and etc as for example.  The goal of auto-plist
is to not edit anything outside plist such as Makefile, distinfo, and
other than plist file but to collect the information for plist.

You can't run auto-plist outside the port directory, because it is heavy
depend on Makefile such as pick up the UNIQUENAME, MTREE_FILE, NO_MTREE,
PLIST_SUB, and other variables.

Current, auto-plist has the following features:

	o   Remove mtree from plist.
	o   Support NO_MTREE define.
	o   Convert FOOBAR to %%FOOBAR%%, current it will do on DATADIR,
	    DOCSDIR, EXAMPLESDIR, SITE_PERL, PERL_VER, PERL_ARCH,
	    PYTHON_INCLUDEDIR, PYTHON_SITELIBDIR, PYTHON_LIBDIR, and
	    PYTHON_VERSION.
	o   Create a build log.
	o   Remove share/nls/(POSIX & en_US.US-ASCII), gconf, info/dir, and
	    libdata/pkgconfig.
	o   Convert missing locale directory that isn't in mtree support.
	    ie: @unexec rmdir %D/share/locale/* 2> /dev/null || true
	o   The 'FYI:' message for info, man, schemas and omf exist in
	    plist.
	o   Check if .desktop has MimeType, then add '@(un)exec...update-
	    desktop-database..'  in the plist. Also, add the 'FYI:' message
	    to let us to know that it has MimeType.
===================================

http://www.marcuscom.com:8080/cgi-bin/cvsweb.cgi/portstools/auto-plist/

There is a small known issue like if PLIST_SUB has something weird then  
the result auto-plist will not work very well. You can check in  
editors/abiword for example. The editors/abiword has '"ABIVERSION=2.2"' in  
it that make auto-plist not work. I did a fix in abiword-devel by remove  
the quote like this below to make auto-plist works.

-PLIST_SUB+=	"ABIVERSION=${ABIVERSION}"
+PLIST_SUB+=	ABIVERSION=${ABIVERSION}

If anyone find any bug, have any suggest, patch or whatever related with  
auto-plist, please report or let me know at mezz at FreeBSD.org. Thanks.

BTW: Thanks to marcus for host it in MarcusCom CVS.

BTW2: Keep in mind, it's near auto but there is very small part you still  
have to edit it by manual. Some don't have or do have to edit, depend on  
port.

Cheers,
Mezz


-- 
mezz7 at cox.net  -  mezz at FreeBSD.org
FreeBSD GNOME Team
http://www.FreeBSD.org/gnome/  -  gnome at FreeBSD.org


More information about the freebsd-ports mailing list