summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--package/Config.in1
-rw-r--r--package/openntpd/Config.in8
-rw-r--r--package/openntpd/openntpd.mk63
3 files changed, 72 insertions, 0 deletions
diff --git a/package/Config.in b/package/Config.in
index 78f9b19e8..9fd99af78 100644
--- a/package/Config.in
+++ b/package/Config.in
@@ -76,6 +76,7 @@ source "package/netkittelnet/Config.in"
source "package/netsnmp/Config.in"
source "package/newt/Config.in"
source "package/ntp/Config.in"
+source "package/openntpd/Config.in"
source "package/openssh/Config.in"
source "package/openssl/Config.in"
source "package/openvpn/Config.in"
diff --git a/package/openntpd/Config.in b/package/openntpd/Config.in
new file mode 100644
index 000000000..6567d354a
--- /dev/null
+++ b/package/openntpd/Config.in
@@ -0,0 +1,8 @@
+config BR2_PACKAGE_OPENNTPD
+ bool "OpenNTPD"
+ default n
+ help
+ OpenNTPD is an easy to use implementation of the Network Time
+ Protocol. It provides the ability to sync the local clock
+ to remote NTP servers and can act as NTP server itself,
+ redistributing the local clock. It just works.
diff --git a/package/openntpd/openntpd.mk b/package/openntpd/openntpd.mk
new file mode 100644
index 000000000..53c287b4c
--- /dev/null
+++ b/package/openntpd/openntpd.mk
@@ -0,0 +1,63 @@
+#############################################################
+#
+# OpenNTPD
+#
+#############################################################
+OPENNTPD_VERSION:=3.6.1p1
+OPENNTPD_SOURCE:=openntpd-$(OPENNTPD_VERSION).tar.gz
+OPENNTPD_SITE:=ftp://ftp.openbsd.org/pub/OpenBSD/OpenNTPD
+OPENNTPD_DIR:=$(BUILD_DIR)/openntpd-$(OPENNTPD_VERSION)
+OPENNTPD_CAT:=zcat
+OPENNTPD_BINARY:=ntpd
+OPENNTPD_TARGET_BINARY:=usr/sbin/foo
+
+$(DL_DIR)/$(OPENNTPD_SOURCE):
+ $(WGET) -P $(DL_DIR) $(OPENNTPD_SITE)/$(OPENNTPD_SOURCE)
+
+$(OPENNTPD_DIR)/.source: $(DL_DIR)/$(OPENNTPD_SOURCE)
+ zcat $(DL_DIR)/$(OPENNTPD_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) -
+ touch $(OPENNTPD_DIR)/.source
+
+$(OPENNTPD_DIR)/.configured: $(OPENNTPD_DIR)/.source
+ (cd $(OPENNTPD_DIR); \
+ $(TARGET_CONFIGURE_OPTS) \
+ CFLAGS="$(TARGET_CFLAGS)" \
+ ./configure \
+ --target=$(GNU_TARGET_NAME) \
+ --host=$(GNU_TARGET_NAME) \
+ --build=$(GNU_HOST_NAME) \
+ --prefix=/usr \
+ --sysconfdir=/etc \
+ --with-builtin-arc4random \
+ );
+ touch $(OPENNTPD_DIR)/.configured;
+
+$(OPENNTPD_DIR)/$(OPENNTPD_BINARY): $(OPENNTPD_DIR)/.configured
+ $(MAKE) CC=$(TARGET_CC) -C $(OPENNTPD_DIR)
+
+$(TARGET_DIR)/$(OPENNTPD_TARGET_BINARY): $(OPENNTPD_DIR)/$(OPENNTPD_BINARY)
+ $(MAKE) DESTDIR=$(TARGET_DIR)/usr -C $(OPENNTPD_DIR) install
+ cp $(OPENNTPD_DIR)/ntpd.conf $(TARGET_DIR)/etc
+ rm -Rf $(TARGET_DIR)/usr/man
+
+ntpd: uclibc $(TARGET_DIR)/$(OPENNTPD_TARGET_BINARY)
+
+ntpd-source: $(DL_DIR)/$(OPENNTPD_SOURCE)
+
+ntpd-clean:
+ $(MAKE) DESTDIR=$(TARGET_DIR)/usr -C $(OPENNTPD_DIR) uninstall
+ rm -f $(TARGET_DIR)/etc/ntpd.conf
+ -$(MAKE) -C $(OPENNTPD_DIR) clean
+
+ntpd-dirclean:
+ rm -rf $(OPENNTPD_DIR)
+
+#############################################################
+#
+# Toplevel Makefile options
+#
+#############################################################
+ifeq ($(strip $(BR2_PACKAGE_OPENNTPD)),y)
+TARGETS+=ntpd
+endif
+