diff options
author | Martin Banky <martin.banky@gmail.com> | 2010-09-20 14:54:23 -0700 |
---|---|---|
committer | Peter Korsgaard <jacmet@sunsite.dk> | 2010-09-21 21:25:54 +0200 |
commit | a05bb5815d3e311219560685ee0e165a824292ab (patch) | |
tree | fa6c97d96308f5c6acc2ba03390eb07d8b9aa94f /package/ntp | |
parent | 6b899a43bae232b80eb57dfb6e373dc3971f8fed (diff) |
ntp: convert to autotargets and bump to 4.2.6p2
Also added additional options for ntp and fixed a build issue when
IPv6 support is not available.
[Peter: small tweaks]
Signed-off-by: Martin Banky <Martin.Banky@gmail.com>
Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk>
Diffstat (limited to 'package/ntp')
-rw-r--r-- | package/ntp/Config.in | 44 | ||||
-rw-r--r-- | package/ntp/ntp-4.2.4_p5-nano.patch | 36 | ||||
-rw-r--r-- | package/ntp/ntp-4.2.6_p2-adjtimex.patch (renamed from package/ntp/ntp-4.2.4_p5-adjtimex.patch) | 0 | ||||
-rw-r--r-- | package/ntp/ntp-optional-ipv6.patch | 24 | ||||
-rw-r--r-- | package/ntp/ntp.mk | 110 |
5 files changed, 79 insertions, 135 deletions
diff --git a/package/ntp/Config.in b/package/ntp/Config.in index 6213141cf..afbf0d595 100644 --- a/package/ntp/Config.in +++ b/package/ntp/Config.in @@ -11,3 +11,47 @@ config BR2_PACKAGE_NTP_SNTP depends on BR2_PACKAGE_NTP help Simple network time protocol program + +config BR2_PACKAGE_NTP_NTP_KEYGEN + bool "ntp-keygen" + depends on BR2_PACKAGE_NTP + help + Create a NTP host key + +config BR2_PACKAGE_NTP_NTP_WAIT + bool "ntp-wait" + depends on BR2_PACKAGE_MICROPERL + depends on BR2_PACKAGE_NTP + 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_NTPDC + bool "ntpdc" + depends on BR2_PACKAGE_NTP + 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" + depends on BR2_PACKAGE_NTP + 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_NTPTRACE + bool "ntptrace" + depends on BR2_PACKAGE_MICROPERL + depends on BR2_PACKAGE_NTP + 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" + depends on BR2_PACKAGE_NTP + help + set time-related kernel variables diff --git a/package/ntp/ntp-4.2.4_p5-nano.patch b/package/ntp/ntp-4.2.4_p5-nano.patch deleted file mode 100644 index f4097ee56..000000000 --- a/package/ntp/ntp-4.2.4_p5-nano.patch +++ /dev/null @@ -1,36 +0,0 @@ -Fixes the MOD_NANO build failure - -ntp_loopfilter.c: In function 'local_clock': -ntp_loopfilter.c:571: error: 'MOD_NANO' undeclared (first use in this function) -ntp_loopfilter.c:571: error: (Each undeclared identifier is reported only once -ntp_loopfilter.c:571: error: for each function it appears in.) -ntp_loopfilter.c: In function 'loop_config': -ntp_loopfilter.c:896: error: 'MOD_NANO' undeclared (first use in this function) - -Taken from -http://cvs.fedoraproject.org/viewvc/devel/ntp/ntp-4.2.4p7-nano.patch?revision=1.1&content-type=text/plain&view=co - -See the discussion at -https://bugs.launchpad.net/ubuntu/+source/ntp/+bug/412242 for more -details and links. The below fix is not a correct fix, but only a -workaround. The real fix required changes to kernel/libc headers. - -Index: ntp-4.2.4p5/include/ntp_syscall.h -=================================================================== ---- ntp-4.2.4p5.orig/include/ntp_syscall.h 2010-05-14 17:34:48.000000000 +0200 -+++ ntp-4.2.4p5/include/ntp_syscall.h 2010-05-14 17:35:13.000000000 +0200 -@@ -14,6 +14,14 @@ - # include <sys/timex.h> - #endif - -+#if defined(ADJ_NANO) && !defined(MOD_NANO) -+#define MOD_NANO ADJ_NANO -+#endif -+ -+#if defined(ADJ_TAI) && !defined(MOD_TAI) -+#define MOD_TAI ADJ_TAI -+#endif -+ - #ifndef NTP_SYSCALLS_LIBC - #ifdef NTP_SYSCALLS_STD - # define ntp_adjtime(t) syscall(SYS_ntp_adjtime, (t)) diff --git a/package/ntp/ntp-4.2.4_p5-adjtimex.patch b/package/ntp/ntp-4.2.6_p2-adjtimex.patch index 40625fa18..40625fa18 100644 --- a/package/ntp/ntp-4.2.4_p5-adjtimex.patch +++ b/package/ntp/ntp-4.2.6_p2-adjtimex.patch diff --git a/package/ntp/ntp-optional-ipv6.patch b/package/ntp/ntp-optional-ipv6.patch deleted file mode 100644 index 20d6edfad..000000000 --- a/package/ntp/ntp-optional-ipv6.patch +++ /dev/null @@ -1,24 +0,0 @@ -[PATCH] ntpd: fix build without ipv6 support - -ntp_io.c was checkin the non-existing DISABLE_IPV6 define rather -than WANT_IPV6 as defined in config.h, breaking the build if -the toolchain doesn't have ipv6 support. - -Signed-off-by: Peter Korsgaard <jacmet@sunsite.dk> ---- - ntpd/ntp_io.c | 2 +- - 1 file changed, 1 insertion(+), 1 deletion(-) - -Index: ntp-4.2.4p5/ntpd/ntp_io.c -=================================================================== ---- ntp-4.2.4p5.orig/ntpd/ntp_io.c -+++ ntp-4.2.4p5/ntpd/ntp_io.c -@@ -55,7 +55,7 @@ - * Set up some macros to look for IPv6 and IPv6 multicast - */ - --#if defined(ISC_PLATFORM_HAVEIPV6) && !defined(DISABLE_IPV6) -+#if defined(ISC_PLATFORM_HAVEIPV6) && defined(WANT_IPV6) - - #define INCLUDE_IPV6_SUPPORT - diff --git a/package/ntp/ntp.mk b/package/ntp/ntp.mk index 78a4d2c26..726508396 100644 --- a/package/ntp/ntp.mk +++ b/package/ntp/ntp.mk @@ -3,91 +3,51 @@ # ntp # ############################################################# -NTP_VERSION:=4.2.4p5 -NTP_SOURCE:=ntp-$(NTP_VERSION).tar.gz -NTP_SITE:=http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2 -NTP_DIR:=$(BUILD_DIR)/ntp-$(NTP_VERSION) -NTP_CAT:=$(ZCAT) -NTP_BINARY:=ntpdate/ntpdate -NTP_TARGET_BINARY:=usr/bin/ntpdate +NTP_VERSION = 4.2.6p2 +NTP_SOURCE = ntp-$(NTP_VERSION).tar.gz +NTP_SITE = http://www.eecis.udel.edu/~ntp/ntp_spool/ntp4/ntp-4.2 -$(DL_DIR)/$(NTP_SOURCE): - $(call DOWNLOAD,$(NTP_SITE),$(NTP_SOURCE)) +NTP_CONF_ENV = ac_cv_lib_md5_MD5Init=no -ntp-source: $(DL_DIR)/$(NTP_SOURCE) - -$(NTP_DIR)/.patched: $(DL_DIR)/$(NTP_SOURCE) - $(NTP_CAT) $(DL_DIR)/$(NTP_SOURCE) | tar -C $(BUILD_DIR) $(TAR_OPTIONS) - - toolchain/patch-kernel.sh $(NTP_DIR) package/ntp/ ntp\*.patch - $(SED) "s,^#if.*__GLIBC__.*_BSD_SOURCE.*$$,#if 0," \ - $(NTP_DIR)/ntpd/refclock_pcf.c - $(SED) '/[[:space:](]index[[:space:]]*(/s/[[:space:]]*index[[:space:]]*(/ strchr(/g' $(NTP_DIR)/libisc/*.c $(NTP_DIR)/arlib/sample.c - $(SED) '/[[:space:](]rindex[[:space:]]*(/s/[[:space:]]*rindex[[:space:]]*(/ strrchr(/g' $(NTP_DIR)/ntpd/*.c - #$(SED) 's/\(^#[[:space:]]*include[[:space:]]*<sys\/var.h>\)/\/\/ \1/' $(NTP_DIR)/util/tickadj.c - $(CONFIG_UPDATE) $(NTP_DIR) - $(CONFIG_UPDATE) $(NTP_DIR)/sntp - touch $@ +ifneq ($(BR2_INET_IPV6),y) +NTP_CONF_ENV += isc_cv_have_in6addr_any=no +endif -$(NTP_DIR)/.configured: $(NTP_DIR)/.patched - (cd $(NTP_DIR); rm -rf config.cache; \ - $(TARGET_CONFIGURE_OPTS) \ - $(TARGET_CONFIGURE_ARGS) \ - ac_cv_lib_md5_MD5Init=no \ - ./configure $(QUIET) \ - --target=$(GNU_TARGET_NAME) \ - --host=$(GNU_TARGET_NAME) \ - --build=$(GNU_HOST_NAME) \ - --prefix=/usr \ - --exec-prefix=/usr \ - --bindir=/usr/bin \ - --sbindir=/usr/sbin \ - --libdir=/lib \ - --libexecdir=/usr/lib \ - --sysconfdir=/etc \ - --datadir=/usr/share \ - --localstatedir=/var \ - --mandir=/usr/man \ - --infodir=/usr/info \ - $(DISABLE_NLS) \ - $(DISABLE_IPV6) \ - --with-shared \ +NTP_CONF_OPT = --with-shared \ --program-transform-name=s,,, \ --without-crypto \ - --disable-tickadj \ - ) - touch $@ - -$(NTP_DIR)/$(NTP_BINARY): $(NTP_DIR)/.configured - $(MAKE) -C $(NTP_DIR) - -$(TARGET_DIR)/$(NTP_TARGET_BINARY): $(NTP_DIR)/$(NTP_BINARY) - install -m 755 $(NTP_DIR)/ntpd/ntpd $(TARGET_DIR)/usr/sbin/ntpd - install -m 755 $(NTP_DIR)/$(NTP_BINARY) $(TARGET_DIR)/$(NTP_TARGET_BINARY) -ifeq ($(BR2_PACKAGE_NTP_SNTP),y) - install -m 755 $(NTP_DIR)/sntp/sntp $(TARGET_DIR)/usr/bin/sntp -endif + --disable-tickadj + +define NTP_PATCH_FIXUPS + $(SED) "s,^#if.*__GLIBC__.*_BSD_SOURCE.*$$,#if 0," $(@D)/ntpd/refclock_pcf.c + $(SED) '/[[:space:](]rindex[[:space:]]*(/s/[[:space:]]*rindex[[:space:]]*(/ strrchr(/g' $(@D)/ntpd/*.c +endef + +NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_SNTP) += sntp/sntp +NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_NTP_KEYGEN) += util/ntp-keygen +NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_NTP_WAIT) += scripts/ntp-wait +NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_NTPDC) += ntpdc/ntpdc +NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_NTPQ) += ntpq/ntpq +NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_NTPTRACE) += scripts/ntptrace +NTP_INSTALL_FILES_$(BR2_PACKAGE_NTP_TICKADJ) += util/tickadj + +define NTP_INSTALL_TARGET_CMDS + install -m 755 $(@D)/ntpd/ntpd $(TARGET_DIR)/usr/sbin/ntpd + test -z "$(NTP_INSTALL_FILES_y)" || install -m 755 $(addprefix $(@D)/,$(NTP_INSTALL_FILES_y)) $(TARGET_DIR)/usr/bin/ install -m 755 package/ntp/ntp.sysvinit $(TARGET_DIR)/etc/init.d/S49ntp @if [ ! -f $(TARGET_DIR)/etc/default/ntpd ]; then \ install -m 755 -d $(TARGET_DIR)/etc/default ; \ install -m 644 package/ntp/ntpd.etc.default $(TARGET_DIR)/etc/default/ntpd ; \ fi +endef -ntp: $(TARGET_DIR)/$(NTP_TARGET_BINARY) - -ntp-clean: - rm -f $(TARGET_DIR)/usr/sbin/ntpd $(TARGET_DIR)/usr/bin/sntp \ - $(TARGET_DIR)/etc/init.d/S49ntp \ - $(TARGET_DIR)/$(NTP_TARGET_BINARY) - -$(MAKE) -C $(NTP_DIR) clean +define NTP_UNINSTALL_TARGET_CMDS + rm $(TARGET_DIR)/usr/sbin/ntpd + rm -f $(addprefix $(TARGET_DIR)/usr/bin/,$(NTP_INSTALL_FILES_y)) + rm $(TARGET_DIR)/etc/init.d/S49ntp + rm $(TARGET_DIR)/etc/default/ntpd +endef -ntp-dirclean: - rm -rf $(NTP_DIR) +NTP_POST_PATCH_HOOKS += NTP_PATCH_FIXUPS -############################################################# -# -# Toplevel Makefile options -# -############################################################# -ifeq ($(BR2_PACKAGE_NTP),y) -TARGETS+=ntp -endif +$(eval $(call AUTOTARGETS,package,ntp)) |