Dans toutes les librairies C, on retrouve un dossier sysdeps (ou équivalent), qui regroupe tout ce qui est spécifique à chaque OS et à chaque architecture matérielle. Cela leur permet d'être compatible avec plusieurs OS sans avoir à faire de gros ifdef dégueux au milieu du code et surtout, ils s'éloignent des spécificités de chaque OS.
Nous aurions tout intérêt à nous en inspirer pour plusieurs raisons :
Cela permet d'avoir un code plus clair entre ce qui est générique et ce qui est dépendant de TacOS (cela rentre dans notre travail de séparation kernel/libC);
Nous pourrions envisager de porter notre libC sur Linux pour pouvoir développer dans un milieu pour facile à debugguer et donc aussi faire des tests unitaires (actuellement j'utilise l'option de wrap de gcc et c'est pénible à utiliser). Sans parler de la satisfaction de pouvoir compiler une appli avec notre libc à nous \o/. Et nous pourrions aussi faire des benchmarks et autre;
Enfin, cette couche nous permettrait d'envisager de faire tourner des applis linkées avec d'autres libC que la notre à (très) long terme.
Je mets priorité Mineur car nous avons d'autres choses largement plus prioritaires à faire. Mais je voulais mettre par écrit cette idée.
Dans toutes les librairies C, on retrouve un dossier sysdeps (ou équivalent), qui regroupe tout ce qui est spécifique à chaque OS et à chaque architecture matérielle. Cela leur permet d'être compatible avec plusieurs OS sans avoir à faire de gros ifdef dégueux au milieu du code et surtout, ils s'éloignent des spécificités de chaque OS.
Nous aurions tout intérêt à nous en inspirer pour plusieurs raisons :
Je mets priorité Mineur car nous avons d'autres choses largement plus prioritaires à faire. Mais je voulais mettre par écrit cette idée.