summaryrefslogtreecommitdiff
path: root/src/lib/Makefile
blob: f097d4e8a0f638d6e0a404785a094373b32b64e3 (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
copy_files = common.sh.in
libexecs = $(filter-out librelib,$(progs))
# include common.sh in libs explicitly, because it might not exist yet
# when the wildcard is performed
libs = $(sort $(wildcard *.sh) common.sh)

pots = $(libs)
include ../../common.mk

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

common.sh: %: %.in %.top Makefile
	@echo "GEN $@"
	@{ \
	cat '$*.top' && \
	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{|' \
		'$*.in' && \
	echo && \
	cat '$*.bottom' && \
	:; } > '$@'

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

LIBREXGETTEXT_FLAGS += --simple=_l:2

libreblacklist.pot: libreblacklist librexgettext
	{ \
		sed -n '/^# Usage:/,/()/{ /^#/ { =; p; } }' $< | \
			sed -r -e 's/^# (.*)/msgid "\1"\nmsgstr ""\n/' \
			       -e 's/^[0-9]*$$/#. embedded usage text\n#: $<:&/'; \
		./librexgettext $<; \
	} | $(pofmt) > $@

librexgettext.pot: LIBREXGETTEXT_FLAGS += --simple=errusage