NAME

nrpe/solaris/build - how to build a Solaris NRPE package from sources here.


NOTE

You don't need to do all this. You could also just fetch the prebuild binary package for your Solaris version, and install that one, using pkgadd(1).


For your copy-and-paste pleasure

Setting up the files

Download nrpe-1.9.tar.gz and nrpe-1.9_3.diff.gz. nrpe-1.9.tar.gz is the vanilla upstreams source, you might as well get it from upstream.

Unpack the source

 gunzip -c nrpe-1.9.tar.gz | tar -xf -

Now, using a sane patch(1), apply the patch, running

 gunzip -c nrpe-1.9_3.diff.gz | patch -p0

. Beware: Solaris patch, as shipped with Solaris 8, does not do this trick. A patch which works is e.g. Larry Wall's GNU patch available from ftp://ftp.gnu.org/pub/gnu/patch/ , and, in Solaris pkg format, from http://www.sunfreeware.com/ .

You could also perform this step on a nearby GNU/Linux or *BSD system, which likely has a right patch(1) installed.

Optionally: copy patched stuff around

If you need to build the package on a different platform as where you've patched it, pack the patched tarball together doing

 tar zcf nrpe-1.9.solaris.tar.gz nrpe-1.9

. Copy this file around, and unpack it again on the build platform

 tar zxf nrpe-1.9.solaris.tar.gz

.

Building the Solaris package

In the

 nrpe-1.9/

directory, run

 make -f solaris/Makefile

. (Both Solaris make (tested with SunOS 5.7 /usr/ccs/bin/make) and GNU make do fine.) This creates binary packages

 /var/tmp/nrpe-1.9_3-sol8-sparc-local

and, for your convenience

 /var/tmp/nrpe-1.9_3-sol8-sparc-local.gz

. If you're building on a SunOS 5.7 box, do

 make -f solaris/Makefile OSVERSION=sol7

to get a nice OS string in the package name.

Installing the package

On the platform where you'd like to run NRPE, install it doing

  pkgadd -d nrpe-1.9_3-sol8-sparc-local

.


RECREATING THE SOURCE PACKAGE

 tar zxf nrpe-1.9.tar.gz
 mv nrpe-1.9 nrpe-1.9.orig
 tar zxf nrpe-1.9.tar.gz
 cd nrpe-1.9
 mkdir solaris
 cp /some/where/{Makefile,README.Solaris,nrpe,pkginfo.in,postinstall,preinstall,prototype} solaris
 make -f solaris/Makefile source-stamp
 diff -Pdur nrpe-1.9.orig nrpe-1.9 | gzip -c > nrpe-1.9_3.diff.gz

Your diff(1) needs to understand the -P flag. Solaris diff(1) does not. GNU diff, from the GNU diffutils package, ftp://ftp.gnu.org/pub/gnu/diffutils/ , does.


VERSION

$Id: build.pod 1507 2003-12-23 15:39:20Z joostvb $


COPYRIGHT

Copyright (C) 2003 Tilburg University

This document is free software; you can redistribute it and/or modify it under the terms of the GNU GPL, available on-line at http://www.gnu.org/copyleft/gpl.html . There is NO WARRANTY.


AUTHOR

Joost van Baal <joostvb.uvt.nl>