use $(FPIC) in olsrd
[lede-routing/.git] / Makefile
1
2 # Copyright (C) 2007 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$
8
9 include $(TOPDIR)/rules.mk
10
11 PKG_NAME:=olsrd
12 PKG_VERSION:=0.5.6-r2
13 PKG_RELEASE:=1
14
15 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(PKG_VERSION)/
16 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.bz2
17 PKG_SOURCE_URL:=http://www.olsr.org/releases/0.5
18 PKG_MD5SUM:=64b439cde30f48764f02cdd8766aba40
19
20 include $(INCLUDE_DIR)/package.mk
21
22 TARGET_CFLAGS += $(FPIC)
23
24 define Package/olsrd/template
25   SECTION:=net
26   CATEGORY:=Network
27   TITLE:=OLSR (Optimized Link State Routing) daemon
28   URL:=http://www.olsr.org/
29   MENU:=1
30 endef
31
32 define Package/olsrd
33   $(call Package/olsrd/template)
34   MENU:=1
35   DEPENDS:=+libpthread
36 endef
37
38 define Package/olsrd/conffiles
39 /etc/olsrd.conf
40 endef
41
42 define Package/olsrd-mod-dot-draw
43   $(call Package/olsrd/template)
44   DEPENDS:=olsrd
45   TITLE:=Dot topology information plugin
46 endef
47
48 define Package/olsrd-mod-bmf
49   $(call Package/olsrd/template)
50   DEPENDS:=olsrd +kmod-tun
51   TITLE:=Basic multicast forwarding plugin
52 endef
53
54 define Package/olsrd-mod-dyn-gw
55   $(call Package/olsrd/template)
56   DEPENDS:=olsrd
57   TITLE:=Dynamic internet gateway plugin
58 endef
59
60 define Package/olsrd-mod-httpinfo
61   $(call Package/olsrd/template)
62   DEPENDS:=olsrd
63   TITLE:=Small informative web server plugin
64 endef
65
66 define Package/olsrd-mod-nameservice
67   $(call Package/olsrd/template)
68   DEPENDS:=olsrd
69   TITLE:=Lightweight hostname resolver plugin
70 endef
71
72 define Package/olsrd-mod-secure
73   $(call Package/olsrd/template)
74   DEPENDS:=olsrd
75   TITLE:=Message signing plugin to secure routing domain
76 endef
77
78 define Package/olsrd-mod-txtinfo
79   $(call Package/olsrd/template)
80   DEPENDS:=olsrd
81   TITLE:=Small informative web server plugin
82 endef
83
84 define Package/olsrd-mod-secure/conffiles
85 /etc/olsrd.d/olsrd_secure_key
86 endef
87
88 define Build/Configure
89 endef
90
91 define Build/Compile
92         rm -rf $(PKG_INSTALL_DIR)
93         mkdir -p $(PKG_INSTALL_DIR)
94         $(MAKE) -C "$(PKG_BUILD_DIR)" \
95                 $(TARGET_CONFIGURE_OPTS) \
96                 NODEBUG=1 \
97                 CFLAGS="$(TARGET_CFLAGS)" \
98                 OS="linux" \
99                 INSTALL_PREFIX="$(PKG_INSTALL_DIR)" \
100                 LIBDIR="$(PKG_INSTALL_DIR)/usr/lib" \
101                 SBINDIR="$(PKG_INSTALL_DIR)/usr/sbin/" \
102                 ETCDIR="$(PKG_INSTALL_DIR)/etc" \
103                 MANDIR="$(PKG_INSTALL_DIR)/usr/share/man" \
104                 STRIP="true" \
105                 INSTALL_LIB="true" \
106                 SUBDIRS="bmf dot_draw dyn_gw httpinfo nameservice secure txtinfo" \
107                 all libs install install_libs
108 endef
109
110 define Package/olsrd/install
111         $(INSTALL_DIR) $(1)/etc/config
112         $(INSTALL_DATA) ./files/olsrd.config $(1)/etc/config/olsrd
113         $(INSTALL_DATA) $(PKG_BUILD_DIR)/src/cfgparser/olsrd.conf.example $(1)/etc/olsrd.conf
114         $(INSTALL_DIR) $(1)/usr/sbin
115         $(INSTALL_BIN) $(PKG_BUILD_DIR)/olsrd $(1)/usr/sbin/
116         $(INSTALL_DIR) $(1)/etc/init.d
117         $(INSTALL_BIN) ./files/olsrd.init $(1)/etc/init.d/olsrd
118 endef
119
120 define Package/olsrd-mod-dot-draw/install
121         $(INSTALL_DIR) $(1)/usr/lib
122         $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/dot_draw/olsrd_dot_draw.so.* $(1)/usr/lib/
123 endef
124
125 define Package/olsrd-mod-bmf/install
126         $(INSTALL_DIR) $(1)/usr/lib
127         $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/bmf/olsrd_bmf.so.* $(1)/usr/lib/
128 endef
129
130 define Package/olsrd-mod-dyn-gw/install
131         $(INSTALL_DIR) $(1)/usr/lib
132         $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/dyn_gw/olsrd_dyn_gw.so.* $(1)/usr/lib/
133 endef
134
135 define Package/olsrd-mod-httpinfo/install
136         $(INSTALL_DIR) $(1)/usr/lib
137         $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/httpinfo/olsrd_httpinfo.so.* $(1)/usr/lib/
138 endef
139
140 define Package/olsrd-mod-nameservice/install
141         $(INSTALL_DIR) $(1)/usr/lib
142         $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/nameservice/olsrd_nameservice.so.* $(1)/usr/lib/
143 endef
144
145 define Package/olsrd-mod-secure/install
146         $(INSTALL_DIR) $(1)/etc/olsrd.d
147         $(CP) ./files/olsrd_secure_key $(1)/etc/olsrd.d/
148         $(INSTALL_DIR) $(1)/usr/lib
149         $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/secure/olsrd_secure.so.* $(1)/usr/lib/
150 endef
151
152 define Package/olsrd-mod-txtinfo/install
153         $(INSTALL_DIR) $(1)/usr/lib
154         $(INSTALL_BIN) $(PKG_BUILD_DIR)/lib/txtinfo/olsrd_txtinfo.so.* $(1)/usr/lib/
155 endef
156
157 $(eval $(call BuildPackage,olsrd))
158 $(eval $(call BuildPackage,olsrd-mod-dot-draw))
159 $(eval $(call BuildPackage,olsrd-mod-bmf))
160 $(eval $(call BuildPackage,olsrd-mod-dyn-gw))
161 $(eval $(call BuildPackage,olsrd-mod-httpinfo))
162 $(eval $(call BuildPackage,olsrd-mod-nameservice))
163 $(eval $(call BuildPackage,olsrd-mod-secure))
164 $(eval $(call BuildPackage,olsrd-mod-txtinfo))