mirror of
https://https.git.savannah.gnu.org/git/gettext.git
synced 2026-01-26 15:39:11 +00:00
build: Install auxiliary programs in $(libexecdir), not $(libdir).
The GNU Coding Standards say that auxiliary programs should be installed in a subdir of $(libexecdir). <https://www.gnu.org/prep/standards/html_node/Directory-Variables.html> Originally, I did not do this because I also wanted to follow the Linux Filesystem Hierarchy Standard, which in version 2 did not support /usr/libexec. This has changed in 2015: The FHS version 3 now allows installation into /usr/libexec. <https://refspecs.linuxfoundation.org/FHS_3.0/fhs/ch04s07.html> Reported by Bastien Roucariès <rouca@debian.org> in <https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=1032010>. * gettext-tools/src/Makefile.am (pkglibexecdir): New variable. (DEFS): Pass a LIBEXECDIR macro. (hostname_CPPFLAGS, urlget_CPPFLAGS, cldr_plurals_CPPFLAGS, hostname_LDFLAGS, urlget_LDFLAGS, cldr_plurals_LDFLAGS, install-exec-local, installdirs-local, uninstall-local): Use pkglibexecdir instead of pkglibdir. * gettext-tools/src/msginit.c (project_id, project_id_version, plural_forms): Test $GETTEXTLIBEXECDIR_SRCDIR instead of $GETTEXTLIBDIR_SRCDIR. Use LIBEXECDIR instead of LIBDIR. (get_user_email, language_team_address): Use LIBEXECDIR instead of LIBDIR. * gettext-tools/tests/msginit-3: Set GETTEXTLIBEXECDIR_SRCDIR instead of GETTEXTLIBDIR_SRCDIR. * gettext-tools/tests/msginit-4: Likewise. Set GETTEXTLIBEXECDIR_BUILDDIR instead of GETTEXTLIBDIR_BUILDDIR.
This commit is contained in:
parent
04dce83b0a
commit
43a4b5eeec
@ -89,6 +89,7 @@ jardir = $(datadir)/gettext
|
||||
pkgdatadir = $(datadir)/gettext
|
||||
projectsdir = $(pkgdatadir)/projects
|
||||
pkglibdir = $(libdir)/gettext
|
||||
pkglibexecdir = $(libexecdir)/gettext
|
||||
|
||||
AM_CPPFLAGS = \
|
||||
-I. -I$(srcdir) \
|
||||
@ -102,6 +103,7 @@ DEFS = \
|
||||
-DUSEJAVA=$(USEJAVA) \
|
||||
-DGETTEXTJAR=\"$(jardir)/gettext.jar\" \
|
||||
-DLIBDIR=\"$(libdir)\" \
|
||||
-DLIBEXECDIR=\"$(libexecdir)\" \
|
||||
-DGETTEXTDATADIR=\"$(pkgdatadir)\" \
|
||||
-DPROJECTSDIR=\"$(projectsdir)\" \
|
||||
-DEXEEXT=\"@EXEEXT@\" @DEFS@
|
||||
@ -421,9 +423,9 @@ msggrep_CPPFLAGS = $(AM_CPPFLAGS) -DINSTALLDIR=\"$(bindir)\"
|
||||
msginit_CPPFLAGS = $(AM_CPPFLAGS) -DINSTALLDIR=\"$(bindir)\"
|
||||
msguniq_CPPFLAGS = $(AM_CPPFLAGS) -DINSTALLDIR=\"$(bindir)\"
|
||||
recode_sr_latin_CPPFLAGS = $(AM_CPPFLAGS) -DINSTALLDIR=\"$(bindir)\"
|
||||
hostname_CPPFLAGS = $(AM_CPPFLAGS) -DINSTALLDIR=\"$(pkglibdir)\"
|
||||
urlget_CPPFLAGS = $(AM_CPPFLAGS) -DINSTALLDIR=\"$(pkglibdir)\"
|
||||
cldr_plurals_CPPFLAGS = $(AM_CPPFLAGS) -DINSTALLDIR=\"$(pkglibdir)\"
|
||||
hostname_CPPFLAGS = $(AM_CPPFLAGS) -DINSTALLDIR=\"$(pkglibexecdir)\"
|
||||
urlget_CPPFLAGS = $(AM_CPPFLAGS) -DINSTALLDIR=\"$(pkglibexecdir)\"
|
||||
cldr_plurals_CPPFLAGS = $(AM_CPPFLAGS) -DINSTALLDIR=\"$(pkglibexecdir)\"
|
||||
if RELOCATABLE_VIA_LD
|
||||
msgcmp_LDFLAGS = `$(RELOCATABLE_LDFLAGS) $(bindir)`
|
||||
msgfmt_LDFLAGS = `$(RELOCATABLE_LDFLAGS) $(bindir)`
|
||||
@ -441,9 +443,9 @@ msggrep_LDFLAGS = `$(RELOCATABLE_LDFLAGS) $(bindir)`
|
||||
msginit_LDFLAGS = `$(RELOCATABLE_LDFLAGS) $(bindir)`
|
||||
msguniq_LDFLAGS = `$(RELOCATABLE_LDFLAGS) $(bindir)`
|
||||
recode_sr_latin_LDFLAGS = `$(RELOCATABLE_LDFLAGS) $(bindir)`
|
||||
hostname_LDFLAGS = `$(RELOCATABLE_LDFLAGS) $(pkglibdir)`
|
||||
urlget_LDFLAGS = `$(RELOCATABLE_LDFLAGS) $(pkglibdir)`
|
||||
cldr_plurals_LDFLAGS = `$(RELOCATABLE_LDFLAGS) $(pkglibdir)`
|
||||
hostname_LDFLAGS = `$(RELOCATABLE_LDFLAGS) $(pkglibexecdir)`
|
||||
urlget_LDFLAGS = `$(RELOCATABLE_LDFLAGS) $(pkglibexecdir)`
|
||||
cldr_plurals_LDFLAGS = `$(RELOCATABLE_LDFLAGS) $(pkglibexecdir)`
|
||||
endif
|
||||
|
||||
# Linking with C++ libraries is needed _only_ on mingw and Cygwin.
|
||||
@ -627,22 +629,22 @@ EXTRA_DIST += cldr-plural.c cldr-plural.h
|
||||
# Special rules for installation of auxiliary programs.
|
||||
|
||||
install-exec-local:
|
||||
$(MKDIR_P) $(DESTDIR)$(pkglibdir)
|
||||
$(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) hostname$(EXEEXT) $(DESTDIR)$(pkglibdir)/hostname$(EXEEXT)
|
||||
$(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) urlget$(EXEEXT) $(DESTDIR)$(pkglibdir)/urlget$(EXEEXT)
|
||||
$(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) cldr-plurals$(EXEEXT) $(DESTDIR)$(pkglibdir)/cldr-plurals$(EXEEXT)
|
||||
$(INSTALL_SCRIPT) user-email $(DESTDIR)$(pkglibdir)/user-email
|
||||
$(INSTALL_SCRIPT) $(srcdir)/project-id $(DESTDIR)$(pkglibdir)/project-id
|
||||
$(MKDIR_P) $(DESTDIR)$(pkglibexecdir)
|
||||
$(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) hostname$(EXEEXT) $(DESTDIR)$(pkglibexecdir)/hostname$(EXEEXT)
|
||||
$(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) urlget$(EXEEXT) $(DESTDIR)$(pkglibexecdir)/urlget$(EXEEXT)
|
||||
$(INSTALL_PROGRAM_ENV) $(LIBTOOL) --mode=install $(INSTALL_PROGRAM) cldr-plurals$(EXEEXT) $(DESTDIR)$(pkglibexecdir)/cldr-plurals$(EXEEXT)
|
||||
$(INSTALL_SCRIPT) user-email $(DESTDIR)$(pkglibexecdir)/user-email
|
||||
$(INSTALL_SCRIPT) $(srcdir)/project-id $(DESTDIR)$(pkglibexecdir)/project-id
|
||||
|
||||
installdirs-local:
|
||||
$(MKDIR_P) $(DESTDIR)$(pkglibdir)
|
||||
$(MKDIR_P) $(DESTDIR)$(pkglibexecdir)
|
||||
|
||||
uninstall-local:
|
||||
$(RM) $(DESTDIR)$(pkglibdir)/hostname$(EXEEXT)
|
||||
$(RM) $(DESTDIR)$(pkglibdir)/urlget$(EXEEXT)
|
||||
$(RM) $(DESTDIR)$(pkglibdir)/cldr-plurals$(EXEEXT)
|
||||
$(RM) $(DESTDIR)$(pkglibdir)/user-email
|
||||
$(RM) $(DESTDIR)$(pkglibdir)/project-id
|
||||
$(RM) $(DESTDIR)$(pkglibexecdir)/hostname$(EXEEXT)
|
||||
$(RM) $(DESTDIR)$(pkglibexecdir)/urlget$(EXEEXT)
|
||||
$(RM) $(DESTDIR)$(pkglibexecdir)/cldr-plurals$(EXEEXT)
|
||||
$(RM) $(DESTDIR)$(pkglibexecdir)/user-email
|
||||
$(RM) $(DESTDIR)$(pkglibexecdir)/project-id
|
||||
|
||||
DISTCLEANFILES += user-email
|
||||
|
||||
|
||||
@ -933,9 +933,9 @@ project_id (const char *header)
|
||||
size_t linelen;
|
||||
int exitstatus;
|
||||
|
||||
gettextlibdir = getenv ("GETTEXTLIBDIR_SRCDIR");
|
||||
gettextlibdir = getenv ("GETTEXTLIBEXECDIR_SRCDIR");
|
||||
if (gettextlibdir == NULL || gettextlibdir[0] == '\0')
|
||||
gettextlibdir = relocate (LIBDIR "/gettext");
|
||||
gettextlibdir = relocate (LIBEXECDIR "/gettext");
|
||||
|
||||
prog = xconcatenated_filename (gettextlibdir, "project-id", NULL);
|
||||
|
||||
@ -1015,9 +1015,9 @@ project_id_version (const char *header)
|
||||
size_t linelen;
|
||||
int exitstatus;
|
||||
|
||||
gettextlibdir = getenv ("GETTEXTLIBDIR_SRCDIR");
|
||||
gettextlibdir = getenv ("GETTEXTLIBEXECDIR_SRCDIR");
|
||||
if (gettextlibdir == NULL || gettextlibdir[0] == '\0')
|
||||
gettextlibdir = relocate (LIBDIR "/gettext");
|
||||
gettextlibdir = relocate (LIBEXECDIR "/gettext");
|
||||
|
||||
prog = xconcatenated_filename (gettextlibdir, "project-id", NULL);
|
||||
|
||||
@ -1177,7 +1177,7 @@ get_user_email ()
|
||||
"msginit.exe: subprocess ... failed: No such file or directory" */
|
||||
#if !(defined _WIN32 && ! defined __CYGWIN__)
|
||||
{
|
||||
const char *prog = relocate (LIBDIR "/gettext/user-email");
|
||||
const char *prog = relocate (LIBEXECDIR "/gettext/user-email");
|
||||
const char *argv[4];
|
||||
pid_t child;
|
||||
int fd[1];
|
||||
@ -1298,7 +1298,7 @@ language_team_address ()
|
||||
argv[0] = BOURNE_SHELL;
|
||||
argv[1] = prog;
|
||||
argv[2] = relocate (PROJECTSDIR);
|
||||
argv[3] = relocate (LIBDIR "/gettext");
|
||||
argv[3] = relocate (LIBEXECDIR "/gettext");
|
||||
argv[4] = catalogname;
|
||||
argv[5] = language;
|
||||
argv[6] = NULL;
|
||||
@ -1450,9 +1450,9 @@ plural_forms ()
|
||||
size_t linelen;
|
||||
int exitstatus;
|
||||
|
||||
gettextlibdir = getenv ("GETTEXTLIBDIR_BUILDDIR");
|
||||
gettextlibdir = getenv ("GETTEXTLIBEXECDIR_BUILDDIR");
|
||||
if (gettextlibdir == NULL || gettextlibdir[0] == '\0')
|
||||
gettextlibdir = relocate (LIBDIR "/gettext");
|
||||
gettextlibdir = relocate (LIBEXECDIR "/gettext");
|
||||
|
||||
prog = xconcatenated_filename (gettextlibdir, "cldr-plurals", EXEEXT);
|
||||
|
||||
|
||||
@ -47,7 +47,7 @@ msgstr ""
|
||||
EOF
|
||||
|
||||
: ${MSGINIT=msginit}
|
||||
GETTEXTLIBDIR_SRCDIR="$wabs_top_srcdir"/src \
|
||||
GETTEXTLIBEXECDIR_SRCDIR="$wabs_top_srcdir"/src \
|
||||
${MSGINIT} -l ga_IE --no-translator -o mi-test3.tmp 2>mi-test3.err
|
||||
test $? = 0 || { cat mi-test3.err 1>&2; Exit 1; }
|
||||
|
||||
|
||||
@ -47,8 +47,8 @@ msgstr ""
|
||||
EOF
|
||||
|
||||
: ${MSGINIT=msginit}
|
||||
GETTEXTLIBDIR_SRCDIR="$wabs_top_srcdir"/src \
|
||||
GETTEXTLIBDIR_BUILDDIR="$top_builddir"/src \
|
||||
GETTEXTLIBEXECDIR_SRCDIR="$wabs_top_srcdir"/src \
|
||||
GETTEXTLIBEXECDIR_BUILDDIR="$top_builddir"/src \
|
||||
GETTEXTCLDRDIR="$wabs_srcdir" \
|
||||
${MSGINIT} -i mi-test4.pot -l foo --no-translator --no-wrap -o mi-test4.tmp 2>mi-test4.err
|
||||
test $? = 0 || { cat mi-test4.err 1>&2; Exit 1; }
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user