CC = gcc CCFLAGS = -Wall -Wextra -Werror NAME = libft.a SRC = ft_atoi.c ft_bzero.c ft_isalnum.c ft_isalpha.c ft_isascii.c ft_isdigit.c ft_isprint.c \ ft_memccpy.c ft_memchr.c ft_memcmp.c ft_memcpy.c ft_memmove.c ft_memset.c ft_strcat.c \ ft_strchr.c ft_strcmp.c ft_strcpy.c ft_strdup.c ft_strlcat.c ft_strlen.c ft_strncat.c \ ft_strncmp.c ft_strncpy.c ft_strnstr.c ft_strrchr.c ft_strstr.c ft_tolower.c \ ft_toupper.c OBJ = $(SRC:.c=.o) all: $(NAME) $(NAME): $(OBJ) libft.h ar rc $(NAME) $(OBJ) %.o: %.c $(CC) $(CCFLAGS) -c -o $@ $< clean: rm -f $(OBJ) fclean: clean rm -f $(NAME) re: fclean all so: $(OBJ) libft.h $(CC) -shared -Wl,-soname,libft.so -o libft.so $(OBJ)