# **************************************************************************** # # # # :::::::: # # Makefile |o_o || | # # +:+ # # By: djonker +#+ # # +#+ # # Created: 2020/12/19 06:09:46 by djonker #+# #+# # # Updated: 2023/02/25 03:31:41 by houtworm \___)=(___/ # # # # **************************************************************************** # NAME =push_swap CC =cc FC =-Wall -Werror -Wextra -g -fsanitize=address RM =rm -f PSSRC =src/push_swap.c PSOBJ =obj/push_swap.o CHSRC =src/checker.c CHOBJ =obj/checker.o SRC =src/checkandinit.c \ src/faster.c \ src/fewnumbers.c \ src/finale.c \ src/manynumbers.c \ src/printshit.c \ src/push.c \ src/reverserotate.c \ src/rotate.c \ src/swap.c OBJ =$(SRC:src/%.c=obj/%.o) LIB =printf/ft_printf.a getnextline/get_next_line.a libft/libft.a all: libft getnextline printf $(NAME) bonus: libft getnextline printf checker clean: @$(RM) -r obj @$(MAKE) -C libft clean > /dev/null @$(MAKE) -C printf clean > /dev/null @$(MAKE) -C getnextline clean > /dev/null @printf "\e[1;35mCleaned Object Files\n\e[0;00m" fclean: clean @$(RM) $(NAME) checker @$(MAKE) -C libft fclean > /dev/null @$(MAKE) -C printf fclean > /dev/null @$(MAKE) -C getnextline fclean > /dev/null @printf "\e[1;31mCleaned Executables\n\e[0;00m" re: fclean all $(OBJ): $(SRC) @mkdir -p $(dir $@) @printf "\e[1;34mBuilding $@\n\e[0;00m" @$(CC) $(CFLAGS) -c $(@:obj/%.o=src/%.c) -o $@ $(PSOBJ): $(PSSRC) @mkdir -p $(dir $@) @printf "\e[1;34mBuilding $@\n\e[0;00m" @$(CC) $(CFLAGS) -c $(@:obj/%.o=src/%.c) -o $@ $(CHOBJ): $(CHSRC) @mkdir -p $(dir $@) @printf "\e[1;34mBuilding $@\n\e[0;00m" @$(CC) $(CFLAGS) -c $(@:obj/%.o=src/%.c) -o $@ $(NAME): $(OBJ) $(PSOBJ) @printf "\e[1;36mCompiling $@\e[0;00m\n" @$(CC) $(FC) -o $@ $(PSOBJ) $(OBJ) $(LIB) @printf "\e[1;32mDone\e[0;00m\n" checker: $(OBJ) $(CHOBJ) @printf "\e[1;36mCompiling checker\e[0;00m\n" @$(CC) $(FC) -o $@ $(CHOBJ) $(OBJ) $(LIB) @printf "\e[1;32mDone\e[0;00m\n" libft: @$(MAKE) -C libft all printf: @$(MAKE) -C printf all getnextline: @$(MAKE) -C getnextline all .PHONY: libft getnextline printf