Xfennec wrote:
Attention, les fichiers sont invalides (tronqués ?) sur le mirroir, et je n'arrive pas à atteindre ta machine.
Tu peux télécharger l'archive complète (la taille correspond alors elle doit être complète) qui contient tout et même ce qui est innutile (en gros les scripts python):
http://silkensedai.free.fr/new-raydium/raydium24012005+lib.tar.gzXfennec wrote:
Sinon, j'ai essayé de regarder le principe à partir des rares fichiers que j'arrive à lire, et il me manque des infos pour comprendre, je pense :
- HEADER_MAIN ? DONT_INCLUDE_HEADERS ? Quels rôles précis ?
DONT_INCLUDE_HEADERS est définie lorsque on fait une compilation clasique (comme avant).
Si cette constante n'est pas définie alors, chaque fichier .c inclus les fichiers headers qui serviront à la compilation séparée
HEADER_MAIN est la partie la moins jolie. En fait, e fichier main.c contient quantité de définitions et seulement deux affectations de variables (raydium_version et raydium_osd_ega[]). La seule chose qui diffère alors entre main.c et main.h c'est l'affectation ou non des valeurs à ces variables.
Si je faisait une copie de main.c en le placant dans headers/main.h, j'avais des problèmes de compilation (sans doute liés au dossier qui n'était plus le même). Cette constante est donc un moyen détourné pour placer le fichier .h dans le dossier raydium (du coup ca marche).
En fait cest simple:
- si HEADER_MAIN est définie: main.c ne fait pas d'affectation de variables et joue le role de main.h
- si HEADER_MAIN n'est pas définie, main.c se comporte normalement (avec affectation des variables)
Je te l'accorde, c'est à modifier car c'est pas beau.
Xfennec wrote:
- L'utilisation des scripts make_header, make_makefile, etc est toujours nécessaire ? N'est-il pas possible "d'officialiser" les .h ?
Non, ce nest pas nécessaire. pour compiler, on utilise simplement le Makefile déja généré. le travail principal a été d'inclure au cas par cas (vraimment) les fichiers headers. Je n'ai pas eu a retoucher les fichiers headers autogénérés. (sauf main.c/main.h)
Xfennec wrote:
- Pourquoi "raydium_osd_ega[]" bénéficie-t'il d'un traitement particulier dans main.c ?
Tout simplement car il y avait une affectation et que sinon, lors de la compilation du .so, il y avait redéfinition de symbole.
Xfennec wrote:
Quote:
En passant, le lien ...raydium200105.tar.gz que tu m'as donné au dessus, c'est la version la plus récente de raydium ? Serieusement, c'est quoi ?
C'était bien la dernière version à cette date, mais numérotée à l'envers ("20/01/05")

Moi qui pensait à mai 2001 ... lol.
Voila, ca éclaire ?
Mildred