[Date Prev][Date Next] [Thread Prev][Thread Next] [Date Index] [Thread Index]

Re: Recompilation de programmes installés



On Tue, 10 Sep 2002 09:48:04 +0200
Georges Mariano <georges.mariano@inrets.fr> wrote:

> > Je suis en train d'écrire un truc du genre apt-build plus évolué
> > pour garder à jour un repository local de packages recompilés depuis
> > les sources, 
> 
> jusqu'ici c'est surtout une question d'organisation du matériel
> récupéré ...

Ca commence à marcher assez bien, l'idée est d'automatiser les tâches
répétitives: vérification des packages compilés pour lesquels il y a une
source plus récente, application des patches, installation temporaire
des build dependencies, déplacement dans un repository et génération
du fichier Packages.gz

L'objectif est de pouvoir garder certains packages à jour et recompilés
depuis leurs sources avec, en remplaçant :

apt-get update ; apt-get dist-upgrade

par :

apt-get update ; apt-source compile ; apt-get update ; apt-get dist-upgrade

Avec par exemple un fichier de configuration qui correspond à ca (pas de
critique sur la pertinence svp c'est pour tester !)

==========
verbose=5
ignore_uninstalled=1
compile.gcc_version="3.1"
compile.gcc_options=("-O3","-march=athlon")

source mozilla-snapshot
binary xmms
binary dillo
        compile.gcc_version="3.2"
        exec patch -p0 -i /etc/apt-source/patch-dillo-p0
source xfree86
source esound
source audiofile
source zlib
source libgd2
source gimp1.2
source most
==========

La commade status renvoie ca :

------------------|--------------------------------|----------|-------------------------|-------------------|------------|--------------------------------
 Source           | Binary                         | Archive  | Available source        | Compiled packages | Up-to-date | Installed version
------------------|--------------------------------|----------|-------------------------|-------------------|------------|--------------------------------
 esound           | esound-common                  | unstable | 0.2.28-2                | 0.2.28-2          | yes        | 0.2.28-2 (source)
 esound           | libesd0                        | unstable | 0.2.28-2                | 0.2.28-2          | yes        | 0.2.28-2 (source)
 esound           | libesd0-dev                    | unstable | 0.2.28-2                | 0.2.28-2          | yes        | 0.2.28-2 (source)
 gimp1.2          | gimp1.2                        | unstable | 1.2.3-2.3               | 1.2.3-2.3         | yes        | 1.2.3-2.3
 gimp1.2          | gimp1.2-nonfree                | unstable | 1.2.3-2.3               | 1.2.3-2.3         | yes        | 1.2.3-2.3
 gimp1.2          | libgimp1.2                     | unstable | 1.2.3-2.3               | 1.2.3-2.3         | yes        | 1.2.3-2.3
 gimp1.2          | libgimp1.2-dev                 | unstable | 1.2.3-2.3               | 1.2.3-2.3         | yes        | 1.2.3-2.3
....

Pour la commande compile :

------------------|---------------------------------|----------
 Source           | Outcome                         | Time (s)
------------------|---------------------------------|----------
 audiofile        | Success                         | 104
 dillo            | Success                         | 83
 esound           | Success                         | 88
 gimp1.2          | Success                         | 931
 libgd2           | Success                         | 66
 most             | Success                         | 17
 mozilla-snapshot | Error: dpkg-buildpackage failed | 135
 xfree86          | Success                         | 5557
 xmms             | Success                         | 353
 zlib             | Success                         | 43
------------------|---------------------------------|----------

C'est écrit en python, ca fait à peu près 2000 lignes, j'aurais fini dans 2 semaines.

Alain



Reply to: