1# $Id: Makefile.am.common 22488 2008-01-21 11:47:22Z lha $
2
3SUFFIXES = .et .h
4
5AM_CPPFLAGS = -I$(top_builddir)/include $(INCLUDES_roken)
6
7if do_roken_rename
8ROKEN_RENAME = -DROKEN_RENAME
9endif
10
11AM_CFLAGS = $(WFLAGS)
12
13CP	= cp
14
15## set build_HEADERZ to headers that should just be installed in build tree
16
17buildinclude = $(top_builddir)/include
18
19## these aren't detected by automake
20LIB_XauReadAuth		= @LIB_XauReadAuth@
21LIB_crypt		= @LIB_crypt@
22LIB_dbm_firstkey	= @LIB_dbm_firstkey@
23LIB_dbopen		= @LIB_dbopen@
24LIB_dlopen		= @LIB_dlopen@
25LIB_dn_expand		= @LIB_dn_expand@
26LIB_el_init		= @LIB_el_init@
27LIB_getattr		= @LIB_getattr@
28LIB_gethostbyname	= @LIB_gethostbyname@
29LIB_getpwent_r		= @LIB_getpwent_r@
30LIB_getpwnam_r		= @LIB_getpwnam_r@
31LIB_getsockopt		= @LIB_getsockopt@
32LIB_logout		= @LIB_logout@
33LIB_logwtmp		= @LIB_logwtmp@
34LIB_odm_initialize	= @LIB_odm_initialize@
35LIB_openpty		= @LIB_openpty@
36LIB_pidfile		= @LIB_pidfile@
37LIB_res_search		= @LIB_res_search@
38LIB_setpcred		= @LIB_setpcred@
39LIB_setsockopt		= @LIB_setsockopt@
40LIB_socket		= @LIB_socket@
41LIB_syslog		= @LIB_syslog@
42LIB_tgetent		= @LIB_tgetent@
43LIB_com_err		= @LIB_com_err@
44LIB_door_create		= @LIB_door_create@
45
46HESIODLIB = @HESIODLIB@
47HESIODINCLUDE = @HESIODINCLUDE@
48INCLUDE_hesiod = @INCLUDE_hesiod@
49LIB_hesiod = @LIB_hesiod@
50
51INCLUDE_krb4 = @INCLUDE_krb4@
52LIB_krb4 = @LIB_krb4@
53
54INCLUDE_openldap = @INCLUDE_openldap@
55LIB_openldap = @LIB_openldap@
56
57INCLUDE_readline = @INCLUDE_readline@
58LIB_readline = @LIB_readline@
59
60LEXLIB = @LEXLIB@
61
62install-suid-programs:
63	@foo='$(bin_SUIDS)'; \
64	for file in $$foo; do \
65	x=$(DESTDIR)$(bindir)/$$file; \
66	if chown 0:0 $$x && chmod u+s $$x; then :; else \
67	echo "*"; \
68	echo "* Failed to install $$x setuid root"; \
69	echo "*"; \
70	fi; done
71
72install-exec-hook: install-suid-programs
73
74install-build-headers:: $(include_HEADERS) $(dist_include_HEADERS) $(nodist_include_HEADERS) $(build_HEADERZ) $(nobase_include_HEADERS)
75	@foo='$(include_HEADERS) $(dist_include_HEADERS) $(nodist_include_HEADERS) $(build_HEADERZ)'; \
76	for f in $$foo; do \
77		f=`basename $$f`; \
78		if test -f "$(srcdir)/$$f"; then file="$(srcdir)/$$f"; \
79		else file="$$f"; fi; \
80		if cmp -s  $$file $(buildinclude)/$$f 2> /dev/null ; then \
81		: ; else \
82			echo " $(CP) $$file $(buildinclude)/$$f"; \
83			$(CP) $$file $(buildinclude)/$$f; \
84		fi ; \
85	done ; \
86	foo='$(nobase_include_HEADERS)'; \
87	for f in $$foo; do \
88		if test -f "$(srcdir)/$$f"; then file="$(srcdir)/$$f"; \
89		else file="$$f"; fi; \
90		$(mkdir_p) $(buildinclude)/`dirname $$f` ; \
91		if cmp -s  $$file $(buildinclude)/$$f 2> /dev/null ; then \
92		: ; else \
93			echo " $(CP) $$file $(buildinclude)/$$f"; \
94			$(CP) $$file $(buildinclude)/$$f; \
95		fi ; \
96	done
97
98all-local: install-build-headers
99
100check-local::
101	@if test '$(CHECK_LOCAL)' = "no-check-local"; then \
102	  foo=''; elif test '$(CHECK_LOCAL)'; then \
103	  foo='$(CHECK_LOCAL)'; else \
104	  foo='$(PROGRAMS)'; fi; \
105	  if test "$$foo"; then \
106	  failed=0; all=0; \
107	  for i in $$foo; do \
108	    all=`expr $$all + 1`; \
109	    if (./$$i --version && ./$$i --help) > /dev/null 2>&1; then \
110	      echo "PASS: $$i"; \
111	    else \
112	      echo "FAIL: $$i"; \
113	      failed=`expr $$failed + 1`; \
114	    fi; \
115	  done; \
116	  if test "$$failed" -eq 0; then \
117	    banner="All $$all tests passed"; \
118	  else \
119	    banner="$$failed of $$all tests failed"; \
120	  fi; \
121	  dashes=`echo "$$banner" | sed s/./=/g`; \
122	  echo "$$dashes"; \
123	  echo "$$banner"; \
124	  echo "$$dashes"; \
125	  test "$$failed" -eq 0 || exit 1; \
126	fi
127
128SUFFIXES += .x .z
129
130.x.c:
131	@cmp -s $< $@ 2> /dev/null || cp $< $@
132
133SUFFIXES += .1 .3 .5 .8 .cat1 .cat3 .cat5 .cat8
134
135NROFF_MAN = groff -mandoc -Tascii
136#NROFF_MAN = nroff -man
137.1.cat1:
138	$(NROFF_MAN) $< > $@
139.3.cat3:
140	$(NROFF_MAN) $< > $@
141.5.cat5:
142	$(NROFF_MAN) $< > $@
143.8.cat8:
144	$(NROFF_MAN) $< > $@
145
146## MAINTAINERCLEANFILES += 
147
148dist-cat1-mans:
149	@foo='$(man1_MANS)'; \
150	bar='$(man_MANS)'; \
151	for i in $$bar; do \
152	case $$i in \
153	*.1) foo="$$foo $$i";; \
154	esac; done ;\
155	for i in $$foo; do \
156		x=`echo $$i | sed 's/\.[^.]*$$/.cat1/'`; \
157		echo "$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x"; \
158		$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x; \
159	done
160
161dist-cat3-mans:
162	@foo='$(man3_MANS)'; \
163	bar='$(man_MANS)'; \
164	for i in $$bar; do \
165	case $$i in \
166	*.3) foo="$$foo $$i";; \
167	esac; done ;\
168	for i in $$foo; do \
169		x=`echo $$i | sed 's/\.[^.]*$$/.cat3/'`; \
170		echo "$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x"; \
171		$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x; \
172	done
173
174dist-cat5-mans:
175	@foo='$(man5_MANS)'; \
176	bar='$(man_MANS)'; \
177	for i in $$bar; do \
178	case $$i in \
179	*.5) foo="$$foo $$i";; \
180	esac; done ;\
181	for i in $$foo; do \
182		x=`echo $$i | sed 's/\.[^.]*$$/.cat5/'`; \
183		echo "$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x"; \
184		$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x; \
185	done
186
187dist-cat8-mans:
188	@foo='$(man8_MANS)'; \
189	bar='$(man_MANS)'; \
190	for i in $$bar; do \
191	case $$i in \
192	*.8) foo="$$foo $$i";; \
193	esac; done ;\
194	for i in $$foo; do \
195		x=`echo $$i | sed 's/\.[^.]*$$/.cat8/'`; \
196		echo "$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x"; \
197		$(NROFF_MAN) $(srcdir)/$$i > $(distdir)/$$x; \
198	done
199
200dist-hook: dist-cat1-mans dist-cat3-mans dist-cat5-mans dist-cat8-mans
201
202install-cat-mans:
203	$(SHELL) $(top_srcdir)/cf/install-catman.sh install "$(INSTALL_DATA)" "$(mkinstalldirs)" "$(srcdir)" "$(DESTDIR)$(mandir)" '$(CATMANEXT)' $(man_MANS) $(man1_MANS) $(man3_MANS) $(man5_MANS) $(man8_MANS)
204
205uninstall-cat-mans:
206	$(SHELL) $(top_srcdir)/cf/install-catman.sh uninstall "$(INSTALL_DATA)" "$(mkinstalldirs)" "$(srcdir)" "$(DESTDIR)$(mandir)" '$(CATMANEXT)' $(man_MANS) $(man1_MANS) $(man3_MANS) $(man5_MANS) $(man8_MANS)
207
208install-data-hook: install-cat-mans
209uninstall-hook: uninstall-cat-mans
210
211
212.et.h:
213	$(COMPILE_ET) $<
214.et.c:
215	$(COMPILE_ET) $<
216
217LIB_kafs = $(top_builddir)/lib/kafs/libkafs.la $(AIX_EXTRA_KAFS)
218
219if KRB5
220LIB_krb5 = $(top_builddir)/lib/krb5/libkrb5.la \
221	$(top_builddir)/lib/asn1/libasn1.la
222LIB_gssapi = $(top_builddir)/lib/gssapi/libgssapi.la
223LIB_tsasl = $(top_builddir)/lib/tsasl/libtsasl.la
224endif
225
226if DCE
227LIB_kdfs = $(top_builddir)/lib/kdfs/libkdfs.la
228endif
229
230#
231# Useful target for debugging
232#
233
234check-valgrind:
235	tobjdir=`cd $(top_builddir) && pwd` ; \
236	tsrcdir=`cd $(top_srcdir) && pwd` ; \
237	env TESTS_ENVIRONMENT="$${tobjdir}/libtool --mode execute valgrind --leak-check=full --trace-children=yes --quiet -q --num-callers=30 --suppressions=$${tsrcdir}/cf/valgrind-suppressions" make check
238
239#
240# Target to please samba build farm, builds distfiles in-tree.
241# Will break when automake changes...
242#
243
244distdir-in-tree: $(DISTFILES) $(INFO_DEPS)
245	list='$(DIST_SUBDIRS)'; for subdir in $$list; do \
246	  if test "$$subdir" != .; then \
247	  (cd $$subdir && $(MAKE) $(AM_MAKEFLAGS) distdir-in-tree) ; \
248	  fi ; \
249	done
250