config BR2_PACKAGE_NTP
	bool "ntp"
	help
	  Network Time Protocol suite/programs.
	  Provides things like ntpd, ntpdate, ntpq, etc...

	  http://www.ntp.org/

if BR2_PACKAGE_NTP

config BR2_PACKAGE_NTP_SNTP
	bool "sntp"
	help
	  Simple network time protocol program

config BR2_PACKAGE_NTP_NTP_KEYGEN
	bool "ntp-keygen"
	help
	  Create a NTP host key

config BR2_PACKAGE_NTP_NTP_WAIT
	bool "ntp-wait"
	depends on BR2_PACKAGE_MICROPERL
	help
	  ntp-wait waits until the locally running ntpd is in state 4
	  (synchronized). This could be useful at boot time, to delay the
	  boot sequence until after "ntpd -g" has set the time.

config BR2_PACKAGE_NTP_NTPD
	bool "ntpd"
	default y
	help
	  ntpd is the time synchronization daemon keeping your local
	  system date and time in sync and optionally serving time and date
	  information on the network via the NTP protocol.

config BR2_PACKAGE_NTP_NTPDATE
	bool "ntpdate"
	help
	  The ntpdate utility program is used to set the local date and time
	  from an NTP server given as an argument.

config BR2_PACKAGE_NTP_NTPDC
	bool "ntpdc"
	help
	  The ntpdc utility program is used to query an NTP daemon about
	  its current state and to request changes in that state.

config BR2_PACKAGE_NTP_NTPQ
	bool "ntpq"
	help
	  The ntpq utility program is used to query NTP servers requesting
	  information about current state and/or changes in that state.

config BR2_PACKAGE_NTP_NTPSNMPD
	bool "ntpsnmpd"
	help
	  Install ntpsnmpd NTP SNMP MIB agent.

config BR2_PACKAGE_NTP_NTPTRACE
	bool "ntptrace"
	depends on BR2_PACKAGE_MICROPERL
	help
	  ntptrace is a perl script that uses the ntpq utility program to
	  follow the chain of NTP servers from a given host back to the
	  primary time source

config BR2_PACKAGE_NTP_TICKADJ
	bool "tickadj"
	help
	  set time-related kernel variables

endif
