Adapt copyright for a new version
[ltp-debian.git] / Makefile
blobe86872e3020bbf1d3e7e6a1c621ee99515e96fff
1 # See toplevel INSTALL for build info
3 ifdef CROSS_COMPILE
4 CROSS_COMPILER = $(CROSS_COMPILE)
5 endif
6 ifdef CROSS_COMPILER
7 CC=$(CROSS_COMPILER)gcc
8 AR=$(CROSS_COMPILER)ar
9 RANLIB=$(CROSS_COMPILER)ranlib
10 else
11 # RANLIB isn't a standard Make variable, which means that when it's exported
12 # to leaf callers as an empty value, builds fail.
13 # testcases/network/lib6/Makefile is a prime example.
14 RANLIB?=ranlib
15 endif
17 HAS_NUMA=$(shell sh tools/scripts/numa_test.sh)
19 export CFLAGS += -Wall $(CROSS_CFLAGS)
20 export CC AR RANLIB CPPFLAGS LDFLAGS HAS_NUMA
22 # SKIP_IDCHECK != 1, defaults to previous behavior, which is to execute
23 # IDcheck.sh at the end of `make install'.
24 SKIP_IDCHECK ?= 0
26 -include config.mk
28 VPATH += include m4
29 all: config.h config.mk libltp.a
30 @$(MAKE) -C pan $@
31 @$(MAKE) -C testcases $@
32 @$(MAKE) -C tools $@
33 @$(MAKE) -C utils $@
34 @echo
35 @echo "***********************************************"
36 @echo "** You now need to do a make install as root **"
37 @echo "***********************************************"
39 install: all
40 @$(MAKE) -C testcases install
41 @$(MAKE) -C tools install
42 @$(MAKE) -C lib install
43 @$(MAKE) -C include install
44 @$(MAKE) -C pan install
45 @$(MAKE) -C m4 install
46 @$(MAKE) -C doc/man1 install
47 @$(MAKE) -C doc/man3 install
48 @$(MAKE) -C utils install
49 ifneq ($(strip $(SKIP_IDCHECK)),1)
50 @./IDcheck.sh
51 endif
53 libltp.a: config.h
54 @$(MAKE) -C lib $@
56 uclinux: uclinux_libltp.a
57 #@$(MAKE) -C pan all
58 @$(MAKE) -C testcases uclinux
59 @$(MAKE) -C tools all
60 @echo
61 @echo "*******************************************************"
62 @echo "** You now need to do a make uclinux_install as root **"
63 @echo "*******************************************************"
65 uclinux_install: uclinux
66 @$(MAKE) -C testcases uclinux_install
67 @$(MAKE) -C tools install
68 ifneq ($(strip $(SKIP_IDCHECK)),1)
69 @./IDcheck.sh
70 endif
72 uclinux_libltp.a:
73 @$(MAKE) -C lib UCLINUX=1 libltp.a
75 menuconfig:
76 @./ltpmenu
78 clean: ac-clean
79 @$(MAKE) -C lib $@
80 @$(MAKE) -C pan $@
81 @$(MAKE) -C tools $@
82 @$(MAKE) -C testcases $@
83 @$(MAKE) -C utils $@
85 distclean: clean ac-distclean
86 @$(MAKE) -C include $@
88 maintainer-clean: distclean ac-maintainer-clean
89 @$(MAKE) -C include $@
91 package:
92 rpmbuild -ba ltp-devel.spec
96 # Autotools related
98 .PHONY: autotools
99 autotools: aclocal autoconf autoheader automake
101 .PHONY: aclocal
102 aclocal: aclocal.m4
103 aclocal.m4: $(wildcard m4/*.m4)
104 aclocal -I m4
106 .PHONY: autoconf
107 autoconf: configure
108 configure: configure.ac aclocal.m4
109 autoconf
111 .PHONY: autoheader
112 autoheader: config.h.in
113 config.h.in: configure.ac $(wildcard m4/*.m4)
114 autoheader
115 touch include/$@
116 config.h: config.h.default
117 cp include/config.h.default include/config.h
118 config.mk:
119 touch $@
121 .PHONY: automake
122 AUTOMAKE_FILES = config.guess config.sub install-sh missing
123 automake: aclocal $(AUTOMAKE_FILES)
124 $(AUTOMAKE_FILES): m4/Makefile.in
125 m4/Makefile.in: m4/Makefile.am
126 automake -c -a
128 .PHONY: ac-clean ac-distclean ac-maintainer-clean
129 ac-clean:
130 rm -rf autom4te.cache
131 rm -f config.log config.status
132 ac-distclean: ac-clean
133 ac-maintainer-clean: ac-distclean
134 rm -f aclocal.m4 configure $(AUTOMAKE_FILES) m4/Makefile.in
137 # Help
139 .PHONY: help
140 help:
141 @echo
142 @echo 'About configuration'
143 @echo '-------------------'
144 @echo 'If you want to use auto configuration, '
145 @echo 'be sure autoconf and automake are installed. Then run: '
146 @echo ' $$ make autotools '
147 @echo ' $$ ./configure '
148 @echo ' $$ make all '
149 @echo
150 @echo 'If you want to use default configuration, '
151 @echo 'autoconf is not needed. Just run: '
152 @echo ' $$ touch include/config.h.default '
153 @echo ' $$ make config.h '
154 @echo ' $$ make all '
155 @echo
156 @echo 'If make all is failed even if you use the '
157 @echo 'auto configuration, please, report it to '
158 @echo 'ltp developers with config.log, generated '
159 @echo 'by running the configure script. '
160 @echo