summaryrefslogtreecommitdiff
path: root/src/lib/Makefile
blob: 9e9b4a85a88d6ec091c504e6ee8e8d0ba17b2118 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
include $(dir $(lastword $(MAKEFILE_LIST)))/../../config.mk
include $(topsrcdir)/automake.head.mk

libretools-libs += common.sh conf.sh
devtools-files = common.sh.in

# Build ##############################################################

$(outdir)/conf.sh: $(var)sysconfdir $(var)pkgconfdir

$(outdir)/common.sh: $(outdir)/%: $(srcdir)/%.in $(srcdir)/%.head $(srcdir)/%.tail $(outdir)/Makefile
	@echo "OUT $@"
	@{ \
	cat '$(<D)/$*.head' && \
	echo && \
	sed -r \
		-e '/encoding problem/d;/LANG=/d' \
		-e 's/mesg=\$$(.)/mesg="$$(_ "$$\1")"/' \
		-e 's/gettext /_l _ /g' \
		-e "s/^(\s+)(msg|error) '/\1_l \2 '/" \
		-e 's|lock\(\)\s*\{|lock()\n{|' \
		'$(<D)/$*.in' && \
	echo && \
	cat '$(<D)/$*.tail' && \
	:; } > '$@'

# Translate ##########################################################

$(outdir)/blacklist.sh.pot: $(srcdir)/blacklist.sh $(srcdir)/librexgettext
	@echo "OUT $@"
	@{ \
		sed -n '/^# Usage:/,/()/{ /^#/ { =; p; } }' $< | \
			sed -r -e 's/^# (.*)/msgid "\1"\nmsgstr ""\n/' \
			       -e 's|^[0-9]*$$|#. embedded usage text\n#: $<:&|' && \
		$(<D)/librexgettext --simple=_l:2 $< && \
	:; } | $(pofmt) > $@
$(outdir)/common.sh.pot    : LIBREXGETTEXT_FLAGS += --simple=_l:2
$(outdir)/conf.sh.pot      : LIBREXGETTEXT_FLAGS += --simple=_l:2
$(outdir)/librelib.pot     : LIBREXGETTEXT_FLAGS += --simple=_l:2
$(outdir)/messages.sh.pot  : LIBREXGETTEXT_FLAGS += --simple=_l:2
$(outdir)/librexgettext.pot: LIBREXGETTEXT_FLAGS += --simple=errusage

######################################################################

include $(topsrcdir)/automake.tail.mk