+# ***************************************************************************
+# projectM
+# ***************************************************************************
+libprojectM-$(LIBPROJECTM_VERSION)-Source.tar.gz:
+ $(WGET) $(LIBPROJECTM_URL)
+
+libprojectM: libprojectM-$(LIBPROJECTM_VERSION)-Source.tar.gz
+ rm -rf $@ || true
+ gunzip -c $< | tar xf - --exclude='[*?:<>\|]'
+ mv projectM-$(LIBPROJECTM_VERSION)-Source $@ || true
+ cd $@; rm CMakeCache.txt
+
+.libprojectM: libprojectM
+ (cd $<; $(HOSTCC) CPPFLAGS="$(CPPFLAGS)" cmake . -DUSE_FBO:STRING=FALSE -DUSE_FBO:BOOL=OFF -DINCLUDE-PROJECTM-LIBVISUAL:BOOL=OFF -DINCLUDE-PROJECTM-PULSEAUDIO:BOOL=OFF -DINCLUDE-PROJECTM-QT:BOOL=OFF -DCMAKE_INSTALL_PREFIX=$(PREFIX) && make install)
+ touch $@
+
+CLEAN_FILE += .libprojectM
+CLEAN_PKG += libprojectM
+DISTCLEAN_PKG += libprojectM-$(LIBPROJECTM_VERSION).tar.bz2
+
+# ***************************************************************************
+# X11 C Bindings
+# ***************************************************************************
+
+libxcb-$(XCB_VERSION).tar.bz2:
+ $(WGET) $(XCB_URL)/$@
+
+libxcb: libxcb-$(XCB_VERSION).tar.bz2
+ -rm -rf $@
+ bzcat $< | tar xf -
+ mv libxcb-$(XCB_VERSION) $@
+ touch $@
+
+.xcb: libxcb
+ cd $< && $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) \
+ --disable-composite \
+ --disable-damage \
+ --disable-dpms \
+ --disable-glx \
+ --enable-randr \
+ --disable-record \
+ --enable-render \
+ --disable-resource \
+ --disable-screensaver \
+ --disable-shape \
+ --enable-shm \
+ --disable-sync \
+ --disable-xevie \
+ --disable-xfixes \
+ --disable-xfree86-dri \
+ --disable-xinerama \
+ --disable-xinput \
+ --disable-xprint \
+ --disable-selinux \
+ --disable-xtest \
+ --enable-xv \
+ --disable-xvmc \
+ --disable-build-docs
+ cd $< && make install
+ touch $@
+
+xcb-util-$(XCB_UTIL_VERSION).tar.bz2:
+ $(WGET) $(XCB_UTIL_URL)/$@
+
+xcb-util: xcb-util-$(XCB_UTIL_VERSION).tar.bz2
+ -rm -rf $@
+ bzcat $< | tar xf -
+ mv xcb-util-$(XCB_UTIL_VERSION) $@
+ touch $@
+
+.xcb-util: xcb-util .xcb
+ cd $< && $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX)
+ cd $< && make install
+ touch $@
+
+CLEAN_FILE += .xcb-util .xcb
+CLEAN_PKG += xcb-util xcb
+DISTCLEAN_PKG += xcb-util-$(XCB_UTIL_VERSION).tar.bz2 libxcb-$(XCB_VERSION).tar.bz2
+
+# ***************************************************************************
+# Peflags utility (Windows only)
+# ***************************************************************************
+
+peflags/peflags.c:
+ mkdir -p peflags
+ cd peflags && $(WGET) $(PEFLAGS_URL)/peflags.c
+
+.peflags: peflags/peflags.c
+ cd peflags && gcc peflags.c -o peflags
+ install -d $(PREFIX)/bin
+ cd peflags && install ./peflags $(PREFIX)/bin
+ touch $@
+
+CLEAN_PKG += peflags
+CLEAN_FILE += .peflags
+
+# ***************************************************************************
+# Regex
+# ***************************************************************************
+regex-$(REGEX_VERSION).tar.gz:
+ $(WGET) $(REGEX_URL)
+
+regex: regex-$(REGEX_VERSION).tar.gz
+ $(EXTRACT_GZ)
+
+.regex: regex
+ (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make subirs= && $(AR) ru libregex.a regex.o && $(RANLIB) libregex.a && cp -v regex.h $(PREFIX)/include && cp -v libregex.a $(PREFIX)/lib )
+ touch $@
+
+CLEAN_FILE += .regex
+CLEAN_PKG += regex
+DISTCLEAN_PKG += regex-$(REGEX_VERSION).tar.gz
+
+# ***************************************************************************
+# SQLite
+# ***************************************************************************
+sqlite-amalgamation-$(SQLITE_VERSION).tar.gz:
+ $(WGET) $(SQLITE_URL)
+
+sqlite-$(SQLITE_VERSION): sqlite-amalgamation-$(SQLITE_VERSION).tar.gz
+ $(EXTRACT_GZ)
+
+.sqlite3: sqlite-$(SQLITE_VERSION)
+ (cd $<; $(HOSTCC) ./configure $(HOSTCONF) --prefix=$(PREFIX) && make && make install )
+ touch $@
+
+CLEAN_FILE += .sqlite3
+CLEAN_PKG += sqlite-$(SQLITE_VERSION)
+DISTCLEAN_PKG += sqlite-amalgamation-$(SQLITE_VERSION).tar.gz