Commit 278a121f authored by Eric Andersen's avatar Eric Andersen
Browse files

Add support for the openntpd package to buildroot. OpenNTPD is a free, easy to

use implementation of the Network Time Protocol with a small footprint. It
provides the ability to sync the local clock to remote NTP servers and can act
as NTP server itself, redistributing the local clock.

http://bugs.uclibc.org/view.php?id=257
parent 12a94507
Loading
Loading
Loading
Loading
+1 −0
Original line number Diff line number Diff line
@@ -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"
+8 −0
Original line number Diff line number Diff line
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.
+63 −0
Original line number Diff line number Diff line
#############################################################
#
# 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