6cda63a5f5dbd40d8988d05590925ca7eacf1460
[10.03/packages.git] / net / ntpd / Makefile
1 #
2 # Copyright (C) 2006-2011 OpenWrt.org
3 #
4 # This is free software, licensed under the GNU General Public License v2.
5 # See /LICENSE for more information.
6 #
7
8 include $(TOPDIR)/rules.mk
9
10 PKG_NAME:=ntp
11 PKG_VERSION:=4.2.6p5
12 PKG_RELEASE:=1
13
14 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
15 PKG_SOURCE_URL:=http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/
16 PKG_MD5SUM:=00df80a84ec9528fcfb09498075525bc
17
18 PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
19
20 PKG_BUILD_DEPENDS:=libelf
21 PKG_FIXUP:=libtool
22 PKG_LIBTOOL_PATHS:=. sntp
23
24 include $(INCLUDE_DIR)/package.mk
25
26 define Package/ntpd/Default
27   SUBMENU:=Time Synchronization
28   SECTION:=net
29   CATEGORY:=Network
30   TITLE:=ISC ntp
31   MAINTAINER:=Peter Wagner <tripolar@gmx.at>
32   URL:=http://www.ntp.org/
33   DEPENDS:=+libcap
34 endef
35
36 define Package/ntpd/Default/description
37  The ISC ntp suite is a collection of tools used to synchronize the
38  system clock with remote NTP time servers and run/montior local NTP
39  servers.
40 endef
41
42 define Package/ntpd
43 $(call Package/ntpd/Default)
44   TITLE+= server
45   VARIANT:=nossl
46 endef
47
48 define Package/ntpd/description
49 $(call Package/ntpd/Default/description)
50  .
51  This package contains the ntpd server.
52 endef
53
54 define Package/ntpd-ssl
55 $(call Package/ntpd/Default)
56   TITLE+= server (with OpenSSL support)
57   VARIANT:=ssl
58   DEPENDS+= +libopenssl
59 endef
60
61 define Package/ntpd-ssl/description
62 $(call Package/ntpd/Default/description)
63  .
64  This package contains the ntpd server with OpenSSL support.
65 endef
66
67 define Package/ntpdate
68 $(call Package/ntpd/Default)
69   TITLE+=date
70   VARIANT:=nossl
71 endef
72
73 define Package/ntpdate/description
74 $(call Package/ntpd/Default/description)
75  .
76  This package contains ntpdate.
77 endef
78
79 define Package/ntp-utils
80 $(call Package/ntpd/Default)
81   TITLE+= utilities
82   VARIANT:=nossl
83 endef
84
85 define Package/ntp-utils/description
86 $(call Package/ntpd/Default/description)
87  .
88  This package contains ntpdc, ntpq and ntptime.
89 endef
90
91 define Package/ntp-keygen
92 $(call Package/ntpd/Default)
93   TITLE+=keygen
94   VARIANT:=nossl
95 endef
96
97 define Package/ntp-keygen/description
98 $(call Package/ntpd/Default/description)
99  .
100  This package contains the ntp-keygen.
101 endef
102
103 define Package/ntp-keygen-ssl
104 $(call Package/ntpd/Default)
105   TITLE+=keygen (with OpenSSL support)
106   VARIANT:=ssl
107   DEPENDS+= +libopenssl
108 endef
109
110 define Package/ntp-keygen-ssl/description
111 $(call Package/ntpd/Default/description)
112  .
113  This package contains the ntp-keygen with OpenSSL support.
114 endef
115
116 define Package/ntpd/conffiles
117 /etc/ntp.conf
118 endef
119
120 TARGET_CPPFLAGS += \
121         -I$(STAGING_DIR)/usr/include/libelf
122
123 CONFIGURE_VARS += \
124         ac_cv_header_md5_h=no \
125         ac_cv_lib_rt_sched_setscheduler=no \
126         ac_cv_header_dns_sd_h=no
127
128 CONFIGURE_ARGS += \
129         --disable-all-clocks \
130         --disable-parse-clocks \
131         --without-ntpsnmpd \
132         --without-lineeditlibs \
133         --enable-NMEA \
134         --enable-LOCAL-CLOCK \
135         --enable-SHM \
136         --enable-linuxcaps
137
138 ifeq ($(BUILD_VARIANT),ssl)
139   CONFIGURE_ARGS += \
140         --with-crypto \
141         --with-openssl-incdir="$(STAGING_DIR)/usr/include" \
142         --with-openssl-libdir="$(STAGING_DIR)/usr/lib"
143 endif
144
145 define Package/ntpd/install
146         $(INSTALL_DIR) $(1)/sbin
147         $(INSTALL_BIN) $(PKG_BUILD_DIR)/ntpd/ntpd $(1)/sbin/
148         $(INSTALL_DIR) $(1)/etc
149         $(INSTALL_CONF) ./files/ntp.conf $(1)/etc/
150         $(INSTALL_DIR) $(1)/etc/init.d
151         $(INSTALL_BIN) ./files/ntpd.init $(1)/etc/init.d/ntpd
152         $(INSTALL_DIR) $(1)/etc/hotplug.d/iface
153         $(INSTALL_BIN) ./files/ntpd.hotplug $(1)/etc/hotplug.d/iface/20-ntpd
154 endef
155
156 define Package/ntpd/postinst
157 #!/bin/sh
158 [ -L "$${IPKG_INSTROOT}/usr/sbin/ntpd" ] && rm -f "$${IPKG_INSTROOT}/usr/sbin/ntpd"
159 exit 0
160 endef
161
162 define Package/ntpd/postrm
163 #!/bin/sh
164 /bin/busybox ntpd -h 2>&1 | grep -q BusyBox && ln -sf ../../bin/busybox /usr/sbin/ntpd
165 exit 0
166 endef
167
168 Package/ntpd-ssl/conffiles = $(Package/ntpd/conffiles)
169 Package/ntpd-ssl/install = $(Package/ntpd/install)
170
171 define Package/ntpdate/install
172         $(INSTALL_DIR) $(1)/usr/sbin
173         $(INSTALL_BIN) $(PKG_BUILD_DIR)/ntpdate/ntpdate $(1)/usr/sbin/
174         $(INSTALL_DIR) $(1)/etc/init.d
175         $(INSTALL_BIN) ./files/ntpdate.init $(1)/etc/init.d/ntpdate
176 endef
177
178 define Package/ntp-utils/install
179         $(INSTALL_DIR) $(1)/usr/sbin
180         $(INSTALL_BIN) $(PKG_BUILD_DIR)/ntpdc/ntpdc $(1)/usr/sbin/
181         $(INSTALL_BIN) $(PKG_BUILD_DIR)/ntpq/ntpq $(1)/usr/sbin/
182         $(INSTALL_BIN) $(PKG_BUILD_DIR)/util/ntptime $(1)/usr/sbin/
183 endef
184
185 define Package/ntp-keygen/install
186         $(INSTALL_DIR) $(1)/usr/sbin
187         $(INSTALL_BIN) $(PKG_BUILD_DIR)/util/ntp-keygen $(1)/usr/sbin/
188 endef
189
190 Package/ntp-keygen-ssl/install = $(Package/ntp-keygen/install)
191
192 $(eval $(call BuildPackage,ntpd))
193 $(eval $(call BuildPackage,ntpd-ssl))
194 $(eval $(call BuildPackage,ntpdate))
195 $(eval $(call BuildPackage,ntp-utils))
196 $(eval $(call BuildPackage,ntp-keygen))
197 $(eval $(call BuildPackage,ntp-keygen-ssl))