blob: 7a7ec39bdc8902958ba660d042cd475d9f573091 [file] [log] [blame]
Josh Coalson6b05bc52001-06-08 00:13:21 +00001# libFLAC - Free Lossless Audio Codec library
Josh Coalsondea0f5a2009-01-07 07:31:28 +00002# Copyright (C) 2001,2002,2003,2004,2005,2006,2007,2008,2009 Josh Coalson
Josh Coalson6b05bc52001-06-08 00:13:21 +00003#
Josh Coalsonafd81072003-01-31 23:34:56 +00004# Redistribution and use in source and binary forms, with or without
5# modification, are permitted provided that the following conditions
6# are met:
Josh Coalson6b05bc52001-06-08 00:13:21 +00007#
Josh Coalsonafd81072003-01-31 23:34:56 +00008# - Redistributions of source code must retain the above copyright
9# notice, this list of conditions and the following disclaimer.
Josh Coalson6b05bc52001-06-08 00:13:21 +000010#
Josh Coalsonafd81072003-01-31 23:34:56 +000011# - 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.
Josh Coalson6b05bc52001-06-08 00:13:21 +000030
Josh Coalsonbb7f6b92000-12-10 04:09:52 +000031#
32# GNU makefile
33#
34
Josh Coalsoncd0e3222002-10-23 22:08:13 +000035topdir = ../..
36
Josh Coalsonc10f9782008-09-14 19:59:52 +000037ifeq ($(OS),Darwin)
Hendricks26696d081c2012-12-29 04:22:59 -060038 EXPLICIT_LIBS = $(OGG_EXPLICIT_LIBS) -lm
39else
40 LIBS = $(OGG_LIBS) -lm
41endif
42
43LIB_NAME = libFLAC
44ifeq ($(PROC),ppc)
45 DEFINES = -DFLAC__CPU_PPC -DFLAC__USE_ALTIVEC -DFLAC__ALIGN_MALLOC_DATA
Josh Coalson6e144902001-12-07 19:28:25 +000046else
Josh Coalsonc10f9782008-09-14 19:59:52 +000047ifeq ($(OS),Solaris)
Hendricks26696d081c2012-12-29 04:22:59 -060048 DEFINES = -DFLAC__NO_ASM -DFLAC__ALIGN_MALLOC_DATA
Josh Coalson8e46a5e2002-04-25 05:19:37 +000049else
Josh Coalsonc10f9782008-09-14 19:59:52 +000050ifeq ($(PROC),i386)
Hendricks26696d081c2012-12-29 04:22:59 -060051 DEFINES = -DFLAC__CPU_IA32 -DFLAC__USE_3DNOW -DFLAC__HAS_NASM -DFLAC__ALIGN_MALLOC_DATA
Josh Coalsonc10f9782008-09-14 19:59:52 +000052else
Hendricks26696d081c2012-12-29 04:22:59 -060053 DEFINES = -DFLAC__ALIGN_MALLOC_DATA
Josh Coalsonc10f9782008-09-14 19:59:52 +000054endif
Josh Coalson6e144902001-12-07 19:28:25 +000055endif
Josh Coalson8e46a5e2002-04-25 05:19:37 +000056endif
Hendricks26696d081c2012-12-29 04:22:59 -060057INCLUDES = -I./include -I$(topdir)/include $(OGG_INCLUDES)
Josh Coalsonbb6712e2001-04-24 22:54:07 +000058DEBUG_CFLAGS = -DFLAC__OVERFLOW_DETECT
Josh Coalsonbb7f6b92000-12-10 04:09:52 +000059
Josh Coalsonc10f9782008-09-14 19:59:52 +000060ifeq ($(OS),Darwin)
Josh Coalson2757af62004-10-30 00:03:21 +000061SRCS_S = \
Josh Coalson47faab82004-11-09 01:50:35 +000062 ppc/as/lpc_asm.s
Josh Coalson6e144902001-12-07 19:28:25 +000063else
Josh Coalsonc10f9782008-09-14 19:59:52 +000064ifeq ($(PROC),i386)
Josh Coalsonb74fc982002-11-20 06:40:08 +000065SRCS_NASM = \
Josh Coalsonddddff62007-03-22 03:22:27 +000066 ia32/bitreader_asm.nasm \
Josh Coalsonb74fc982002-11-20 06:40:08 +000067 ia32/cpu_asm.nasm \
68 ia32/fixed_asm.nasm \
Josh Coalson717ea8c2007-04-04 01:01:28 +000069 ia32/lpc_asm.nasm \
70 ia32/stream_encoder_asm.nasm
Josh Coalson6e144902001-12-07 19:28:25 +000071endif
Josh Coalson8e46a5e2002-04-25 05:19:37 +000072endif
Josh Coalson6e144902001-12-07 19:28:25 +000073
Hendricks26696d081c2012-12-29 04:22:59 -060074OGG_SRCS_C = \
75 ogg_decoder_aspect.c \
76 ogg_encoder_aspect.c \
77 ogg_helper.c \
78 ogg_mapping.c
79
Josh Coalsonb74fc982002-11-20 06:40:08 +000080SRCS_C = \
Josh Coalsonb74fc982002-11-20 06:40:08 +000081 bitmath.c \
Josh Coalson423f8042007-01-28 17:40:26 +000082 bitreader.c \
83 bitwriter.c \
Josh Coalsonb74fc982002-11-20 06:40:08 +000084 cpu.c \
85 crc.c \
Josh Coalsonb74fc982002-11-20 06:40:08 +000086 fixed.c \
Josh Coalson29a6a9d2004-11-09 01:25:44 +000087 float.c \
Josh Coalsonb74fc982002-11-20 06:40:08 +000088 format.c \
89 lpc.c \
90 md5.c \
91 memory.c \
92 metadata_iterators.c \
93 metadata_object.c \
Josh Coalsonb74fc982002-11-20 06:40:08 +000094 stream_decoder.c \
95 stream_encoder.c \
Josh Coalsonbf0f52c2006-04-25 06:38:43 +000096 stream_encoder_framing.c \
Hendricks26696d081c2012-12-29 04:22:59 -060097 window.c \
98 $(OGG_SRCS)
Josh Coalsonbb7f6b92000-12-10 04:09:52 +000099
Josh Coalsoncd0e3222002-10-23 22:08:13 +0000100include $(topdir)/build/lib.mk
Josh Coalsonbb7f6b92000-12-10 04:09:52 +0000101
102# DO NOT DELETE THIS LINE -- make depend depends on it.