TL;DR
Je boss sur ft_printf parfois hors de l'école, mais pas sur un Mac.
Mon environnement avec BSDlibc utilise clang comme compilo, et gmake pour appeler GNU Make (utilisé à l'école).
Je propose quelques changements au build system pour plus de flexibilité, sans changer le workflow de base pour un utilisateur des dumps OSX de 42.
Détails:
La libc sur les dumps est l'implémentation BSD, qui diffère significativement (pour printf(3) en particulier) en comportement par rapport à la libc GNU (rencontrée sur Linux par ex.).
Sans mac, une solution simple pour se conformer à l'implémentation BSD est de tester sur une machine sous FreeBSD.
Or, sur FreeBSD:
le compilateur C (comme sur les dumps d'ailleurs) n'est pas gcc mais clang
make est BSD Make (à l'école, c'est GNU Mmake); les deux n'ont pas du tout le même comportement; GNU Make est alors appelé gmake.
Je propose un pull request de changements limités sur le build system:
-> Par défaut, les makefiles du moulitest vont toujours appeler make et gcc.
Mais si l'utilisateur a défini dans l'environnement les variables MAKE et CC, les makefiles vont appeler les commandes correspondantes.
Ainsi, ça ne change pas l'utilisation du moulitest à l'école, et sous d'autres environnements comme FreeBSD on peut appeler GNUMake et Clang par leurs noms:
Hello
TL;DR Je boss sur ft_printf parfois hors de l'école, mais pas sur un Mac. Mon environnement avec BSDlibc utilise clang comme compilo, et gmake pour appeler GNU Make (utilisé à l'école). Je propose quelques changements au build system pour plus de flexibilité, sans changer le workflow de base pour un utilisateur des dumps OSX de 42.
Détails:
Or, sur FreeBSD:
Je propose un pull request de changements limités sur le build system: -> Par défaut, les makefiles du moulitest vont toujours appeler
make
etgcc
. Mais si l'utilisateur a défini dans l'environnement les variables MAKE et CC, les makefiles vont appeler les commandes correspondantes. Ainsi, ça ne change pas l'utilisation du moulitest à l'école, et sous d'autres environnements comme FreeBSD on peut appeler GNUMake et Clang par leurs noms:MAKE=/usr/local/bin/gmake CC=/usr/bin/clang gmake ft_printf
edit: grammaire