[packages] licensing: Licensing metadata added to many packages
[openwrt/svn-archive/archive.git] / net / ntpd / Makefile
index c0963a795198c596400eb410475f8f7c0a1658e3..514b6744dc53b1aea1374a78de1b64f10043b5a1 100644 (file)
@@ -1,5 +1,5 @@
 #
-# Copyright (C) 2006-2009 OpenWrt.org
+# Copyright (C) 2006-2011 OpenWrt.org
 #
 # This is free software, licensed under the GNU General Public License v2.
 # See /LICENSE for more information.
@@ -8,14 +8,18 @@
 include $(TOPDIR)/rules.mk
 
 PKG_NAME:=ntp
-PKG_VERSION:=4.2.4p8
-PKG_RELEASE:=1
+PKG_VERSION:=4.2.6p5
+PKG_RELEASE:=2
 
 PKG_SOURCE:=$(PKG_NAME)-$(PKG_VERSION).tar.gz
 PKG_SOURCE_URL:=http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2/
-PKG_MD5SUM:=fe137056e7e611798a46971a783567ce
+PKG_MD5SUM:=00df80a84ec9528fcfb09498075525bc
+
+PKG_BUILD_DIR:=$(BUILD_DIR)/$(PKG_NAME)-$(BUILD_VARIANT)/$(PKG_NAME)-$(PKG_VERSION)
 
 PKG_BUILD_DEPENDS:=libelf
+PKG_FIXUP:=autoreconf
+PKG_LIBTOOL_PATHS:=. sntp
 
 include $(INCLUDE_DIR)/package.mk
 
@@ -24,96 +28,123 @@ define Package/ntpd/Default
   SECTION:=net
   CATEGORY:=Network
   TITLE:=ISC ntp
+  MAINTAINER:=Peter Wagner <tripolar@gmx.at>
   URL:=http://www.ntp.org/
+  DEPENDS:=+libcap
 endef
 
 define Package/ntpd/Default/description
      The ISC ntp suite is a collection of tools used to synchronize
-       the system clock with remote NTP time servers and run/montior
      local NTP servers.
The ISC ntp suite is a collection of tools used to synchronize the
+ system clock with remote NTP time servers and run/montior local NTP
+ servers.
 endef
 
 define Package/ntpd
-  $(call Package/ntpd/Default)
+$(call Package/ntpd/Default)
   TITLE+= server
+  VARIANT:=nossl
 endef
 
 define Package/ntpd/description
-       $(call Package/ntpd/Default/description)
-       This package contains the ntpd server.
+$(call Package/ntpd/Default/description)
+ .
+ This package contains the ntpd server.
+endef
+
+define Package/ntpd-ssl
+$(call Package/ntpd/Default)
+  TITLE+= server (with OpenSSL support)
+  VARIANT:=ssl
+  DEPENDS+= +libopenssl
+endef
+
+define Package/ntpd-ssl/description
+$(call Package/ntpd/Default/description)
+ .
+ This package contains the ntpd server with OpenSSL support.
 endef
 
 define Package/ntpdate
-  $(call Package/ntpd/Default)
+$(call Package/ntpd/Default)
   TITLE+=date
+  VARIANT:=nossl
 endef
 
 define Package/ntpdate/description
-       $(call Package/ntpd/Default/description)
-       This package contains ntpdate.
+$(call Package/ntpd/Default/description)
+ .
+ This package contains ntpdate.
 endef
 
 define Package/ntp-utils
-  $(call Package/ntpd/Default)
-  DEPENDS:=+libncurses
+$(call Package/ntpd/Default)
   TITLE+= utilities
+  VARIANT:=nossl
 endef
 
 define Package/ntp-utils/description
-       $(call Package/ntpd/Default/description)
-       This package contains ntpdc and ntpq.
+$(call Package/ntpd/Default/description)
+ .
+ This package contains ntpdc, ntpq and ntptime.
 endef
 
-define Package/ntpd/conffiles
-/etc/ntp.conf
+define Package/ntp-keygen
+$(call Package/ntpd/Default)
+  TITLE+=keygen
+  VARIANT:=nossl
 endef
 
-define Package/ntpd/Default/postinst
-#!/bin/sh
-grep -q '^ntp[[:space:]]*123/udp' $${IPKG_INSTROOT}/etc/services 2>/dev/null
-[ $$? -ne 0 ] && echo "ntp            123/udp     # Network Time Protocol" >>$${IPKG_INSTROOT}/etc/services || exit 0
-grep -q '^ntp[[:space:]]*123/tcp' $${IPKG_INSTROOT}/etc/services 2>/dev/null
-[ $$? -ne 0 ] && echo "ntp            123/tcp     # Network Time Protocol" >>$${IPKG_INSTROOT}/etc/services || exit 0
+define Package/ntp-keygen/description
+$(call Package/ntpd/Default/description)
+ .
+ This package contains the ntp-keygen.
 endef
 
-define Package/ntpdate/postinst
-  $(call Package/ntpd/Default/postinst)
+define Package/ntp-keygen-ssl
+$(call Package/ntpd/Default)
+  TITLE+=keygen (with OpenSSL support)
+  VARIANT:=ssl
+  DEPENDS+= +libopenssl
 endef
 
-define Package/ntpd/postinst
-  $(call Package/ntpd/Default/postinst)
+define Package/ntp-keygen-ssl/description
+$(call Package/ntpd/Default/description)
+ .
+ This package contains the ntp-keygen with OpenSSL support.
 endef
 
-define Package/ntp-utils/postinst
-  $(call Package/ntpd/Default/postinst)
+define Package/ntpd/conffiles
+/etc/ntp.conf
 endef
 
-TARGET_CPPFLAGS += -I$(STAGING_DIR)/usr/include/libelf
+TARGET_CPPFLAGS += \
+       -I$(STAGING_DIR)/usr/include/libelf
 
 CONFIGURE_VARS += \
-       ac_cv_header_md5_h=no
-
-define Build/Configure
-       $(call Build/Configure/Default, \
-               --disable-all-clocks \
-               --disable-parse-clocks \
-               --enable-NMEA \
-               --enable-LOCAL-CLOCK \
-               --enable-SHM \
-               --disable-linuxcaps, \
-               ac_cv_lib_rt_sched_setscheduler=no \
-               ac_cv_header_dns_sd_h=no \
-       )
-endef
-
-define Build/Compile
-       $(MAKE) -C $(PKG_BUILD_DIR) \
-               CFLAGS="$(TARGET_CFLAGS)"
-endef
+       ac_cv_header_md5_h=no \
+       ac_cv_lib_rt_sched_setscheduler=no \
+       ac_cv_header_dns_sd_h=no
+
+CONFIGURE_ARGS += \
+       --disable-all-clocks \
+       --disable-parse-clocks \
+       --without-ntpsnmpd \
+       --without-lineeditlibs \
+       --enable-NMEA \
+       --enable-LOCAL-CLOCK \
+       --enable-SHM \
+       --enable-linuxcaps
+
+ifeq ($(BUILD_VARIANT),ssl)
+  CONFIGURE_ARGS += \
+       --with-crypto \
+       --with-openssl-incdir="$(STAGING_DIR)/usr/include" \
+       --with-openssl-libdir="$(STAGING_DIR)/usr/lib"
+endif
 
 define Package/ntpd/install
-       $(INSTALL_DIR) $(1)/usr/sbin/
-       $(INSTALL_BIN) $(PKG_BUILD_DIR)/ntpd/ntpd $(1)/usr/sbin/
+       $(INSTALL_DIR) $(1)/sbin
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/ntpd/ntpd $(1)/sbin/
        $(INSTALL_DIR) $(1)/etc
        $(INSTALL_CONF) ./files/ntp.conf $(1)/etc/
        $(INSTALL_DIR) $(1)/etc/init.d
@@ -122,19 +153,45 @@ define Package/ntpd/install
        $(INSTALL_BIN) ./files/ntpd.hotplug $(1)/etc/hotplug.d/iface/20-ntpd
 endef
 
+define Package/ntpd/postinst
+#!/bin/sh
+[ -L "$${IPKG_INSTROOT}/usr/sbin/ntpd" ] && rm -f "$${IPKG_INSTROOT}/usr/sbin/ntpd"
+exit 0
+endef
+
+define Package/ntpd/postrm
+#!/bin/sh
+/bin/busybox ntpd -h 2>&1 | grep -q BusyBox && ln -sf ../../bin/busybox /usr/sbin/ntpd
+exit 0
+endef
+
+Package/ntpd-ssl/conffiles = $(Package/ntpd/conffiles)
+Package/ntpd-ssl/install = $(Package/ntpd/install)
+
 define Package/ntpdate/install
-       $(INSTALL_DIR) $(1)/usr/sbin/
+       $(INSTALL_DIR) $(1)/usr/sbin
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/ntpdate/ntpdate $(1)/usr/sbin/
        $(INSTALL_DIR) $(1)/etc/init.d
        $(INSTALL_BIN) ./files/ntpdate.init $(1)/etc/init.d/ntpdate
 endef
 
 define Package/ntp-utils/install
-       $(INSTALL_DIR) $(1)/usr/sbin/
+       $(INSTALL_DIR) $(1)/usr/sbin
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/ntpdc/ntpdc $(1)/usr/sbin/
        $(INSTALL_BIN) $(PKG_BUILD_DIR)/ntpq/ntpq $(1)/usr/sbin/
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/util/ntptime $(1)/usr/sbin/
 endef
 
+define Package/ntp-keygen/install
+       $(INSTALL_DIR) $(1)/usr/sbin
+       $(INSTALL_BIN) $(PKG_BUILD_DIR)/util/ntp-keygen $(1)/usr/sbin/
+endef
+
+Package/ntp-keygen-ssl/install = $(Package/ntp-keygen/install)
+
 $(eval $(call BuildPackage,ntpd))
+$(eval $(call BuildPackage,ntpd-ssl))
 $(eval $(call BuildPackage,ntpdate))
 $(eval $(call BuildPackage,ntp-utils))
+$(eval $(call BuildPackage,ntp-keygen))
+$(eval $(call BuildPackage,ntp-keygen-ssl))