42_libft/Makefile

100 lines
2.3 KiB
Makefile
Raw Normal View History

2022-09-27 10:29:23 -04:00
# **************************************************************************** #
# #
# ::: :::::::: #
# Makefile :+: :+: :+: #
# +:+ +:+ +:+ #
# By: cchauvet <cchauvet@student.42angoulem +#+ +:+ +#+ #
# +#+#+#+#+#+ +#+ #
# Created: 2022/09/27 08:39:27 by cchauvet #+# #+# #
2022-10-04 16:04:23 -04:00
# Updated: 2022/10/04 19:41:01 by cchauvet ### ########.fr #
2022-09-27 10:29:23 -04:00
# #
# **************************************************************************** #
2022-10-04 16:04:23 -04:00
SRCS = ft_isalpha.c \
ft_isdigit.c \
ft_isalnum.c \
ft_isascii.c \
ft_isprint.c \
ft_strlen.c \
ft_memset.c \
ft_bzero.c \
ft_memcpy.c \
ft_memmove.c \
ft_strlcpy.c \
ft_strlcat.c \
ft_toupper.c \
ft_tolower.c \
ft_strchr.c \
ft_strrchr.c \
ft_strncmp.c \
ft_memchr.c \
ft_memcmp.c \
ft_strnstr.c \
ft_atoi.c \
ft_calloc.c \
ft_strdup.c \
ft_substr.c \
ft_strjoin.c \
ft_strtrim.c \
ft_split.c \
ft_itoa.c \
ft_strmapi.c \
ft_striteri.c \
ft_putchar_fd.c \
ft_putstr_fd.c \
ft_putendl_fd.c \
ft_putnbr_fd.c
2022-09-27 10:29:23 -04:00
2022-10-04 16:04:23 -04:00
BSRCS = 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
ESRCS = ft_strndup.c
2022-09-27 10:29:23 -04:00
OBJS = ${SRCS:.c=.o}
2022-10-04 08:21:55 -04:00
BOBJS = ${BSRCS:.c=.o}
2022-10-04 16:04:23 -04:00
EOBJS = ${ESRCS:.c=.o}
2022-09-27 10:29:23 -04:00
NAME = libft
CFLAG = -Wall -Werror -Wextra
2022-10-04 16:04:23 -04:00
%.o: %.c libft.h
${CC} ${CFLAGS} -c -o $@ $<
2022-10-04 08:21:55 -04:00
all: ${NAME}
${NAME}: ${OBJS}
ar -rc ${NAME}.a ${OBJS}
2022-10-04 16:04:23 -04:00
bonus: ${OBJS} ${BOBJS} ${EOBJS}
ar -rc ${NAME}.a ${OBJS} ${BOBJS}
2022-09-27 10:29:23 -04:00
2022-10-04 16:04:23 -04:00
extra:
ar -rc ${NAME}.a ${OBJS} ${BOBJS} ${EOBJS}
2022-10-04 08:21:55 -04:00
2022-09-27 10:29:23 -04:00
clean:
2022-10-04 16:04:23 -04:00
rm -f ${OBJS} ${BOBJS} ${EOBJS}
2022-09-27 10:29:23 -04:00
2022-10-04 08:21:55 -04:00
fclean: clean
2022-09-27 10:29:23 -04:00
rm -f ${NAME}.a
2022-10-04 08:21:55 -04:00
re: fclean all
2022-10-04 16:04:23 -04:00
.PHONY: bonus extra clean fclean re
2022-10-04 08:21:55 -04:00
test: fclean
rm -f a.out
2022-10-04 16:04:23 -04:00
gcc ${CFLAGS} -g ${SRCS} ${BSRCS} ${ESRCS} main.c
2022-09-27 10:29:23 -04:00
so:
2022-09-27 11:25:41 -04:00
gcc -nostartfiles -fPIC $(CFLAG) $(SRCS)
gcc -nostartfiles -shared -o libft.so $(OBJS)