sync
[platform/upstream/libflac.git] / Makefile.lite
1 #  FLAC - Free Lossless Audio Codec
2 #  Copyright (C) 2001,2002,2003,2004,2005,2006,2007  Josh Coalson
3 #
4 #  This file is part the FLAC project.  FLAC is comprised of several
5 #  components distributed under difference licenses.  The codec libraries
6 #  are distributed under Xiph.Org's BSD-like license (see the file
7 #  COPYING.Xiph in this distribution).  All other programs, libraries, and
8 #  plugins are distributed under the GPL (see COPYING.GPL).  The documentation
9 #  is distributed under the Gnu FDL (see COPYING.FDL).  Each file in the
10 #  FLAC distribution contains at the top the terms under which it may be
11 #  distributed.
12 #
13 #  Since this particular file is relevant to all components of FLAC,
14 #  it may be distributed under the Xiph.Org license, which is the least
15 #  restrictive of those mentioned above.  See the file COPYING.Xiph in this
16 #  distribution.
17
18 #
19 # GNU Makefile
20 #
21 # Useful targets
22 #
23 # all     : build all libraries and programs in the default configuration (currently 'release')
24 # debug   : build all libraries and programs in debug mode
25 # valgrind: build all libraries and programs in debug mode, dynamically linked and ready for valgrind
26 # release : build all libraries and programs in release mode
27 # test    : run the unit and stream tests
28 # clean   : remove all non-distro files
29 #
30
31 topdir = .
32
33 .PHONY: all doc src examples libFLAC libFLAC++ share plugin_common plugin_xmms flac metaflac test_grabbag test_libFLAC test_libFLAC++ test_seeking test_streams
34 all: doc src examples
35
36 DEFAULT_CONFIG = release
37
38 CONFIG = $(DEFAULT_CONFIG)
39
40 debug   : CONFIG = debug
41 valgrind: CONFIG = valgrind
42 release : CONFIG = release
43
44 debug   : all
45 valgrind: all
46 release : all
47
48 doc:
49         (cd $@ && $(MAKE) -f Makefile.lite)
50
51 src:
52         (cd $@ && $(MAKE) -f Makefile.lite $(CONFIG))
53
54 examples: src
55         (cd $@ && $(MAKE) -f Makefile.lite $(CONFIG))
56
57 libFLAC:
58         (cd src/$@ && $(MAKE) -f Makefile.lite $(CONFIG))
59
60 libFLAC++: libFLAC
61         (cd src/$@ && $(MAKE) -f Makefile.lite $(CONFIG))
62
63 share: libFLAC
64         (cd src/$@ && $(MAKE) -f Makefile.lite $(CONFIG))
65
66 flac: libFLAC share
67         (cd src/$@ && $(MAKE) -f Makefile.lite $(CONFIG))
68
69 metaflac: libFLAC share
70         (cd src/$@ && $(MAKE) -f Makefile.lite $(CONFIG))
71
72 plugin_common: libFLAC
73         (cd src/$@ && $(MAKE) -f Makefile.lite $(CONFIG))
74
75 plugin_xmms: libFLAC plugin_common
76         (cd src/$@ && $(MAKE) -f Makefile.lite $(CONFIG))
77
78 test_seeking: libFLAC
79         (cd src/$@ && $(MAKE) -f Makefile.lite $(CONFIG))
80
81 test_streams: libFLAC
82         (cd src/$@ && $(MAKE) -f Makefile.lite $(CONFIG))
83
84 test_grabbag: share
85         (cd src/$@ && $(MAKE) -f Makefile.lite $(CONFIG))
86
87 test_libFLAC: libFLAC
88         (cd src/$@ && $(MAKE) -f Makefile.lite $(CONFIG))
89
90 test_libFLAC++: libFLAC libFLAC++
91         (cd src/$@ && $(MAKE) -f Makefile.lite $(CONFIG))
92
93 test: debug
94         (cd test && $(MAKE) -f Makefile.lite debug)
95
96 testv: valgrind
97         (cd test && $(MAKE) -f Makefile.lite valgrind)
98
99 testr: release
100         (cd test && $(MAKE) -f Makefile.lite release)
101
102 clean:
103         -(cd doc && $(MAKE) -f Makefile.lite clean)
104         -(cd src && $(MAKE) -f Makefile.lite clean)
105         -(cd examples && $(MAKE) -f Makefile.lite clean)
106         -(cd test && $(MAKE) -f Makefile.lite clean)