]> granicus.if.org Git - sysstat/blob - Makefile.in
Don't link sysstat's commands with sensors library if not needed.
[sysstat] / Makefile.in
1 # Makefile to build sysstat commands
2 # # (C) 1999-2011 Sebastien GODARD (sysstat <at> orange.fr)
3
4 # Version and package name
5 VERSION = @PACKAGE_VERSION@
6 PACKAGE = @PACKAGE_NAME@
7 # Needed by docdir
8 PACKAGE_TARNAME = $(PACKAGE)-$(VERSION)
9
10 # Compiler to use
11 CC = @CC@
12
13 # Other commands
14 CHMOD = @CHMOD@
15 CHOWN = @CHOWN@
16 LN_S = @LN_S@
17 AR = @AR@
18 # Full path to prevent from using aliases
19 CP = @PATH_CP@
20
21 CHKCONFIG = @PATH_CHKCONFIG@
22 INSTALL = @INSTALL@
23 INSTALL_DATA = @INSTALL_DATA@
24 INSTALL_BIN = @INSTALL_BIN@
25
26 HAVE_SENSORS = @HAVE_SENSORS@
27 LFSENSORS =
28 DFSENSORS =
29 ifeq ($(HAVE_SENSORS),y)
30 LFSENSORS = @LFSENSORS@
31 DFSENSORS = @DFSENSORS@
32 endif
33
34 # Directories
35 ifndef PREFIX
36 PREFIX = @prefix@
37 endif
38 ifndef DESTDIR
39 DESTDIR = $(RPM_BUILD_ROOT)
40 endif
41 # These two variables are needed by other ones (eg bindir)
42 prefix = $(PREFIX)
43 exec_prefix = @exec_prefix@
44 datarootdir = @datarootdir@
45
46 ifndef SA_LIB_DIR
47 SA_LIB_DIR = @SA_LIB_DIR@
48 endif
49 SADC_PATH = $(SA_LIB_DIR)/sadc
50 ifndef SA_DIR
51 SA_DIR = @SA_DIR@
52 endif
53 BIN_DIR = @bindir@
54
55 ifndef MAN_DIR
56 # With recent versions of autoconf, mandir defaults to ${datarootdir}/man
57 # (i.e. $prefix/share/man)
58 MAN_DIR = @mandir@
59 endif
60 MAN1_DIR = $(MAN_DIR)/man1
61 MAN5_DIR = $(MAN_DIR)/man5
62 MAN8_DIR = $(MAN_DIR)/man8
63
64 ifndef DOC_DIR
65 DOC_DIR = @docdir@
66 endif
67
68 NLS_DIR = $(PREFIX)/share/locale
69 SYSCONFIG_DIR = @SYSCONFIG_DIR@
70
71 # Compiler flags
72 CFLAGS = @CFLAGS@ -Wall -Wstrict-prototypes -pipe -O2
73 DFLAGS = @DFLAGS@
74 LFLAGS =  -s
75 DFLAGS += -DSA_DIR=\"$(SA_DIR)\" -DSADC_PATH=\"$(SADC_PATH)\"
76 DFLAGS += $(DFSENSORS)
77
78 # Commands
79 ifndef MSGFMT
80 MSGFMT = @MSGFMT@
81 endif
82 ifndef XGETTEXT
83 XGETTEXT = @XGETTEXT@
84 endif
85 ifndef MSGMERGE
86 MSGMERGE = @MSGMERGE@
87 endif
88 ifndef ZIP
89 ZIP = @ZIP@
90 endif
91
92 # Settings 
93 NLS = @NLS@
94 ifeq ($(NLS),y)
95 REQUIRE_NLS = -DUSE_NLS -DPACKAGE=\"$(PACKAGE)\" -DLOCALEDIR=\"$(NLS_DIR)\"
96 endif
97 ifdef REQUIRE_NLS
98    DFLAGS += $(REQUIRE_NLS)
99 endif
100 INSTALL_CRON = @INSTALL_CRON@
101 CRON_OWNER = @CRON_OWNER@
102
103 MAN_GROUP = @MAN_GROUP@
104 ifndef IGNORE_MAN_GROUP
105 IGNORE_MAN_GROUP = @IGNORE_MAN_GROUP@
106 endif
107 ifeq ($(IGNORE_MAN_GROUP),y)
108 MANGRPARG =
109 else
110 MANGRPARG = -g $(MAN_GROUP)
111 endif
112 ifndef CLEAN_SA_DIR
113 CLEAN_SA_DIR = @CLEAN_SA_DIR@
114 endif
115 ifndef COMPRESS_MANPG
116 COMPRESS_MANPG = @COMPRESS_MANPG@
117 endif
118 ifndef INSTALL_ISAG
119 INSTALL_ISAG = @INSTALL_ISAG@
120 endif
121 ifndef INSTALL_DOC
122 INSTALL_DOC = @INSTALL_DOC@
123 endif
124
125 # Run-command directories
126 ifndef RC_DIR
127 RC_DIR = @RC_DIR@
128 endif
129 RC0_DIR = $(RC_DIR)/rc0.d
130 RC1_DIR = $(RC_DIR)/rc1.d
131 RC2_DIR = $(RC_DIR)/rc2.d
132 RC3_DIR = $(RC_DIR)/rc3.d
133 RC4_DIR = $(RC_DIR)/rc4.d
134 RC5_DIR = $(RC_DIR)/rc5.d
135 RC6_DIR = $(RC_DIR)/rc6.d
136 ifndef INIT_DIR
137 INIT_DIR = @INIT_DIR@
138 endif
139 ifndef INITD_DIR
140 INITD_DIR = @INITD_DIR@
141 endif
142
143 NLSPO= $(wildcard nls/*.po)
144 NLSGMO= $(NLSPO:.po=.gmo)
145 NLSPOT= $(NLSPO:.po=.pot)
146
147 %.gmo: %.po
148         $(MSGFMT) -o $@ $<
149
150 %.pot: %.po
151         $(MSGMERGE) -U $< nls/sysstat.pot
152
153 %.o: %.c
154         $(CC) -o $@ -c $(CFLAGS) $(DFLAGS) $<
155
156 % : %.o
157         $(CC) -o $@ $(CFLAGS) $^ $(LFLAGS)
158
159 all: sadc sar sadf iostat mpstat pidstat nfsiostat cifsiostat locales
160
161 common.o: common.c version.h common.h ioconf.h sysconfig.h
162
163 sa_common.o: sa_common.c sa.h common.h ioconf.h sysconfig.h rd_stats.h
164
165 ioconf.o: ioconf.c ioconf.h common.h sysconfig.h
166
167 act_sadc.o: activity.c sa.h rd_stats.h rd_sensors.h
168         $(CC) -o $@ -c $(CFLAGS) -DSOURCE_SADC $(DFLAGS) $<
169
170 act_sar.o: activity.c sa.h pr_stats.h
171         $(CC) -o $@ -c $(CFLAGS) -DSOURCE_SAR $(DFLAGS) $<
172
173 act_sadf.o: activity.c sa.h rndr_stats.h xml_stats.h
174         $(CC) -o $@ -c $(CFLAGS) -DSOURCE_SADF $(DFLAGS) $<
175
176 rd_stats.o: rd_stats.c common.h rd_stats.h ioconf.h sysconfig.h
177
178 rd_sensors.o: rd_sensors.c common.h rd_sensors.h sysconfig.h
179
180 pr_stats.o: pr_stats.c sa.h ioconf.h sysconfig.h pr_stats.h
181
182 rndr_stats.o: rndr_stats.c sa.h ioconf.h sysconfig.h rndr_stats.h
183
184 xml_stats.o: xml_stats.c sa.h ioconf.h sysconfig.h xml_stats.h
185
186 sa_wrap.o: sa_wrap.c sa.h rd_stats.h rd_sensors.h
187
188 # Explicit rules needed to prevent possible file corruption
189 # when using parallel execution.
190 libsyscom.a: common.o ioconf.o
191         $(AR) rvs $@ $?
192
193 librdstats.a: librdstats.a(rd_stats.o)
194
195 librdsensors.a: librdsensors.a(rd_sensors.o)
196
197 sadc.o: sadc.c sa.h version.h common.h ioconf.h sysconfig.h rd_stats.h rd_sensors.h
198
199 sadc: LFLAGS += $(LFSENSORS)
200 sadc: sadc.o act_sadc.o sa_wrap.o sa_common.o librdstats.a librdsensors.a libsyscom.a
201
202 sar.o: sar.c sa.h version.h common.h ioconf.h pr_stats.h sysconfig.h
203
204 sar: sar.o act_sar.o sa_common.o pr_stats.o libsyscom.a
205
206 sadf.o: sadf.c sadf.h version.h sa.h common.h ioconf.h sysconfig.h rndr_stats.h xml_stats.h
207
208 sadf: sadf.o act_sadf.o rndr_stats.o xml_stats.o sa_common.o libsyscom.a
209
210 iostat.o: iostat.c iostat.h version.h common.h ioconf.h sysconfig.h rd_stats.h
211
212 iostat: iostat.o librdstats.a libsyscom.a
213
214 pidstat.o: pidstat.c pidstat.h version.h common.h rd_stats.h
215
216 pidstat: pidstat.o librdstats.a libsyscom.a
217
218 mpstat.o: mpstat.c mpstat.h version.h common.h rd_stats.h
219
220 mpstat: mpstat.o librdstats.a libsyscom.a
221
222 nfsiostat.o: nfsiostat.c nfsiostat.h version.h common.h
223
224 nfsiostat: nfsiostat.o librdstats.a libsyscom.a
225
226 cifsiostat.o: cifsiostat.c cifsiostat.h version.h common.h
227
228 cifsiostat: cifsiostat.o librdstats.a libsyscom.a
229
230 ifdef REQUIRE_NLS
231 locales: $(NLSGMO)
232 else
233 locales:
234 endif
235
236 nls/sysstat.pot: $(wildcard *.c)
237         $(XGETTEXT) -o $@ -k_ --msgid-bugs-address="sysstat <at> orange.fr" $^
238
239 # Phony targets
240 .PHONY: clean distclean install install_base install_all uninstall \
241         uninstall_base uninstall_all dist bdist
242
243 install_man: man/sadc.8 man/sar.1 man/sadf.1 man/sa1.8 man/sa2.8 man/sysstat.5
244 ifeq ($(INSTALL_DOC),y)
245         mkdir -p $(DESTDIR)$(MAN1_DIR)
246         mkdir -p $(DESTDIR)$(MAN5_DIR)
247         mkdir -p $(DESTDIR)$(MAN8_DIR)
248         rm -f $(DESTDIR)$(MAN8_DIR)/sa1.8*
249         $(INSTALL_DATA) $(MANGRPARG) man/sa1.8 $(DESTDIR)$(MAN8_DIR)
250         rm -f $(DESTDIR)$(MAN8_DIR)/sa2.8*
251         $(INSTALL_DATA) $(MANGRPARG) man/sa2.8 $(DESTDIR)$(MAN8_DIR)
252         rm -f $(DESTDIR)$(MAN8_DIR)/sadc.8*
253         $(INSTALL_DATA) $(MANGRPARG) man/sadc.8 $(DESTDIR)$(MAN8_DIR)
254         rm -f $(DESTDIR)$(MAN1_DIR)/sar.1*
255         $(INSTALL_DATA) $(MANGRPARG) man/sar.1 $(DESTDIR)$(MAN1_DIR)
256         rm -f $(DESTDIR)$(MAN1_DIR)/sadf.1*
257         $(INSTALL_DATA) $(MANGRPARG) man/sadf.1 $(DESTDIR)$(MAN1_DIR)
258         rm -f $(DESTDIR)$(MAN5_DIR)/sysstat.5*
259         $(INSTALL_DATA) $(MANGRPARG) man/sysstat.5 $(DESTDIR)$(MAN5_DIR)
260         rm -f $(DESTDIR)$(MAN1_DIR)/iostat.1*
261         $(INSTALL_DATA) $(MANGRPARG) man/iostat.1 $(DESTDIR)$(MAN1_DIR)
262         rm -f $(DESTDIR)$(MAN1_DIR)/mpstat.1*
263         $(INSTALL_DATA) $(MANGRPARG) man/mpstat.1 $(DESTDIR)$(MAN1_DIR)
264         rm -f $(DESTDIR)$(MAN1_DIR)/pidstat.1*
265         $(INSTALL_DATA) $(MANGRPARG) man/pidstat.1 $(DESTDIR)$(MAN1_DIR)
266         rm -f $(DESTDIR)$(MAN1_DIR)/nfsiostat.1*
267         $(INSTALL_DATA) $(MANGRPARG) man/nfsiostat.1 $(DESTDIR)$(MAN1_DIR)
268         rm -f $(DESTDIR)$(MAN1_DIR)/cifsiostat.1*
269         $(INSTALL_DATA) $(MANGRPARG) man/cifsiostat.1 $(DESTDIR)$(MAN1_DIR)
270 ifeq ($(INSTALL_ISAG),y)
271         $(INSTALL_DATA) $(MANGRPARG) contrib/isag/isag.1 $(DESTDIR)$(MAN1_DIR)
272 endif
273 ifeq ($(COMPRESS_MANPG),y)
274         $(ZIP) $(DESTDIR)$(MAN8_DIR)/sa1.8
275         $(ZIP) $(DESTDIR)$(MAN8_DIR)/sa2.8
276         $(ZIP) $(DESTDIR)$(MAN8_DIR)/sadc.8
277         $(ZIP) $(DESTDIR)$(MAN1_DIR)/sar.1
278         $(ZIP) $(DESTDIR)$(MAN1_DIR)/sadf.1
279         $(ZIP) $(DESTDIR)$(MAN5_DIR)/sysstat.5
280         $(ZIP) $(DESTDIR)$(MAN1_DIR)/iostat.1
281         $(ZIP) $(DESTDIR)$(MAN1_DIR)/mpstat.1
282         $(ZIP) $(DESTDIR)$(MAN1_DIR)/pidstat.1
283         $(ZIP) $(DESTDIR)$(MAN1_DIR)/nfsiostat.1
284         $(ZIP) $(DESTDIR)$(MAN1_DIR)/cifsiostat.1
285 ifeq ($(INSTALL_ISAG),y)
286         $(ZIP) $(DESTDIR)$(MAN1_DIR)/isag.1
287 endif
288 endif
289 endif
290
291 install_nls: locales
292 ifdef REQUIRE_NLS
293         mkdir -p $(DESTDIR)$(NLS_DIR)/af/LC_MESSAGES
294         mkdir -p $(DESTDIR)$(NLS_DIR)/cs/LC_MESSAGES
295         mkdir -p $(DESTDIR)$(NLS_DIR)/da/LC_MESSAGES
296         mkdir -p $(DESTDIR)$(NLS_DIR)/de/LC_MESSAGES
297         mkdir -p $(DESTDIR)$(NLS_DIR)/es/LC_MESSAGES
298         mkdir -p $(DESTDIR)$(NLS_DIR)/eu/LC_MESSAGES
299         mkdir -p $(DESTDIR)$(NLS_DIR)/fi/LC_MESSAGES
300         mkdir -p $(DESTDIR)$(NLS_DIR)/fr/LC_MESSAGES
301         mkdir -p $(DESTDIR)$(NLS_DIR)/id/LC_MESSAGES
302         mkdir -p $(DESTDIR)$(NLS_DIR)/it/LC_MESSAGES
303         mkdir -p $(DESTDIR)$(NLS_DIR)/ja/LC_MESSAGES
304         mkdir -p $(DESTDIR)$(NLS_DIR)/ky/LC_MESSAGES
305         mkdir -p $(DESTDIR)$(NLS_DIR)/lv/LC_MESSAGES
306         mkdir -p $(DESTDIR)$(NLS_DIR)/mt/LC_MESSAGES
307         mkdir -p $(DESTDIR)$(NLS_DIR)/nb/LC_MESSAGES
308         mkdir -p $(DESTDIR)$(NLS_DIR)/nl/LC_MESSAGES
309         mkdir -p $(DESTDIR)$(NLS_DIR)/nn/LC_MESSAGES
310         mkdir -p $(DESTDIR)$(NLS_DIR)/pl/LC_MESSAGES
311         mkdir -p $(DESTDIR)$(NLS_DIR)/pt/LC_MESSAGES
312         mkdir -p $(DESTDIR)$(NLS_DIR)/pt_BR/LC_MESSAGES
313         mkdir -p $(DESTDIR)$(NLS_DIR)/ro/LC_MESSAGES
314         mkdir -p $(DESTDIR)$(NLS_DIR)/ru/LC_MESSAGES
315         mkdir -p $(DESTDIR)$(NLS_DIR)/sk/LC_MESSAGES
316         mkdir -p $(DESTDIR)$(NLS_DIR)/sv/LC_MESSAGES
317         mkdir -p $(DESTDIR)$(NLS_DIR)/uk/LC_MESSAGES
318         mkdir -p $(DESTDIR)$(NLS_DIR)/vi/LC_MESSAGES
319         mkdir -p $(DESTDIR)$(NLS_DIR)/zh_CN/LC_MESSAGES
320         mkdir -p $(DESTDIR)$(NLS_DIR)/zh_TW/LC_MESSAGES
321         $(INSTALL_DATA) nls/af.gmo $(DESTDIR)$(NLS_DIR)/af/LC_MESSAGES/$(PACKAGE).mo
322         $(INSTALL_DATA) nls/cs.gmo $(DESTDIR)$(NLS_DIR)/cs/LC_MESSAGES/$(PACKAGE).mo
323         $(INSTALL_DATA) nls/da.gmo $(DESTDIR)$(NLS_DIR)/da/LC_MESSAGES/$(PACKAGE).mo
324         $(INSTALL_DATA) nls/de.gmo $(DESTDIR)$(NLS_DIR)/de/LC_MESSAGES/$(PACKAGE).mo
325         $(INSTALL_DATA) nls/es.gmo $(DESTDIR)$(NLS_DIR)/es/LC_MESSAGES/$(PACKAGE).mo
326         $(INSTALL_DATA) nls/eu.gmo $(DESTDIR)$(NLS_DIR)/eu/LC_MESSAGES/$(PACKAGE).mo
327         $(INSTALL_DATA) nls/fi.gmo $(DESTDIR)$(NLS_DIR)/fi/LC_MESSAGES/$(PACKAGE).mo
328         $(INSTALL_DATA) nls/fr.gmo $(DESTDIR)$(NLS_DIR)/fr/LC_MESSAGES/$(PACKAGE).mo
329         $(INSTALL_DATA) nls/id.gmo $(DESTDIR)$(NLS_DIR)/id/LC_MESSAGES/$(PACKAGE).mo
330         $(INSTALL_DATA) nls/it.gmo $(DESTDIR)$(NLS_DIR)/it/LC_MESSAGES/$(PACKAGE).mo
331         $(INSTALL_DATA) nls/ja.gmo $(DESTDIR)$(NLS_DIR)/ja/LC_MESSAGES/$(PACKAGE).mo
332         $(INSTALL_DATA) nls/ky.gmo $(DESTDIR)$(NLS_DIR)/ky/LC_MESSAGES/$(PACKAGE).mo
333         $(INSTALL_DATA) nls/lv.gmo $(DESTDIR)$(NLS_DIR)/lv/LC_MESSAGES/$(PACKAGE).mo
334         $(INSTALL_DATA) nls/mt.gmo $(DESTDIR)$(NLS_DIR)/mt/LC_MESSAGES/$(PACKAGE).mo
335         $(INSTALL_DATA) nls/nb.gmo $(DESTDIR)$(NLS_DIR)/nb/LC_MESSAGES/$(PACKAGE).mo
336         $(INSTALL_DATA) nls/nl.gmo $(DESTDIR)$(NLS_DIR)/nl/LC_MESSAGES/$(PACKAGE).mo
337         $(INSTALL_DATA) nls/nn.gmo $(DESTDIR)$(NLS_DIR)/nn/LC_MESSAGES/$(PACKAGE).mo
338         $(INSTALL_DATA) nls/pl.gmo $(DESTDIR)$(NLS_DIR)/pl/LC_MESSAGES/$(PACKAGE).mo
339         $(INSTALL_DATA) nls/pt.gmo $(DESTDIR)$(NLS_DIR)/pt/LC_MESSAGES/$(PACKAGE).mo
340         $(INSTALL_DATA) nls/pt_BR.gmo $(DESTDIR)$(NLS_DIR)/pt_BR/LC_MESSAGES/$(PACKAGE).mo
341         $(INSTALL_DATA) nls/ro.gmo $(DESTDIR)$(NLS_DIR)/ro/LC_MESSAGES/$(PACKAGE).mo
342         $(INSTALL_DATA) nls/ru.gmo $(DESTDIR)$(NLS_DIR)/ru/LC_MESSAGES/$(PACKAGE).mo
343         $(INSTALL_DATA) nls/sk.gmo $(DESTDIR)$(NLS_DIR)/sk/LC_MESSAGES/$(PACKAGE).mo
344         $(INSTALL_DATA) nls/sv.gmo $(DESTDIR)$(NLS_DIR)/sv/LC_MESSAGES/$(PACKAGE).mo
345         $(INSTALL_DATA) nls/uk.gmo $(DESTDIR)$(NLS_DIR)/uk/LC_MESSAGES/$(PACKAGE).mo
346         $(INSTALL_DATA) nls/vi.gmo $(DESTDIR)$(NLS_DIR)/vi/LC_MESSAGES/$(PACKAGE).mo
347         $(INSTALL_DATA) nls/zh_CN.gmo $(DESTDIR)$(NLS_DIR)/zh_CN/LC_MESSAGES/$(PACKAGE).mo
348         $(INSTALL_DATA) nls/zh_TW.gmo $(DESTDIR)$(NLS_DIR)/zh_TW/LC_MESSAGES/$(PACKAGE).mo
349 endif
350
351 install_base: all sa1 sa2 sysstat.sysconfig install_man install_nls \
352         contrib/isag/isag
353         mkdir -p $(DESTDIR)$(SA_LIB_DIR)
354         mkdir -p $(DESTDIR)$(SA_DIR)
355 ifeq ($(CLEAN_SA_DIR),y)
356         find $(DESTDIR)$(SA_DIR) \( -name 'sar??' -o -name 'sa??' -o -name 'sar??.gz' -o -name 'sa??.gz' \) \
357                 -exec rm -f {} \;
358         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(SA_DIR)/[0-9]?????
359 endif
360         mkdir -p $(DESTDIR)$(BIN_DIR)
361         mkdir -p $(DESTDIR)$(DOC_DIR)
362         mkdir -p $(DESTDIR)$(SYSCONFIG_DIR)
363         $(INSTALL_BIN) sa1 $(DESTDIR)$(SA_LIB_DIR)
364         $(INSTALL_BIN) sa2 $(DESTDIR)$(SA_LIB_DIR)
365         $(INSTALL_BIN) sadc $(DESTDIR)$(SA_LIB_DIR)
366         $(INSTALL_BIN) sar $(DESTDIR)$(BIN_DIR)
367         $(INSTALL_BIN) sadf $(DESTDIR)$(BIN_DIR)
368         $(INSTALL_BIN) iostat $(DESTDIR)$(BIN_DIR)
369         $(INSTALL_BIN) mpstat $(DESTDIR)$(BIN_DIR)
370         $(INSTALL_BIN) pidstat $(DESTDIR)$(BIN_DIR)
371         $(INSTALL_BIN) nfsiostat $(DESTDIR)$(BIN_DIR)
372         $(INSTALL_BIN) cifsiostat $(DESTDIR)$(BIN_DIR)
373 ifeq ($(INSTALL_ISAG),y)
374         $(INSTALL_BIN) contrib/isag/isag $(DESTDIR)$(BIN_DIR)
375 endif
376         $(INSTALL_DATA) sysstat.ioconf $(DESTDIR)$(SYSCONFIG_DIR)
377         $(INSTALL_DATA) sysstat.sysconfig $(DESTDIR)$(SYSCONFIG_DIR)/sysstat
378 ifeq ($(INSTALL_DOC),y)
379         $(INSTALL_DATA) CHANGES $(DESTDIR)$(DOC_DIR)
380         $(INSTALL_DATA) COPYING $(DESTDIR)$(DOC_DIR)
381         $(INSTALL_DATA) CREDITS $(DESTDIR)$(DOC_DIR)
382         $(INSTALL_DATA) README $(DESTDIR)$(DOC_DIR)
383         $(INSTALL_DATA) FAQ $(DESTDIR)$(DOC_DIR)
384         $(INSTALL_DATA) *.lsm $(DESTDIR)$(DOC_DIR)
385 endif
386
387 install_all: install_base cron/crontab sysstat \
388         cron/sysstat.crond cron/sysstat.cron.daily cron/sysstat.cron.hourly
389         $(CHOWN) $(CRON_OWNER) $(DESTDIR)$(SA_DIR)
390         if [ -d $(DESTDIR)/etc/cron.d ]; then \
391            $(INSTALL_DATA) cron/sysstat.crond $(DESTDIR)/etc/cron.d/sysstat; \
392         elif [ -d $(DESTDIR)/etc/cron.hourly -a -d $(DESTDIR)/etc/cron.daily ]; then \
393            $(INSTALL_BIN) cron/sysstat.cron.hourly $(DESTDIR)/etc/cron.hourly/sysstat; \
394            $(INSTALL_BIN) cron/sysstat.cron.daily $(DESTDIR)/etc/cron.daily/sysstat; \
395         else \
396            su $(CRON_OWNER) -c "crontab -l > /tmp/crontab-$(CRON_OWNER).save"; \
397            $(CP) -a /tmp/crontab-$(CRON_OWNER).save ./crontab-$(CRON_OWNER).`date '+%Y%m%d.%H%M%S'`.save; \
398            echo "USER'S PREVIOUS CRONTAB SAVED IN CURRENT DIRECTORY (USING .save SUFFIX)."; \
399            su $(CRON_OWNER) -c "crontab cron/crontab"; \
400         fi
401         if [ -d $(DESTDIR)$(INIT_DIR) ]; then \
402            $(INSTALL_BIN) sysstat $(DESTDIR)$(INIT_DIR)/sysstat; \
403            if [ -x $(CHKCONFIG) ]; then \
404               cd $(DESTDIR)$(INIT_DIR) && $(CHKCONFIG) --add sysstat; \
405            else \
406               cd $(DESTDIR)$(RC2_DIR) && $(LN_S) -f ../$(INITD_DIR)/sysstat S01sysstat; \
407               cd $(DESTDIR)$(RC3_DIR) && $(LN_S) -f ../$(INITD_DIR)/sysstat S01sysstat; \
408               cd $(DESTDIR)$(RC5_DIR) && $(LN_S) -f ../$(INITD_DIR)/sysstat S01sysstat; \
409            fi \
410         elif [ -d $(DESTDIR)$(RC_DIR) ]; then \
411            $(INSTALL_BIN) sysstat $(DESTDIR)$(RC_DIR)/rc.sysstat; \
412            if [ -x $(CHKCONFIG) ]; then \
413               cd $(DESTDIR)$(RC_DIR) && $(CHKCONFIG) --add sysstat; \
414            else \
415               [ -d $(DESTDIR)$(RC2_DIR) ] || mkdir -p $(DESTDIR)$(RC2_DIR); \
416               [ -d $(DESTDIR)$(RC3_DIR) ] || mkdir -p $(DESTDIR)$(RC3_DIR); \
417               [ -d $(DESTDIR)$(RC5_DIR) ] || mkdir -p $(DESTDIR)$(RC5_DIR); \
418               cd $(DESTDIR)$(RC2_DIR) && $(LN_S) -f ../rc.sysstat S01sysstat; \
419               cd $(DESTDIR)$(RC3_DIR) && $(LN_S) -f ../rc.sysstat S01sysstat; \
420               cd $(DESTDIR)$(RC5_DIR) && $(LN_S) -f ../rc.sysstat S01sysstat; \
421            fi \
422         fi
423
424 uninstall_man:
425 ifeq ($(INSTALL_DOC),y)
426         rm -f $(DESTDIR)$(MAN8_DIR)/sadc.8*
427         rm -f $(DESTDIR)$(MAN8_DIR)/sa1.8*
428         rm -f $(DESTDIR)$(MAN8_DIR)/sa2.8*
429         rm -f $(DESTDIR)$(MAN1_DIR)/sar.1*
430         rm -f $(DESTDIR)$(MAN1_DIR)/sadf.1*
431         rm -f $(DESTDIR)$(MAN5_DIR)/sysstat.5*
432         rm -f $(DESTDIR)$(MAN1_DIR)/iostat.1*
433         rm -f $(DESTDIR)$(MAN1_DIR)/mpstat.1*
434         rm -f $(DESTDIR)$(MAN1_DIR)/pidstat.1*
435         rm -f $(DESTDIR)$(MAN1_DIR)/nfsiostat.1*
436         rm -f $(DESTDIR)$(MAN1_DIR)/cifsiostat.1*
437 ifeq ($(INSTALL_ISAG),y)
438         rm -f $(DESTDIR)$(MAN1_DIR)/isag.1
439 endif
440 endif
441
442 uninstall_nls:
443 ifdef REQUIRE_NLS
444         rm -f $(DESTDIR)$(PREFIX)/share/locale/af/LC_MESSAGES/$(PACKAGE).mo
445         rm -f $(DESTDIR)$(PREFIX)/share/locale/cs/LC_MESSAGES/$(PACKAGE).mo
446         rm -f $(DESTDIR)$(PREFIX)/share/locale/da/LC_MESSAGES/$(PACKAGE).mo
447         rm -f $(DESTDIR)$(PREFIX)/share/locale/de/LC_MESSAGES/$(PACKAGE).mo
448         rm -f $(DESTDIR)$(PREFIX)/share/locale/es/LC_MESSAGES/$(PACKAGE).mo
449         rm -f $(DESTDIR)$(PREFIX)/share/locale/eu/LC_MESSAGES/$(PACKAGE).mo
450         rm -f $(DESTDIR)$(PREFIX)/share/locale/fi/LC_MESSAGES/$(PACKAGE).mo
451         rm -f $(DESTDIR)$(PREFIX)/share/locale/fr/LC_MESSAGES/$(PACKAGE).mo
452         rm -f $(DESTDIR)$(PREFIX)/share/locale/id/LC_MESSAGES/$(PACKAGE).mo
453         rm -f $(DESTDIR)$(PREFIX)/share/locale/it/LC_MESSAGES/$(PACKAGE).mo
454         rm -f $(DESTDIR)$(PREFIX)/share/locale/ja/LC_MESSAGES/$(PACKAGE).mo
455         rm -f $(DESTDIR)$(PREFIX)/share/locale/ky/LC_MESSAGES/$(PACKAGE).mo
456         rm -f $(DESTDIR)$(PREFIX)/share/locale/lv/LC_MESSAGES/$(PACKAGE).mo
457         rm -f $(DESTDIR)$(PREFIX)/share/locale/mt/LC_MESSAGES/$(PACKAGE).mo
458         rm -f $(DESTDIR)$(PREFIX)/share/locale/nb/LC_MESSAGES/$(PACKAGE).mo
459         rm -f $(DESTDIR)$(PREFIX)/share/locale/nl/LC_MESSAGES/$(PACKAGE).mo
460         rm -f $(DESTDIR)$(PREFIX)/share/locale/nn/LC_MESSAGES/$(PACKAGE).mo
461         rm -f $(DESTDIR)$(PREFIX)/share/locale/pl/LC_MESSAGES/$(PACKAGE).mo
462         rm -f $(DESTDIR)$(PREFIX)/share/locale/pt/LC_MESSAGES/$(PACKAGE).mo
463         rm -f $(DESTDIR)$(PREFIX)/share/locale/pt_BR/LC_MESSAGES/$(PACKAGE).mo
464         rm -f $(DESTDIR)$(PREFIX)/share/locale/ro/LC_MESSAGES/$(PACKAGE).mo
465         rm -f $(DESTDIR)$(PREFIX)/share/locale/ru/LC_MESSAGES/$(PACKAGE).mo
466         rm -f $(DESTDIR)$(PREFIX)/share/locale/sk/LC_MESSAGES/$(PACKAGE).mo
467         rm -f $(DESTDIR)$(PREFIX)/share/locale/sv/LC_MESSAGES/$(PACKAGE).mo
468         rm -f $(DESTDIR)$(PREFIX)/share/locale/uk/LC_MESSAGES/$(PACKAGE).mo
469         rm -f $(DESTDIR)$(PREFIX)/share/locale/vi/LC_MESSAGES/$(PACKAGE).mo
470         rm -f $(DESTDIR)$(PREFIX)/share/locale/zh_CN/LC_MESSAGES/$(PACKAGE).mo
471         rm -f $(DESTDIR)$(PREFIX)/share/locale/zh_TW/LC_MESSAGES/$(PACKAGE).mo
472         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/af/LC_MESSAGES
473         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/cs/LC_MESSAGES
474         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/da/LC_MESSAGES
475         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/de/LC_MESSAGES
476         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/es/LC_MESSAGES
477         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/eu/LC_MESSAGES
478         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/fi/LC_MESSAGES
479         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/fr/LC_MESSAGES
480         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/id/LC_MESSAGES
481         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/it/LC_MESSAGES
482         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/ja/LC_MESSAGES
483         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/ky/LC_MESSAGES
484         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/lv/LC_MESSAGES
485         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/mt/LC_MESSAGES
486         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/nb/LC_MESSAGES
487         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/nl/LC_MESSAGES
488         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/nn/LC_MESSAGES
489         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/pl/LC_MESSAGES
490         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/pt/LC_MESSAGES
491         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/pt_BR/LC_MESSAGES
492         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/ro/LC_MESSAGES
493         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/ru/LC_MESSAGES
494         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/sk/LC_MESSAGES
495         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/sv/LC_MESSAGES
496         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/uk/LC_MESSAGES
497         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/vi/LC_MESSAGES
498         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/zh_CN/LC_MESSAGES
499         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/zh_TW/LC_MESSAGES
500         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/af
501         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/cs
502         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/da
503         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/de
504         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/es
505         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/eu
506         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/fi
507         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/fr
508         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/id
509         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/it
510         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/ja
511         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/ky
512         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/lv
513         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/mt
514         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/nb
515         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/nl
516         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/nn
517         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/pl
518         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/pt
519         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/pt_BR
520         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/ro
521         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/ru
522         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/sk
523         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/sv
524         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/uk
525         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/vi
526         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/zh_CN
527         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(PREFIX)/share/locale/zh_TW
528 endif
529
530 uninstall_base: uninstall_man uninstall_nls
531         rm -f $(DESTDIR)$(SA_LIB_DIR)/sadc
532         rm -f $(DESTDIR)$(SA_LIB_DIR)/sa1
533         rm -f $(DESTDIR)$(SA_LIB_DIR)/sa2
534         rm -f $(DESTDIR)$(BIN_DIR)/sar
535         rm -f $(DESTDIR)$(BIN_DIR)/sadf
536         rm -f $(DESTDIR)$(BIN_DIR)/iostat
537         rm -f $(DESTDIR)$(BIN_DIR)/mpstat
538         rm -f $(DESTDIR)$(BIN_DIR)/pidstat
539         rm -f $(DESTDIR)$(BIN_DIR)/nfsiostat
540         rm -f $(DESTDIR)$(BIN_DIR)/cifsiostat
541 ifeq ($(INSTALL_ISAG),y)
542         rm -f $(DESTDIR)$(BIN_DIR)/isag
543 endif
544         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(SA_LIB_DIR)
545         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(SA_DIR)/[0-9]?????
546         -rmdir --ignore-fail-on-non-empty $(DESTDIR)$(SA_DIR)
547 #       No need to keep sysstat scripts, config files and links since
548 #       the binaries have been deleted.
549         rm -f $(DESTDIR)$(INIT_DIR)/sysstat
550         rm -f $(DESTDIR)$(RC_DIR)/rc.sysstat
551         rm -f $(DESTDIR)$(SYSCONFIG_DIR)/sysstat
552         rm -f $(DESTDIR)$(SYSCONFIG_DIR)/sysstat.ioconf
553         rm -f $(DESTDIR)$(RC2_DIR)/S??sysstat
554         rm -f $(DESTDIR)$(RC3_DIR)/S??sysstat
555         rm -f $(DESTDIR)$(RC5_DIR)/S??sysstat
556 #       Delete possible kill entries installed by chkconfig
557         rm -f $(DESTDIR)$(RC0_DIR)/K??sysstat
558         rm -f $(DESTDIR)$(RC1_DIR)/K??sysstat
559         rm -f $(DESTDIR)$(RC4_DIR)/K??sysstat
560         rm -f $(DESTDIR)$(RC6_DIR)/K??sysstat
561 #       Vixie cron entries also can be safely deleted here
562         rm -f $(DESTDIR)/etc/cron.d/sysstat
563 #       Id. for Slackware cron entries
564         rm -f $(DESTDIR)/etc/cron.hourly/sysstat
565         rm -f $(DESTDIR)/etc/cron.daily/sysstat
566 ifeq ($(INSTALL_DOC),y)
567         rm -f $(DESTDIR)$(DOC_DIR)/*
568         -rmdir $(DESTDIR)$(DOC_DIR)
569 endif
570         @echo "Please ignore the errors above, if any."
571
572 uninstall_all: uninstall_base
573         -su $(CRON_OWNER) -c "crontab -l > /tmp/crontab-$(CRON_OWNER).old"
574         -$(CP) -a /tmp/crontab-$(CRON_OWNER).old ./crontab-$(CRON_OWNER).`date '+%Y%m%d.%H%M%S'`.old
575         @echo "USER CRONTAB SAVED IN CURRENT DIRECTORY (WITH .old SUFFIX)."
576         -su $(CRON_OWNER) -c "crontab -r"
577
578 ifeq ($(INSTALL_CRON),y)
579 uninstall: uninstall_all
580 else
581 uninstall: uninstall_base
582 endif
583
584 ifeq ($(INSTALL_CRON),y)
585 install: install_all
586 else
587 install: install_base
588 endif
589
590 ifdef REQUIRE_NLS
591 po-files: nls/sysstat.pot $(NLSPOT)
592 else
593 po-files:
594 endif
595
596 clean:
597         rm -f sadc sar sadf iostat mpstat pidstat nfsiostat cifsiostat *.o *.a core TAGS
598         find nls -name "*.gmo" -exec rm -f {} \;
599
600 almost-distclean: clean nls/sysstat.pot
601         rm -f sa1 sa2 sysstat cron/crontab version.h sysconfig.h
602         rm -f sysstat.sysconfig cron/sysstat.crond cron/sysstat.cron.daily
603         rm -f cron/sysstat.cron.hourly cron/sysstat.crond.sample cron/sysstat.crond.sample.in
604         rm -f contrib/isag/isag
605         rm -f man/sa1.8 man/sa2.8 man/sadc.8 man/sadf.1 man/sar.1 man/iostat.1 man/sysstat.5
606         rm -f man/cifsiostat.1 man/nfsiostat.1
607         rm -f *.log config.status
608         rm -rf autom4te.cache
609         rm -f *.save *.old .*.swp data
610         find . -name "*~" -exec rm -f {} \;
611
612 distclean: almost-distclean
613         rm -f Makefile
614
615 maintainer-clean: distclean
616         rm -f configure
617
618 dist: almost-distclean
619         cd .. && (tar --exclude=Makefile --exclude=.git -cvf - sysstat-$(VERSION) | gzip -v9 > sysstat-$(VERSION).tar.gz)
620
621 bdist: almost-distclean
622         cd .. && (tar --exclude=Makefile --exclude=.git -cvf - sysstat-$(VERSION) | bzip2 > sysstat-$(VERSION).tar.bz2)
623
624 tags:
625         etags ./*.[hc]
626