Merge commit 'upstream/20090630+intermediate-20090721' into dfsg_clean
[ltp-debian.git] / Makefile
blob953eddf88007b4c7dff2e17a643ab2ce528df6bb
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 endif
12 HAS_NUMA=$(shell sh tools/scripts/numa_test.sh)
14 export CFLAGS += -Wall $(CROSS_CFLAGS)
15 export CC AR RANLIB CPPFLAGS LDFLAGS HAS_NUMA
17 # SKIP_IDCHECK != 1, defaults to previous behavior, which is to execute
18 # IDcheck.sh at the end of `make install'.
19 SKIP_IDCHECK ?= 0
21 -include config.mk
23 VPATH += include m4
24 all: config.h config.mk libltp.a
25 @$(MAKE) -C pan $@
26 @$(MAKE) -C testcases $@
27 @$(MAKE) -C tools $@
28 @$(MAKE) -C utils $@
29 @echo
30 @echo "***********************************************"
31 @echo "** You now need to do a make install as root **"
32 @echo "***********************************************"
34 install: all
35 @$(MAKE) -C testcases install
36 @$(MAKE) -C tools install
37 @$(MAKE) -C lib install
38 @$(MAKE) -C include install
39 @$(MAKE) -C pan install
40 @$(MAKE) -C m4 install
41 @$(MAKE) -C doc/man1 install
42 @$(MAKE) -C doc/man3 install
43 ifneq ($(strip $(SKIP_IDCHECK)),1)
44 @./IDcheck.sh
45 endif
47 libltp.a: config.h
48 @$(MAKE) -C lib $@
50 uclinux: uclinux_libltp.a
51 #@$(MAKE) -C pan all
52 @$(MAKE) -C testcases uclinux
53 @$(MAKE) -C tools all
54 @echo
55 @echo "*******************************************************"
56 @echo "** You now need to do a make uclinux_install as root **"
57 @echo "*******************************************************"
59 uclinux_install: uclinux
60 @$(MAKE) -C testcases uclinux_install
61 @$(MAKE) -C tools install
62 ifneq ($(strip $(SKIP_IDCHECK)),1)
63 @./IDcheck.sh
64 endif
66 uclinux_libltp.a:
67 @$(MAKE) -C lib UCLINUX=1 libltp.a
69 menuconfig:
70 @./ltpmenu
72 clean: ac-clean
73 @$(MAKE) -C lib $@
74 @$(MAKE) -C pan $@
75 @$(MAKE) -C tools $@
76 @$(MAKE) -C testcases $@
77 @$(MAKE) -C utils $@
79 distclean: clean ac-distclean
80 @$(MAKE) -C include $@
82 maintainer-clean: distclean ac-maintainer-clean
83 @$(MAKE) -C include $@
85 package:
86 rpmbuild -ba ltp-devel.spec
90 # Autotools related
92 .PHONY: autotools
93 autotools: aclocal autoconf autoheader automake
95 .PHONY: aclocal
96 aclocal: aclocal.m4
97 aclocal.m4: $(wildcard m4/*.m4)
98 aclocal -I m4
100 .PHONY: autoconf
101 autoconf: configure
102 configure: configure.ac aclocal.m4
103 autoconf
105 .PHONY: autoheader
106 autoheader: config.h.in
107 config.h.in: configure.ac $(wildcard m4/*.m4)
108 autoheader
109 touch include/$@
110 config.h: config.h.default
111 cp include/config.h.default include/config.h
112 config.mk:
113 touch $@
115 .PHONY: automake
116 AUTOMAKE_FILES = config.guess config.sub install-sh missing
117 automake: aclocal $(AUTOMAKE_FILES)
118 $(AUTOMAKE_FILES): m4/Makefile.in
119 m4/Makefile.in: m4/Makefile.am
120 automake -c -a
122 .PHONY: ac-clean ac-distclean ac-maintainer-clean
123 ac-clean:
124 rm -rf autom4te.cache
125 rm -f config.log config.status
126 ac-distclean: ac-clean
127 ac-maintainer-clean: ac-distclean
128 rm -f aclocal.m4 configure $(AUTOMAKE_FILES) m4/Makefile.in
131 # Help
133 .PHONY: help
134 help:
135 @echo
136 @echo 'About configuration'
137 @echo '-------------------'
138 @echo 'If you want to use auto configuration, '
139 @echo 'be sure autoconf and automake are installed. Then run: '
140 @echo ' $$ make autotools '
141 @echo ' $$ ./configure '
142 @echo ' $$ make all '
143 @echo
144 @echo 'If you want to use default configuration, '
145 @echo 'autoconf is not needed. Just run: '
146 @echo ' $$ touch include/config.h.default '
147 @echo ' $$ make config.h '
148 @echo ' $$ make all '
149 @echo
150 @echo 'If make all is failed even if you use the '
151 @echo 'auto configuration, please, report it to '
152 @echo 'ltp developers with config.log, generated '
153 @echo 'by running the configure script. '
154 @echo