src/libFLAC/stream_decoder.c : Fix buffer read overflow.
[platform/upstream/flac.git] / src / libFLAC / Makefile.am
1 #  libFLAC - Free Lossless Audio Codec library
2 #  Copyright (C) 2001-2009  Josh Coalson
3 #  Copyright (C) 2011-2013  Xiph.Org Foundation
4 #
5 #  Redistribution and use in source and binary forms, with or without
6 #  modification, are permitted provided that the following conditions
7 #  are met:
8 #
9 #  - Redistributions of source code must retain the above copyright
10 #  notice, this list of conditions and the following disclaimer.
11 #
12 #  - Redistributions in binary form must reproduce the above copyright
13 #  notice, this list of conditions and the following disclaimer in the
14 #  documentation and/or other materials provided with the distribution.
15 #
16 #  - Neither the name of the Xiph.org Foundation nor the names of its
17 #  contributors may be used to endorse or promote products derived from
18 #  this software without specific prior written permission.
19 #
20 #  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
21 #  ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
22 #  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
23 #  A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR
24 #  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
25 #  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
26 #  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
27 #  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
28 #  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
29 #  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
30 #  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
31
32 AM_CPPFLAGS = -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include
33 lib_LTLIBRARIES = libFLAC.la
34 noinst_LTLIBRARIES = libFLAC-static.la
35 if DEBUG
36 DEBUGCFLAGS = -DFLAC__OVERFLOW_DETECT
37 endif
38
39 # FIXME: The following logic should be part of configure, not of Makefile.am
40
41 if FLaC__CPU_PPC
42 # The -force_cpusubtype_ALL is needed to insert a ppc64 instruction
43 # into cpu.c with an asm().
44 if FLaC__SYS_DARWIN
45 #@@@ PPC optimizations temporarily disabled
46 CPUCFLAGS = -faltivec -force_cpusubtype_ALL -DFLAC__NO_ASM
47 else
48 # Linux-gcc for PPC does not have -force_cpusubtype_ALL, it is Darwin-specific
49 CPUCFLAGS =
50 if FLaC__CPU_PPC_SPE
51 else
52 CPUCFLAGS += -maltivec -mabi=altivec
53 endif
54 #@@@ PPC optimizations temporarily disabled
55 CPUCFLAGS += -DFLAC__NO_ASM
56 endif
57 endif
58
59 AM_CFLAGS = $(DEBUGCFLAGS) $(CPUCFLAGS) @OGG_CFLAGS@
60
61 if FLaC__NO_ASM
62 else
63 if FLaC__CPU_IA32
64 if FLaC__HAS_NASM
65 ARCH_SUBDIRS = ia32
66 LOCAL_EXTRA_LIBADD = ia32/libFLAC-asm.la
67 endif
68 endif
69 if FLaC__CPU_PPC
70 ARCH_SUBDIRS = ppc
71 if FLaC__HAS_AS__TEMPORARILY_DISABLED
72 if FLaC__CPU_PPC_SPE
73 else
74 LOCAL_EXTRA_LIBADD = ppc/as/libFLAC-asm.la
75 LOCAL_EXTRA_LDFLAGS = "-Wl,-read_only_relocs,warning"
76 else
77 if FLaC__HAS_GAS__TEMPORARILY_DISABLED
78 LOCAL_EXTRA_LIBADD = ppc/gas/libFLAC-asm.la
79 LOCAL_EXTRA_LDFLAGS = ""
80 endif
81 endif
82 endif
83 endif
84 endif
85
86 if OS_IS_WINDOWS
87 win_utf8_lib = $(top_builddir)/src/share/win_utf8_io/libwin_utf8_io.la
88 endif
89
90 libFLAC_la_LIBADD = $(win_utf8_lib) $(LOCAL_EXTRA_LIBADD) @OGG_LIBS@ -lm
91
92 SUBDIRS = $(ARCH_SUBDIRS) include .
93
94 m4datadir = $(datadir)/aclocal
95 m4data_DATA = libFLAC.m4
96
97 pkgconfigdir = $(libdir)/pkgconfig
98 pkgconfig_DATA = flac.pc
99
100 EXTRA_DIST = \
101         Makefile.lite \
102         flac.pc.in \
103         libFLAC_dynamic.vcproj \
104         libFLAC_static.vcproj \
105         libFLAC.m4
106
107 if FLaC__HAS_OGG
108 extra_ogg_sources = \
109         ogg_decoder_aspect.c \
110         ogg_encoder_aspect.c \
111         ogg_helper.c \
112         ogg_mapping.c
113 endif
114
115 # see 'http://www.gnu.org/software/libtool/manual/libtool.html#Libtool-versioning' for numbering convention
116 libFLAC_la_LDFLAGS = $(AM_LDFLAGS) -version-info 11:0:3 $(LOCAL_EXTRA_LDFLAGS) @LT_NO_UNDEFINED@
117
118 libFLAC_sources = \
119         bitmath.c \
120         bitreader.c \
121         bitwriter.c \
122         cpu.c \
123         crc.c \
124         fixed.c \
125         float.c \
126         format.c \
127         lpc.c \
128         md5.c \
129         memory.c \
130         metadata_iterators.c \
131         metadata_object.c \
132         stream_decoder.c \
133         stream_encoder.c \
134         stream_encoder_framing.c \
135         window.c \
136         $(extra_ogg_sources)
137
138 libFLAC_la_SOURCES = $(libFLAC_sources)
139
140 # needed for test_libFLAC
141 libFLAC_static_la_LIBADD = $(LOCAL_EXTRA_LIBADD)
142 libFLAC_static_la_SOURCES = $(libFLAC_sources)