J'ai une grande quantité de code source que nous maintenons, produisant de nombreux paquets Ubuntu différents. Tous ces paquets doivent être construits sur les versions Ubuntu LTS de Ubuntu 8.04 (Héron rustique) en avant. (Oui, je sais qu'ils sont vieux et non supportés. Ils sont destinés aux systèmes spatiaux, donc la mise à jour vers une nouvelle version n'est pas possible. Pourtant, je dois toujours maintenir le logiciel sur eux, tout en mettant à jour pour les nouvelles versions).
J'essaie d'obtenir la base de code entière et de la faire fonctionner sur Ubuntu 14.04 (Trusty Tahr). J'ai découvert à mon grand désarroi que l'emballage du code Python a complètement changé. A partir de Trusty, Python-support et Python-central ont disparu et dh_python2 est ce que vous devez utiliser .
Mon problème est de trouver un moyen de faire fonctionner debian/control
dossier. Le Build-Depends : pour les versions jusqu'à et y compris Ubuntu 12.04 (Pangolin précis) doit inclure python-central
alors que pour les versions 14.04 et suivantes, il doit inclure dh_python2
. Je n'ai trouvé aucune disposition pour le texte conditionnel dans le fichier de contrôle. J'ai essayé de trouver un moyen de contourner ce problème, mais jusqu'à présent, rien ne fonctionne.
Comment cela peut-il être fait ?
J'ai un système de buildbot étendu qui fonctionne et qui compile sur de nombreuses versions d'Ubuntu, CentOS et quelques versions d'OS X. La division en paquets ramifiés pour différentes versions briserait ce système. Je suis donc à la recherche d'une solution qui fonctionne sur un seul arbre source. J'essaie de trouver un crochet au début que je pourrais utiliser dans dpkg-buildpackage pour configurer les choses par version, mais je n'ai pas encore trouvé de solution.