|
|
@ -1,5 +1,5 @@ |
|
|
|
#
|
|
|
|
# Copyright (c) 2014 Brent Cook
|
|
|
|
# Copyright (c) 2014-2015 Brent Cook
|
|
|
|
# Parts based on Makefile.in from Portable OpenNTPD:
|
|
|
|
# Copyright (c) 2004-2008 Darren Tucker.
|
|
|
|
#
|
|
|
@ -15,235 +15,21 @@ |
|
|
|
# ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF
|
|
|
|
# OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
|
|
|
|
|
|
|
AM_CPPFLAGS = -I$(top_srcdir)/include |
|
|
|
SUBDIRS = include |
|
|
|
SUBDIRS = include compat src |
|
|
|
ACLOCAL_AMFLAGS = -I m4 |
|
|
|
|
|
|
|
ACLOCAL_AMFLAGS = -Im4 |
|
|
|
EXTRA_DIST = VERSION ntpd.conf |
|
|
|
CLEANFILES = parse.c |
|
|
|
|
|
|
|
sbin_PROGRAMS = ntpd |
|
|
|
noinst_LTLIBRARIES = libcompat.la libcompatnoopt.la |
|
|
|
dist_man_MANS = ntpctl.8 ntpd.8 ntpd.conf.5 |
|
|
|
|
|
|
|
ntpd_CFLAGS = $(CFLAGS) $(USER_CFLAGS) |
|
|
|
ntpd_CFLAGS += -DSYSCONFDIR=\"$(sysconfdir)\" |
|
|
|
ntpd_CFLAGS += -DLOCALSTATEDIR=\"$(localstatedir)\" |
|
|
|
|
|
|
|
ntpd_LDADD = $(PLATFORM_LDADD) $(PROG_LDADD) libcompat.la libcompatnoopt.la |
|
|
|
|
|
|
|
ntpd_SOURCES = client.c |
|
|
|
ntpd_SOURCES += config.c |
|
|
|
ntpd_SOURCES += control.c |
|
|
|
ntpd_SOURCES += log.c |
|
|
|
ntpd_SOURCES += log.h |
|
|
|
ntpd_SOURCES += ntp.c |
|
|
|
ntpd_SOURCES += ntp.h |
|
|
|
ntpd_SOURCES += ntp_dns.c |
|
|
|
ntpd_SOURCES += ntp_msg.c |
|
|
|
ntpd_SOURCES += ntpd.c |
|
|
|
ntpd_SOURCES += ntpd.h |
|
|
|
ntpd_SOURCES += parse.y |
|
|
|
if HAVE_SENSORS |
|
|
|
ntpd_SOURCES += sensors.c |
|
|
|
else |
|
|
|
ntpd_SOURCES += compat/fake-sensors.c |
|
|
|
endif |
|
|
|
ntpd_SOURCES += server.c |
|
|
|
ntpd_SOURCES += util.c |
|
|
|
|
|
|
|
install-exec-hook: |
|
|
|
@ln -f "$(DESTDIR)$(sbindir)/ntpd" "$(DESTDIR)$(sbindir)/ntpctl" |
|
|
|
@if [ ! -d "$(DESTDIR)$(sysconfdir)" ]; then \
|
|
|
|
$(INSTALL) -m 755 -d "$(DESTDIR)$(sysconfdir)"; \
|
|
|
|
fi |
|
|
|
@if [ ! -d "$(DESTDIR)$(localstatedir)/run" ]; then \
|
|
|
|
$(INSTALL) -m 755 -d "$(DESTDIR)$(localstatedir)/run"; \
|
|
|
|
fi |
|
|
|
@if [ ! -d "$(DESTDIR)$(localstatedir)/db" ]; then \
|
|
|
|
$(INSTALL) -m 755 -d "$(DESTDIR)$(localstatedir)/db"; \
|
|
|
|
fi |
|
|
|
@if [ ! -f "$(DESTDIR)$(sysconfdir)/ntpd.conf" ]; then \
|
|
|
|
$(INSTALL) -m 644 "$(srcdir)/ntpd.conf" "$(DESTDIR)$(sysconfdir)/ntpd.conf"; \
|
|
|
|
else \
|
|
|
|
echo; \
|
|
|
|
echo " $(DESTDIR)$(sysconfdir)/ntpd.conf already exists, install will not overwrite"; \
|
|
|
|
fi |
|
|
|
@if [ ! -d "$(PRIVSEP_PATH)" ]; then \
|
|
|
|
echo; \
|
|
|
|
echo " Please created a privilege separation directory for ntpd." ; \
|
|
|
|
echo " For OS X, see INSTALL for instructions." ; \
|
|
|
|
echo " On Linux / BSD systems, this will probably work:"; \
|
|
|
|
echo ; \
|
|
|
|
echo " mkdir -p \"$(PRIVSEP_PATH)\"" ; \
|
|
|
|
echo " chown 0 \"$(PRIVSEP_PATH)\"" ; \
|
|
|
|
echo " chgrp 0 \"$(PRIVSEP_PATH)\"" ; \
|
|
|
|
echo " chmod 0755 \"$(PRIVSEP_PATH)\"" ; \
|
|
|
|
fi |
|
|
|
@if egrep "^$(PRIVSEP_USER):" /etc/group >/dev/null; then \
|
|
|
|
: ; \
|
|
|
|
else \
|
|
|
|
echo; \
|
|
|
|
echo " Please create a dedicated group for ntpd." ; \
|
|
|
|
echo " For OS X, see INSTALL for instructions." ; \
|
|
|
|
echo " On Linux / BSD systems, this will probably work:"; \
|
|
|
|
echo ; \
|
|
|
|
echo " groupadd $(PRIVSEP_USER)" ; \
|
|
|
|
fi |
|
|
|
@if egrep "^$(PRIVSEP_USER):" /etc/passwd >/dev/null; then \
|
|
|
|
: ; \
|
|
|
|
else \
|
|
|
|
echo; \
|
|
|
|
echo " Please create a dedicated user for ntpd and ensure it" ; \
|
|
|
|
echo " cannot be used to log in." ; \
|
|
|
|
echo " For OS X, see INSTALL for instructions." ; \
|
|
|
|
echo " On Linux / BSD systems, this will probably work:" ; \
|
|
|
|
echo ; \
|
|
|
|
echo " useradd -g $(PRIVSEP_USER) -s /sbin/nologin -d $(PRIVSEP_PATH) -c 'OpenNTP daemon' $(PRIVSEP_USER)" ; \
|
|
|
|
fi |
|
|
|
@if [ -d $(PRIVSEP_PATH) ]; then \
|
|
|
|
if [ `ls -A $(PRIVSEP_PATH)|wc -l` != "0" ]; then \
|
|
|
|
echo; \
|
|
|
|
echo " WARNING: the privilege separation path is specified as $(PRIVSEP_PATH), " ; \
|
|
|
|
echo " but this directory contains files!" ; \
|
|
|
|
echo ; \
|
|
|
|
echo " Please ensure that $(PRIVSEP_PATH) is empty. If you installed a previous " ; \
|
|
|
|
echo " OpenNTPD version and created a user with a home directory at /var/empty/ntpd, " ; \
|
|
|
|
echo " please adjust that user to use /var/empty instead and delete /var/empty/ntpd." ; \
|
|
|
|
fi; \
|
|
|
|
fi |
|
|
|
@echo |
|
|
|
|
|
|
|
uninstall-local: |
|
|
|
@if cmp -s "$(DESTDIR)$(sysconfdir)/ntpd.conf" "$(srcdir)/ntpd.conf"; then \
|
|
|
|
rm -f "$(DESTDIR)$(sysconfdir)/ntpd.conf"; \
|
|
|
|
fi |
|
|
|
@rm -f "$(DESTDIR)$(sbindir)/ntpctl" |
|
|
|
|
|
|
|
# compatibility functions that need to be built without optimizations
|
|
|
|
libcompatnoopt_la_CFLAGS = -O0 |
|
|
|
libcompatnoopt_la_SOURCES = |
|
|
|
|
|
|
|
if !HAVE_EXPLICIT_BZERO |
|
|
|
libcompatnoopt_la_SOURCES += compat/explicit_bzero.c |
|
|
|
endif |
|
|
|
|
|
|
|
# other compatibility functions
|
|
|
|
libcompat_la_CFLAGS = $(CFLAGS) $(USER_CFLAGS) |
|
|
|
libcompat_la_SOURCES = |
|
|
|
libcompat_la_LIBADD = $(PLATFORM_LDADD) |
|
|
|
|
|
|
|
if !HAVE_ADJFREQ |
|
|
|
if HOST_FREEBSD |
|
|
|
libcompat_la_SOURCES += compat/adjfreq_freebsd.c |
|
|
|
endif |
|
|
|
if HOST_LINUX |
|
|
|
libcompat_la_SOURCES += compat/adjfreq_linux.c |
|
|
|
endif |
|
|
|
if HOST_NETBSD |
|
|
|
libcompat_la_SOURCES += compat/adjfreq_netbsd.c |
|
|
|
endif |
|
|
|
if HOST_DARWIN |
|
|
|
libcompat_la_SOURCES += compat/adjfreq_osx.c |
|
|
|
endif |
|
|
|
if HOST_SOLARIS |
|
|
|
libcompat_la_SOURCES += compat/adjfreq_solaris.c |
|
|
|
endif |
|
|
|
endif |
|
|
|
|
|
|
|
if !HAVE_ASPRINTF |
|
|
|
libcompat_la_SOURCES += compat/bsd-asprintf.c |
|
|
|
endif |
|
|
|
|
|
|
|
if !HAVE_CLOCK_GETRES |
|
|
|
libcompat_la_SOURCES += compat/clock_getres.c |
|
|
|
endif |
|
|
|
|
|
|
|
if !HAVE_CLOCK_GETTIME |
|
|
|
if HOST_DARWIN |
|
|
|
libcompat_la_SOURCES += compat/clock_gettime_osx.c |
|
|
|
endif |
|
|
|
endif |
|
|
|
|
|
|
|
if !HAVE_IMSG |
|
|
|
libcompat_la_SOURCES += compat/imsg.c |
|
|
|
libcompat_la_SOURCES += compat/imsg-buffer.c |
|
|
|
endif |
|
|
|
|
|
|
|
if !HAVE_MD5 |
|
|
|
libcompat_la_SOURCES += compat/md5.c |
|
|
|
endif |
|
|
|
|
|
|
|
libcompat_la_SOURCES += compat/progname.c |
|
|
|
|
|
|
|
if !HAVE_REALLOCARRAY |
|
|
|
libcompat_la_SOURCES += compat/reallocarray.c |
|
|
|
endif |
|
|
|
|
|
|
|
if !HAVE_SETPROCTITLE |
|
|
|
libcompat_la_SOURCES += compat/setproctitle.c |
|
|
|
endif |
|
|
|
|
|
|
|
if !HAVE_STRLCAT |
|
|
|
libcompat_la_SOURCES += compat/strlcat.c |
|
|
|
endif |
|
|
|
|
|
|
|
if !HAVE_STRLCPY |
|
|
|
libcompat_la_SOURCES += compat/strlcpy.c |
|
|
|
endif |
|
|
|
|
|
|
|
if !HAVE_STRTONUM |
|
|
|
libcompat_la_SOURCES += compat/strtonum.c |
|
|
|
endif |
|
|
|
|
|
|
|
if !HAVE_SETRESGID |
|
|
|
libcompat_la_SOURCES += compat/bsd-setresgid.c |
|
|
|
endif |
|
|
|
|
|
|
|
if !HAVE_SETRESUID |
|
|
|
libcompat_la_SOURCES += compat/bsd-setresuid.c |
|
|
|
endif |
|
|
|
|
|
|
|
if !HAVE_ARC4RANDOM |
|
|
|
libcompat_la_SOURCES += compat/arc4random.c |
|
|
|
|
|
|
|
if !HAVE_GETENTROPY |
|
|
|
if HOST_FREEBSD |
|
|
|
libcompat_la_SOURCES += compat/getentropy_freebsd.c |
|
|
|
endif |
|
|
|
if HOST_LINUX |
|
|
|
libcompat_la_SOURCES += compat/getentropy_linux.c |
|
|
|
if !HAVE_SHA512 |
|
|
|
libcompat_la_SOURCES += compat/sha2.c |
|
|
|
endif |
|
|
|
endif |
|
|
|
if HOST_NETBSD |
|
|
|
libcompat_la_SOURCES += compat/getentropy_netbsd.c |
|
|
|
endif |
|
|
|
if HOST_DARWIN |
|
|
|
libcompat_la_SOURCES += compat/getentropy_osx.c |
|
|
|
if !HAVE_SHA512 |
|
|
|
libcompat_la_SOURCES += compat/sha2.c |
|
|
|
endif |
|
|
|
endif |
|
|
|
if HOST_SOLARIS |
|
|
|
libcompat_la_SOURCES += compat/getentropy_solaris.c |
|
|
|
if !HAVE_SHA512 |
|
|
|
libcompat_la_SOURCES += compat/sha2.c |
|
|
|
endif |
|
|
|
endif |
|
|
|
endif |
|
|
|
endif |
|
|
|
|
|
|
|
if !HAVE_ARC4RANDOM_UNIFORM |
|
|
|
libcompat_la_SOURCES += compat/arc4random_uniform.c |
|
|
|
endif |
|
|
|
|
|
|
|
noinst_HEADERS = compat/arc4random.h |
|
|
|
noinst_HEADERS += compat/arc4random_freebsd.h |
|
|
|
noinst_HEADERS += compat/arc4random_linux.h |
|
|
|
noinst_HEADERS += compat/arc4random_netbsd.h |
|
|
|
noinst_HEADERS += compat/arc4random_osx.h |
|
|
|
noinst_HEADERS += compat/arc4random_solaris.h |
|
|
|
noinst_HEADERS += compat/arc4random_win.h |
|
|
|
noinst_HEADERS += compat/chacha_private.h |