Josh Coalson | 6b05bc5 | 2001-06-08 00:13:21 +0000 | [diff] [blame] | 1 | # FLAC - Free Lossless Audio Codec |
Erik de Castro Lopo | b1982fb | 2013-05-25 17:11:19 +1000 | [diff] [blame] | 2 | # Copyright (C) 2001-2009 Josh Coalson |
Erik de Castro Lopo | 6a5fe43 | 2016-12-05 06:35:39 +1100 | [diff] [blame] | 3 | # Copyright (C) 2011-2016 Xiph.Org Foundation |
Josh Coalson | 6b05bc5 | 2001-06-08 00:13:21 +0000 | [diff] [blame] | 4 | # |
Josh Coalson | e8a7601 | 2003-02-07 00:14:32 +0000 | [diff] [blame] | 5 | # This file is part the FLAC project. FLAC is comprised of several |
Ulrich Klauer | cd4ddab | 2013-05-26 22:53:43 +0200 | [diff] [blame] | 6 | # components distributed under different licenses. The codec libraries |
Josh Coalson | e8a7601 | 2003-02-07 00:14:32 +0000 | [diff] [blame] | 7 | # are distributed under Xiph.Org's BSD-like license (see the file |
| 8 | # COPYING.Xiph in this distribution). All other programs, libraries, and |
| 9 | # plugins are distributed under the GPL (see COPYING.GPL). The documentation |
| 10 | # is distributed under the Gnu FDL (see COPYING.FDL). Each file in the |
| 11 | # FLAC distribution contains at the top the terms under which it may be |
| 12 | # distributed. |
Josh Coalson | 6b05bc5 | 2001-06-08 00:13:21 +0000 | [diff] [blame] | 13 | # |
Josh Coalson | e8a7601 | 2003-02-07 00:14:32 +0000 | [diff] [blame] | 14 | # Since this particular file is relevant to all components of FLAC, |
| 15 | # it may be distributed under the Xiph.Org license, which is the least |
| 16 | # restrictive of those mentioned above. See the file COPYING.Xiph in this |
| 17 | # distribution. |
Josh Coalson | 6b05bc5 | 2001-06-08 00:13:21 +0000 | [diff] [blame] | 18 | |
Josh Coalson | bb7f6b9 | 2000-12-10 04:09:52 +0000 | [diff] [blame] | 19 | # |
| 20 | # GNU Makefile |
| 21 | # |
| 22 | # Useful targets |
| 23 | # |
| 24 | # all : build all libraries and programs in the default configuration (currently 'release') |
| 25 | # debug : build all libraries and programs in debug mode |
Josh Coalson | 34c1ea8 | 2002-12-04 04:57:33 +0000 | [diff] [blame] | 26 | # valgrind: build all libraries and programs in debug mode, dynamically linked and ready for valgrind |
Josh Coalson | bb7f6b9 | 2000-12-10 04:09:52 +0000 | [diff] [blame] | 27 | # release : build all libraries and programs in release mode |
| 28 | # test : run the unit and stream tests |
| 29 | # clean : remove all non-distro files |
| 30 | # |
| 31 | |
Josh Coalson | cd0e322 | 2002-10-23 22:08:13 +0000 | [diff] [blame] | 32 | topdir = . |
| 33 | |
Erik de Castro Lopo | d40a6bc | 2016-02-05 11:02:44 +1100 | [diff] [blame] | 34 | .PHONY: all doc src examples libFLAC libFLAC++ share plugin_common flac metaflac test_grabbag test_libFLAC test_libFLAC++ test_seeking test_streams flacdiff flactimer |
Evan Ramos | f658ea5 | 2014-06-26 17:25:48 -0500 | [diff] [blame] | 35 | all: src examples |
Josh Coalson | bb7f6b9 | 2000-12-10 04:09:52 +0000 | [diff] [blame] | 36 | |
| 37 | DEFAULT_CONFIG = release |
| 38 | |
| 39 | CONFIG = $(DEFAULT_CONFIG) |
| 40 | |
| 41 | debug : CONFIG = debug |
Josh Coalson | 34c1ea8 | 2002-12-04 04:57:33 +0000 | [diff] [blame] | 42 | valgrind: CONFIG = valgrind |
Josh Coalson | bb7f6b9 | 2000-12-10 04:09:52 +0000 | [diff] [blame] | 43 | release : CONFIG = release |
| 44 | |
| 45 | debug : all |
Josh Coalson | 34c1ea8 | 2002-12-04 04:57:33 +0000 | [diff] [blame] | 46 | valgrind: all |
Josh Coalson | bb7f6b9 | 2000-12-10 04:09:52 +0000 | [diff] [blame] | 47 | release : all |
| 48 | |
Josh Coalson | ef5c2f8 | 2002-07-24 06:13:41 +0000 | [diff] [blame] | 49 | doc: |
Josh Coalson | 44937a7 | 2007-09-12 02:42:05 +0000 | [diff] [blame] | 50 | (cd $@ && $(MAKE) -f Makefile.lite) |
Josh Coalson | ef5c2f8 | 2002-07-24 06:13:41 +0000 | [diff] [blame] | 51 | |
Hendricks266 | 96d081c | 2012-12-29 04:22:59 -0600 | [diff] [blame] | 52 | src examples: |
Josh Coalson | 44937a7 | 2007-09-12 02:42:05 +0000 | [diff] [blame] | 53 | (cd $@ && $(MAKE) -f Makefile.lite $(CONFIG)) |
| 54 | |
Erik de Castro Lopo | d40a6bc | 2016-02-05 11:02:44 +1100 | [diff] [blame] | 55 | libFLAC libFLAC++ share flac metaflac plugin_common plugin_xmms test_libs_common test_seeking test_streams test_grabbag test_libFLAC test_libFLAC++: |
Josh Coalson | 44937a7 | 2007-09-12 02:42:05 +0000 | [diff] [blame] | 56 | (cd src/$@ && $(MAKE) -f Makefile.lite $(CONFIG)) |
Josh Coalson | bb7f6b9 | 2000-12-10 04:09:52 +0000 | [diff] [blame] | 57 | |
Hendricks266 | 96d081c | 2012-12-29 04:22:59 -0600 | [diff] [blame] | 58 | flacdiff flactimer: |
| 59 | (cd src/utils/$@ && $(MAKE) -f Makefile.lite $(CONFIG)) |
Josh Coalson | bb7f6b9 | 2000-12-10 04:09:52 +0000 | [diff] [blame] | 60 | |
| 61 | test: debug |
Josh Coalson | 44937a7 | 2007-09-12 02:42:05 +0000 | [diff] [blame] | 62 | (cd test && $(MAKE) -f Makefile.lite debug) |
Josh Coalson | 34c1ea8 | 2002-12-04 04:57:33 +0000 | [diff] [blame] | 63 | |
| 64 | testv: valgrind |
Josh Coalson | 44937a7 | 2007-09-12 02:42:05 +0000 | [diff] [blame] | 65 | (cd test && $(MAKE) -f Makefile.lite valgrind) |
Josh Coalson | 34c1ea8 | 2002-12-04 04:57:33 +0000 | [diff] [blame] | 66 | |
| 67 | testr: release |
Josh Coalson | 44937a7 | 2007-09-12 02:42:05 +0000 | [diff] [blame] | 68 | (cd test && $(MAKE) -f Makefile.lite release) |
Josh Coalson | bb7f6b9 | 2000-12-10 04:09:52 +0000 | [diff] [blame] | 69 | |
| 70 | clean: |
Josh Coalson | 44937a7 | 2007-09-12 02:42:05 +0000 | [diff] [blame] | 71 | -(cd doc && $(MAKE) -f Makefile.lite clean) |
| 72 | -(cd src && $(MAKE) -f Makefile.lite clean) |
| 73 | -(cd examples && $(MAKE) -f Makefile.lite clean) |
| 74 | -(cd test && $(MAKE) -f Makefile.lite clean) |
Hendricks266 | 96d081c | 2012-12-29 04:22:59 -0600 | [diff] [blame] | 75 | |
| 76 | examples: libFLAC libFLAC++ share |
| 77 | include $(topdir)/Makefile.deps |