Files
2025-08-04 13:20:27 +02:00

48 lines
1.9 KiB
Makefile

# Nom de la bibliothèque
NAME = libft.a
# Options de compilation
CC = cc
CFLAGS = -Wall -Wextra -Werror -g3
AR = ar rcs
RM = rm -f
# Liste des fichiers source
SRCS = ft_calloc.c ft_isascii.c ft_itoa.c ft_memcpy.c ft_putchar_fd.c ft_putstr_fd.c ft_strdup.c ft_strlcat.c ft_strmapi.c ft_strrchr.c ft_tolower.c \
ft_atoi.c ft_isalnum.c ft_isdigit.c ft_memchr.c ft_memmove.c ft_putendl_fd.c ft_split.c ft_striteri.c ft_strlcpy.c ft_strncmp.c ft_strtrim.c ft_toupper.c \
ft_bzero.c ft_isalpha.c ft_isprint.c ft_memcmp.c ft_memset.c ft_putnbr_fd.c ft_strchr.c ft_strjoin.c ft_strlen.c ft_strnstr.c ft_substr.c \
gnl.c gnl_utils.c ft_is_space.c ft_strtod.c printf_fd.c
# Les fichiers objets correspondants
OBJS = ft_calloc.o ft_isascii.o ft_itoa.o ft_memcpy.o ft_putchar_fd.o ft_putstr_fd.o ft_strdup.o ft_strlcat.o ft_strmapi.o ft_strrchr.o ft_tolower.o \
ft_atoi.o ft_isalnum.o ft_isdigit.o ft_memchr.o ft_memmove.o ft_putendl_fd.o ft_split.o ft_striteri.o ft_strlcpy.o ft_strncmp.o ft_strtrim.o ft_toupper.o \
ft_bzero.o ft_isalpha.o ft_isprint.o ft_memcmp.o ft_memset.o ft_putnbr_fd.o ft_strchr.o ft_strjoin.o ft_strlen.o ft_strnstr.o ft_substr.o \
gnl.o gnl_utils.o ft_is_space.o ft_strtod.o printf_fd.o
# Règle par défaut, créer la bibliothèque
all: $(NAME)
# Règle pour créer la bibliothèque statique
$(NAME): $(OBJS)
$(AR) $(NAME) $(OBJS)
# Règle pour compiler les fichiers .c en fichiers .o
%.o: %.c
$(CC) $(CFLAGS) -c $< -o $@
# Règle pour nettoyer les fichiers objets et l'exécutable
clean:
@$(RM) $(OBJS)
# Règle pour nettoyer les fichiers objets et la bibliothèque
fclean: clean
@$(RM) $(NAME)
# Règle pour tout nettoyer et recompiler
re: fclean all
# Spécifie que certaines cibles ne sont pas des fichiers réels
.PHONY: all clean fclean re