6
MANDIR:=${PREFIX}/share/man
7
CFLAGS:=-Wall -g -std=c99 -pedantic
11
${PIANOBAR_DIR}/main.c \
12
${PIANOBAR_DIR}/player.c \
13
${PIANOBAR_DIR}/settings.c \
14
${PIANOBAR_DIR}/terminal.c \
15
${PIANOBAR_DIR}/ui_act.c \
16
${PIANOBAR_DIR}/ui.c \
17
${PIANOBAR_DIR}/ui_readline.c
19
${PIANOBAR_DIR}/player.h \
20
${PIANOBAR_DIR}/settings.h \
21
${PIANOBAR_DIR}/terminal.h \
22
${PIANOBAR_DIR}/ui_act.h \
23
${PIANOBAR_DIR}/ui.h \
24
${PIANOBAR_DIR}/ui_readline.h \
25
${PIANOBAR_DIR}/main.h \
26
${PIANOBAR_DIR}/config.h
27
PIANOBAR_OBJ=${PIANOBAR_SRC:.c=.o}
29
LIBPIANO_DIR=libpiano/src
31
${LIBPIANO_DIR}/crypt.c \
32
${LIBPIANO_DIR}/piano.c \
35
${LIBPIANO_DIR}/config.h \
36
${LIBPIANO_DIR}/crypt_key_output.h \
37
${LIBPIANO_DIR}/xml.h \
38
${LIBPIANO_DIR}/crypt.h \
39
${LIBPIANO_DIR}/piano.h \
40
${LIBPIANO_DIR}/crypt_key_input.h \
41
${LIBPIANO_DIR}/piano_private.h
42
LIBPIANO_OBJ=${LIBPIANO_SRC:.c=.o}
43
LIBPIANO_RELOBJ=${LIBPIANO_SRC:.c=.lo}
44
LIBPIANO_INCLUDE=${LIBPIANO_DIR}
46
LIBWAITRESS_DIR=libwaitress/src
47
LIBWAITRESS_SRC=${LIBWAITRESS_DIR}/waitress.c
49
${LIBWAITRESS_DIR}/config.h \
50
${LIBWAITRESS_DIR}/waitress.h
51
LIBWAITRESS_OBJ=${LIBWAITRESS_SRC:.c=.o}
52
LIBWAITRESS_RELOBJ=${LIBWAITRESS_SRC:.c=.lo}
53
LIBWAITRESS_INCLUDE=${LIBWAITRESS_DIR}
55
LIBEZXML_SRC=libezxml/src/ezxml.c
56
LIBEZXML_HDR=libezxml/src/ezxml.h
57
LIBEZXML_OBJ=${LIBEZXML_SRC:.c=.o}
58
LIBEZXML_RELOBJ=${LIBEZXML_SRC:.c=.lo}
59
LIBEZXML_INCLUDE=libezxml/src
61
LIBAO_INCLUDE=/usr/include
66
ifeq (${DISABLE_FAAD}, 1)
71
LIBFAAD_INCLUDE:=/usr/include
73
LIBFAAD_SWITCH=-DENABLE_FAAD
76
ifeq (${DISABLE_MAD}, 1)
81
LIBMAD_INCLUDE:=/usr/include
83
LIBMAD_SWITCH=-DENABLE_MAD
89
pianobar: ${PIANOBAR_OBJ} ${PIANOBAR_HDR} ${LIBPIANO_OBJ} ${LIBWAITRESS_OBJ} \
90
${LIBWAITRESS_HDR} ${LIBEZXML_OBJ} ${LIBEZXML_HDR}
91
${CC} ${CFLAGS} ${PIANOBAR_OBJ} ${LIBPIANO_OBJ} ${LIBWAITRESS_OBJ} \
92
${LIBEZXML_OBJ} ${LIBAO_LIB} ${LIBFAAD_LIB} ${LIBMAD_LIB} \
93
${PTHREAD_LIB} ${LIBM_LIB} -o $@
95
# build shared libpiano
96
libpiano: ${LIBPIANO_RELOBJ} ${LIBPIANO_HDR} ${LIBWAITRESS_RELOBJ} \
97
${LIBWAITRESS_HDR} ${LIBEZXML_RELOBJ} ${LIBEZXML_HDR}
98
${CC} -shared ${CFLAGS} ${LIBPIANO_RELOBJ} ${LIBWAITRESS_RELOBJ} \
99
${LIBEZXML_RELOBJ} -o $@.so.0.0.0
102
${CC} ${CFLAGS} -I ${LIBPIANO_INCLUDE} -I ${LIBWAITRESS_INCLUDE} \
103
-I ${LIBEZXML_INCLUDE} ${LIBFAAD_SWITCH} ${LIBMAD_SWITCH} -c \
106
# create position independent code (for shared libraries)
108
${CC} ${CFLAGS} -I ${LIBPIANO_INCLUDE} -I ${LIBWAITRESS_INCLUDE} \
109
-I ${LIBEZXML_INCLUDE} -c -fPIC -o $@ $<
112
${RM} ${PIANOBAR_OBJ} ${LIBPIANO_OBJ} ${LIBWAITRESS_OBJ} ${LIBEZXML_OBJ} \
113
${LIBPIANO_RELOBJ} ${LIBWAITRESS_RELOBJ} ${LIBEZXML_RELOBJ} pianobar \
116
all: pianobar libpiano
119
install -d ${DESTDIR}/${BINDIR}/
120
install -m755 pianobar ${DESTDIR}/${BINDIR}/
121
install -d ${DESTDIR}/${MANDIR}/man1/
122
install -m644 src/pianobar.1 ${DESTDIR}/${MANDIR}/man1/
124
install-libpiano: libpiano
125
install -d ${DESTDIR}/${LIBDIR}/
126
install -m755 libpiano.so.0.0.0 ${DESTDIR}/${LIBDIR}/