Muy bien, hace un tiempo atrás explique la forma de como construir archivos rpm a partir de su código fuente. Ahora la idea es, construir el mismo rpm pero haciendo unas mejoras a nuestro código fuente, es decir; generar un parche para luego en la creación del rpm se pueda parchar el código anterior con las mejoras realizadas.
Manos a la obra, si bien es cierto; toda tarea nueva tiene un poco de complejidad, pero les recuerdo que casi nada es imposible. Para recordar el código fuente que debemos mejorar, debemos ir a la Parte Uno de Construir RPM.
Una vez que ya hemos recordado, haremos lo siguiente:
Al código fuente original, le vamos a sacar una copia con el comando:
cp calculadora-1.0 calculadora-1.0a
Luego de haber sacado nuestra copia, editamos el archivo calculadora.c y agregamos las siguientes líneas:
case 'd':
printf("Division\n");
printf("Ingrese Valor A:\t");
scanf("%f",&a);
printf("Ingrese Valor B:\t");
scanf("%f",&b);
if(a<b)
printf("Resultado de operacion es %f",a/b);
break;
Ahora si bien es cierto, hasta ahora no se a hecho mayor cosa; hemos editado del directorio calculadora-1.0a el archivo calculadora.c. Lo que tendremos que hacer es crear un parche de código con el comando diff.
diff -uNr calculadora-1.0 calculadora-1.0a > calculadora-1.0.patch
Una vez realizado los pasos anteriores, lo único a cambiar para que se nos pueda crear el archivo rpm es el archivo spec.
#
# SPEC file for calculadora program
#
Summary: Simple Calculadora
Name: calculadora
Version: 1.0
Release: 1
License: GPL
Group: Applications/Useless
Source: calculadora-1.0.tar.bz2
Distribution: Useless Linux 1.0
Vendor: Zepolar IT Services
Packager: zepolar
BuildRoot: /var/tmp/calculadora-1.0
#Definicion de codigo
source: calculadora-1.0.tar.bz2
#Definicion de parche
patch: calculadora-1.0.patch
%description
Este programa es una calculadora
%prep
%patch -p1
%setup
%build
make
%install
make install DESTDIR=${RPM_BUILD_ROOT}
%files
/usr/bin/calculadora
Si somos buenos observadores, nos daremos cuenta que todo lo que esta con negrita es lo que se ha cambiado del archivo spec original.
Para que todo funcione bien, tanto el codigo calculadora-1.0.tar.bz2 y calculadora-1.0.patch deben estar en el directorio /usr/src/redhat/SOURCES.
Para luego ejecutar el comando:
rpmbuild -ba calculadora.spec
Si todo va bien hasta aquí, luego de terminar de ejecutarse el comando debemos tener la siguiente salida en la terminal:
Escrito: /usr/src/redhat/SRPMS/calculadora-1.0-1.src.rpm
Escrito: /usr/src/redhat/RPMS/i386/calculadora-1.0-1.i386.rpm
Escrito: /usr/src/redhat/RPMS/i386/calculadora-debuginfo-1.0-1.i386.rpm
Como pueden observar se creó con éxito el rpm y parchado. Si tienen algun comentario o retroalimentación no duden en comentarmelo. Hasta una nueva oportunidad!!!!
Filed under: Linux, Software-Libre | Etiquetado: Linux, Software-Libre | Deja un Comentario »