1*4882a593SmuzhiyunFrom 5368bd0cfd0640f5c0ca766d4fda1b3f71c1b013 Mon Sep 17 00:00:00 2001 2*4882a593SmuzhiyunFrom: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 3*4882a593SmuzhiyunDate: Wed, 30 Aug 2017 23:07:26 +0200 4*4882a593SmuzhiyunSubject: [PATCH] Makefile, autoconf/makeinfo.in: support build/install without 5*4882a593Smuzhiyun gettext 6*4882a593Smuzhiyun 7*4882a593SmuzhiyunThe gettext tool msgfmt may not be available to build the .mo files 8*4882a593Smuzhiyunfrom the .po files, so we handle this case by disabling the 9*4882a593Smuzhiyunbuild/installation of .po files in such a case. 10*4882a593Smuzhiyun 11*4882a593SmuzhiyunSigned-off-by: Thomas Petazzoni <thomas.petazzoni@free-electrons.com> 12*4882a593Smuzhiyun--- 13*4882a593Smuzhiyun Makefile | 17 ++++++++++++++--- 14*4882a593Smuzhiyun autoconf/makeinfo.in | 1 + 15*4882a593Smuzhiyun 2 files changed, 15 insertions(+), 3 deletions(-) 16*4882a593Smuzhiyun 17*4882a593Smuzhiyundiff --git a/Makefile b/Makefile 18*4882a593Smuzhiyunindex a708046..3e83ca3 100644 19*4882a593Smuzhiyun--- a/Makefile 20*4882a593Smuzhiyun+++ b/Makefile 21*4882a593Smuzhiyun@@ -7,11 +7,18 @@ OBJFILES := $(SRCFILES:%.c=%.o) 22*4882a593Smuzhiyun LANGS = fr ru es 23*4882a593Smuzhiyun MOS := $(addprefix po/, $(addsuffix .mo, $(LANGS))) 24*4882a593Smuzhiyun LOCALEDIR = $(INSTALL_PREFIX)/usr/share/locale 25*4882a593Smuzhiyun- 26*4882a593Smuzhiyun-all: pdmenu $(POTFILE) $(MOS) 27*4882a593Smuzhiyun+TARGETS = pdmenu 28*4882a593Smuzhiyun+INSTALL_TARGETS = install-pdmenu 29*4882a593Smuzhiyun 30*4882a593Smuzhiyun include makeinfo 31*4882a593Smuzhiyun 32*4882a593Smuzhiyun+ifneq ($(MSGFMT),) 33*4882a593Smuzhiyun+TARGETS += $(POTFILE) $(MOS) 34*4882a593Smuzhiyun+INSTALL_TARGETS += install-pos 35*4882a593Smuzhiyun+endif 36*4882a593Smuzhiyun+ 37*4882a593Smuzhiyun+all: $(TARGETS) 38*4882a593Smuzhiyun+ 39*4882a593Smuzhiyun pdmenu: .dep $(OBJFILES) 40*4882a593Smuzhiyun ${CC} -o pdmenu $(OBJFILES) $(CFLAGS) $(LIBS) 41*4882a593Smuzhiyun 42*4882a593Smuzhiyun@@ -40,7 +47,9 @@ clean: 43*4882a593Smuzhiyun $(MAKE) $(POTFILE) # make sure translators' input is ready 44*4882a593Smuzhiyun rm -f $(OBJFILES) pdmenu $(MOS) 45*4882a593Smuzhiyun 46*4882a593Smuzhiyun-install: all 47*4882a593Smuzhiyun+install: $(INSTALL_TARGETS) 48*4882a593Smuzhiyun+ 49*4882a593Smuzhiyun+install-pdmenu: 50*4882a593Smuzhiyun $(INSTALL) -d $(INSTALL_PREFIX)/$(BINDIR) \ 51*4882a593Smuzhiyun $(INSTALL_PREFIX)/$(MANDIR)/man1 \ 52*4882a593Smuzhiyun $(INSTALL_PREFIX)/$(MANDIR)/man5 \ 53*4882a593Smuzhiyun@@ -56,6 +65,8 @@ install: all 54*4882a593Smuzhiyun $(INSTALL) examples/pdmenurc $(INSTALL_PREFIX)/$(SYSCONFDIR)/pdmenurc -m 0644 55*4882a593Smuzhiyun $(INSTALL) examples/showdir.pl $(INSTALL_PREFIX)/$(DATADIR)/pdmenu 56*4882a593Smuzhiyun cd $(INSTALL_PREFIX)/$(DATADIR)/pdmenu && $(LN_S) -f showdir.pl editdir.pl 57*4882a593Smuzhiyun+ 58*4882a593Smuzhiyun+install-pos: 59*4882a593Smuzhiyun for lang in $(LANGS); do \ 60*4882a593Smuzhiyun [ ! -d $(LOCALEDIR)/$$lang/LC_MESSAGES/ ] && mkdir -p $(LOCALEDIR)/$$lang/LC_MESSAGES/; \ 61*4882a593Smuzhiyun install -m 644 po/$$lang.mo $(LOCALEDIR)/$$lang/LC_MESSAGES/pdmenu.mo; \ 62*4882a593Smuzhiyundiff --git a/autoconf/makeinfo.in b/autoconf/makeinfo.in 63*4882a593Smuzhiyunindex 6d58d77..069daf8 100644 64*4882a593Smuzhiyun--- a/autoconf/makeinfo.in 65*4882a593Smuzhiyun+++ b/autoconf/makeinfo.in 66*4882a593Smuzhiyun@@ -8,6 +8,7 @@ DATADIR = @datadir@ 67*4882a593Smuzhiyun CC = @CC@ 68*4882a593Smuzhiyun INSTALL = @INSTALL@ 69*4882a593Smuzhiyun LN_S = @LN_S@ 70*4882a593Smuzhiyun+MSGFMT = @MSGFMT@ 71*4882a593Smuzhiyun VER = @VER@ 72*4882a593Smuzhiyun DEFINES = -DETCDIR=\"${SYSCONFDIR}/\" -DVER=\"${VER}\" @DEFS@ \ 73*4882a593Smuzhiyun $(PROFILE) -D__USE_FIXED_PROTOTYPES__ -D_GNU_SOURCE \ 74*4882a593Smuzhiyun-- 75*4882a593Smuzhiyun2.13.5 76*4882a593Smuzhiyun 77