diff --git a/dfbmp/Makefile b/dfbmp/Makefile new file mode 100644 index 0000000..d3f3a90 --- /dev/null +++ b/dfbmp/Makefile @@ -0,0 +1,46 @@ +# +# Copyright (C) 2008 OpenWrt.org +# +# This is free software, licensed under the GNU General Public License v2. +# See /LICENSE for more information. +# + +include $(TOPDIR)/rules.mk + +PKG_NAME:=dfbmp +PKG_VERSION:=0.1.1 + +PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz +PKG_SOURCE_URL:=http://www.maui-systems.org/opensource/dfbmp/ + +PKG_INSTALL:=1 + +include $(INCLUDE_DIR)/package.mk + +define Package/dfbmp + TITLE:=dfbmp + SECTION:=sound + CATEGORY:=Sound + DEPENDS:=+libcurl +libfreetype +libz + URL:=http://www.maui-systems.org/opensource/dfbmp/index.php +endef + +TARGET_CFLAGS+=-lcurl -lssl -lcrypto -lz + +define Package/dfbmp/description + This code is a very simplistic DirectFB client for MPD +endef + +define Build/Configure + ( cd $(PKG_BUILD_DIR); ./autogen.sh ); + $(call Build/Configure/Default) +endef + +define Package/dfbmp/install + $(INSTALL_DIR) $(1)/usr/bin + $(INSTALL_DIR) $(1)/usr/share/dfbmp/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/bin/dfbmp $(1)/usr/bin/ + $(INSTALL_BIN) $(PKG_INSTALL_DIR)/usr/share/dfbmp/decker.ttf $(1)/usr/share/dfbmp/ +endef + +$(eval $(call BuildPackage,dfbmp)) diff --git a/dfbmp/patches/001.patch b/dfbmp/patches/001.patch new file mode 100644 index 0000000..59a7b24 --- /dev/null +++ b/dfbmp/patches/001.patch @@ -0,0 +1,74 @@ +diff --git a/configure.in b/configure.in +index 6caa564..7a27bc1 100644 +--- a/configure.in ++++ b/configure.in +@@ -71,7 +71,7 @@ _ldflags="$LDFLAGS" + CPPFLAGS="$libcurl_INCLUDES $CPPFLAGS" + LDFLAGS="$libcurl_LDFLAGS $LDFLAGS" + +-AC_CHECK_LIB(curl, curl_easy_init,,AC_MSG_ERROR(Unable to locate curl library)) ++PKG_CHECK_MODULES(CURL, libcurl >= 7.19.6) + + CPPFLAGS="$_cppflags" + LDFLAGS="$_ldflags" +diff --git a/src/dfbmp.c b/src/dfbmp.c +index 5d265e8..79e7f7c 100644 +--- a/src/dfbmp.c ++++ b/src/dfbmp.c +@@ -171,7 +171,7 @@ void do_button(button_t button) { + curl_handle=curl_easy_init(); + + curl_easy_setopt(curl_handle, +- CURLOPT_NOPROGRESS, TRUE); ++ CURLOPT_NOPROGRESS, 1); + + curl_easy_setopt(curl_handle, + CURLOPT_URL, button.data); +@@ -624,6 +624,7 @@ int main(int argc, char *argv[]) { + char * fontpath; + FILE * devnull; + int i; ++ int status = 1; + + DFBSurfaceDescription dsc; + DFBFontDescription font_dsc; +@@ -658,7 +659,7 @@ int main(int argc, char *argv[]) { + + if(dfb->CreateFont(dfb, fontpath, &font_dsc, &lrgfont) != DFB_OK) { + fprintf(stderr, "Unable to locate font %s\n", fontpath); +- exit(1); ++ goto err_init_font; + } + + font_dsc.flags = DFDESC_HEIGHT; +@@ -666,7 +667,7 @@ int main(int argc, char *argv[]) { + + if(dfb->CreateFont(dfb, fontpath, &font_dsc, &smlfont) != DFB_OK) { + fprintf(stderr, "Unable to locate font %s\n", fontpath); +- exit(1); ++ goto err_init_font; + } + + lrgfont->GetHeight(lrgfont, &lfheight); +@@ -693,14 +694,15 @@ int main(int argc, char *argv[]) { + lrgfont->Release(lrgfont); + smlfont->Release(smlfont); + +- primary->Release (primary); +- dfb->Release (dfb); +- +- free(fontpath); +- + for(i=0;i<3;i++) { + freebutton(&button[i]); + } + +- return 23; ++ status = 23; ++err_init_font: ++ primary->Release (primary); ++ dfb->Release (dfb); ++ free(fontpath); ++ ++ return status; + }