e29845e403dba6b979f0021bd1b404c0583c007d
[openwrt/svn-archive/feeds.git] / efl / enlightenment / Makefile
1 #
2 # Copyright (C) 2006-2008 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7 # $Id: Makefile 12228 2008-08-06 22:43:15Z nbd $
8
9 include $(TOPDIR)/rules.mk
10
11 PKG_NAME:=enlightenment
12 PKG_REV:=38886
13 PKG_VERSION:=r$(PKG_REV)
14 PKG_RELEASE:=1
15
16 PKG_SOURCE_PROTO:=svn
17 PKG_SOURCE_VERSION:=$(PKG_REV)
18 PKG_SOURCE_SUBDIR:=$(PKG_NAME)-$(PKG_VERSION)
19 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
20 PKG_SOURCE_URL:=http://svn.enlightenment.org/svn/e/trunk/e
21 PKG_BUILD_DIR=$(BUILD_DIR)/Xorg/$(_CATEGORY)/$(PKG_NAME)-$(PKG_VERSION)/
22
23 PKG_BUILD_DEPENDS:=edje/host
24
25 PKG_FIXUP = libtool
26
27 include $(INCLUDE_DIR)/package.mk
28
29 define Package/enlightenment
30 SECTION:=xorg-wm
31 CATEGORY:=Xorg
32 SUBMENU:=window manager
33 TITLE:=Enlightenment e17 window manager
34 URL:=http://enlightenment.org
35 DEPENDS:=+libintl +eet +evas +ecore +edje +efreet +dbus +edbus +dejavu-fonts-ttf +freedesktop-compliant
36 endef
37
38 define Package/enlightenment/config
39 menu "Configuration"
40 depends on PACKAGE_enlightenment
41 source "$(SOURCE)/Config.in"
42 endmenu
43 endef
44
45 define Package/enlightenment/description
46 Enlightenment is a window manager. Enlightenment is a desktop shell. Enlightenment is the building blocks to create beautiful applications. Enlightenment, or simply e, is a group of people trying to make a new generation of software.
47 endef
48
49 TARGET_CFLAGS+=-I$(STAGING_DIR)/usr/lib/libintl/include
50 TARGET_LDFLAGS+=-lintl -L$(STAGING_DIR)/usr/lib/libintl/lib
51
52 define Build/Configure
53 ( cd $(PKG_BUILD_DIR); NOCONFIGURE=YES ./autogen.sh );
54 $(call Build/Configure/Default, \
55 --with-x \
56 --with-edje-cc=$(STAGING_DIR_HOST)/usr/bin/edje_cc \
57 --with-eet-eet=$(STAGING_DIR_HOST)/usr/bin/eet \
58 --disable-nls \
59 --disable-rpath \
60 --enable-ibar \
61 --enable-dropshadow \
62 --enable-clock \
63 --enable-pager \
64 --enable-battery \
65 --enable-temperature \
66 --enable-cpufreq \
67 --enable-ibox \
68 --enable-start \
69 --enable-exebuf \
70 --enable-winlist \
71 --enable-fileman \
72 --disable-wizard \
73 --disable-msgbus-lang \
74 --enable-gadman \
75 --enable-mixer \
76 --disable-connman \
77 --enable-illume \
78 --enable-syscon \
79 --disable-pam \
80 --disable-simple-x11 \
81 --enable-files \
82 )
83 endef
84
85 PROFILES:=\
86 illume \
87 minimalist \
88 netbook \
89 scalable \
90 standard \
91
92 define Build/Compile
93 mkdir -p $(STAGING_DIR_HOST)/usr/bin
94 # let's see who is workarounding the edje[_cc]/eet-issue most dirrty ^^
95 ln -sf `which edje_cc` $(STAGING_DIR_HOST)/usr/bin/
96 ln -sf `which eet` $(STAGING_DIR_HOST)/usr/bin/
97 DESTDIR="$(PKG_INSTALL_DIR)" $(MAKE) -C $(PKG_BUILD_DIR) all install
98 $(foreach c, $(PROFILES), \
99 ! [ -f ./files/config/$(c).cfg.src ] || $(STAGING_DIR_HOST)/usr/bin/eet -e $(PKG_INSTALL_DIR)/usr/share/enlightenment/data/config/$(c)/e.cfg config ./files/config/$(c).cfg.src 1
100 )
101 rm -f $(STAGING_DIR_HOST)/usr/bin/{edje_cc,eet}
102 endef
103
104 define Build/InstallDev
105 $(INSTALL_DIR) $(1)/usr/include $(1)/usr/lib $(1)/usr/bin $(1)/usr/share
106 $(CP) $(PKG_INSTALL_DIR)/usr/include/* $(1)/usr/include/
107 $(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib/
108 $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/
109 $(CP) $(PKG_INSTALL_DIR)/usr/share/* $(1)/usr/share/
110 endef
111
112 define Package/enlightenment/install
113 $(INSTALL_DIR) $(1)/usr/lib $(1)/usr/bin $(1)/usr/share $(1)/etc/uci-defaults
114 $(CP) $(PKG_INSTALL_DIR)/usr/lib/* $(1)/usr/lib/
115 $(CP) $(PKG_INSTALL_DIR)/usr/bin/* $(1)/usr/bin/
116 $(CP) $(PKG_INSTALL_DIR)/usr/share/* $(1)/usr/share/
117 $(foreach c, $(PROFILES), \
118 $(if $(CONFIG_E17_$(c)), \
119 $(INSTALL_DATA) ./files/uci-defaults/x11_$(c) $(1)/etc/uci-defaults/
120 )
121 )
122 $(FIND) $(1)/ -name "*.la" | $(XARGS) rm
123 $(FIND) $(1)/ -name "*.a" | $(XARGS) rm
124 endef
125
126 define Package/enlightenment/postinst
127 #!/bin/sh
128 [ -n "$${IPKG_INSTROOT}" ] && exit
129 . /etc/functions.sh
130 uci_apply_defaults
131 endef
132
133 $(eval $(call BuildPackage,enlightenment))
134 $(eval $(call RequireCommand,edje_cc, \
135 Command <edje_cc> not found - please install edje with edje-cc enabled \
136 ))
137 $(eval $(call RequireCommand,eet, \
138 Command <eet> not found - please install eet \
139 ))