xref: /freebsd/contrib/dialog/makefile.in (revision 5dcd9c10612684d1c823670cbb5b4715028784e7)
1# $Id: makefile.in,v 1.71 2010/04/28 00:45:38 tom Exp $
2# template makefile for DIALOG
3#
4SHELL		= /bin/sh
5
6srcdir		= @srcdir@
7VPATH		= @srcdir@
8
9prefix		= @prefix@
10exec_prefix	= @exec_prefix@
11
12top_builddir	= .
13
14x		= @EXEEXT@
15o		= .@OBJEXT@
16a		= @LIB_SUFFIX@
17
18DESTDIR		=
19
20bindir		= @bindir@
21includedir	= @includedir@
22libdir		= @libdir@
23mandir		= @mandir@
24
25BINDIR		= $(DESTDIR)$(bindir)
26INCLUDEDIR	= $(DESTDIR)$(includedir)
27LIBDIR		= $(DESTDIR)$(libdir)
28MANDIR		= $(DESTDIR)$(mandir)
29
30MAN1DIR		= $(MANDIR)/man1
31MAN3DIR		= $(MANDIR)/man3
32
33# see po/makefile
34localedir       = $(prefix)/@DATADIRNAME@/locale
35
36CFLAGS		= @CFLAGS@
37CPPFLAGS	= @CPPFLAGS@ @DEFS@ -I. -I$(srcdir) -DLOCALEDIR=\"$(localedir)\"
38EXTRA_CFLAGS	= @EXTRA_CFLAGS@
39CC		= @CC@
40CPP		= @CPP@
41AR		= @AR@
42LDFLAGS		= @LDFLAGS@
43LIBS		= @LIBS@ @INTLLIBS@
44RANLIB		= @LIB_PREP@
45
46RM		= rm -f
47LINT		= lint
48
49CTAGS		= @CTAGS@
50ETAGS		= @ETAGS@
51
52LIBTOOL		= @LIBTOOL@ @ECHO_LT@
53LIBTOOL_OPTS	= @LIBTOOL_OPTS@
54LIBTOOL_CLEAN	= @LIB_CLEAN@
55LIBTOOL_COMPILE	= @LIB_COMPILE@
56LIBTOOL_CREATE	= @LIB_CREATE@
57LIBTOOL_LINK	= @LIB_LINK@
58LIBTOOL_INSTALL	= @LIB_INSTALL@
59LIBTOOL_UNINSTALL = @LIB_UNINSTALL@
60
61INSTALL		= @INSTALL@
62INSTALL_PROGRAM	= $(LIBTOOL_INSTALL) @INSTALL_PROGRAM@
63INSTALL_SCRIPT	= @INSTALL_SCRIPT@
64INSTALL_DATA	= @INSTALL_DATA@
65
66LINK		= $(LIBTOOL_LINK)
67
68PACKAGE		= `echo @PACKAGE@ |sed @program_transform_name@`
69#
70# Standard .c to .o compile line.
71#
72.SUFFIXES: .c .i $o .html .1 .3 .man .ps .pdf .txt
73.c.i :
74	@RULE_CC@
75	@ECHO_CC@$(CPP) $(CPPFLAGS) -c $< >$@
76.c$o :
77	@RULE_CC@
78	@ECHO_CC@$(LIBTOOL_COMPILE) $(CC) $(CFLAGS) $(EXTRA_CFLAGS) $(CPPFLAGS) -c $<
79
80.1.html :
81	GROFF_NO_SGR=stupid $(SHELL) -c "tbl $< | groff -Thtml -man" >$@
82
83.1.ps :
84	$(SHELL) -c "tbl $< | groff -man" >$@
85
86.1.txt :
87	GROFF_NO_SGR=stupid $(SHELL) -c "tbl $< | nroff -Tascii -man | col -bx" >$@
88
89.ps.pdf :
90	ps2pdf $*.ps
91
92EXTRAOBJS = @EXTRAOBJS@
93OBJECTS = $(EXTRAOBJS) \
94	arrows$o \
95	buttons$o \
96	checklist$o \
97	columns$o \
98	dlg_keys$o \
99	editbox$o \
100	inputbox$o \
101	inputstr$o \
102	menubox$o \
103	mouse$o \
104	mousewget$o \
105	msgbox$o \
106	textbox$o \
107	ui_getc$o \
108	util$o \
109	version$o \
110	yesno$o
111
112LIB_OBJECT = @LIB_OBJECT@
113
114SRCS = $(OBJECTS:$o=.c)
115HDRS = \
116	dialog.h \
117	dlg_colors.h \
118	dlg_config.h \
119	dlg_keys.h
120
121LIB	= @LIB_PREFIX@dialog$a
122PROG	= dialog$x
123ALL	= $(LIB) $(PROG)
124
125BIN_DIRS	= $(BINDIR) $(MAN1DIR)
126LIB_DIRS	= $(LIBDIR) $(INCLUDEDIR)
127
128PO_DIR	= $(srcdir)/po
129
130all	:: $(ALL)
131
132@LIBTOOL_MAKE@install	:: install-lib
133@LIBTOOL_MAKE@uninstall	:: uninstall-lib
134
135@INTLDIR_MAKE@@INTLLIBS@ :
136@INTLDIR_MAKE@	@echo "Building GNU gettext library..."
137@INTLDIR_MAKE@	@cd intl && $(MAKE) @cf_cv_makeflags@
138
139dialog$o \
140$(OBJECTS) : $(srcdir)/dialog.h $(srcdir)/dlg_keys.h dlg_config.h VERSION
141
142$(LIB) : $(LIB_OBJECT)
143	$(LIBTOOL_CREATE) $(LIB) $(LIB_OBJECT)
144	$(RANLIB) $@
145
146dialog$x : $(LIB) dialog$o @INTLDIR_MAKE@ @INTLLIBS@
147	$(LINK) -o $@ dialog$o -L. -ldialog $(LDFLAGS) $(LIBS)
148
149clean	\
150distclean \
151install \
152install-full \
153install-strip \
154uninstall ::
155	@echo making $@
156@INTLDIR_MAKE@	@-test -f intl/makefile && cd intl && $(MAKE) @cf_cv_makeflags@ $@
157@MSG_DIR_MAKE@	@-test -f po/makefile && cd po && $(MAKE) @cf_cv_makeflags@ $@
158
159clean	::
160	@- $(RM) -r autom4te.cache
161	- $(RM) *.*cov *.da *.bb *.bbg
162	- $(LIBTOOL_CLEAN) $(RM) *.i *$o $(ALL)
163	- $(RM) headers.sed
164	- $(RM) *.html *.pdf *.png *.ps *.txt dialog_lib.1
165	- $(RM) core *~ tags TAGS
166
167distclean :: clean
168	$(RM) intl/libintl.h intl/po2tbl.sed
169	$(RM) makefile dlg_config.h config.cache config.log config.status
170	$(RM) samples/install/makefile
171	$(RM) headers-sh
172	$(RM) dialog-config
173
174install :: install-bin install-man
175	@echo "made $@"
176
177install-full :: install-lib install-bin install-man
178	@echo "made $@"
179
180install-strip :: $(PROG) $(BINDIR)
181	$(INSTALL_PROGRAM) -s $(PROG) $(BINDIR)
182
183uninstall :: uninstall-bin uninstall-man
184	@echo "made $@"
185
186uninstall-full :: uninstall-bin uninstall-man uninstall-lib
187	@echo "made $@"
188
189install-bin : $(PROG) $(BINDIR)
190	$(INSTALL_PROGRAM) $(PROG) $(BINDIR)/$(PACKAGE)$x
191
192uninstall-bin :
193	$(RM) $(BINDIR)/$(PACKAGE)$x
194
195install-man :: $(MAN1DIR)
196	$(INSTALL_DATA) $(srcdir)/dialog.1 $(MAN1DIR)/$(PACKAGE).1
197
198uninstall-man ::
199	$(RM) $(MAN1DIR)/$(PACKAGE).1
200
201# most users do not want/need the library, so the install rules are distinct.
202install-lib :: $(BINDIR) dialog-config
203	@ echo "** installing config script in $(BINDIR)"
204	@ $(INSTALL_SCRIPT) dialog-config $(BINDIR)
205
206install-lib :: $(LIB_DIRS) $(LIB) headers.sed
207	@ echo "** installing library in $(LIBDIR)"
208	@ $(LIBTOOL_INSTALL) $(INSTALL_DATA) $(LIB) $(LIBDIR)
209	@ echo "** installing headers in $(INCLUDEDIR)"
210	@ $(SHELL) $(srcdir)/headers-sh $(INSTALL_DATA) $(INCLUDEDIR) $(srcdir) dialog.h
211	@ $(SHELL) $(srcdir)/headers-sh $(INSTALL_DATA) $(INCLUDEDIR) $(srcdir) dlg_colors.h
212	@ $(SHELL) $(srcdir)/headers-sh $(INSTALL_DATA) $(INCLUDEDIR) $(srcdir) dlg_keys.h
213	@ $(SHELL) $(srcdir)/headers-sh $(INSTALL_DATA) $(INCLUDEDIR) .         dlg_config.h
214
215uninstall-lib :: $(BINDIR)
216	$(RM) $(BINDIR)/dialog-config
217
218uninstall-lib :: $(LIB_DIRS)
219	- $(LIBTOOL_UNINSTALL) $(RM) $(LIBDIR)/$(LIB)
220	$(RM) $(INCLUDEDIR)/dialog.h
221	$(RM) $(INCLUDEDIR)/dlg_colors.h
222	$(RM) $(INCLUDEDIR)/dlg_keys.h
223	$(RM) $(INCLUDEDIR)/dlg_config.h
224
225install-lib :: $(MAN3DIR)
226	$(INSTALL_DATA) $(srcdir)/dialog.3 $(MAN3DIR)/$(PACKAGE).3
227
228uninstall-lib ::
229	$(RM) $(MAN3DIR)/$(PACKAGE).3
230
231headers.sed : $(srcdir)/headers-sh
232	$(SHELL) $(srcdir)/headers-sh $(INCLUDEDIR) $(srcdir)
233
234################################################################################
235TOP_DOCS = \
236	dialog.html \
237	dialog.pdf \
238	dialog.ps \
239	dialog.txt
240dialog.html : dialog.1
241dialog.pdf : dialog.ps
242dialog.ps : dialog.1
243dialog.txt : dialog.1
244################################################################################
245# rename, to use suffix-rules
246dialog_lib.1 : dialog.3
247	-$(RM) $@
248	cp dialog.3 $@
249
250LIB_DOCS = \
251	dialog_lib.1 \
252	dialog_lib.html \
253	dialog_lib.pdf \
254	dialog_lib.ps \
255	dialog_lib.txt
256dialog_lib.html : dialog_lib.1
257dialog_lib.pdf : dialog_lib.ps
258dialog_lib.ps : dialog_lib.1
259dialog_lib.txt : dialog_lib.1
260################################################################################
261docs: $(TOP_DOCS) $(LIB_DOCS)
262clean-docs:
263	-$(RM) $(TOP_DOCS) $(LIB_DOCS)
264################################################################################
265
266$(MAN1DIR) \
267$(MAN3DIR) \
268$(BINDIR) \
269$(INCLUDEDIR) \
270$(LIBDIR) : ; mkdir -p $@
271
272@MAKE_LOWER_TAGS@tags :
273@MAKE_LOWER_TAGS@	$(CTAGS) $(SRCS) $(HDRS)
274
275@MAKE_LOWER_TAGS@TAGS :
276@MAKE_LOWER_TAGS@	$(ETAGS) $(SRCS) $(HDRS)
277
278update-po:
279	rsync -Lrtvz  translationproject.org::tp/latest/dialog/  $(PO_DIR)
280	test -f $(PO_DIR)/makefile && cd $(PO_DIR) && $(MAKE) $@
281
282lint:
283	$(LINT) $(CPPFLAGS) *.c
284