clean up, use make functions instead of subshells, remove unused stuff
[asterisk/asterisk.git] / formats / Makefile
index 0cc2cb4..823515c 100755 (executable)
@@ -3,32 +3,62 @@
 # 
 # Makefile for file format modules
 #
-# Copyright (C) 1999, Mark Spencer
+# Copyright (C) 1999-2005, Digium
 #
-# Mark Spencer <markster@linux-support.net>
+# Mark Spencer <markster@digium.com>
 #
 # This program is free software, distributed under the terms of
 # the GNU General Public License
 #
 
-FORMAT_LIBS=format_g723.so format_wav.so format_mp3.so format_wav_gsm.so \
-       format_gsm.so format_vox.so format_pcm.so format_g729.so format_pcm_alaw.so
+FORMAT_LIBS=format_gsm.so format_wav.so \
+       format_wav_gsm.so format_vox.so format_pcm.so format_g729.so \
+       format_pcm_alaw.so format_h263.so format_g726.so format_ilbc.so \
+       format_sln.so format_au.so
 FORMAT_LIBS+=format_jpeg.so
 
+#
+# G723 simple frame is deprecated
+#
+FORMAT_LIBS+=format_g723.so
+
+#
+# OGG/Vorbis format
+#
+ifneq ($(wildcard $(CROSS_COMPILE_TARGET)/usr/include/vorbis/codec.h),)
+  FORMAT_LIBS+=format_ogg_vorbis.so
+endif
+
+ifeq ($(findstring BSD,${OSARCH}),BSD)
+  CFLAGS+=-I$(CROSS_COMPILE_TARGET)/usr/local/include -L$(CROSS_COMPILE_TARGET)/usr/local/lib
+endif
+
 GSMLIB=../codecs/gsm/lib/libgsm.a
 
 CFLAGS+=-fPIC
 
-all: $(FORMAT_LIBS)
+all: depend $(FORMAT_LIBS)
 
 clean:
-       rm -f *.so *.o
+       rm -f *.so *.o .depend
 
 %.so : %.o
-       $(CC) -shared -Xlinker -x -o $@ $<
+       $(CC) $(SOLINK) -o $@ $<
+
+ifneq ($(wildcard .depend),)
+  include .depend
+endif
 
 format_mp3.so : format_mp3.o
-       $(CC) -shared -Xlinker -x -o $@ $< -lm
+       $(CC) $(SOLINK) -o $@ $< -lm
+
+format_ogg_vorbis.so : format_ogg_vorbis.o
+       $(CC) $(SOLINK) -o $@ $< -logg -lvorbis -lvorbisenc -lm
 
 install: all
-       for x in $(FORMAT_LIBS); do $(INSTALL) -m 755 $$x $(MODULES_DIR) ; done
+       for x in $(FORMAT_LIBS); do $(INSTALL) -m 755 $$x $(DESTDIR)$(MODULES_DIR) ; done
+
+depend: .depend
+
+.depend:
+       ../build_tools/mkdep $(CFLAGS) `ls *.c`