]> granicus.if.org Git - procps-ng/blob - Makefile.am
ps: Correct BSD c option
[procps-ng] / Makefile.am
1
2 CYGWINFLAGS =
3 if CYGWIN
4 CYGWINFLAGS += -lintl
5 usrbin_exec_PROGRAMS =
6 endif
7
8 AM_CPPFLAGS = \
9         -include $(top_builddir)/config.h \
10         -I$(top_srcdir)/local \
11         -I$(top_srcdir)/library/include \
12         -Wno-unused-result \
13         -DLOCALEDIR=\"$(localedir)\" \
14         @HARDEN_CFLAGS@
15
16 AM_LDFLAGS = @HARDEN_LDFLAGS@
17
18 PACKAGE_VERSION = @PACKAGE_VERSION@
19
20 ACLOCAL_AMFLAGS = -I m4
21 SUBDIRS = \
22         local \
23         po-man \
24         po \
25         testsuite
26
27 AM_CFLAGS = -Ilibrary/include
28 LDADD = ./library/libproc2.la $(CYGWINFLAGS)
29
30 if CYGWIN
31 AM_LDFLAGS += ./library/libproc2.la $(CYGWINFLAGS)
32 endif
33
34 transform =
35
36 if !CYGWIN
37 transform += s/pscommand/ps/; $(program_transform_name)
38 sbin_PROGRAMS = \
39         src/sysctl
40 else
41 transform += s/pscommand/procps/; $(program_transform_name)
42 endif
43
44 if !CYGWIN
45 bin_PROGRAMS = \
46         src/ps/pscommand \
47         src/free \
48         src/pgrep \
49         src/pkill \
50         src/pmap \
51         src/pwdx \
52         src/tload \
53         src/uptime \
54         src/vmstat
55 if BUILD_PIDWAIT
56 bin_PROGRAMS += src/pidwait
57 endif
58 else
59 usrbin_exec_PROGRAMS += \
60         src/ps/pscommand \
61         src/free \
62         src/pgrep \
63         src/pkill \
64         src/pmap \
65         src/uptime \
66         src/vmstat
67 endif
68
69 lib_LTLIBRARIES = \
70         library/libproc2.la
71
72 dist_man_MANS = \
73         man/free.1 \
74         man/pgrep.1 \
75         man/pkill.1 \
76         man/pmap.1 \
77         man/uptime.1 \
78         man/vmstat.8 \
79         man/procps.3 \
80         man/procps_pids.3 \
81         man/procps_misc.3
82
83 if !CYGWIN
84 dist_man_MANS += \
85         man/pwdx.1 \
86         man/tload.1 \
87         man/sysctl.8 \
88         man/sysctl.conf.5 \
89         man/ps.1
90
91 if BUILD_PIDWAIT
92 dist_man_MANS += man/pidwait.1
93 endif
94 endif
95
96 EXTRA_DIST = \
97         .version \
98         autogen.sh \
99         COPYING.LIB \
100         local/git-version-gen \
101         doc/CodingStyle.md \
102         doc/TODO \
103         src/ps/HACKING \
104         src/ps/regression \
105         $(DIST_MAN_POTS)
106
107 if !CYGWIN
108 EXTRA_DIST += \
109         sysctl.conf
110 endif
111
112 procpsngdir = $(docdir)
113 dist_procpsng_DATA = \
114         doc/bugs.md \
115         doc/FAQ \
116         doc/libproc.supp
117
118 if BUILD_PIDOF
119 if !CYGWIN
120 bin_PROGRAMS += src/pidof
121 else
122 usrbin_exec_PROGRAMS += src/pidof
123 endif
124 dist_man_MANS += man/pidof.1
125 src_pidof_SOURCES = src/pidof.c local/fileutils.c
126 else
127   EXTRA_DIST += man/pidof.1
128 endif
129
130 if BUILD_KILL
131 if CYGWIN
132 transform += ;s/^kill/prockill/; $(program_transform_name)
133 usrbin_exec_PROGRAMS += src/kill
134 else
135 bin_PROGRAMS += src/kill
136 endif
137 dist_man_MANS += man/kill.1
138 src_kill_SOURCES = src/kill.c local/strutils.c local/fileutils.c local/signals.c
139 src_kill_LDADD =
140 else
141   EXTRA_DIST += man/kill.1
142 endif
143
144 if BUILD_W
145 if CYGWIN
146 usrbin_exec_PROGRAMS += src/w
147 else
148 bin_PROGRAMS += src/w
149 endif
150
151 dist_man_MANS += man/w.1
152 src_w_SOURCES = src/w.c local/fileutils.c
153 else
154   EXTRA_DIST += man/w.1
155 endif
156
157 if WITH_NCURSES
158 if !CYGWIN
159 bin_PROGRAMS += \
160         src/watch \
161         src/top/top
162 else
163 usrbin_exec_PROGRAMS += \
164         src/watch \
165         src/top/top
166 endif
167
168 dist_man_MANS += \
169         man/watch.1 \
170         man/top.1
171 if !CYGWIN
172 bin_PROGRAMS += \
173         src/slabtop
174 dist_man_MANS += \
175         man/slabtop.1
176 src_slabtop_SOURCES = src/slabtop.c local/strutils.c local/fileutils.c
177 src_slabtop_LDADD = $(LDADD) @NCURSES_LIBS@
178 endif
179 src_watch_SOURCES = src/watch.c local/strutils.c local/fileutils.c
180 src_watch_LDADD = @NCURSES_LIBS@ $(CYGWINFLAGS)
181 src_top_top_SOURCES = \
182         src/top/top.h \
183         src/top/top.c \
184         src/top/top_nls.h \
185         src/top/top_nls.c \
186         local/fileutils.c \
187         local/signals.c
188 if CYGWIN
189 src_top_top_SOURCES += local/strverscmp.c
190 endif
191
192 src_top_top_LDADD = $(LDADD) @NCURSES_LIBS@ $(DL_LIB)
193 endif
194
195 if BUILD_SKILL
196 if !CYGWIN
197 bin_PROGRAMS += \
198         src/skill \
199         src/snice
200 else
201 usrbin_exec_PROGRAMS += \
202         src/skill \
203         src/snice
204 endif
205 src_skill_SOURCES = src/skill.c local/strutils.c local/fileutils.c local/signals.c
206 src_snice_SOURCES = src/skill.c local/strutils.c local/fileutils.c local/signals.c
207 dist_man_MANS += \
208         man/skill.1 \
209         man/snice.1
210 else
211   EXTRA_DIST += \
212         man/skill.1 \
213         man/snice.1
214 endif
215
216 src_free_SOURCES = src/free.c local/strutils.c local/fileutils.c
217 src_pgrep_SOURCES = src/pgrep.c local/fileutils.c local/signals.c
218 src_pkill_SOURCES = src/pgrep.c local/fileutils.c local/signals.c
219 src_pmap_SOURCES = src/pmap.c local/fileutils.c
220 if BUILD_PIDWAIT
221 src_pidwait_SOURCES = src/pgrep.c local/fileutils.c local/signals.c
222 endif
223 if !CYGWIN
224 src_pwdx_SOURCES = src/pwdx.c local/fileutils.c
225 src_pwdx_LDADD= $(CYGWINFLAGS)
226 src_sysctl_SOURCES = \
227         src/sysctl.c \
228         local/fileutils.c \
229         local/procio.c
230 src_sysctl_LDADD=
231 endif
232 src_tload_SOURCES = src/tload.c local/strutils.c local/fileutils.c
233 src_uptime_SOURCES = src/uptime.c local/fileutils.c
234 src_vmstat_SOURCES = src/vmstat.c local/strutils.c local/fileutils.c
235
236
237 # See http://www.gnu.org/software/libtool/manual/html_node/Updating-version-info.html
238 LIBproc2_CURRENT=0
239 LIBproc2_REVISION=1
240 LIBproc2_AGE=0
241
242 library_libproc2_la_LIBADD = $(LIB_KPARTS)
243
244 if WITH_SYSTEMD
245 library_libproc2_la_LIBADD += @SYSTEMD_LIBS@
246 endif
247
248 if WITH_ELOGIND
249 library_libproc2_la_LIBADD += @ELOGIND_LIBS@
250 endif
251
252 library_libproc2_la_LDFLAGS = \
253         -version-info $(LIBproc2_CURRENT):$(LIBproc2_REVISION):$(LIBproc2_AGE) \
254         -no-undefined \
255         -Wl,--version-script=$(top_srcdir)/library/libproc2.sym
256
257 library_libproc2_la_SOURCES = \
258         library/devname.c \
259         library/include/devname.h \
260         library/diskstats.c \
261         library/include/diskstats.h \
262         library/escape.c \
263         library/include/escape.h \
264         library/include/procps-private.h \
265         library/meminfo.c \
266         library/include/meminfo.h \
267         library/include/misc.h \
268         library/namespace.c \
269         library/numa.c \
270         library/include/numa.h \
271         library/pids.c \
272         library/include/pids.h \
273         library/pwcache.c \
274         library/include/pwcache.h \
275         library/readproc.c \
276         library/include/readproc.h \
277         library/slabinfo.c \
278         library/include/slabinfo.h \
279         library/stat.c \
280         library/include/stat.h \
281         library/sysinfo.c \
282         library/version.c \
283         library/vmstat.c \
284         library/include/vmstat.h \
285         library/wchan.c \
286         library/include/wchan.h \
287         library/uptime.c \
288         library/include/xtra-procps-debug.h
289
290 library_libproc2_la_includedir = $(includedir)/libproc2/
291 library_libproc2_la_include_HEADERS = \
292         library/include/diskstats.h \
293         library/include/meminfo.h \
294         library/include/misc.h \
295         library/include/pids.h \
296         library/include/slabinfo.h \
297         library/include/stat.h \
298         library/include/vmstat.h \
299         library/include/xtra-procps-debug.h
300
301 pkgconfigdir = $(libdir)/pkgconfig
302 pkgconfig_DATA = \
303         library/libproc2.pc
304
305 EXTRA_DIST += library/libproc2.sym
306
307 # ps/pscommand
308
309 src_ps_pscommand_SOURCES =  \
310         src/ps/common.h \
311         src/ps/display.c \
312         src/ps/global.c \
313         src/ps/help.c \
314         src/ps/output.c \
315         src/ps/parser.c \
316         src/ps/select.c \
317         src/ps/sortformat.c \
318         src/ps/stacktrace.c \
319         local/fileutils.c \
320         local/signals.c
321
322
323 # Test programs required for dejagnu or standalone testing
324 check_PROGRAMS = \
325         src/tests/test_strutils \
326         src/tests/test_fileutils \
327         src/tests/test_process \
328         src/tests/test_strtod_nol \
329         src/tests/test_shm
330
331 src_tests_test_strutils_SOURCES = src/tests/test_strutils.c local/strutils.c
332 src_tests_test_strutils_LDADD = $(CYGWINFLAGS)
333 src_tests_test_fileutils_SOURCES = src/tests/test_fileutils.c local/fileutils.c
334 src_tests_test_fileutils_LDADD = $(CYGWINFLAGS)
335 src_tests_test_process_SOURCES = src/tests/test_process.c
336 src_tests_test_process_LDADD = $(CYGWINFLAGS)
337 src_tests_test_strtod_nol_SOURCES = src/tests/test_strtod_nol.c local/strutils.c
338 src_tests_test_strtod_nol_LDADD = $(CYGWINFLAGS)
339 src_tests_test_shm_SOURCES = src/tests/test_shm.c local/strutils.c
340 src_tests_test_shm_LDADD = $(CYGWINFLAGS)
341
342 check_PROGRAMS += \
343         library/tests/test_Itemtables \
344         library/tests/test_pids \
345         library/tests/test_uptime \
346         library/tests/test_sysinfo \
347         library/tests/test_version \
348         library/tests/test_namespace
349
350 library_tests_test_Itemtables_SOURCES = library/tests/test_Itemtables.c
351 library_tests_test_Itemtables_LDADD = library/libproc2.la
352 library_tests_test_pids_SOURCES = library/tests/test_pids.c
353 library_tests_test_pids_LDADD = library/libproc2.la
354 library_tests_test_uptime_SOURCES = library/tests/test_uptime.c
355 library_tests_test_uptime_LDADD = library/libproc2.la
356 library_tests_test_sysinfo_SOURCES = library/tests/test_sysinfo.c
357 library_tests_test_sysinfo_LDADD = library/libproc2.la
358 library_tests_test_version_SOURCES = library/tests/test_version.c
359 library_tests_test_version_LDADD = library/libproc2.la
360 library_tests_test_namespace_SOURCES = library/tests/test_namespace.c
361 library_tests_test_namespace_LDADD = library/libproc2.la
362
363 if CYGWIN
364         src_skill_LDADD = $(CYGWINFLAGS)
365         src_kill_LDADD = $(CYGWINFLAGS)
366         src_free_LDADD = $(CYGWINFLAGS)
367         src_pgrep_LDADD = $(CYGWINFLAGS)
368         src_pkill_LDADD = $(CYGWINFLAGS)
369         src_pidof_LDADD = $(CYGWINFLAGS)
370         src_pmap_LDADD = $(CYGWINFLAGS)
371         src_snice_LDADD = $(CYGWINFLAGS)
372         src_tload_LDADD = $(CYGWINFLAGS)
373         src_uptime_LDADD = $(CYGWINFLAGS)
374         src_w_LDADD = $(CYGWINFLAGS)
375         src_vmstat_LDADD = $(CYGWINFLAGS)
376 endif
377
378 if EXAMPLE_FILES
379 if !CYGWIN
380 sysconf_DATA = sysctl.conf
381 endif
382 endif
383
384 BUILT_SOURCES = $(top_srcdir)/.version
385
386 check-lib: clean
387         $(MAKE) CFLAGS=-DITEMTABLE_DEBUG library/tests/test_Itemtables
388         $(top_builddir)/library/tests/test_Itemtables
389         $(MAKE) clean &>/dev/null
390
391 # Test programs not used by dejagnu but run directly
392 TESTS = \
393         library/tests/test_pids \
394         library/tests/test_uptime \
395         library/tests/test_sysinfo \
396         library/tests/test_version \
397         library/tests/test_namespace \
398         src/tests/test_fileutils \
399         src/tests/test_strtod_nol
400
401 # Automake should do this, but it doesn't
402 check: $(check_PROGRAMS) $(PROGRAMS)
403
404 $(top_srcdir)/.version:
405         touch $(top_srcdir)/.version
406         echo $(VERSION) > $@-t && mv $@-t $@
407 dist-hook:
408         echo $(VERSION) > $(distdir)/.tarball-version
409
410 get-trans:
411         echo "Getting the latest translations from translationproject.org..."
412         rsync -Lrtvz  translationproject.org::tp/latest/procps-ng/  po
413         rsync -Lrtvz  translationproject.org::tp/latest/procps-ng-man/  po-man
414         rm -f po-man/man.stamp
415         make -C po-man man.stamp