summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--Makefile.in88
-rw-r--r--configure.in37
2 files changed, 87 insertions, 38 deletions
diff --git a/Makefile.in b/Makefile.in
index dc9815d..ace114b 100644
--- a/Makefile.in
+++ b/Makefile.in
@@ -1,5 +1,5 @@
# Makefile for help2man
-# $Id: Makefile.in,v 1.17 2003-07-09 21:59:07 bod Exp $
+# $Id: Makefile.in,v 1.18 2003-07-17 14:58:57 bod Exp $
SHELL = @SHELL@
VPATH = @srcdir@
@@ -13,58 +13,64 @@ libdir = @libdir@
mandir = @mandir@
datadir = @datadir@
infodir = @infodir@
-man1dir = $(mandir)/man1
-man1dir_fr = $(mandir)/fr/man1
localedir = $(datadir)/locale
DESTDIR =
+LINGUAS = fr pl
CC = @CC@
PERL = @PERL@
+LIBS = @LIBS@
INSTALL = @INSTALL@
INSTALL_PROGRAM = @INSTALL_PROGRAM@
INSTALL_DATA = @INSTALL_DATA@
INSTALL_INFO = @INSTALL_INFO@
MAKEINFO = @MAKEINFO@
+MSGFMT = @MSGFMT@
MKINSTALLDIRS = $(srcdir)/mkinstalldirs
-MSGFMT = msgfmt
target = help2man
-hack = hacklocaledir
+preload = hacklocaledir
-all: $(target) $(hack).so man info
+all: $(target) man info @extra_make_all@
-install-strip: install
-# No binaries to strip.
-
-install: $(target) $(hack).so $(target).1 $(target).fr.1 $(target).info \
- po/fr.gmo
+install: all install_base @extra_make_install@
+install_base:
$(MKINSTALLDIRS) $(DESTDIR)$(bindir)
$(MKINSTALLDIRS) $(DESTDIR)$(libdir)
- $(MKINSTALLDIRS) $(DESTDIR)$(man1dir)
- $(MKINSTALLDIRS) $(DESTDIR)$(man1dir_fr)
- $(MKINSTALLDIRS) $(DESTDIR)$(localedir)/fr/LC_MESSAGES
+ $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/man1
$(MKINSTALLDIRS) $(DESTDIR)$(infodir)
$(INSTALL_PROGRAM) $(target) $(DESTDIR)$(bindir)
- $(INSTALL_PROGRAM) $(hack).so $(DESTDIR)$(libdir)
- $(INSTALL_DATA) $(target).1 $(DESTDIR)$(man1dir)
- $(INSTALL_DATA) $(target).fr.1 $(DESTDIR)$(man1dir_fr)/$(target).1
- $(INSTALL_DATA) po/fr.gmo \
- $(DESTDIR)$(localedir)/fr/LC_MESSAGES/$(target).mo
-
+ $(INSTALL_DATA) $(target).1 $(DESTDIR)$(mandir)/man1
$(INSTALL_DATA) $(target).info $(DESTDIR)$(infodir)/$(target).info
if test -f $(DESTDIR)$(infodir)/dir; \
then \
$(INSTALL_INFO) --info-dir=$(DESTDIR)$(infodir) $(target).info; \
fi
+install_preload: preload
+ $(INSTALL_PROGRAM) $(preload).so $(DESTDIR)$(libdir)
+
+install_l10n: man_l10n
+ for lang in $(LINGUAS); \
+ do \
+ $(MKINSTALLDIRS) $(DESTDIR)$(mandir)/$$lang/man1; \
+ $(MKINSTALLDIRS) $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES; \
+ $(INSTALL_DATA) $(target).$$lang.1 \
+ $(DESTDIR)$(mandir)/$$lang/man1/$(target).1; \
+ $(INSTALL_DATA) po/$$lang.gmo \
+ $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(target).mo; \
+ done
+
uninstall:
rm -f $(DESTDIR)$(bindir)/$(target) \
- $(DESTDIR)$(libdir)/$(hack).so \
- $(DESTDIR)$(man1dir)/$(target).1 \
- $(DESTDIR)$(man1dir_fr)/$(target).1 \
+ $(DESTDIR)$(libdir)/$(preload).so \
+ $(DESTDIR)$(mandir)/man1/$(target).1 \
+ $(DESTDIR)$(mandir)/fr/man1/$(target).1 \
+ $(DESTDIR)$(mandir)/pl/man1/$(target).1 \
$(DESTDIR)$(localedir)/fr/LC_MESSAGES/$(target).mo \
+ $(DESTDIR)$(localedir)/pl/LC_MESSAGES/$(target).mo \
$(DESTDIR)$(infodir)/$(target).info
if test -f $(DESTDIR)$(infodir)/dir; \
@@ -74,7 +80,7 @@ uninstall:
fi
clean:
- -rm -f $(target) $(hack).so
+ -rm -f $(target) $(preload).so
mostlyclean: clean
rm -f $(target).dvi $(target).aux $(target).cp $(target).cps \
@@ -85,7 +91,8 @@ distclean: mostlyclean
-rm -f config.cache config.log config.status Makefile
realclean: distclean
- -rm -f $(target).info $(target).1 $(target).fr.1 po/*.gmo
+ -rm -f $(target).info $(target).1 $(target).fr.1 $(target).pl.1 \
+ po/*.gmo
maintainer-clean: realclean
rm -f configure
@@ -93,25 +100,41 @@ maintainer-clean: realclean
$(target): $(srcdir)/$(target).PL
$(PERL) $?
-$(hack).so: $(srcdir)/$(hack).c
- $(CC) -o $@ -fPIC -shared $?
+preload:
+$(preload).so: $(srcdir)/$(preload).c
+ $(CC) $(CFLAGS) -o $@ -fPIC -shared $? $(LIBS)
+
+man: $(target).1
+man_l10n:
+ for lang in $(LINGUAS); \
+ do \
+ $(MAKE) po/$$lang.gmo $(target).$$lang.1; \
+ done
-man: $(target).1 $(target).fr.1
$(target).1: $(target) $(srcdir)/$(target).h2m
./$(target) --include=$(srcdir)/$(target).h2m \
--output=$@ ./$(target)
-$(target).fr.1: po/fr.gmo $(target) $(srcdir)/$(target).fr.h2m
- $(MAKE) $(hack).so
- LD_PRELOAD="./$(hack).so preloadable_libintl.so" \
+$(target).fr.1: preload po/fr.gmo $(target) $(srcdir)/$(target).fr.h2m
+ LD_PRELOAD="./$(preload).so preloadable_libintl.so" \
TEXTDOMAIN=help2man \
./$(target) --include=$(srcdir)/$(target).fr.h2m \
--output=$@ --locale=fr_FR@euro ./$(target)
+$(target).pl.1: preload po/pl.gmo $(target) $(srcdir)/$(target).pl.h2m
+ LD_PRELOAD="./$(preload).so preloadable_libintl.so" \
+ TEXTDOMAIN=help2man \
+ ./$(target) --include=$(srcdir)/$(target).pl.h2m \
+ --output=$@ --locale=pl_PL ./$(target)
+
po/fr.gmo: $(srcdir)/po/fr.po
test -d po || mkdir po
$(MSGFMT) -o $@ $?
+po/pl.gmo: $(srcdir)/po/pl.po
+ test -d po || mkdir po
+ $(MSGFMT) -o $@ $?
+
info: $(target).info
$(target).info: $(srcdir)/$(target).texi
$(MAKEINFO) $? -o $@
@@ -123,7 +146,8 @@ $(target).dvi: $(srcdir)/$(target).texi
Makefile: $(srcdir)/Makefile.in
./config.status
-.PHONY: all clean distclean man info dvi install mostlyclean realclean \
+.PHONY: all clean distclean preload man man_l10n info dvi install \
+ install_base install_preload install_l10n mostlyclean realclean \
uninstall
.SUFFIXES:
diff --git a/configure.in b/configure.in
index eee748d..a97de80 100644
--- a/configure.in
+++ b/configure.in
@@ -1,13 +1,38 @@
dnl Process this file with autoconf to produce a configure script.
-dnl $Id: configure.in,v 1.5 2003-07-08 15:25:57 bod Exp $
+dnl $Id: configure.in,v 1.6 2003-07-17 14:58:57 bod Exp $
AC_INIT(help2man.PL)
AC_PROG_PERL(5.005)
test -z "$PERL" && AC_MSG_ERROR([perl 5.005 required])
-AC_PROG_CC
+
+AC_ARG_ENABLE([nls], AC_HELP_STRING([--enable-nls],
+ [enable support for generating localised pages (default is YES)]),
+ [ac_cv_enable_nls=$enableval], [ac_cv_enable_nls=yes])
+
+AC_SUBST(extra_make_all, '')
+AC_SUBST(extra_make_install, '')
+if test "$ac_cv_enable_nls" = yes
+then
+ AC_PROG_CC
+ AC_SEARCH_LIBS(dlsym, dl)
+ AC_PERL_MODULE(Locale::gettext)
+ test "$ac_cv_module_Locale__gettext" = no &&
+ AC_MSG_ERROR([perl module Locale::gettext required])
+
+ AC_PATH_PROG(MSGFMT, msgfmt)
+ test -z "$MSGFMT" && AC_MSG_ERROR([gettext required])
+
+ AC_MSG_CHECKING([for pre-loadable libintl])
+ preload=`LD_PRELOAD="preloadable_libintl.so" sh -c 'echo yes' 2>/dev/null`
+ AC_MSG_RESULT(${preload:=no})
+ test "$preload" = no && \
+ AC_MSG_ERROR([libpreloadable_libintl.so required (gettext 0.12+)])
+
+ extra_make_all='preload man_l10n'
+ extra_make_install='install_preload install_l10n'
+fi
+
AC_PROG_INSTALL
-AC_PATH_PROG(MAKEINFO, makeinfo)
-AC_PATH_PROG(INSTALL_INFO, install-info)
-test -z "$MAKEINFO" && MAKEINFO=:
-test -z "$INSTALL_INFO" && INSTALL_INFO=:
+AC_PATH_PROG(MAKEINFO, makeinfo, :)
+AC_PATH_PROG(INSTALL_INFO, install-info, :)
AC_OUTPUT(Makefile)