#############################################################################
# Makefile for building libgsm.so.1.0.0
# Generated by tmake at 22:34, 2007/09/24
#     Project: gsm
#    Template: lib
#############################################################################

####### Compiler, tools and options

CC	=	gcc
CXX	=	g++
CFLAGS	=	-pipe -march=armv4 -mtune=strongarm -DCOMPILE_FOR_RELEASE -fPIC -DFAST -DSASR -DWAV49
CXXFLAGS=	-pipe -march=armv4 -mtune=strongarm -DQT_QWS_SL3000 -DQT_QWS_CUSTOM -DQWS -fno-exceptions -fno-rtti -march=armv4 -mtune=strongarm -O2 -DCOMPILE_FOR_RELEASE -fPIC -DFAST -DSASR -DWAV49
INCPATH	=	-I.
LINK	=	gcc
LFLAGS	=	-shared -Wl,-soname,libgsm.so.1
LIBS	=	$(SUBLIBS) 
AR	=	ar cqs
RANLIB	=	
MOC	=	moc
UIC	=	uic

TAR	=	tar -cf
GZIP	=	gzip -9f

####### Files

HEADERS =	gsm.h
SOURCES =	add.c \
		code.c \
		decode.c \
		gsm_create.c \
		gsm_decode.c \
		gsm_destroy.c \
		gsm_encode.c \
		gsm_option.c \
		long_term.c \
		lpc.c \
		preprocess.c \
		rpe.c \
		short_term.c \
		table.c
OBJECTS =	add.o \
		code.o \
		decode.o \
		gsm_create.o \
		gsm_decode.o \
		gsm_destroy.o \
		gsm_encode.o \
		gsm_option.o \
		long_term.o \
		lpc.o \
		preprocess.o \
		rpe.o \
		short_term.o \
		table.o
INTERFACES =	
UICDECLS =	
UICIMPLS =	
SRCMOC	=	
OBJMOC	=	
DIST	=	
TARGET	=	libgsm.so.1.0.0
TARGETA	=	$$(QPEDIR)/lib/libgsm.a
TARGETD	=	libgsm.so.1.0.0
TARGET0	=	libgsm.so
TARGET1	=	libgsm.so.1
TARGET2	=	libgsm.so.1.0
INTERFACE_DECL_PATH = .

####### Implicit rules

.SUFFIXES: .cpp .cxx .cc .C .c

.cpp.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.cxx.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.cc.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.C.o:
	$(CXX) -c $(CXXFLAGS) $(INCPATH) -o $@ $<

.c.o:
	$(CC) -c $(CFLAGS) $(INCPATH) -o $@ $<

####### Build rules


all: $$(QPEDIR)/lib/libgsm.so.1.0.0

$$(QPEDIR)/lib/libgsm.so.1.0.0: $(OBJECTS) $(OBJMOC) $(SUBLIBS) 
	-rm -f $(TARGET) $(TARGET0) $(TARGET1) $(TARGET2)
	$(LINK) $(LFLAGS) -o $(TARGETD) $(OBJECTS) $(OBJMOC) $(LIBS)
	-ln -s $(TARGET) $(TARGET0)
	-ln -s $(TARGET) $(TARGET1)
	-ln -s $(TARGET) $(TARGET2)
	-rm -f $$(QPEDIR)/lib/$(TARGET)
	-rm -f $$(QPEDIR)/lib/$(TARGET0)
	-rm -f $$(QPEDIR)/lib/$(TARGET1)
	-rm -f $$(QPEDIR)/lib/$(TARGET2)
	-mv $(TARGET) $(TARGET0) $(TARGET1) $(TARGET2) $$(QPEDIR)/lib/

staticlib: $(TARGETA)

$(TARGETA): $(UICDECLS) $(OBJECTS) $(OBJMOC) 
	-rm -f $(TARGETA)
	$(AR) $(TARGETA) $(OBJECTS) $(OBJMOC)

moc: $(SRCMOC)

tmake:
	tmake gsm.pro

dist:
	$(TAR) gsm.tar gsm.pro $(SOURCES) $(HEADERS) $(INTERFACES) $(DIST)
	$(GZIP) gsm.tar

clean:
	-rm -f $(OBJECTS) $(OBJMOC) $(SRCMOC) $(UICIMPLS) $(UICDECLS) $(TARGET)
	-rm -f $(TARGET0) $(TARGET1) $(TARGET2) $(TARGETA)
	-rm -f *~ core

####### Sub-libraries


###### Combined headers


####### Compile

add.o: add.c \
		private.h \
		gsm.h

code.o: code.c \
		private.h \
		gsm.h

decode.o: decode.c \
		private.h \
		gsm.h

gsm_create.o: gsm_create.c \
		gsm.h \
		private.h

gsm_decode.o: gsm_decode.c \
		private.h \
		gsm.h

gsm_destroy.o: gsm_destroy.c \
		gsm.h

gsm_encode.o: gsm_encode.c \
		private.h \
		gsm.h

gsm_option.o: gsm_option.c \
		private.h \
		gsm.h

long_term.o: long_term.c \
		private.h \
		gsm.h

lpc.o: lpc.c \
		private.h \
		gsm.h

preprocess.o: preprocess.c \
		private.h \
		gsm.h

rpe.o: rpe.c \
		private.h \
		gsm.h

short_term.o: short_term.c \
		private.h \
		gsm.h

table.o: table.c \
		private.h \
		gsm.h

