Subject: pkgviews-ification of packages (was: Re: net/gtk-gnutella and
To: Juan RP <juan@xtraeme.nopcode.org>
From: Lars Nordlund <lars.nordlund@hem.utfors.se>
List: tech-pkg
Date: 11/18/2004 01:04:42
Wed 2004-11-17 klockan 21:39 +0100 skrev Juan RP:
> On Wed, 17 Nov 2004 21:37:46 +0100
> Lars Nordlund <lars.nordlund@hem.utfors.se> wrote:
> 
> > Hello
> > 
> > Trying to use pkgviews on a netbsd-2-0/i386 computer but somethings
> > seems wrong:
> 
> gtk-gnutella is not ready for pkgviews.

Hmm..

After some investigation I found that my system had a mix of the
linkfarmed pkgviews packages and old-style packages. Did some reading on
the subject and then did the following change in /etc/mk.conf:

#PKG_INSTALLATION_PREFS=        pkgviews overwrite
PKG_INSTALLATION_PREFS= pkgviews

Cleared /usr/pkg and started building again. Hit the wall quite fast on
devel/cpuflags. This fixed it and made it installable/usable:

Index: Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/devel/cpuflags/Makefile,v
retrieving revision 1.81
diff -u -r1.81 Makefile
--- Makefile    14 Nov 2004 21:51:05 -0000      1.81
+++ Makefile    17 Nov 2004 22:53:32 -0000
@@ -16,6 +16,12 @@
 NO_CHECKSUM=   yes
 NO_CONFIGURE=  yes
 
+INSTALLATION_DIRS=     bin share/mk man/man1
+
+PKG_INSTALLATION_TYPES= overwrite pkgviews
+
+USE_BUILDLINK3=                yes
+
 FILES_SUBST+=  PREFIX="${PREFIX}"
 
 do-build:


I believe that the INSTALLATION_DIRS variable is needed because this
package is a bit sparse lacking its own Makefile containing installation
directives creating neccessary directories??

PKG_INSTALLATION_TYPES will tell the system that this package supports
pkgviews.

USE_BUILDLINK3 is needed for pkgviews to work. I think this package is
ok for buildlink3. It is almost equal to pkgtools/pkg_chk so I that is
inspiration.

Most other packages are already of buildlink3 type so often the
PKG_INSTALLATION_TYPES variable is enough.


Following this pattern I quickly fixed a lot of packages. emacs, mplayer
gtk2.. and so on.


What am I missing here? What is the catch?


Best regards
	Lars Nordlund