+# ***************************************************************************
+# UPNP library
+# ***************************************************************************
+
+libupnp-$(UPNP_VERSION).tar.bz2:
+ $(WGET) $(UPNP_URL)
+
+libupnp: libupnp-$(UPNP_VERSION).tar.bz2
+ $(EXTRACT_BZ2)
+
+.libupnp: libupnp
+ (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) --disable-samples --without-documentation --disable-webserver CFLAGS="$(CFLAGS) -O3" && make && make install)
+ touch $@
+
+CLEAN_FILE += .libupnp
+CLEAN_PKG += libupnp
+DISTCLEAN_PKG += libupnp-$(UPNP_VERSION).tar.bz2
+
+# *********
+# GSM
+# *********
+gsm-$(GSM_VERSION).tar.gz:
+ $(WGET) $(GSM_URL)
+
+gsm: gsm-$(GSM_VERSION).tar.gz
+ rm -rf $@ || true
+ gunzip -c $< | tar xf - --exclude='[*?:<>\|]'
+ mv gsm-1.0-* gsm || true
+ifneq ($(HOST),$(BUILD))
+ (patch -p0 < Patches/gsm-cross.patch)
+endif
+
+.gsm: gsm
+ (cd $<; $(HOSTCC) make && cp inc/gsm.h $(PREFIX)/include && cp lib/libgsm.a $(PREFIX)/lib)
+ touch $@
+
+CLEAN_FILE += .gsm
+CLEAN_PKG += gsm
+DISTCLEAN_PKG += gsm-$(GSM_VERSION).tar.gz
+
+