OVH Cloud OVH Cloud

Ports FreeBSD et packages NetBSD

4 réponses
Avatar
moi
Bonjour.

Je me pose une question sur le "portage" de logiciels pour NetBSD.

En effet, je me demande dans quelle mesure le système de ports FreeBSD
est compatible avec NetBSD: autrement dit, est-il judicieux, si un
logiciel a été porté sous FreeBSD, mais pas sous NetBSD, de copier le
répertoire correspondant de l'arbre des ports FreeBSD vers NetBSD,
editer éventuellement le Makefile et lancer la compilation sous NetBSD?

Si cette méthode ne marche pas, dans quelle mesure puis-je m'inspirer de
ce qui est fait sous FreeBSD pour obtenir un package sous NetBSD ?
Avez-vous déjà tenté l'expérience, et à quoi dois-je faire
particulièrement attention? Ou alors, dois-je tout simplement oublier
cette méthode et reprendre les sources d'origine et refaire le travail?

Merci pour vos réponses.

4 réponses

Avatar
Francis Gudin
Bonjour,

On 23-05-2006, moi wrote:
Bonjour.

Je me pose une question sur le "portage" de logiciels pour NetBSD.

En effet, je me demande dans quelle mesure le système de ports FreeBSD
est compatible avec NetBSD: autrement dit, est-il judicieux, si un
logiciel a été porté sous FreeBSD, mais pas sous NetBSD, de copier le
répertoire correspondant de l'arbre des ports FreeBSD vers NetBSD,
editer éventuellement le Makefile et lancer la compilation sous NetBSD?


Je doute fortement que ça marche aussi simplement: les deux systèmes
s'appuient sur un ensemble de makefiles, différents d'un système à
l'autre.

Si cette méthode ne marche pas, dans quelle mesure puis-je m'inspirer de
ce qui est fait sous FreeBSD pour obtenir un package sous NetBSD ?
Avez-vous déjà tenté l'expérience, et à quoi dois-je faire
particulièrement attention? Ou alors, dois-je tout simplement oublier
cette méthode et reprendre les sources d'origine et refaire le travail?


Il y a un outil:
cat /usr/pkgsrc/pkgtools/port2pkg/DESCR
A converter from a FreeBSD port to a NetBSD package.


port2pkg tries to convert FreeBSD ports to NetBSD packages. port2pkg
copies files from portsdir to pkgsrcdir (if it does not exist, the
pkgsrcdir is created), and tries to adapt the Makefile, patches and
some files to NetBSD format in pkgsrcdir.

port2pkg /mnt/ports/<category>/foo /usr/pkgsrc/<category>/foo

Before committing a package which has been transformed using this
utility, please check the results manually.



Après, un coup de pkg_lint (pkgtools/pkglint) et une lecture du guide
pkgsrc devrait permettre de régler les derniers détails.

Francis.

Avatar
espie
In article <44734e3e$0$24788$, moi wrote:
Bonjour.

Je me pose une question sur le "portage" de logiciels pour NetBSD.

En effet, je me demande dans quelle mesure le système de ports FreeBSD
est compatible avec NetBSD: autrement dit, est-il judicieux, si un
logiciel a été porté sous FreeBSD, mais pas sous NetBSD, de copier le
répertoire correspondant de l'arbre des ports FreeBSD vers NetBSD,
editer éventuellement le Makefile et lancer la compilation sous NetBSD?

Si cette méthode ne marche pas, dans quelle mesure puis-je m'inspirer de
ce qui est fait sous FreeBSD pour obtenir un package sous NetBSD ?
Avez-vous déjà tenté l'expérience, et à quoi dois-je faire
particulièrement attention? Ou alors, dois-je tout simplement oublier
cette méthode et reprendre les sources d'origine et refaire le travail?


Si tu regardes attentivement les arbres de ports/packages des 3 BSD, tu
constateras qu'il y a pas mal de similarites sur des ports individuels.
C'est effectivement frequent de s'appuyer sur le travail de portage
fait chez les voisins (perso, je regarde tres souvent les patch
applicables, par exemple).

Pour les details d'infrastructure, il y a suffisamment de divergences,
dont certaines importantes et non purement syntaxiques, pour qu'il soit
quasiment impossible de transporter un port d'un BSD a l'autre sans
lecture et reflexion (sauf pour des ports completement triviaux, auquel
cas tout se fait tres bien directement).

Avatar
moi
Merci (un peu tardif) à tous pour vos réponses.

Si tu regardes attentivement les arbres de ports/packages des 3 BSD, tu
constateras qu'il y a pas mal de similarites sur des ports individuels.
J'avais effectivement constaté une similarité dans les ports/packages

des deux systèmes d'ou ma question, un peu naive certes. Je me doutais
qu'une simple copie ne suffirait pas mais j'ai poussé le raisonnement
jusqu'au bout.

C'est effectivement frequent de s'appuyer sur le travail de portage
fait chez les voisins (perso, je regarde tres souvent les patch
applicables, par exemple).
Je m'en doutais un peu, et je pensais justement aux patchs.



Pour les details d'infrastructure, il y a suffisamment de divergences,
dont certaines importantes et non purement syntaxiques, pour qu'il soit
quasiment impossible de transporter un port d'un BSD a l'autre sans
lecture et reflexion (sauf pour des ports completement triviaux, auquel
cas tout se fait tres bien directement).


Y a-t-il des points particuliers auxquels veiller? Pour info, j'aimerais
avoir à disposition sous NetBSD les outils pour générer un noyau eCos.
Il a été porté sous FreeBSD mais pas sous NetBSD (à ma connaissance).
Savez-vous si quelqu'un travaille dessus?

Sinon vos réponses m'ont permis d'y voir plus clair et de voir qu'il ne
sera absolument pas inutile d'installer un FreeBSD pour étudier la
question plus en profondeur.

Juste pour info: est-il possible de faire tourner FreeBSD en DomU avec
Xen 2.0 ? Ca m'éviterait de réinstaller une machine dédiée à ça ...

Avatar
Eric Masson
Thierry Herbelot <------%------thierry------% writes:
'Lut,

il y a un étudiant qui s'y penche pendant le Google SoC, mais il n'y a rien
aujourd'hui.


Il y a le boulot de Kip Macy dans le repository Perforce, ca peut valoir
le coup d'y jeter un oeil.

Eric

--
Que puis-je faire d'un spam avec 750 Ko de pièces jointes, outre
déposer plainte à ce qui a été fait.
Là il y a notoirement abus sans que pour autant le B.I. soit dépassé.

-+- LCA in : Guide du Neuneu Usenetien - Le neuneu, c'est dépassé -+-