2022-04-13 08:01:46 +02:00
|
|
|
# **************************************************************************** #
|
|
|
|
|
# #
|
|
|
|
|
# ::: :::::::: #
|
|
|
|
|
# Makefile :+: :+: :+: #
|
|
|
|
|
# +:+ +:+ +:+ #
|
|
|
|
|
# By: gbaconni@student.42lausanne.ch +#+ +:+ +#+ #
|
|
|
|
|
# +#+#+#+#+#+ +#+ #
|
|
|
|
|
# Created: 2022/01/18 15:11:16 by gbaconni #+# #+# #
|
2022-04-17 11:19:59 +02:00
|
|
|
# Updated: 2022/04/17 11:19:20 by gbaconni ### lausanne.ch #
|
2022-04-13 08:01:46 +02:00
|
|
|
# #
|
|
|
|
|
# **************************************************************************** #
|
|
|
|
|
#
|
|
|
|
|
# make ft_printf
|
|
|
|
|
# make all
|
|
|
|
|
# make clean
|
|
|
|
|
# make fclean
|
|
|
|
|
# make re
|
|
|
|
|
# make
|
|
|
|
|
#
|
|
|
|
|
|
|
|
|
|
NAME = ft_printf
|
|
|
|
|
|
|
|
|
|
LIBFTPRINTF = libftprintf
|
|
|
|
|
LFLAGS = -L. -L$(LIBFTPRINTF) -lftprintf
|
|
|
|
|
|
|
|
|
|
SRC = main.c
|
|
|
|
|
|
|
|
|
|
INCLUDE = -I. -I$(LIBFTPRINTF)
|
|
|
|
|
HDR = $(LIBFTPRINTF)/libftprintf.h
|
|
|
|
|
|
|
|
|
|
CC = gcc
|
|
|
|
|
CFLAGS = -Wall -Wextra -Werror
|
|
|
|
|
ifeq ($(FAST), 1)
|
2022-04-15 17:20:15 +02:00
|
|
|
CFLAGS += -pipe -O3 -ffast-math -fomit-frame-pointer -funroll-loops
|
|
|
|
|
#CFLAGS += -pipe -Ofast -ffast-math -funroll-loops -fomit-frame-pointer
|
2022-04-13 08:01:46 +02:00
|
|
|
endif
|
|
|
|
|
ifeq ($(DEBUG), 1)
|
2022-04-15 17:20:15 +02:00
|
|
|
CFLAGS += -g -O0 -fsanitize=address -fsanitize=undefined -fsanitize=signed-integer-overflow
|
|
|
|
|
endif
|
|
|
|
|
ifeq ($(LEAK), 1)
|
|
|
|
|
CFLAGS += -g -O0
|
2022-04-13 08:01:46 +02:00
|
|
|
endif
|
|
|
|
|
|
|
|
|
|
VALGRIND = valgrind
|
|
|
|
|
VALGRINDFLAGS = --quiet --leak-check=full --show-leak-kinds=all
|
2022-04-15 17:20:15 +02:00
|
|
|
ifeq ($(LEAK), 1)
|
2022-04-15 00:15:26 +02:00
|
|
|
PREFIX += $(VALGRIND) $(VALGRINDFLAGS)
|
|
|
|
|
endif
|
2022-04-13 08:01:46 +02:00
|
|
|
|
2022-04-15 17:20:15 +02:00
|
|
|
RM = rm
|
|
|
|
|
RMFLAGS = -f
|
|
|
|
|
|
2022-04-13 08:01:46 +02:00
|
|
|
NORMINETTE = norminette
|
|
|
|
|
NORMINETTEFLAGS = -o
|
|
|
|
|
|
|
|
|
|
MAKE = make
|
|
|
|
|
|
|
|
|
|
all: $(NAME)
|
|
|
|
|
|
|
|
|
|
$(NAME):
|
|
|
|
|
@$(MAKE) -C $(LIBFTPRINTF) all >/dev/null 2>&1
|
|
|
|
|
@$(CC) $(CFLAGS) $(INCLUDE) $(SRC) $(LFLAGS) -o $@
|
|
|
|
|
|
|
|
|
|
clean:
|
|
|
|
|
@$(RM) $(RMFLAGS) $(NAME)
|
|
|
|
|
|
|
|
|
|
fclean: clean
|
|
|
|
|
@$(MAKE) -C $(LIBFTPRINTF) fclean
|
|
|
|
|
|
|
|
|
|
re: fclean all
|
2022-04-15 17:20:15 +02:00
|
|
|
@$(MAKE) -C $(LIBFTPRINTF) re
|
2022-04-13 08:01:46 +02:00
|
|
|
|
|
|
|
|
check:
|
|
|
|
|
@$(MAKE) -C $(LIBFTPRINTF) check
|
|
|
|
|
|
2022-04-15 17:20:15 +02:00
|
|
|
leak:
|
|
|
|
|
@$(MAKE) -C $(LIBFTPRINTF) re LEAK=1
|
|
|
|
|
|
2022-04-13 08:01:46 +02:00
|
|
|
debug:
|
|
|
|
|
@$(MAKE) -C $(LIBFTPRINTF) re DEBUG=1
|
|
|
|
|
|
|
|
|
|
fast:
|
|
|
|
|
@$(MAKE) -C $(LIBFTPRINTF) re FAST=1
|
|
|
|
|
|
|
|
|
|
test: clean $(NAME)
|
2022-04-15 00:15:26 +02:00
|
|
|
@$(PREFIX) ./$(NAME) "%c" C || true
|
|
|
|
|
@$(PREFIX) ./$(NAME) "%s" "42 Lausanne" || true
|
|
|
|
|
@$(PREFIX) ./$(NAME) "%d" 42 || true
|
2022-04-17 09:59:41 +02:00
|
|
|
@$(PREFIX) ./$(NAME) "%i" 2147483647 || true
|
|
|
|
|
@$(PREFIX) ./$(NAME) "%i" -2147483646 || true
|
|
|
|
|
@$(PREFIX) ./$(NAME) "%u" 4294967295 || true
|
2022-04-15 00:15:26 +02:00
|
|
|
@$(PREFIX) ./$(NAME) "%x" 42 || true
|
|
|
|
|
@$(PREFIX) ./$(NAME) "%X" 42 || true
|
2022-04-15 00:26:47 +02:00
|
|
|
@$(PREFIX) ./$(NAME) "%%" "" || true
|
2022-04-15 17:20:15 +02:00
|
|
|
@$(PREFIX) ./$(NAME) "%p" "" || true
|
2022-04-15 20:55:58 +02:00
|
|
|
@$(PREFIX) ./$(NAME) "%p" "\n" || true
|
|
|
|
|
@$(PREFIX) ./$(NAME) "Forty Two" "" || true
|
2022-04-15 17:20:15 +02:00
|
|
|
|
|
|
|
|
test2: leak
|
|
|
|
|
@$(MAKE) test LEAK=1
|
2022-04-13 08:01:46 +02:00
|
|
|
|
2022-04-15 17:20:15 +02:00
|
|
|
test3: debug
|
2022-04-13 08:01:46 +02:00
|
|
|
@$(MAKE) test DEBUG=1
|
|
|
|
|
|
2022-04-15 17:20:15 +02:00
|
|
|
test4: fast
|
2022-04-13 08:01:46 +02:00
|
|
|
@$(MAKE) test FAST=1
|
|
|
|
|
|
2022-04-13 08:53:46 +02:00
|
|
|
update: config online pull
|
|
|
|
|
|
2022-04-17 11:19:59 +02:00
|
|
|
sync: config online fetch
|
|
|
|
|
@git status | grep -q 'nothing to commit' || (git diff; read -p "Comment: " comment; git add -A; git commit -am "$${comment-$$(date '+%F %T')}"; git push)
|
2022-04-13 08:53:46 +02:00
|
|
|
|
|
|
|
|
online:
|
2022-04-13 23:03:55 +02:00
|
|
|
@dig +short vogsphere.baco.net A | grep -qF '213.5.156.25' || echo 'vogsphere.baco.net unresolvable'
|
|
|
|
|
@nc -vzw3 vogsphere.baco.net 443 2>&1 | grep -qF 'succeeded' || echo 'vogsphere.baco.net unreachable'
|
2022-04-13 08:53:46 +02:00
|
|
|
|
2022-04-17 11:19:59 +02:00
|
|
|
fetch:
|
|
|
|
|
@git fetch
|
2022-04-13 08:53:46 +02:00
|
|
|
|
|
|
|
|
config:
|
2022-04-13 08:39:49 +02:00
|
|
|
@git config user.name "gbaconni"
|
|
|
|
|
@git config user.email "gbaconni@student.42lausanne.ch"
|
2022-04-17 11:19:59 +02:00
|
|
|
@git config pull.rebase true
|
|
|
|
|
@git config branch.autosetuprebase always
|
|
|
|
|
|
|
|
|
|
42:
|
|
|
|
|
@git clone git@vogsphere.42lausanne.ch:vogsphere/intra-uuid-fd8d00fc-8c22-400e-a8d9-dcc364688380-4092952-gbaconni 42 || true
|
|
|
|
|
|
|
|
|
|
21: 42
|
|
|
|
|
@find libftprintf -maxdepth 2 -type f -name '*.c' -o -name '*.h' -o -name 'Makefile' | sed -r "s|(libftprintf/)|\1./|" | xargs -I {} rsync -SaR {} 42/
|
2022-04-13 08:39:49 +02:00
|
|
|
|