1#  libFLAC - Free Lossless Audio Codec library
2#  Copyright (C) 2001,2002,2003,2004,2005,2006,2007  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
31lib_LTLIBRARIES = libFLAC.la
32if DEBUG
33DEBUGCFLAGS = -DFLAC__OVERFLOW_DETECT
34endif
35if FLaC__CPU_PPC
36# The -force_cpusubtype_ALL is needed to insert a ppc64 instruction
37# into cpu.c with an asm().
38if FLaC__SYS_DARWIN
39#@@@ PPC optimizations temporarily disabled
40CPUCFLAGS = -faltivec -force_cpusubtype_ALL -DFLAC__NO_ASM
41else
42# Linux-gcc for PPC does not have -force_cpusubtype_ALL, it is Darwin-specific
43#@@@ PPC optimizations temporarily disabled
44CPUCFLAGS = -maltivec -mabi=altivec -DFLAC__NO_ASM
45endif
46endif
47
48AM_CFLAGS = $(DEBUGCFLAGS) $(CPUCFLAGS) @OGG_CFLAGS@
49
50if FLaC__NO_ASM
51else
52if FLaC__CPU_IA32
53if FLaC__HAS_NASM
54ARCH_SUBDIRS = ia32
55LOCAL_EXTRA_LIBADD = ia32/libFLAC-asm.la
56endif
57endif
58if FLaC__CPU_PPC
59ARCH_SUBDIRS = ppc
60if FLaC__HAS_AS__TEMPORARILY_DISABLED
61LOCAL_EXTRA_LIBADD = ppc/as/libFLAC-asm.la
62LOCAL_EXTRA_LDFLAGS = "-Wl,-read_only_relocs,warning"
63else
64if FLaC__HAS_GAS__TEMPORARILY_DISABLED
65LOCAL_EXTRA_LIBADD = ppc/gas/libFLAC-asm.la
66LOCAL_EXTRA_LDFLAGS = ""
67endif
68endif
69endif
70endif
71
72libFLAC_la_LIBADD = $(LOCAL_EXTRA_LIBADD) @OGG_LIBS@
73
74SUBDIRS = $(ARCH_SUBDIRS) include .
75
76m4datadir = $(datadir)/aclocal
77m4data_DATA = libFLAC.m4
78
79pkgconfigdir = $(libdir)/pkgconfig
80pkgconfig_DATA = flac.pc
81
82EXTRA_DIST = \
83	Makefile.lite \
84	flac.pc.in \
85	libFLAC_dynamic.dsp \
86	libFLAC_dynamic.vcproj \
87	libFLAC_static.dsp \
88	libFLAC_static.vcproj \
89	libFLAC.m4
90
91if FLaC__HAS_OGG
92extra_ogg_sources = \
93	ogg_decoder_aspect.c \
94	ogg_encoder_aspect.c \
95	ogg_helper.c \
96	ogg_mapping.c
97endif
98# see 'http://www.gnu.org/software/libtool/manual.html#Libtool-versioning' for numbering convention
99libFLAC_la_LDFLAGS = -version-info 10:0:2 -lm $(LOCAL_EXTRA_LDFLAGS)
100libFLAC_la_SOURCES = \
101	bitmath.c \
102	bitreader.c \
103	bitwriter.c \
104	cpu.c \
105	crc.c \
106	fixed.c \
107	float.c \
108	format.c \
109	lpc.c \
110	md5.c \
111	memory.c \
112	metadata_iterators.c \
113	metadata_object.c \
114	stream_decoder.c \
115	stream_encoder.c \
116	stream_encoder_framing.c \
117	window.c \
118	$(extra_ogg_sources)
119