blob: 737127c6bb7449fb694f6dce3fadfeaf803180d3 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
|
# ========================
# ===== ===============
# ====== ================
# ====== ================
# ====== ==== ==== ==
# ====== === == = =
# ====== === = == =
# = === === = == ====
# = === === = == = =
# == ===== ==== ==
# ========================
#
# unixize: Makefile
# Fri Nov 27 22:53:29 CET 2020
# Joe
#
# GNU Makefile
.DEFAULT_GOAL := all
SHELL := /bin/sh
DESTDIR :=
SRCS_DIR := src/
OBJS_DIR := obj/
MAN_DIR := man/
CC ?= cc
CFLAGS += -std=c89
CFLAGS += -Wall
CFLAGS += -Wextra
CFLAGS += -Werror
CFLAGS += -pedantic
CFLAGS += -march=native -O2 -pipe
MKDIR := mkdir -p
RM := rm -f
INSTALL := install
GZIP := gzip
GUNZIP := gunzip
SRCS_NAME := c_lfiles
SRCS_NAME += c_opts
SRCS_NAME += c_subst
SRCS_NAME += c_unixize
SRCS_NAME += u_utils
SRCS = $(addprefix ${SRCS_DIR}, $(addsuffix .c, ${SRCS_NAME}))
INCS = $(addprefix ${SRCS_DIR}, $(addsuffix .h, ${SRCS_NAME}))
OBJS = $(patsubst ${SRCS_DIR}%.c, ${OBJS_DIR}%.c.o, ${SRCS})
TARGET := unixize
MAN := unixize.1.gz
${OBJS_DIR}%.c.o: ${SRCS_DIR}%.c ${INCS} Makefile
@${MKDIR} ${OBJS_DIR}
${CC} -c ${CFLAGS} -o $@ $<
${TARGET}: ${OBJS}
${CC} ${CFLAGS} -o ${TARGET} ${OBJS}
${MAN_DIR}${MAN}:
${GZIP} ${MAN_DIR}${TARGET}.1
all: ${TARGET}
clean:
${RM} -R ${OBJS} ${OBJS_DIR}
${RM} ${TARGET}
install-bin: ${TARGET}
${MKDIR} ${DESDIR}/usr/local/bin
${INSTALL} -m0555 ${TARGET} ${DESTDIR}/usr/local/bin/${TARGET}
install-doc: ${MAN_DIR}${MAN}
${MKDIR} ${DESDIR}/usr/local/man/man1
${INSTALL} -m0444 ${MAN_DIR}${TARGET}.1.gz ${DESTDIR}/usr/local/man/man1/${TARGET}.1.gz
${GUNZIP} ${MAN_DIR}${TARGET}.1.gz
install: install-bin install-doc
uninstall:
${RM} ${DESTDIR}/usr/local/bin/${TARGET}
${RM} ${DESTDIR}/usr/local/man/man1/${TARGET}.1.gz
debug: CFLAGS += -g3
debug: all
asan: CFLAGS += -g3
asan: CFLAGS += -fsanitize=address
asan: all
msan: CFLAGS += -g3
msan: CFLAGS += -fsanitize=memory
msan: CFLAGS += -fsanitize-memory-track-origins
msan: all
.PHONY: all clean install uninstall debug asan msan
|