More Asterisk sparc patches (courtesy Belgarath)
[asterisk/asterisk.git] / codecs / lpc10 / Makefile
1
2 # Makefile for LPC-10 speech coder library (unix)
3
4
5 # default C compiler
6 CC?= gcc
7
8
9 # These definitions for CFLAGS and LIB_TARGET_DIR are used when one
10 # runs make in the lpc10 directory, without environment variables that
11 # override them.  When make is run in this directory from a makefile
12 # for an application that uses the LPC10 coder, there are environment
13 # variables set for CFLAGS and LIB_TARGET_DIR that override these
14 # definitions.
15
16
17 LIB_TARGET_DIR = .
18
19
20 # -I$(LIB_TARGET_DIR) option needed so that #include "machine.h"
21 # directives can find the machine.h file.
22
23
24 WARNINGS = -Wall -Wno-comment -Wno-error
25 CFLAGS += $(OPTIMIZE) -I$(LIB_TARGET_DIR) $(WARNINGS) -fPIC
26 #CFLAGS+= $(shell if uname -m | grep -q 86; then echo "-mpentium" ; fi)
27
28 #fix for PPC processors and ALPHA, And UltraSparc too
29 ifneq ($(OSARCH),Darwin)
30 ifneq ($(findstring BSD,${OSARCH}),BSD)
31 ifneq ($(PROC),ppc)
32 ifneq ($(PROC),x86_64)
33 ifneq ($(PROC),alpha)
34 #The problem with sparc is the best stuff is in newer versions of gcc (post 3.0) only.
35 #This works for even old (2.96) versions of gcc and provides a small boost either way.
36 #A ultrasparc cpu is really v9 but the stock debian stable 3.0 gcc doesn.t support it.
37 #So we go lowest common available by gcc and go a step down, still a step up from
38 #the default as we now have a better instruction set to work with. - Belgarath
39 ifeq ($(PROC),ultrasparc)
40         CFLAGS+= -mtune=$(PROC) -mcpu=v8 -O3 -fomit-frame-pointer
41 else
42         CFLAGS+= -march=$(PROC)
43 endif
44 endif
45 endif
46 endif
47 endif
48 endif
49
50 LIB = $(LIB_TARGET_DIR)/liblpc10.a
51
52 .PHONY: all clean
53
54 all:    $(LIB)
55
56 OBJ=    f2clib.o analys.o bsynz.o chanwr.o dcbias.o decode.o \
57                 deemp.o difmag.o dyptrk.o encode.o energy.o ham84.o \
58                 hp100.o invert.o irc2pc.o ivfilt.o lpcdec.o lpcenc.o \
59                 lpcini.o lpfilt.o median.o mload.o onset.o pitsyn.o \
60                 placea.o placev.o preemp.o prepro.o random.o rcchk.o \
61                 synths.o tbdm.o voicin.o vparms.o
62
63 $(LIB): $(OBJ)
64         $(AR) cr $@ $(OBJ)
65         ranlib $@
66
67 clean:
68         -rm -f *.o $(LIB)