pour le make, on peut le faire, mais l'intérêt de l'ide c'est que le pseudo-make est fait automatiquement.
Cependant comme déjà dit, gcc permettrait de détecter les dépendances, et donc de faire le makefile à la volée ...
GoldenCrystal :
pourquoi ne pas simplement remplacer tigcc par un gcc68k classique ?
Surtout quand la toolchain fonctionne très bien.
Encore une "suggestion" inutilisable et inutile de GoldenCrystal. 




GoldenCrystal
: Je trouve que le système du linker custom est une énorme régression
ainsi que l'implémentation de la lib qui devient de plus en plus complexe à chaque nouvelle calculatrice
nitro
: Et surtout en utilisant des outils custom et des extensions custom, ça ferme la porte à l'opérabilité avec les outils existants et/ou standards, bref du beau "embrace & extend" typique.
Kevin Kofler
:nitro
: Et surtout en utilisant des outils custom et des extensions custom, ça ferme la porte à l'opérabilité avec les outils existants et/ou standards, bref du beau "embrace & extend" typique.
Hein? Lesquels? make (la question d'origine) marche très bien avec l'exécutable tigcc.
Kevin Kofler :ld-tigcc ne me convient pas parce que c'est un outil non standard, parce qu'il utilise des symbboles pour dfinir son fonctionnement, parce que c'est une dll, parce qu'il traffique le code, parce qu'il ne génère rien si tu ne définis pas de symbole _ti*** ou _v200, parce que tu n'as pas accès à un stub standard en asm sans définir des symboles au nom immonde... etc...
Sinon:
GoldenCrystal
: Je trouve que le système du linker custom est une énorme régression
Pourrais-tu être plus explicit et constructif? Pourquoi ld-tigcc ne te convient-il pas? Parce qu'il n'y a pas écrit "GNU" devant (sachant qu'il est quand-même sous GPL)? Ou parce qu'il lui manque une fonctionnalité concrète dont tu as besoin (laquelle)? Et ne trouves-tu pas que les fonctionnalités supplémentaires de ld-tigcc par rapport à GNU ld (optimisation des relogements, réagencement des sections, mise en commun des constantes tout en travaillant avec du COFF, importations globales, meilleure gestion des sections de taille impaire etc.) soient utiles?
ainsi que l'implémentation de la lib qui devient de plus en plus complexe à chaque nouvelle calculatrice
Hein? Les changements qu'on a effectués pour la Titanium:
* EXECUTE_IN_GHOST_SPACE gère les HW >=3 par un test du HW3Patch.
* dll.c gère HW_VERSION!=2 correctement.
* Hack +0x40000 pour les interruptions remplacé par du bclr/bset.b #2,0x600001.
* 0x600000 remplacé par 0xE00000 dans les calculs de ROM_base.
* CALCULATOR a été redéfini en mode kernel pour tenir compte de la décision unilatérale de PpHd de mettre CALCULATOR==-1 sur Titanium. Rien de cela ne rend la lib "plus complexe".
ça s'adresse pas à moi, mais -> l'éxécutable tigcc n'est pas standard.nitro
: Et surtout en utilisant des outils custom et des extensions custom, ça ferme la porte à l'opérabilité avec les outils existants et/ou standards, bref du beau "embrace & extend" typique.
Hein? Lesquels? make (la question d'origine) marche très bien avec l'exécutable tigcc.
nitro
: Non je parle surtout du "C" qui n'est plus vraiment du C (constantes en binaire par exemple, et autres extensions GNU et ex-GNU)
du format "COFF" qui n'est plus non plus du COFF, du coup les outils d'analyse sur les .o ne marchent plus, les débuggeurs non plus (cassé TI-GDB), les linkers des autres compilos 68k/COFF ne peuvent plus utiliser les .o de TIGCC.
GoldenCrystal
: ld-tigcc ne me convient pas parce que c'est un outil non standard,
parce qu'il utilise des symbboles pour dfinir son fonctionnement,
parce que c'est une dll,
parce qu'il traffique le code,
parce qu'il ne génère rien si tu ne définis pas de symbole _ti*** ou _v200,
parce que tu n'as pas accès à un stub standard en asm sans définir des symboles au nom immonde...
3 - Une macro n'est pas la bonne solution.
ça s'adresse pas à moi, mais -> l'éxécutable tigcc n'est pas standard.
Kevin KoflerIl n'est pas différent, mais c'est moins génant car les extensions sont en voie de disparition, et un grand nombre de programmes (surtout ceux qui sont multiplateforme) ne les utilise pas. Néanmoins c'est bien embêtant car les compilateurs qui veulent être compatibles avec les programmes qui utilisent ces extensions (ICC par exemple) sont obligés d'accepter ce dialecte de C.
:nitroEt en quoi GCC est-il différent?
: Non je parle surtout du "C" qui n'est plus vraiment du C (constantes en binaire par exemple, et autres extensions GNU et ex-GNU)
Et TIGCC n'est pas le seul compilateur qui accepte les 0b..., TCC les accepte aussiAh, si TCC les accepte alors, ça change tout.
L'utilisation des extensions TIGCC peut être désactivée:Ok donc on se retrouve avec du code de merde.
* ne pas utiliser le mode all-relocs (ne pas passer --cut-ranges suffit)
* ne pas utiliser -freg-relative-an (qui a besoin des relogements négatifs - le fonctionnement des versions précédentes était un hack)
* -fno-merge-constants
Bon, c'est comme je disais alors: "parce qu'il n'y a pas écrit 'GNU' devant". C'est malin... Newsflash: GTC n'a pas non plus écrit "GNU" devant, c'est aussi un "outil non standard". Et pourtant tu me sembles bien être de son côté (même remarque pour nitro, d'ailleurs).
Je me traine des bugs de l'IDE de ya 50 ans
nitro
: Il n'est pas différent, mais c'est moins génant car les extensions sont en voie de disparition,
et un grand nombre de programmes (surtout ceux qui sont multiplateforme) ne les utilise pas.
Néanmoins c'est bien embêtant car les compilateurs qui veulent être compatibles avec les programmes qui utilisent ces extensions (ICC par exemple) sont obligés d'accepter ce dialecte de C.
Ah, si TCC les accepte alors, ça change tout.
L'utilisation des extensions TIGCC peut être désactivée:Ok donc on se retrouve avec du code de merde.
* ne pas utiliser le mode all-relocs (ne pas passer --cut-ranges suffit)
* ne pas utiliser -freg-relative-an (qui a besoin des relogements négatifs - le fonctionnement des versions précédentes était un hack)
* -fno-merge-constants
Et est-ce le cas pour toutes les libs statiques dans la nature ?
Kevin KoflerDonc c'est ce que je disais, "embrace & extend", doublé d'une belle mentalité de merde.
: Est-ce vraiment en l'intérêt de la FSF de permettre de compiler les sources écrites pour GCC avec des compilateurs non-libres? Je ne crois pas. Tout ce que ça apporte, c'est de permettre la migration de GCC vers les compilateurs non-libres, bref ça encourage l'utilisation de logiciels non-libres.
squale92 :La plupart des vieux logiciels libres sont en vieux C, et la plupart des nouveaux logiciels libres sont en C++ ou en langage de script.
et pour ce qui est des softs libres... j'en ai pas regardé bcp de sources... Bash est pas codé en C K&R, encore ? (m'a semblé qd j'ai survolé les sources l'année dernière... mais j'ai pas trop cherché en fait ; me trompe peut-être)
Nil
: (c'est peut-être qu'ils ne vivent pas pour ça ou qu'ils sont lassés ?)
Il faudrait peut-être arrêter d'avoir 2 mesures différentes pour tout...Kevin Kofler :
Nitro, tu n'as pas répondu à une grande partie de mon message. C'est fait exprès parce que tu ne sais plus quoi répondre? GoldenCrystal, tu n'as pas répondu du tout. C'est fait exprès parce que tu ne sais plus quoi répondre?