~ubuntu-branches/ubuntu/wily/pianobar/wily-proposed

« back to all changes in this revision

Viewing changes to Makefile

  • Committer: Bazaar Package Importer
  • Author(s): Luke Faraone
  • Date: 2010-10-07 09:15:49 UTC
  • mfrom: (1.3.1 upstream) (6.1.1 sid)
  • Revision ID: james.westby@ubuntu.com-20101007091549-sscxdr1kud0d4hyl
Tags: 2010.10.07-1
* New upstream version. 
  - XMLRPC api version bump (v28) (closes: #599338)

Show diffs side-by-side

added added

removed removed

Lines of Context:
 
1
# makefile of pianobar
 
2
 
 
3
PREFIX:=/usr/local
 
4
BINDIR:=${PREFIX}/bin
 
5
LIBDIR:=${PREFIX}/lib
 
6
MANDIR:=${PREFIX}/share/man
 
7
CFLAGS:=-Wall -g -std=c99 -pedantic
 
8
 
 
9
PIANOBAR_DIR=src
 
10
PIANOBAR_SRC=\
 
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
 
18
PIANOBAR_HDR=\
 
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}
 
28
 
 
29
LIBPIANO_DIR=libpiano/src
 
30
LIBPIANO_SRC=\
 
31
                ${LIBPIANO_DIR}/crypt.c \
 
32
                ${LIBPIANO_DIR}/piano.c \
 
33
                ${LIBPIANO_DIR}/xml.c
 
34
LIBPIANO_HDR=\
 
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}
 
45
 
 
46
LIBWAITRESS_DIR=libwaitress/src
 
47
LIBWAITRESS_SRC=${LIBWAITRESS_DIR}/waitress.c
 
48
LIBWAITRESS_HDR=\
 
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}
 
54
 
 
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
 
60
 
 
61
LIBAO_INCLUDE=/usr/include
 
62
LIBAO_LIB=-lao
 
63
 
 
64
LIBM_LIB=-lm
 
65
 
 
66
ifeq (${DISABLE_FAAD}, 1)
 
67
        LIBFAAD_INCLUDE=
 
68
        LIBFAAD_LIB=
 
69
        LIBFAAD_SWITCH=
 
70
else
 
71
        LIBFAAD_INCLUDE:=/usr/include
 
72
        LIBFAAD_LIB:=-lfaad
 
73
        LIBFAAD_SWITCH=-DENABLE_FAAD
 
74
endif
 
75
 
 
76
ifeq (${DISABLE_MAD}, 1)
 
77
        LIBMAD_INCLUDE=
 
78
        LIBMAD_LIB=
 
79
        LIBMAD_SWITCH=
 
80
else
 
81
        LIBMAD_INCLUDE:=/usr/include
 
82
        LIBMAD_LIB:=-lmad
 
83
        LIBMAD_SWITCH=-DENABLE_MAD
 
84
endif
 
85
 
 
86
PTHREAD_LIB=-pthread
 
87
 
 
88
# build pianobar
 
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 $@
 
94
 
 
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
 
100
 
 
101
%.o: %.c
 
102
        ${CC} ${CFLAGS} -I ${LIBPIANO_INCLUDE} -I ${LIBWAITRESS_INCLUDE} \
 
103
                        -I ${LIBEZXML_INCLUDE} ${LIBFAAD_SWITCH} ${LIBMAD_SWITCH} -c \
 
104
                        -o $@ $<
 
105
 
 
106
# create position independent code (for shared libraries)
 
107
%.lo: %.c
 
108
        ${CC} ${CFLAGS} -I ${LIBPIANO_INCLUDE} -I ${LIBWAITRESS_INCLUDE} \
 
109
                        -I ${LIBEZXML_INCLUDE} -c -fPIC -o $@ $<
 
110
 
 
111
clean:
 
112
        ${RM} ${PIANOBAR_OBJ} ${LIBPIANO_OBJ} ${LIBWAITRESS_OBJ} ${LIBEZXML_OBJ} \
 
113
                        ${LIBPIANO_RELOBJ} ${LIBWAITRESS_RELOBJ} ${LIBEZXML_RELOBJ} pianobar \
 
114
                        libpiano.so.0.0.0
 
115
 
 
116
all: pianobar libpiano
 
117
 
 
118
install: pianobar
 
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/
 
123
 
 
124
install-libpiano: libpiano
 
125
        install -d ${DESTDIR}/${LIBDIR}/
 
126
        install -m755 libpiano.so.0.0.0 ${DESTDIR}/${LIBDIR}/
 
127