]> git.ipfire.org Git - thirdparty/chrony.git/blob - Makefile.in
cmdmon: save NTS cookies and server keys on dump command
[thirdparty/chrony.git] / Makefile.in
1 ##################################################
2 #
3 # chronyd/chronyc - Programs for keeping computer clocks accurate.
4 #
5 # Copyright (C) Richard P. Curnow 1997-2003
6 #
7 # This program is free software; you can redistribute it and/or modify
8 # it under the terms of version 2 of the GNU General Public License as
9 # published by the Free Software Foundation.
10 #
11 # This program is distributed in the hope that it will be useful, but
12 # WITHOUT ANY WARRANTY; without even the implied warranty of
13 # MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
14 # General Public License for more details.
15 #
16 # You should have received a copy of the GNU General Public License along
17 # with this program; if not, write to the Free Software Foundation, Inc.,
18 # 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301, USA.
19 #
20 # =======================================================================
21 #
22 # Makefile template
23
24 SYSCONFDIR = @SYSCONFDIR@
25 BINDIR = @BINDIR@
26 SBINDIR = @SBINDIR@
27 LOCALSTATEDIR = @LOCALSTATEDIR@
28 CHRONYVARDIR = @CHRONYVARDIR@
29 DESTDIR =
30
31 CC = @CC@
32 CFLAGS = @CFLAGS@
33 CPPFLAGS = @CPPFLAGS@
34 LDFLAGS = @LDFLAGS@
35
36 EXTRA_OBJS = @EXTRA_OBJS@
37
38 OBJS = array.o cmdparse.o conf.o local.o logging.o main.o memory.o \
39 reference.o regress.o rtc.o samplefilt.o sched.o socket.o sources.o sourcestats.o \
40 stubs.o smooth.o sys.o sys_null.o tempcomp.o util.o $(EXTRA_OBJS)
41
42 EXTRA_CLI_OBJS = @EXTRA_CLI_OBJS@
43
44 CLI_OBJS = array.o client.o cmdparse.o getdate.o memory.o nameserv.o \
45 pktlength.o socket.o util.o $(EXTRA_CLI_OBJS)
46
47 ALL_OBJS = $(OBJS) $(CLI_OBJS)
48
49 LIBS = @LIBS@
50 EXTRA_LIBS = @EXTRA_LIBS@
51 EXTRA_CLI_LIBS = @EXTRA_CLI_LIBS@
52
53 # Until we have a main procedure we can link, just build object files
54 # to test compilation
55
56 all : chronyd chronyc
57
58 chronyd : $(OBJS)
59 $(CC) $(CFLAGS) -o chronyd $(OBJS) $(LDFLAGS) $(LIBS) $(EXTRA_LIBS)
60
61 chronyc : $(CLI_OBJS)
62 $(CC) $(CFLAGS) -o chronyc $(CLI_OBJS) $(LDFLAGS) $(LIBS) $(EXTRA_CLI_LIBS)
63
64 distclean : clean
65 $(MAKE) -C doc distclean
66 $(MAKE) -C test/unit distclean
67 -rm -f .DS_Store
68 -rm -f Makefile config.h config.log
69
70 clean :
71 $(MAKE) -C test/unit clean
72 -rm -f *.o *.s chronyc chronyd core.* *~
73 -rm -f *.gcda *.gcno
74 -rm -rf .deps
75 -rm -rf *.dSYM
76
77 getdate.c : getdate.y
78 bison -o getdate.c getdate.y
79
80 # This can be used to force regeneration of getdate.c
81 getdate :
82 bison -o getdate.c getdate.y
83
84 # For install, don't use the install command, because its switches
85 # seem to vary between systems.
86
87 install: chronyd chronyc
88 [ -d $(DESTDIR)$(SYSCONFDIR) ] || mkdir -p $(DESTDIR)$(SYSCONFDIR)
89 [ -d $(DESTDIR)$(SBINDIR) ] || mkdir -p $(DESTDIR)$(SBINDIR)
90 [ -d $(DESTDIR)$(BINDIR) ] || mkdir -p $(DESTDIR)$(BINDIR)
91 [ -d $(DESTDIR)$(CHRONYVARDIR) ] || mkdir -p $(DESTDIR)$(CHRONYVARDIR)
92 if [ -f $(DESTDIR)$(SBINDIR)/chronyd ]; then rm -f $(DESTDIR)$(SBINDIR)/chronyd ; fi
93 if [ -f $(DESTDIR)$(BINDIR)/chronyc ]; then rm -f $(DESTDIR)$(BINDIR)/chronyc ; fi
94 cp chronyd $(DESTDIR)$(SBINDIR)/chronyd
95 chmod 755 $(DESTDIR)$(SBINDIR)/chronyd
96 cp chronyc $(DESTDIR)$(BINDIR)/chronyc
97 chmod 755 $(DESTDIR)$(BINDIR)/chronyc
98 $(MAKE) -C doc install
99
100 docs :
101 $(MAKE) -C doc docs
102
103 install-docs :
104 $(MAKE) -C doc install-docs
105
106 %.o : %.c
107 $(CC) $(CFLAGS) $(CPPFLAGS) -c $<
108
109 %.s : %.c
110 $(CC) $(CFLAGS) $(CPPFLAGS) -S $<
111
112 quickcheck : chronyd chronyc
113 $(MAKE) -C test/unit check
114 cd test/simulation && ./run
115 cd test/system && ./run
116
117 check : chronyd chronyc
118 $(MAKE) -C test/unit check
119 cd test/simulation && ./run -i 20 -m 2
120 cd test/system && ./run
121
122 print-chronyd-objects :
123 @echo $(OBJS)
124
125 Makefile : Makefile.in configure
126 @echo
127 @echo Makefile needs to be regenerated, run ./configure
128 @echo
129 @exit 1
130
131 .deps:
132 @mkdir .deps
133
134 .deps/%.d: %.c | .deps
135 @$(CC) -MM $(CPPFLAGS) -MT '$(<:%.c=%.o) $@' $< -o $@
136
137 -include $(ALL_OBJS:%.o=.deps/%.d)