Fix building with MSYS and MinGW(-w64); Improve Makefile.lite build system
[flac.git] / src / libFLAC / Makefile.lite
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 #
32 # GNU makefile
33 #
34
35 topdir = ../..
36
37 ifeq ($(OS),Darwin)
38     EXPLICIT_LIBS = $(OGG_EXPLICIT_LIBS) -lm
39 else
40     LIBS = $(OGG_LIBS) -lm
41 endif
42
43 LIB_NAME = libFLAC
44 ifeq ($(PROC),ppc)
45     DEFINES = -DFLAC__CPU_PPC -DFLAC__USE_ALTIVEC -DFLAC__ALIGN_MALLOC_DATA
46 else
47 ifeq ($(OS),Solaris)
48     DEFINES = -DFLAC__NO_ASM -DFLAC__ALIGN_MALLOC_DATA
49 else
50 ifeq ($(PROC),i386)
51     DEFINES = -DFLAC__CPU_IA32 -DFLAC__USE_3DNOW -DFLAC__HAS_NASM -DFLAC__ALIGN_MALLOC_DATA
52 else
53     DEFINES = -DFLAC__ALIGN_MALLOC_DATA
54 endif
55 endif
56 endif
57 INCLUDES = -I./include -I$(topdir)/include $(OGG_INCLUDES)
58 DEBUG_CFLAGS = -DFLAC__OVERFLOW_DETECT
59
60 ifeq ($(OS),Darwin)
61 SRCS_S = \
62         ppc/as/lpc_asm.s
63 else
64 ifeq ($(PROC),i386)
65 SRCS_NASM = \
66         ia32/bitreader_asm.nasm \
67         ia32/cpu_asm.nasm \
68         ia32/fixed_asm.nasm \
69         ia32/lpc_asm.nasm \
70         ia32/stream_encoder_asm.nasm
71 endif
72 endif
73
74 OGG_SRCS_C = \
75         ogg_decoder_aspect.c \
76         ogg_encoder_aspect.c \
77         ogg_helper.c \
78         ogg_mapping.c
79
80 SRCS_C = \
81         bitmath.c \
82         bitreader.c \
83         bitwriter.c \
84         cpu.c \
85         crc.c \
86         fixed.c \
87         float.c \
88         format.c \
89         lpc.c \
90         md5.c \
91         memory.c \
92         metadata_iterators.c \
93         metadata_object.c \
94         stream_decoder.c \
95         stream_encoder.c \
96         stream_encoder_framing.c \
97         window.c \
98         $(OGG_SRCS)
99
100 include $(topdir)/build/lib.mk
101
102 # DO NOT DELETE THIS LINE -- make depend depends on it.