NAME	= libft.a
SRCS	= ft_memset.c	\
		  	ft_bzero.c		\
			ft_memcpy.c		\
			ft_memccpy.c	\
			ft_memmove.c	\
			ft_memchr.c		\
			ft_memcmp.c		\
			ft_strlen.c		\
			ft_isalpha.c	\
			ft_isdigit.c	\
			ft_isalnum.c	\
			ft_isascii.c	\
			ft_isprint.c	\
			ft_toupper.c	\
			ft_tolower.c	\
			ft_strchr.c		\
			ft_strrchr.c	\
			ft_strncmp.c	\
			ft_strlcpy.c	\
			ft_strlcat.c	\
			ft_strnstr.c	\
			ft_atoi.c		\
			ft_calloc.c		\
			ft_strdup.c		\
			ft_substr.c		\
			ft_strtrim.c	\
			ft_split.c		\
			ft_strjoin.c	\
			ft_itoa.c		\
			ft_strmapi.c	\
			ft_putchar_fd.c	\
			ft_putstr_fd.c	\
			ft_putendl_fd.c	\
			ft_putnbr_fd.c	\
			get_next_line.c	\
			get_next_line_utils.c
OBJS	= ${SRCS:.c=.o}
BONUS_C	= ft_lstnew.c ft_lstadd_front.c ft_lstsize.c ft_lstlast.c ft_lstadd_back.c \
		  ft_lstdelone.c ft_lstclear.c ft_lstiter.c ft_lstmap.c ft_lstbeforelast.c
BONUS_O	= ${BONUS_C:.c=.o}
CC		= gcc
CFLAGS	= -Wall -Wextra 
RM		= rm -rf

.c.o:
		@${CC} ${CFLAGS} -c $< -o ${<:.c=.o}

${NAME}:${OBJS}
		@ar -rcs ${NAME} ${OBJS}

all:	${NAME}

bonus:	all
		@${CC} ${CFLAGS} -c ${BONUS_C}
		@ar -rcs ${NAME} ${BONUS_O}

clean:
		@${RM} ${OBJS}
		@${RM} ${BONUS_O}

fclean:	clean
		@${RM} ${NAME}
		
re: 	fclean all

.PHONY: all clean fclean re bonus

