# 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.
#
# GNU makefile
#
-LIB_NAME = libFLAC
-ifeq ($(DARWIN_BUILD),yes)
-DEFINES = -DFLAC__NO_NASM -DFLAC__ALIGN_MALLOC_DATA
+topdir = ../..
+
+ifeq ($(OS),Darwin)
+ EXPLICIT_LIBS = $(OGG_EXPLICIT_LIBS) -lm
+else
+ LIBS = $(OGG_LIBS) -lm
+endif
+
+LIB_NAME = libFLAC
+ifeq ($(PROC),ppc)
+ DEFINES = -DFLAC__CPU_PPC -DFLAC__USE_ALTIVEC -DFLAC__ALIGN_MALLOC_DATA
+else
+ifeq ($(OS),Solaris)
+ DEFINES = -DFLAC__NO_ASM -DFLAC__ALIGN_MALLOC_DATA
else
-ifeq ($(SOLARIS_BUILD),yes)
-DEFINES = -DFLAC__NO_NASM -DFLAC__ALIGN_MALLOC_DATA
+ifeq ($(PROC),i386)
+ DEFINES = -DFLAC__CPU_IA32 -DFLAC__USE_3DNOW -DFLAC__HAS_NASM -DFLAC__ALIGN_MALLOC_DATA
else
-DEFINES = -DFLAC__CPU_IA32 -DFLAC__HAS_NASM -DFLAC__ALIGN_MALLOC_DATA
+ DEFINES = -DFLAC__ALIGN_MALLOC_DATA
+endif
endif
endif
-INCLUDES = -I./include -I../../include
+INCLUDES = -I./include -I$(topdir)/include $(OGG_INCLUDES)
DEBUG_CFLAGS = -DFLAC__OVERFLOW_DETECT
-ifeq ($(DARWIN_BUILD),yes)
+ifeq ($(OS),Darwin)
+SRCS_S = \
+ ppc/as/lpc_asm.s
else
-ifeq ($(SOLARIS_BUILD),yes)
-else
-ASM_OBJS = \
- ia32/cpu_asm.o \
- ia32/fixed_asm.o \
- ia32/lpc_asm.o
+ifeq ($(PROC),i386)
+SRCS_NASM = \
+ ia32/bitreader_asm.nasm \
+ ia32/cpu_asm.nasm \
+ ia32/fixed_asm.nasm \
+ ia32/lpc_asm.nasm \
+ ia32/stream_encoder_asm.nasm
endif
endif
-OBJS = $(ASM_OBJS) \
- bitbuffer.o \
- bitmath.o \
- cpu.o \
- crc.o \
- file_decoder.o \
- fixed.o \
- format.o \
- lpc.o \
- md5.o \
- memory.o \
- seek_table.o \
- seekable_stream_decoder.o \
- stream_decoder.o \
- stream_encoder.o \
- stream_encoder_framing.o \
- utility.o
+OGG_SRCS_C = \
+ ogg_decoder_aspect.c \
+ ogg_encoder_aspect.c \
+ ogg_helper.c \
+ ogg_mapping.c
+
+SRCS_C = \
+ bitmath.c \
+ bitreader.c \
+ bitwriter.c \
+ cpu.c \
+ crc.c \
+ fixed.c \
+ float.c \
+ format.c \
+ lpc.c \
+ md5.c \
+ memory.c \
+ metadata_iterators.c \
+ metadata_object.c \
+ stream_decoder.c \
+ stream_encoder.c \
+ stream_encoder_framing.c \
+ window.c \
+ $(OGG_SRCS)
-include ../../build/lib.mk
+include $(topdir)/build/lib.mk
# DO NOT DELETE THIS LINE -- make depend depends on it.