Imported Upstream version 1.40.13
[platform/upstream/help2man.git] / Makefile.in
1 # Makefile for help2man
2
3 srcdir = @srcdir@
4 prefix = @prefix@
5 exec_prefix = @exec_prefix@
6
7 bindir = @bindir@
8 libdir = @libdir@
9 pkglibdir = $(libdir)/help2man
10 datarootdir = @datarootdir@
11 mandir = @mandir@
12 datadir = @datadir@
13 infodir = @infodir@
14 localedir = $(datadir)/locale
15
16 export SHELL = @SHELL@
17 export VPATH = .:$(srcdir)
18
19 DESTDIR =
20 LINGUAS = $(basename $(notdir $(wildcard $(srcdir)/po/*.po)))
21
22 CC = @CC@
23 PERL = @PERL@
24 LIBS = @LIBS@
25 INSTALL = @INSTALL@
26 INSTALL_PROGRAM = @INSTALL_PROGRAM@
27 INSTALL_SCRIPT = @INSTALL_SCRIPT@
28 INSTALL_DATA = @INSTALL_DATA@
29 INSTALL_INFO = @INSTALL_INFO@
30 MAKEINFO = @MAKEINFO@
31 MSGFMT = @MSGFMT@
32 MKINSTALLDIRS = $(srcdir)/mkinstalldirs
33
34 target = help2man
35 preload = bindtextdomain
36
37 # find file in vpath
38 vpath_file = $$($(PERL) -e 'print +(grep -f, map "$$_/$$ARGV[0]", \
39     map +(length) ? $$_ : ".", split ":", $$ENV{VPATH} || ".")[0]' $(1))
40
41 all: $(target) man info @extra_make_all@
42
43 install: all install_base @extra_make_install@
44 install_dirs:
45         $(MKINSTALLDIRS) $(DESTDIR)$(bindir)
46         $(MKINSTALLDIRS) $(DESTDIR)$(pkglibdir)
47         $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/man1
48         $(MKINSTALLDIRS) $(DESTDIR)$(infodir)
49
50 install_base: install_dirs
51         $(INSTALL_SCRIPT) $(target) $(DESTDIR)$(bindir)
52         $(INSTALL_DATA) $(call vpath_file,$(target).1) $(DESTDIR)$(mandir)/man1
53         $(INSTALL_DATA) $(call vpath_file,$(target).info) \
54             $(DESTDIR)$(infodir)/$(target).info
55
56         if test -f $(DESTDIR)$(infodir)/dir; \
57         then \
58             $(INSTALL_INFO) --info-dir=$(DESTDIR)$(infodir) \
59                 $(DESTDIR)$(infodir)/$(target).info; \
60         fi
61
62 install_preload: install_dirs preload
63         $(INSTALL_PROGRAM) $(preload).so $(DESTDIR)$(pkglibdir)
64
65 install_l10n: install_dirs msg_l10n man_l10n
66         for lang in $(LINGUAS); \
67         do \
68             $(MKINSTALLDIRS) $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \
69             $(INSTALL_DATA) $(call vpath_file,po/$$lang.gmo) \
70                 $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(target).mo; \
71             $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/$$lang/man1; \
72             $(INSTALL_DATA) $(call vpath_file,$(target).$$lang.1) \
73                 $(DESTDIR)$(mandir)/$$lang/man1/$(target).1; \
74         done
75
76 uninstall:
77         rm -f $(DESTDIR)$(bindir)/$(target) \
78             $(DESTDIR)$(pkglibdir)/$(preload).so \
79             $(DESTDIR)$(mandir)/man1/$(target).1 \
80             $(DESTDIR)$(mandir)/*/man1/$(target).1 \
81             $(DESTDIR)$(localedir)/*/LC_MESSAGES/$(target).mo \
82             $(DESTDIR)$(infodir)/$(target).info
83
84         if test -f $(DESTDIR)$(infodir)/dir; \
85         then \
86             $(INSTALL_INFO) --delete --info-dir=$(DESTDIR)$(infodir) \
87                 $(target).info; \
88         fi
89
90 clean:
91         -rm -f $(target) $(target).h2m $(target).*.h2m $(preload).so *.tmp[0-9]*
92         -rm -rf localetmp
93
94 mostlyclean: clean
95         rm -f $(target).dvi $(target).aux $(target).cp $(target).cps \
96             $(target).fn $(target).ky $(target).log $(target).pg $(target).toc \
97             $(target).tp $(target).vr po/*.po~
98
99 distclean: mostlyclean
100         -rm -rf config.cache config.log config.status Makefile autom4te.cache
101
102 realclean: distclean
103         rm -f $(target).info $(target).1 $(target).*.1 po/*.gmo
104
105 maintainer-clean: realclean
106         rm -f $(srcdir)/configure
107
108 $(target): $(srcdir)/$(target).PL
109         $(PERL) $? @extra_extract_args@
110
111 $(target).h2m: $(srcdir)/$(target).h2m.PL
112         $(PERL) $?
113
114 preload: $(preload).so
115 $(preload).so: $(srcdir)/$(preload).c
116         $(CC) $(CFLAGS) -o $@ -fPIC -shared $? $(LIBS)
117
118 man: $(target).1
119 $(target).1: $(srcdir)/$(target).PL $(srcdir)/$(target).h2m.PL
120         $(MAKE) $(target) $(target).h2m
121         ./$(target) --include=$(target).h2m --output=$@ ./$(target)
122
123 msg_l10n: $(addprefix po/,$(addsuffix .gmo,$(LINGUAS)))
124 po/%.gmo: $(srcdir)/po/%.po
125         test -d po || mkdir po
126         $(MSGFMT) -o $@ $?
127
128 localetmp/%/LC_MESSAGES/$(target).mo: po/%.gmo
129         lang=$(patsubst localetmp/%/LC_MESSAGES/$(target).mo,%,$@); \
130         $(MKINSTALLDIRS) localetmp/$$lang/LC_MESSAGES && \
131         $(INSTALL_DATA) po/$$lang.gmo localetmp/$$lang/LC_MESSAGES/$(target).mo
132
133 man_l10n: $(addprefix $(target).,$(addsuffix .1,$(LINGUAS)))
134 $(target).%.1: $(srcdir)/$(target).PL $(srcdir)/$(target).h2m.PL \
135     $(srcdir)/po/%.po
136         lang=$(patsubst $(target).%.1,%,$@); \
137         $(MAKE) $(target) $(preload).so \
138             localetmp/$$lang/LC_MESSAGES/$(target).mo $(target).$$lang.h2m; \
139         LD_PRELOAD=./$(preload).so LOCALEDIR=localetmp TEXTDOMAIN=help2man \
140             ./$(target) --include=$(call vpath_file,$(target).$$lang.h2m) \
141                 --output=$@ ./$(target)
142
143 $(target).%.h2m: $(srcdir)/$(target).h2m.PL $(srcdir)/po/%.po
144         lang=$(patsubst $(target).%.h2m,%,$@); \
145         locale=$$(echo $$lang $$lang | \
146              sed -n "/^$$lang"'\s/{s/^\S\+\s\+//p; q}' $(srcdir)/locales -); \
147         $(MAKE) localetmp/$$lang/LC_MESSAGES/$(target).mo; \
148         $(PERL) $(srcdir)/$(target).h2m.PL --locale="$$locale" \
149             --message-dir=localetmp --output=$@
150
151 info: $(target).info
152 $(target).info: $(srcdir)/$(target).texi
153         $(MAKEINFO) $? -o $@
154
155 dvi: $(target).dvi
156 $(target).dvi: $(srcdir)/$(target).texi
157         $(TEXI2DVI) $?
158
159 Makefile: $(srcdir)/Makefile.in
160         ./config.status
161
162 update-po: $(srcdir)/po/$(target).pot
163         for lang in $(LINGUAS); \
164         do \
165             echo -n "Updating $$lang "; \
166             msgmerge -U $(srcdir)/po/$$lang.po $(srcdir)/po/$(target).pot; \
167         done
168
169 $(srcdir)/po/$(target).pot: $(srcdir)/$(target).PL $(srcdir)/$(target).h2m.PL
170         $(MAKE) $(target)
171         xgettext -L Perl -k_ -kN_ -cTranslators: \
172             --msgid-bugs-address="Brendan O'Dea <bug-help2man@gnu.org>" -o $@ \
173             $(target) $(srcdir)/$(target).h2m.PL
174
175 .PHONY: all clean distclean preload man msg_l10n man_l10n info dvi install \
176     install_base install_preload install_l10n mostlyclean realclean \
177     uninstall
178
179 .SUFFIXES: