add library <DirectFB> and make use of feature-flags
authorMirko Vogt <mirko@openwrt.org>
Thu, 12 Nov 2009 00:49:33 +0000 (00:49 +0000)
committerMirko Vogt <mirko@openwrt.org>
Thu, 12 Nov 2009 00:49:33 +0000 (00:49 +0000)
SVN-Revision: 18387

libs/libdirectfb/Makefile [new file with mode: 0644]
libs/libdirectfb/patches/disable-asm.patch [new file with mode: 0644]

diff --git a/libs/libdirectfb/Makefile b/libs/libdirectfb/Makefile
new file mode 100644 (file)
index 0000000..b072c1e
--- /dev/null
@@ -0,0 +1,115 @@
+#
+# 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:=DirectFB
+PKG_VERSION:=1.4.2
+PKG_RELEASE:=1
+
+PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
+PKG_SOURCE_URL:=http://www.directfb.org/downloads/Core/DirectFB-1.4
+
+PKG_INSTALL:=1
+
+PKG_FIXUP:=libtool
+
+include $(INCLUDE_DIR)/package.mk
+
+define Package/DirectFB
+    TITLE:=DirectFB
+    SECTION:=libs
+    CATEGORY:=Libraries
+    URL:=http://directfb.org
+    DEPENDS:=+libpng +libjpeg +libpthread +libfreetype
+endef
+
+define Package/DirectFB/description
+    DirectFB is a thin library that provides hardware graphics acceleration, input device handling and abstraction, integrated windowing system with support for translucent windows and multiple display layers, not only on top of the Linux Framebuffer Device. It is a complete hardware abstraction layer with software fallbacks for every graphics operation that is not supported by the underlying hardware.
+endef
+
+TARGET_LDFLAGS+="-Wl,-rpath-link=$(STAGING_DIR)/usr/lib"
+CONFIGURE_CMD=./autogen.sh
+
+define Feature/DirectFB
+  TARGET_NAME:=drawing-backend
+  TARGET_TITLE:=Drawing Backend
+  NAME:=DirectFB
+endef
+
+comma:=,
+define Build/Configure
+       $(call Build/Configure/Default, \
+               --disable-osx \
+               --disable-x11 \
+               --enable-debug-support \
+               --disable-network \
+               --disable-mmx \
+               --disable-sse \
+               --enable-fbdev \
+               --disable-sdl \
+               --disable-vnc \
+               --enable-sysfs \
+               --with-inputdrivers=keyboard$(comma)linuxinput \
+               --with-gfxdrivers=none \
+       )
+endef
+
+define Build/InstallDev
+       $(INSTALL_DIR) \
+               $(1)/usr/include \
+               $(1)/usr/lib \
+               $(1)/usr/lib/pkgconfig
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/lib/* \
+               $(1)/usr/lib/
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/include/* \
+               $(1)/usr/include/
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/lib/pkgconfig \
+               $(1)/usr/lib/
+endef
+
+define Package/DirectFB/install
+       $(INSTALL_DIR) \
+               $(1)/usr/bin \
+               $(1)/usr/lib \
+               $(1)/usr/lib/directfb-1.4-0/interfaces/IDirectFBFont \
+               $(1)/usr/lib/directfb-1.4-0/interfaces/IDirectFBImageProvider \
+               $(1)/usr/lib/directfb-1.4-0/interfaces/IDirectFBVideoProvider \
+               $(1)/usr/lib/directfb-1.4-0/wm \
+               $(1)/usr/lib/directfb-1.4-0/systems \
+               $(1)/usr/lib/directfb-1.4-0/inputdrivers
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/bin/* \
+               $(1)/usr/bin/
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/lib/lib{direct,fusion}*.so* \
+               $(1)/usr/lib/
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/lib/directfb-1.4-0/interfaces/IDirectFBFont/*.so* \
+               $(1)/usr/lib/directfb-1.4-0/interfaces/IDirectFBFont/
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/lib/directfb-1.4-0/interfaces/IDirectFBImageProvider/*.so* \
+               $(1)/usr/lib/directfb-1.4-0/interfaces/IDirectFBImageProvider/
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/lib/directfb-1.4-0/interfaces/IDirectFBVideoProvider/*.so* \
+               $(1)/usr/lib/directfb-1.4-0/interfaces/IDirectFBVideoProvider/
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/lib/directfb-1.4-0/wm/*.so* \
+               $(1)/usr/lib/directfb-1.4-0/wm/
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/lib/directfb-1.4-0/systems/*.so* \
+               $(1)/usr/lib/directfb-1.4-0/systems/
+       $(CP) \
+               $(PKG_INSTALL_DIR)/usr/lib/directfb-1.4-0/inputdrivers/*.so* \
+               $(1)/usr/lib/directfb-1.4-0/inputdrivers/
+endef
+
+$(eval $(call Feature,DirectFB))
+$(eval $(call BuildPackage,DirectFB))
diff --git a/libs/libdirectfb/patches/disable-asm.patch b/libs/libdirectfb/patches/disable-asm.patch
new file mode 100644 (file)
index 0000000..c38498a
--- /dev/null
@@ -0,0 +1,13 @@
+--- DirectFB-1.4.2/configure.in.orig   2009-10-14 17:19:38.000000000 +0200
++++ DirectFB-1.4.2/configure.in        2009-10-14 17:19:55.000000000 +0200
+@@ -221,8 +221,8 @@
+ have_kos=no
+ need_libc_r=no
+ need_libdl=yes
++want_ppcasm=no
++want_armasm=no
+-want_ppcasm=yes
+-want_armasm=yes
+ case "$target_or_host" in
+   *-linux*)