Red Hat Training
A Red Hat training course is available for RHEL 8
4.2.5. Macros de distribución RPM
Diferentes distribuciones proporcionan diferentes conjuntos de macros RPM recomendados basados en la implementación del lenguaje del software que se está empaquetando o en las directrices específicas de la distribución.
Los conjuntos de macros RPM recomendados suelen proporcionarse como paquetes RPM, listos para ser instalados con el gestor de paquetes yum
.
Una vez instalados, los archivos de macros se encuentran en el directorio /usr/lib/rpm/macros.d/
.
Para mostrar las definiciones de las macros RPM en bruto, ejecute:
rpm --showrc
La salida anterior muestra las definiciones de macros RPM en bruto.
Para determinar qué hace una macro y cómo puede ser útil al empaquetar RPMs, ejecute el comando rpm --eval
con el nombre de la macro utilizada como argumento:
rpm --eval %{_MACRO}
Para más información, consulte la página de manual rpm
.
4.2.5.1. Creación de macros personalizadas
Puede anular las macros de distribución en el archivo ~/.rpmmacros
con sus macros personalizadas. Cualquier cambio que realices afectará a todas las compilaciones de tu máquina.
No se recomienda definir nuevas macros en el archivo ~/.rpmmacros
. Dichas macros no estarían presentes en otras máquinas, donde los usuarios podrían intentar reconstruir su paquete.
Para anular una macro, ejecute :
%_topdir /opt/some/working/directory/rpmbuild
Puede crear el directorio del ejemplo anterior, incluyendo todos los subdirectorios a través de la utilidad rpmdev-setuptree
. El valor de esta macro es por defecto ~/rpmbuild
.
%_smp_mflags -l3
La macro anterior se utiliza a menudo para pasar a Makefile, por ejemplo make %{?_smp_mflags}
, y para establecer un número de procesos concurrentes durante la fase de construcción. Por defecto, se establece en -jX
, donde X
es un número de núcleos. Si se altera el número de núcleos, se puede acelerar o ralentizar la construcción de paquetes.