Josh Coalson | 6b05bc5 | 2001-06-08 00:13:21 +0000 | [diff] [blame] | 1 | # libFLAC - Free Lossless Audio Codec library |
Josh Coalson | dea0f5a | 2009-01-07 07:31:28 +0000 | [diff] [blame] | 2 | # Copyright (C) 2001,2002,2003,2004,2005,2006,2007,2008,2009 Josh Coalson |
Josh Coalson | 6b05bc5 | 2001-06-08 00:13:21 +0000 | [diff] [blame] | 3 | # |
Josh Coalson | afd8107 | 2003-01-31 23:34:56 +0000 | [diff] [blame] | 4 | # Redistribution and use in source and binary forms, with or without |
| 5 | # modification, are permitted provided that the following conditions |
| 6 | # are met: |
Josh Coalson | 6b05bc5 | 2001-06-08 00:13:21 +0000 | [diff] [blame] | 7 | # |
Josh Coalson | afd8107 | 2003-01-31 23:34:56 +0000 | [diff] [blame] | 8 | # - Redistributions of source code must retain the above copyright |
| 9 | # notice, this list of conditions and the following disclaimer. |
Josh Coalson | 6b05bc5 | 2001-06-08 00:13:21 +0000 | [diff] [blame] | 10 | # |
Josh Coalson | afd8107 | 2003-01-31 23:34:56 +0000 | [diff] [blame] | 11 | # - Redistributions in binary form must reproduce the above copyright |
| 12 | # notice, this list of conditions and the following disclaimer in the |
| 13 | # documentation and/or other materials provided with the distribution. |
| 14 | # |
| 15 | # - Neither the name of the Xiph.org Foundation nor the names of its |
| 16 | # contributors may be used to endorse or promote products derived from |
| 17 | # this software without specific prior written permission. |
| 18 | # |
| 19 | # THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
| 20 | # ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
| 21 | # LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
| 22 | # A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE FOUNDATION OR |
| 23 | # CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, |
| 24 | # EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO, |
| 25 | # PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR |
| 26 | # PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF |
| 27 | # LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING |
| 28 | # NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS |
| 29 | # SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
Josh Coalson | 6b05bc5 | 2001-06-08 00:13:21 +0000 | [diff] [blame] | 30 | |
Cristian RodrÃguez | 9b7cb22 | 2012-04-07 19:24:21 -0300 | [diff] [blame] | 31 | AM_CPPFLAGS = -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include |
Josh Coalson | 9f429ba | 2001-01-19 22:39:39 +0000 | [diff] [blame] | 32 | lib_LTLIBRARIES = libFLAC.la |
Miroslav Lichvar | 19c78e5 | 2012-12-03 21:04:57 +0100 | [diff] [blame] | 33 | noinst_LTLIBRARIES = libFLAC-static.la |
Josh Coalson | 9f429ba | 2001-01-19 22:39:39 +0000 | [diff] [blame] | 34 | if DEBUG |
Josh Coalson | 4e003c6 | 2001-10-19 18:24:33 +0000 | [diff] [blame] | 35 | DEBUGCFLAGS = -DFLAC__OVERFLOW_DETECT |
Josh Coalson | 9f429ba | 2001-01-19 22:39:39 +0000 | [diff] [blame] | 36 | endif |
Josh Coalson | 663c599 | 2005-01-21 01:53:02 +0000 | [diff] [blame] | 37 | if FLaC__CPU_PPC |
| 38 | # The -force_cpusubtype_ALL is needed to insert a ppc64 instruction |
| 39 | # into cpu.c with an asm(). |
| 40 | if FLaC__SYS_DARWIN |
Josh Coalson | 59717c2 | 2006-10-10 00:35:35 +0000 | [diff] [blame] | 41 | #@@@ PPC optimizations temporarily disabled |
Josh Coalson | 63d489a | 2005-01-29 06:10:58 +0000 | [diff] [blame] | 42 | CPUCFLAGS = -faltivec -force_cpusubtype_ALL -DFLAC__NO_ASM |
Josh Coalson | 663c599 | 2005-01-21 01:53:02 +0000 | [diff] [blame] | 43 | else |
Josh Coalson | 2499c56 | 2005-01-31 04:35:26 +0000 | [diff] [blame] | 44 | # Linux-gcc for PPC does not have -force_cpusubtype_ALL, it is Darwin-specific |
Erik de Castro Lopo | b6e64af | 2012-02-13 19:46:32 +1100 | [diff] [blame] | 45 | CPUCFLAGS = |
| 46 | if FLaC__CPU_PPC_SPE |
| 47 | else |
| 48 | CPUCFLAGS += -maltivec -mabi=altivec |
| 49 | endif |
Josh Coalson | 59717c2 | 2006-10-10 00:35:35 +0000 | [diff] [blame] | 50 | #@@@ PPC optimizations temporarily disabled |
Erik de Castro Lopo | b6e64af | 2012-02-13 19:46:32 +1100 | [diff] [blame] | 51 | CPUCFLAGS += -DFLAC__NO_ASM |
Josh Coalson | 663c599 | 2005-01-21 01:53:02 +0000 | [diff] [blame] | 52 | endif |
| 53 | endif |
Josh Coalson | 05a3984 | 2005-01-30 18:44:46 +0000 | [diff] [blame] | 54 | |
Josh Coalson | d351d04 | 2006-12-14 07:23:48 +0000 | [diff] [blame] | 55 | AM_CFLAGS = $(DEBUGCFLAGS) $(CPUCFLAGS) @OGG_CFLAGS@ |
Josh Coalson | 9f429ba | 2001-01-19 22:39:39 +0000 | [diff] [blame] | 56 | |
Josh Coalson | c8ef835 | 2001-05-25 00:06:33 +0000 | [diff] [blame] | 57 | if FLaC__NO_ASM |
| 58 | else |
Josh Coalson | cd66fc0 | 2001-06-18 02:34:09 +0000 | [diff] [blame] | 59 | if FLaC__CPU_IA32 |
Josh Coalson | e02e8ba | 2001-05-23 20:58:14 +0000 | [diff] [blame] | 60 | if FLaC__HAS_NASM |
Josh Coalson | 4c8f73a | 2001-07-22 07:27:45 +0000 | [diff] [blame] | 61 | ARCH_SUBDIRS = ia32 |
Josh Coalson | d351d04 | 2006-12-14 07:23:48 +0000 | [diff] [blame] | 62 | LOCAL_EXTRA_LIBADD = ia32/libFLAC-asm.la |
Josh Coalson | c8ef835 | 2001-05-25 00:06:33 +0000 | [diff] [blame] | 63 | endif |
| 64 | endif |
Josh Coalson | 31bdd70 | 2004-07-25 20:34:40 +0000 | [diff] [blame] | 65 | if FLaC__CPU_PPC |
| 66 | ARCH_SUBDIRS = ppc |
Josh Coalson | 16eded5 | 2005-02-03 04:29:52 +0000 | [diff] [blame] | 67 | if FLaC__HAS_AS__TEMPORARILY_DISABLED |
Erik de Castro Lopo | b6e64af | 2012-02-13 19:46:32 +1100 | [diff] [blame] | 68 | if FLaC__CPU_PPC_SPE |
| 69 | else |
Josh Coalson | d351d04 | 2006-12-14 07:23:48 +0000 | [diff] [blame] | 70 | LOCAL_EXTRA_LIBADD = ppc/as/libFLAC-asm.la |
Josh Coalson | a02b73f | 2005-03-02 05:21:06 +0000 | [diff] [blame] | 71 | LOCAL_EXTRA_LDFLAGS = "-Wl,-read_only_relocs,warning" |
Josh Coalson | b990022 | 2004-12-30 01:13:03 +0000 | [diff] [blame] | 72 | else |
Josh Coalson | 16eded5 | 2005-02-03 04:29:52 +0000 | [diff] [blame] | 73 | if FLaC__HAS_GAS__TEMPORARILY_DISABLED |
Josh Coalson | d351d04 | 2006-12-14 07:23:48 +0000 | [diff] [blame] | 74 | LOCAL_EXTRA_LIBADD = ppc/gas/libFLAC-asm.la |
Josh Coalson | a02b73f | 2005-03-02 05:21:06 +0000 | [diff] [blame] | 75 | LOCAL_EXTRA_LDFLAGS = "" |
Josh Coalson | b990022 | 2004-12-30 01:13:03 +0000 | [diff] [blame] | 76 | endif |
| 77 | endif |
Josh Coalson | 31bdd70 | 2004-07-25 20:34:40 +0000 | [diff] [blame] | 78 | endif |
Josh Coalson | c8ef835 | 2001-05-25 00:06:33 +0000 | [diff] [blame] | 79 | endif |
Erik de Castro Lopo | b6e64af | 2012-02-13 19:46:32 +1100 | [diff] [blame] | 80 | endif |
Josh Coalson | c8ef835 | 2001-05-25 00:06:33 +0000 | [diff] [blame] | 81 | |
Cristian RodrÃguez | 9b7cb22 | 2012-04-07 19:24:21 -0300 | [diff] [blame] | 82 | libFLAC_la_LIBADD = $(LOCAL_EXTRA_LIBADD) @OGG_LIBS@ -lm |
Josh Coalson | d351d04 | 2006-12-14 07:23:48 +0000 | [diff] [blame] | 83 | |
Josh Coalson | 4c8f73a | 2001-07-22 07:27:45 +0000 | [diff] [blame] | 84 | SUBDIRS = $(ARCH_SUBDIRS) include . |
| 85 | |
Josh Coalson | bfeec74 | 2002-06-28 23:45:53 +0000 | [diff] [blame] | 86 | m4datadir = $(datadir)/aclocal |
| 87 | m4data_DATA = libFLAC.m4 |
| 88 | |
Josh Coalson | 07e89cc | 2007-02-07 01:24:15 +0000 | [diff] [blame] | 89 | pkgconfigdir = $(libdir)/pkgconfig |
| 90 | pkgconfig_DATA = flac.pc |
| 91 | |
Josh Coalson | cd443f6 | 2002-07-09 06:27:07 +0000 | [diff] [blame] | 92 | EXTRA_DIST = \ |
| 93 | Makefile.lite \ |
Josh Coalson | 07e89cc | 2007-02-07 01:24:15 +0000 | [diff] [blame] | 94 | flac.pc.in \ |
Josh Coalson | bfc8e31 | 2002-11-21 09:00:25 +0000 | [diff] [blame] | 95 | libFLAC_dynamic.dsp \ |
Josh Coalson | 4fb6132 | 2007-07-11 04:13:09 +0000 | [diff] [blame] | 96 | libFLAC_dynamic.vcproj \ |
Josh Coalson | bfc8e31 | 2002-11-21 09:00:25 +0000 | [diff] [blame] | 97 | libFLAC_static.dsp \ |
Josh Coalson | 4fb6132 | 2007-07-11 04:13:09 +0000 | [diff] [blame] | 98 | libFLAC_static.vcproj \ |
Josh Coalson | cd443f6 | 2002-07-09 06:27:07 +0000 | [diff] [blame] | 99 | libFLAC.m4 |
Josh Coalson | bfeec74 | 2002-06-28 23:45:53 +0000 | [diff] [blame] | 100 | |
Josh Coalson | 8da98c8 | 2006-10-15 04:24:05 +0000 | [diff] [blame] | 101 | if FLaC__HAS_OGG |
| 102 | extra_ogg_sources = \ |
| 103 | ogg_decoder_aspect.c \ |
| 104 | ogg_encoder_aspect.c \ |
| 105 | ogg_helper.c \ |
| 106 | ogg_mapping.c |
| 107 | endif |
Erik de Castro Lopo | d9fde55 | 2012-05-07 19:45:23 +1000 | [diff] [blame] | 108 | # see 'http://www.gnu.org/software/libtool/manual/libtool.html#Libtool-versioning' for numbering convention |
Miroslav Lichvar | a43f56c | 2012-12-03 21:04:59 +0100 | [diff] [blame^] | 109 | libFLAC_la_LDFLAGS = -version-info 11:0:3 $(LOCAL_EXTRA_LDFLAGS) @LT_NO_UNDEFINED@ |
Miroslav Lichvar | 19c78e5 | 2012-12-03 21:04:57 +0100 | [diff] [blame] | 110 | |
| 111 | libFLAC_sources = \ |
Josh Coalson | 673976d | 2001-03-30 00:45:52 +0000 | [diff] [blame] | 112 | bitmath.c \ |
Josh Coalson | 423f804 | 2007-01-28 17:40:26 +0000 | [diff] [blame] | 113 | bitreader.c \ |
| 114 | bitwriter.c \ |
Josh Coalson | e02e8ba | 2001-05-23 20:58:14 +0000 | [diff] [blame] | 115 | cpu.c \ |
Josh Coalson | c8ef835 | 2001-05-25 00:06:33 +0000 | [diff] [blame] | 116 | crc.c \ |
Josh Coalson | e02e8ba | 2001-05-23 20:58:14 +0000 | [diff] [blame] | 117 | fixed.c \ |
Josh Coalson | 29a6a9d | 2004-11-09 01:25:44 +0000 | [diff] [blame] | 118 | float.c \ |
Josh Coalson | e02e8ba | 2001-05-23 20:58:14 +0000 | [diff] [blame] | 119 | format.c \ |
| 120 | lpc.c \ |
| 121 | md5.c \ |
Josh Coalson | c8ef835 | 2001-05-25 00:06:33 +0000 | [diff] [blame] | 122 | memory.c \ |
Josh Coalson | 90ced91 | 2002-05-30 05:23:38 +0000 | [diff] [blame] | 123 | metadata_iterators.c \ |
| 124 | metadata_object.c \ |
Josh Coalson | 0a15c14 | 2001-06-13 17:59:57 +0000 | [diff] [blame] | 125 | stream_decoder.c \ |
| 126 | stream_encoder.c \ |
Josh Coalson | 6c08886 | 2006-05-18 07:36:34 +0000 | [diff] [blame] | 127 | stream_encoder_framing.c \ |
Josh Coalson | 8da98c8 | 2006-10-15 04:24:05 +0000 | [diff] [blame] | 128 | window.c \ |
| 129 | $(extra_ogg_sources) |
Miroslav Lichvar | 19c78e5 | 2012-12-03 21:04:57 +0100 | [diff] [blame] | 130 | |
| 131 | libFLAC_la_SOURCES = $(libFLAC_sources) |
| 132 | |
| 133 | # needed for test_libFLAC |
| 134 | libFLAC_static_la_LIBADD = $(LOCAL_EXTRA_LIBADD) |
| 135 | libFLAC_static_la_SOURCES = $(libFLAC_sources) |