Root/libnsfb/Makefile

1include $(TOPDIR)/rules.mk
2
3PKG_NAME:=libnsfb
4PKG_REV:=10618
5PKG_VERSION:=r$(PKG_REV)
6PKG_RELEASE:=1
7
8PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
9PKG_SOURCE_URL:=svn://svn.netsurf-browser.org/trunk/libnsfb
10PKG_SOURCE_PROTO:=svn
11PKG_SOURCE_VERSION:=$(PKG_REV)
12PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
13PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)
14
15include $(INCLUDE_DIR)/package.mk
16
17define Package/libnsfb
18    MAINTAINER:="Xiangfu Liu" <xiangfu@sharism.cc>
19    SECTION:=libs
20    CATEGORY:=Libraries
21    TITLE:=LibNSFB is a framebuffer abstraction library, written in C
22    URL:=http://www.netsurf-browser.org/projects/libcss/
23endef
24
25define Package/libnsfb/description
26    The overall idea of the library is to provide a generic abstraction to a linear section of memory which corresponds to a visible array of pixel elements on a display device. Different colour depths are supported and the library provides routines for tasks such as drawing onto the framebuffer and rectangle copy operations.
27endef
28
29define Build/Compile
30    rm -rf $(PKG_INSTALL_DIR)
31    $(MAKE_VARS) $(MAKE) -C $(PKG_BUILD_DIR) \
32        $(MAKE_FLAGS) \
33        WARNFLAGS="" \
34        COMPONENT_TYPE=lib-shared \
35        DESTDIR="$(PKG_INSTALL_DIR)" \
36        all install
37endef
38
39define Build/InstallDev
40    mkdir -p $(1)/usr/include
41    $(CP) $(PKG_INSTALL_DIR)/usr/local/include/* $(1)/usr/include/
42    mkdir -p $(1)/usr/lib
43    $(CP) $(PKG_INSTALL_DIR)/usr/local/lib/* $(1)/usr/lib/
44    $(SED) \
45        's,^\(prefix\|exec_prefix\)=.*,\1=$(STAGING_DIR)/usr,g' \
46        $(1)/usr/lib/pkgconfig/libnsfb.pc
47    $(SED) \
48        's/xcb\|xcb-icccm\|xcb-image\|xcb-keysyms//g' \
49        $(1)/usr/lib/pkgconfig/libnsfb.pc
50endef
51
52define Package/libnsfb/install
53    $(INSTALL_DIR) $(1)/usr/lib
54    $(CP) $(PKG_INSTALL_DIR)/usr/local/lib/libnsfb.so* $(1)/usr/lib/
55endef
56
57$(eval $(call BuildPackage,libnsfb))
58

Archive Download this file



interactive