Primera página Regresar Continuar Última página Texto

Notas:


Una de las particularidades de la construcción de un RPM, es que el código fuente que se distribuye en un archivo .src.rpm o desde el cual se parte para la construcción de los binarios debe permanecer inalterado, ya que si se necesita modificar algo del programa internamente, en el momento de la construcción del RPM dichos cambios son aplicados mediante archivos de parches.

Dicho esto, la sección %prep del archivo .spec se usa para definir las reglas de extracción del fichero con el código fuente con el comando %setup y además la aplicación de parches de ser necesario con el comando %patch, es decir, la preparación del código fuente a ser usado en la construcción del RPM.

Seguido a la instrucción %prep a menudo va el comando %setup que se considera parte de la sección %prep, con dicho comando se desempaqueta el código fuente, los modificadores más comúnmente usados de este comando son:

-q : Suprime la salida innecesaria. Este es comúnmente utilizado.

-n nombre : Si el archivo tarball Fuente se desempaqueta en un directorio cuyo nombre no es el nombre del RPM, este modificador puede utilizarse para especificar el nombre del directorio correcto. Por ejemplo, si el archivo tarball se desempaqueta en el directorio FOO, use «%setup -q -n FOO»

-c nombre : Si el archivo tarball Fuente se desempaqueta en varios directorios en lugar de un solo directorio, este modificador puede utilizarse para crear un directorio llamado nombre y luego descomprimir en él.

Desde la versión 4.4.2 de RPM están disponibles el par de macros %{patches} y %{sources} y son útiles si usted tiene una gran lista de parches o fuentes:

for p in %{patches}; do

...

done

Una de las misiones de un empaquetador Fedora es distribuir con su paquete la mínima cantidad de parches de forma tal de que cuando por necesidad se tenga que usar alguno, el mismo se debe tratar de que forme parte de la siguiente versión del código fuente del programa para que no sea necesario en una próxima construcción del rpm.