Guía del desarrollador para la creación de paquetes de aplicaciones

El archivo prototype

Por ejemplo, este caso práctico usa la distribucion jerárquica de los objetos de paquete que se muestran en la figura siguiente.

Figura 5–1 Estructura jerárquica de directorios de paquetes

El contexto describe el gráfico.

Los objetos el paquete se instalan en los mismos lugares que en el directorio pkg superior. Los módulos del controlador (sst y sst.conf) se instalan en /usr/kernel/drv y el archivo de inclusión se instala en /usr/include/sys/scsi/targets. Los archivos sst, sst.conf y sst_def.h son objetos absolutos. El programa de prueba, sstest.c, y su directorio SUNWsst, son reubicables; su ubicación de instalación se configura mediante el parámetro BASEDIR.

Los demás componentes del paquete (todos los archivos de control) se encuentran en el directorio superior del paquete en la máquina de desarrollo, excepto la secuencia de comandos de clase sed. Éste recibe el nombre de devlink.tab después del archivo al que modifica, y se sitúa en etc, el directorio que contiene el archivo devlink.tab real.

En el directorio pkg, ejecute el comando pkgproto del modo siguiente:


find usr SUNWsst -print | pkgproto > prototype

La salida del comando anterior tiene este aspecto:

d none usr 0775 pms mts
d none usr/include 0775 pms mts
d none usr/include/sys 0775 pms mts
d none usr/include/sys/scsi 0775 pms mts
d none usr/include/sys/scsi/targets 0775 pms mts
f none usr/include/sys/scsi/targets/sst_def.h 0444 pms mts
d none usr/kernel 0775 pms mts
d none usr/kernel/drv 0775 pms mts
f none usr/kernel/drv/sst 0664 pms mts
f none usr/kernel/drv/sst.conf 0444 pms mts
d none SUNWsst 0775 pms mts
f none SUNWsst/sstest.c 0664 pms mts

Este archivo prototype aún no está completo. Para completar este archivo, necesita hacer las modificaciones siguientes:

Éste es el archivo prototype final:

i pkginfo
i postinstall
i preremove
i copyright
e sed /etc/devlink.tab ? ? ?
f none /usr/include/sys/scsi/targets/sst_def.h 0644 bin bin
f none /usr/kernel/drv/sst 0755 root sys
f none /usr/kernel/drv/sst.conf 0644 root sys
d none SUNWsst 0775 root sys
f none SUNWsst/sstest.c 0664 root sys

Los signos de interrogación en la entrada para la secuencia de comandos sed indican que los permisos de acceso y la propiedad del archivo existente en la maquina de instalación no se deben cambiar.