2006-02-19 Paul Jakma <paul.jakma@sun.com>

	* depend.*: renamed to depend.*.in.
	* depend.*.in: Add version dependency.
	* Makefile.am: Generate depend.* from depend.*.in
	  Distribute the depend.*.in files rather than the depend.*
	  files.
	* quagga.init.in: Enable zebra if one of the link-state
	  daemons is started.
	  Restart method is not required - SMF handles that.
	* quagga.xml.in: Remove restart method details.

2005-11-04 Paul Jakma <paul.jakma@sun.com>

	* prototype.dev.in: lib/md5-gnu.h is now lib/md5.h

2005-08-16 Paul Jakma <paul.jakma@sun.com>

	* README.txt: point to the opensolaris.org sources for the SMF 
	  manifest class scripts. Make step 3 slightly more explicit about
	  what 'this directory' is.
	  
2005-06-15 Paul Jakma <paul.jakma@sun.com>

	* quagga.xml.in: Pass the FMRI to the method, removing need for
	  daemon_name property and deducing the FMRI.
	  remove the empty config_file and pid_file definitions, they just
	  make things difficult in the method script, cause it then has to
	  deal with svcprop returning "" for defined empty properties.
	  Remove daemon_name everywhere.
	* quagga.init.in: Take the FMRI as an argument
	  Remove deducing the FMRI from the defunct daemon_name property.
	  Use svcprop -q to test for presence of a property first.
	  Default vty_port to 0 and vty_addr to 127.1 if equivalent
	  SMF properties are not set.
	  Deduce the pid_file, we can infer it from @quagga_statedir@ I
	  think, it's probably not useful to allow it to be configurable
	  as a property anyway.
	  /var/run/ is on tmpfs on Solaris, so we probably will need
	  to create @quagga_statedir@ first run after boot.
	  Use @sbindir@, not /usr/local/sbin.
	* README.txt: updated to match changed SMF manifest and
	  its changed service, instance and property group names.
	  
2005-06-02 Paul Jakma <paul.jakma@sun.com>

	* quagga.xml.in: Fix mistake in bgpd definition. Change dependency
	  on zebra to optional. Remove the duplicated stability statements.
	* quagga.init.in: svcprop should check PACKAGE_TARNAME, not _NAME.
	  no need to check for config file either, there's already a
	  dependency in the manifest.

2005-05-13 Paul Jakma <paul.jakma@sun.com>

	* quagga.xml.in: Sigh, XML child elements are order-sensitive.
	* prototype.doc.in: info/dir doesnt get created always.. comment
	  out for now, likely needs to be done with an install method.
	* prototype.daemons.in: Move the Solaris 10 SMF specific stuff to
	  a seperate package.
	* depend.smf: dependencies for smf package
	* pkginfo.smf.tmpl.in: pkginfo for smf
	* prototype.smf.in: prototype for smf
	* Makefile.am: Add smf to pkg_names
	  
2005-04-26 Paul Jakma <paul.jakma@sun.com>

	* quagga.xml.in: New, better, single integrated manifest for all
	  the services, courtesy of alan.maguire@sun.com.
	* {{ospf,ospf6,rip,ripng,bgp}d,zebra}.xml.in: removed due to
	  previous
	* quagga.init.in: Use the package tarname for properties, use
	  the correct daemon name variable.
	* Makefile.am: Updated to match single manifest
	* prototype.daemons.in: ditto

2005-04-21 Paul Jakma <paul.jakma@sun.com>

	* Makefile.am: pkginfo.%.tmpl is a generated file, srcdir prefix
	  is not appropriate.

2005-04-13 Paul Jakma <paul.jakma@sun.com>

	* Makefile.am: {i,r}.manifest are (or will be) system provided files
	  and not in CVS, hence dont depend on them or distribute them.

2005-04-11 Paul Jakma <paul.jakma@sun.com>

	* (all) Initial check-in of files for building S10 packages
	* protototype.*.in: package prototype files for SysV packages
	* *.xml.in: SMF manifests for Quagga daemons
	* pkginfo.*.tmpl.in: daemon specific pkginfo, refererenced
	  by prototype files.
	* pkginfo.tmpl.in: Quagga common pkginfo bits
	* quagga.init.in: SMF method script
	* Makefile.am: Automake file for building packages
	* depend.*: Solaris 10 dependencies for packages, referenced by
	  prototype files.
	* .cvsignore: Add built files
	* README.txt: new file, package creation, install, usage notes.