summaryrefslogtreecommitdiffstats
path: root/Makefile
blob: 858de08619d2877fc75c2058c21178282153ad7c (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
# ========================
# =====    ===============
# ======  ================
# ======  ================
# ======  ====   ====   ==
# ======  ===     ==  =  =
# ======  ===  =  ==     =
# =  ===  ===  =  ==  ====
# =  ===  ===  =  ==  =  =
# ==     =====   ====   ==
# ========================
#
# mpdview: Makefile
# Sun, 03 Jul 2022 15:15:01 +0200
# Joe
#
# BSD Makefile

default: all

SRCS_DIR	:= src
MAN_DIR		:= man
# OBJS_DIR	:= obj
PREFIX		?= /usr/local
DESTDIR		:=
MAKEOBJDIR	:= ./

SRCS		:= c_mpdview
SRCS		:= ${SRCS:S/$/.c/g}
SRCS		:= ${SRCS:S/^/${SRCS_DIR}\//g}

OBJS		:= ${SRCS:=.o}
# OBJS		:= ${OBJS:S/${SRCS_DIR}/${OBJS_DIR}/g}

# INCS		:= 
# INCS		+= ${SRCS:.c=.h}

NAME		:= mpdview

CC			?= cc
CFLAGS		:= -std=gnu89
CFLAGS		+= -Wall
CFLAGS		+= -Wextra
CFLAGS		+= -Werror
CFLAGS		+= -pedantic
CFLAGS		+= -isystem/usr/local/include
# CFLAGS		+= -isystem${SRCS_DIR}/
CFLAGS		+= -glldb
# CFLAGS		+= -march=native -O2 -pipe

LDFLAGS		:= -L/usr/local/lib
LDFLAGS		+= -lmpdclient

RM			:= rm -f
MKDIR		:= mkdir -p
SED			:= sed -i ''
GZIP		:= gzip
GUNZIP		:= gunzip
INSTALL		:= install

.OBJDIR: ./
.SUFFIXES: .c.o .o

.c.c.o: ${INCS}
	${CC} -c ${CFLAGS} -o ${.TARGET} ${.IMPSRC}

${NAME}: ${OBJS}
	${CC} ${CFLAGS} -o ${.TARGET} ${.ALLSRC} ${LDFLAGS} 

all: ${OBJS_DIR} ${NAME}

clean:
	${RM} ${OBJS} ${NAME} vgcore*

install: ${NAME}
	${GZIP} ${MAN_DIR}/${NAME}.1
	${MKDIR} ${PREFIX}/man/man1
	${INSTALL} -m0444 ${MAN_DIR}/${NAME}.1.gz ${PREFIX}/man/man1/${NAME}.1.gz
	${GUNZIP} ${MAN_DIR}/${NAME}.1.gz
	${MKDIR} ${PREFIX}/bin
	${INSTALL} -m0555 ${NAME} ${PREFIX}/bin/${NAME}

uninstall:
	${RM} ${PREFIX}/man/man1/${NAME}.1.gz
	${RM} ${PREFIX}/bin/${NAME}

.PHONY: all clean install

# Files prefixes index
# --------------------
# c_  -> core program related