Disable Altivec on host triplet powerpc-unknown-linux-gnuspe.
[platform/upstream/flac.git] / src / libFLAC / Makefile.am
1 #  libFLAC - Free Lossless Audio Codec library
2 #  Copyright (C) 2001,2002,2003,2004,2005,2006,2007,2008,2009  Josh Coalson
3 #
4 #  Redistribution and use in source and binary forms, with or without
5 #  modification, are permitted provided that the following conditions
6 #  are met:
7 #
8 #  - Redistributions of source code must retain the above copyright
9 #  notice, this list of conditions and the following disclaimer.
10 #
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.
30
31 lib_LTLIBRARIES = libFLAC.la
32 if DEBUG
33 DEBUGCFLAGS = -DFLAC__OVERFLOW_DETECT
34 endif
35 if FLaC__CPU_PPC
36 # The -force_cpusubtype_ALL is needed to insert a ppc64 instruction
37 # into cpu.c with an asm().
38 if FLaC__SYS_DARWIN
39 #@@@ PPC optimizations temporarily disabled
40 CPUCFLAGS = -faltivec -force_cpusubtype_ALL -DFLAC__NO_ASM
41 else
42 # Linux-gcc for PPC does not have -force_cpusubtype_ALL, it is Darwin-specific
43 CPUCFLAGS =
44 if FLaC__CPU_PPC_SPE
45 else
46 CPUCFLAGS += -maltivec -mabi=altivec
47 endif
48 #@@@ PPC optimizations temporarily disabled
49 CPUCFLAGS += -DFLAC__NO_ASM
50 endif
51 endif
52
53 AM_CFLAGS = $(DEBUGCFLAGS) $(CPUCFLAGS) @OGG_CFLAGS@
54
55 if FLaC__NO_ASM
56 else
57 if FLaC__CPU_IA32
58 if FLaC__HAS_NASM
59 ARCH_SUBDIRS = ia32
60 LOCAL_EXTRA_LIBADD = ia32/libFLAC-asm.la
61 endif
62 endif
63 if FLaC__CPU_PPC
64 ARCH_SUBDIRS = ppc
65 if FLaC__HAS_AS__TEMPORARILY_DISABLED
66 if FLaC__CPU_PPC_SPE
67 else
68 LOCAL_EXTRA_LIBADD = ppc/as/libFLAC-asm.la
69 LOCAL_EXTRA_LDFLAGS = "-Wl,-read_only_relocs,warning"
70 else
71 if FLaC__HAS_GAS__TEMPORARILY_DISABLED
72 LOCAL_EXTRA_LIBADD = ppc/gas/libFLAC-asm.la
73 LOCAL_EXTRA_LDFLAGS = ""
74 endif
75 endif
76 endif
77 endif
78 endif
79
80 libFLAC_la_LIBADD = $(LOCAL_EXTRA_LIBADD) @OGG_LIBS@
81
82 SUBDIRS = $(ARCH_SUBDIRS) include .
83
84 m4datadir = $(datadir)/aclocal
85 m4data_DATA = libFLAC.m4
86
87 pkgconfigdir = $(libdir)/pkgconfig
88 pkgconfig_DATA = flac.pc
89
90 EXTRA_DIST = \
91         Makefile.lite \
92         flac.pc.in \
93         libFLAC_dynamic.dsp \
94         libFLAC_dynamic.vcproj \
95         libFLAC_static.dsp \
96         libFLAC_static.vcproj \
97         libFLAC.m4
98
99 if FLaC__HAS_OGG
100 extra_ogg_sources = \
101         ogg_decoder_aspect.c \
102         ogg_encoder_aspect.c \
103         ogg_helper.c \
104         ogg_mapping.c
105 endif
106 # see 'http://www.gnu.org/software/libtool/manual.html#Libtool-versioning' for numbering convention
107 libFLAC_la_LDFLAGS = -version-info 10:0:2 -lm $(LOCAL_EXTRA_LDFLAGS) @LT_NO_UNDEFINED@
108 libFLAC_la_SOURCES = \
109         bitmath.c \
110         bitreader.c \
111         bitwriter.c \
112         cpu.c \
113         crc.c \
114         fixed.c \
115         float.c \
116         format.c \
117         lpc.c \
118         md5.c \
119         memory.c \
120         metadata_iterators.c \
121         metadata_object.c \
122         stream_decoder.c \
123         stream_encoder.c \
124         stream_encoder_framing.c \
125         window.c \
126         $(extra_ogg_sources)