Blob


1 .PHONY: all clean distclean install
3 VERSION = 0.13
4 PROG = amused
5 DISTNAME = ${PROG}-${VERSION}
7 SOURCES = amused.c \
8 compats.c \
9 control.c \
10 ctl.c \
11 log.c \
12 player.c \
13 player_123.c \
14 player_flac.c \
15 player_oggvorbis.c \
16 player_opus.c \
17 playlist.c \
18 xmalloc.c
20 OBJS = ${SOURCES:.c=.o} audio_${BACKEND}.o
22 HEADERS = amused.h \
23 control.h \
24 log.h \
25 playlist.h \
26 xmalloc.h
28 DISTFILES = CHANGES \
29 LICENSE \
30 Makefile \
31 README.md \
32 amused.1 \
33 configure \
34 configure.local.example \
35 imsg.h \
36 queue.h \
37 tests.c \
38 ${HEADERS} \
39 ${SOURCES} \
40 audio_alsa.c \
41 audio_sndio.c
43 all: ${PROG}
45 Makefile.configure config.h: configure tests.c
46 @echo "$@ is out of date; please run ./configure"
47 @exit 1
49 include Makefile.configure
51 # -- targets --
53 ${PROG}: ${OBJS}
54 ${CC} -o $@ ${OBJS} ${LDFLAGS} ${LDADD}
56 clean:
57 rm -f ${OBJS} ${OBJS:.o=.d} ${PROG}
59 distclean: clean
60 rm -f Makefile.configure config.h config.h.old config.log config.log.old
62 install:
63 mkdir -p ${DESTDIR}${BINDIR}
64 mkdir -p ${DESTDIR}${MANDIR}/man1
65 ${INSTALL_PROGRAM} ${PROG} ${DESTDIR}${BINDIR}
66 ${INSTALL_MAN} amused.1 ${DESTDIR}${MANDIR}/man1/${PROG}.1
68 install-local:
69 mkdir -p ${HOME}/bin
70 ${INSTALL_PROGRAM} ${PROG} ${HOME}/bin
72 uninstall:
73 rm ${DESTDIR}${BINDIR}/${PROG}
74 rm ${DESTDIR}${MANDIR}/man1/${PROG}.1
76 # --- maintainer targets ---
78 dist: ${DISTNAME}.sha256
80 ${DISTNAME}.sha256: ${DISTNAME}.tar.gz
81 sha256 ${DISTNAME}.tar.gz > $@
83 ${DISTNAME}.tar.gz: ${DISTFILES}
84 mkdir -p .dist/${DISTNAME}
85 ${INSTALL} -m 0644 ${DISTFILES} .dist/${DISTNAME}
86 cd .dist/${DISTNAME} && chmod 755 configure
87 cd .dist/${DISTNAME} && cp -R ../../contrib . && \
88 chmod 755 contrib/amused-monitor
89 cd .dist && tar zcf ../$@ ${DISTNAME}
90 rm -rf .dist/
92 # --- dependency management ---
94 # these .d files are produced during the first build if the compiler
95 # supports it.
97 -include amused.d
98 -include audio_alsa.d
99 -include audio_sndio.d
100 -include compats.d
101 -include control.d
102 -include ctl.d
103 -include log.d
104 -include player.d
105 -include player_123.d
106 -include player_flac.d
107 -include player_oggvorbis.d
108 -include player_opus.d
109 -include playlist.d
110 -include xmalloc.d