Enable utf8 I/O stuff when compiling with MinGW.
[platform/upstream/flac.git] / src / libFLAC / Makefile.am
index eea689a..aa0b8b6 100644 (file)
 #  libFLAC - Free Lossless Audio Codec library
-#  Copyright (C) 2001,2002  Josh Coalson
+#  Copyright (C) 2001,2002,2003,2004,2005,2006,2007,2008,2009  Josh Coalson
 #
-#  This library is free software; you can redistribute it and/or
-#  modify it under the terms of the GNU Library General Public
-#  License as published by the Free Software Foundation; either
-#  version 2 of the License, or (at your option) any later version.
+#  Redistribution and use in source and binary forms, with or without
+#  modification, are permitted provided that the following conditions
+#  are met:
 #
-#  This library is distributed in the hope that it will be useful,
-#  but WITHOUT ANY WARRANTY; without even the implied warranty of
-#  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
-#  Library General Public License for more details.
+#  - Redistributions of source code must retain the above copyright
+#  notice, this list of conditions and the following disclaimer.
 #
-#  You should have received a copy of the GNU Library General Public
-#  License along with this library; if not, write to the
-#  Free Software Foundation, Inc., 59 Temple Place - Suite 330,
-#  Boston, MA  02111-1307, USA.
+#  - Redistributions in binary form must reproduce the above copyright
+#  notice, this list of conditions and the following disclaimer in the
+#  documentation and/or other materials provided with the distribution.
+#
+#  - Neither the name of the Xiph.org Foundation nor the names of its
+#  contributors may be used to endorse or promote products derived from
+#  this software without specific prior written permission.
+#
+#  THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS
+#  ``AS IS'' AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT
+#  LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR
+#  A PARTICULAR PURPOSE ARE DISCLAIMED.  IN NO EVENT SHALL THE FOUNDATION OR
+#  CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL,
+#  EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT LIMITED TO,
+#  PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, DATA, OR
+#  PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY THEORY OF
+#  LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT (INCLUDING
+#  NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
+#  SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
 
+AM_CPPFLAGS = -I$(top_builddir) -I$(srcdir)/include -I$(top_srcdir)/include
 lib_LTLIBRARIES = libFLAC.la
+noinst_LTLIBRARIES = libFLAC-static.la
 if DEBUG
 DEBUGCFLAGS = -DFLAC__OVERFLOW_DETECT
 endif
-CFLAGS = @CFLAGS@ $(DEBUGCFLAGS)
+
+# FIXME: The following logic should be part of configure, not of Makefile.am
+
+if FLaC__CPU_PPC
+# The -force_cpusubtype_ALL is needed to insert a ppc64 instruction
+# into cpu.c with an asm().
+if FLaC__SYS_DARWIN
+#@@@ PPC optimizations temporarily disabled
+CPUCFLAGS = -faltivec -force_cpusubtype_ALL -DFLAC__NO_ASM
+else
+# Linux-gcc for PPC does not have -force_cpusubtype_ALL, it is Darwin-specific
+CPUCFLAGS =
+if FLaC__CPU_PPC_SPE
+else
+CPUCFLAGS += -maltivec -mabi=altivec
+endif
+#@@@ PPC optimizations temporarily disabled
+CPUCFLAGS += -DFLAC__NO_ASM
+endif
+endif
+
+AM_CFLAGS = $(DEBUGCFLAGS) $(CPUCFLAGS) @OGG_CFLAGS@
 
 if FLaC__NO_ASM
 else
 if FLaC__CPU_IA32
 if FLaC__HAS_NASM
 ARCH_SUBDIRS = ia32
-libFLAC_la_LIBADD = ia32/libFLAC-asm.la
+LOCAL_EXTRA_LIBADD = ia32/libFLAC-asm.la
+endif
+endif
+if FLaC__CPU_PPC
+ARCH_SUBDIRS = ppc
+if FLaC__HAS_AS__TEMPORARILY_DISABLED
+if FLaC__CPU_PPC_SPE
+else
+LOCAL_EXTRA_LIBADD = ppc/as/libFLAC-asm.la
+LOCAL_EXTRA_LDFLAGS = "-Wl,-read_only_relocs,warning"
+else
+if FLaC__HAS_GAS__TEMPORARILY_DISABLED
+LOCAL_EXTRA_LIBADD = ppc/gas/libFLAC-asm.la
+LOCAL_EXTRA_LDFLAGS = ""
+endif
+endif
 endif
 endif
 endif
 
+if OS_IS_WINDOWS
+win_utf8_lib = $(top_builddir)/src/share/win_utf8_io/libwin_utf8_io.la
+endif
+
+libFLAC_la_LIBADD = $(win_utf8_lib) $(LOCAL_EXTRA_LIBADD) @OGG_LIBS@ -lm
+
 SUBDIRS = $(ARCH_SUBDIRS) include .
 
-libFLAC_la_LDFLAGS = -version-info 2:1:1
+m4datadir = $(datadir)/aclocal
+m4data_DATA = libFLAC.m4
+
+pkgconfigdir = $(libdir)/pkgconfig
+pkgconfig_DATA = flac.pc
 
-libFLAC_la_SOURCES = \
-       bitbuffer.c \
+EXTRA_DIST = \
+       Makefile.lite \
+       flac.pc.in \
+       libFLAC_dynamic.vcproj \
+       libFLAC_static.vcproj \
+       libFLAC.m4
+
+if FLaC__HAS_OGG
+extra_ogg_sources = \
+       ogg_decoder_aspect.c \
+       ogg_encoder_aspect.c \
+       ogg_helper.c \
+       ogg_mapping.c
+endif
+
+# see 'http://www.gnu.org/software/libtool/manual/libtool.html#Libtool-versioning' for numbering convention
+libFLAC_la_LDFLAGS = -version-info 11:0:3 $(LOCAL_EXTRA_LDFLAGS) @LT_NO_UNDEFINED@
+
+libFLAC_sources = \
        bitmath.c \
+       bitreader.c \
+       bitwriter.c \
        cpu.c \
        crc.c \
-       file_decoder.c \
        fixed.c \
+       float.c \
        format.c \
        lpc.c \
        md5.c \
        memory.c \
-       metadata.c \
-       seek_table.c \
-       seekable_stream_decoder.c \
+       metadata_iterators.c \
+       metadata_object.c \
        stream_decoder.c \
        stream_encoder.c \
-       stream_encoder_framing.c
+       stream_encoder_framing.c \
+       window.c \
+       $(extra_ogg_sources)
+
+libFLAC_la_SOURCES = $(libFLAC_sources)
+
+# needed for test_libFLAC
+libFLAC_static_la_LIBADD = $(LOCAL_EXTRA_LIBADD)
+libFLAC_static_la_SOURCES = $(libFLAC_sources)