Your message dated Sat, 21 Nov 2009 19:17:19 +0000
with message-id <[email protected]>
and subject line Bug#557307: fixed in debhelper 7.4.7
has caused the Debian Bug report #557307,
regarding debhelper: exists_make_target in makefile.pm may cause infinite loop
to be marked as done.
This means that you claim that the problem has been dealt with.
If this is not the case it is now your responsibility to reopen the
Bug report if necessary, and/or fix the problem forthwith.
(NB: If you are a system administrator and have no idea what this
message is talking about, this may indicate a serious mail system
misconfiguration somewhere. Please contact [email protected]
immediately.)
--
557307: http://bugs.debian.org/cgi-bin/bugreport.cgi?bug=557307
Debian Bug Tracking System
Contact [email protected] with problems
--- Begin Message ---
Package: debhelper
Version: 7.4.5
Severity: normal
Hello,
I stumbled on a case where 'exists_make_target' subroutine in
Debian/Debhelper/Buildsystem/makefile.pm runs into an infinite loop.
Please check the attached Makefile that caused this problem.
In this Makefile, the 'stamp-i18n' target (which is a dependancy of
'all' target) calls: make install
So, upstream recreated 'stamp-i18n' stamp before and after running
'make install' to avoid that make runs into an infinite loop.
Now, since 'exists_make_target' runs 'make -n <target>' to check for
the target, this stamp doesn't get created, which caused make to go
into an infinite loop.
-- System Information:
Debian Release: squeeze/sid
APT prefers karmic-updates
APT policy: (500, 'karmic-updates'), (500, 'karmic-security'), (500,
'karmic-proposed'), (500, 'karmic-backports'), (500, 'karmic')
Architecture: i386 (i686)
Kernel: Linux 2.6.31-15-generic (SMP w/2 CPU cores)
Locale: LANG=en_US.UTF-8, LC_CTYPE=en_US.UTF-8 (charmap=UTF-8)
Shell: /bin/sh linked to /bin/dash
Versions of packages debhelper depends on:
ii binutils 2.20-0ubuntu2 The GNU assembler, linker and bina
ii dpkg-dev 1.15.4ubuntu2 Debian package development tools
ii file 5.03-1ubuntu1 Determines file type using "magic"
ii html2text 1.3.2a-14 advanced HTML to text converter
ii man-db 2.5.6-2 on-line manual pager
ii perl 5.10.0-24ubuntu4 Larry Wall's Practical Extraction
ii perl-base 5.10.0-24ubuntu4 minimal Perl system
ii po-debconf 1.0.16 tool for managing templates file t
debhelper recommends no packages.
Versions of packages debhelper suggests:
ii dh-make 0.50 tool that converts source archives
-- no debconf information
# Makefile for PO directory in any package using GNU gettext.
# Copyright (C) 1995-1997, 2000-2006 by Ulrich Drepper <[email protected]>
#
# This file can be copied and used freely without restrictions. It can
# be used in projects which are not available under the GNU General Public
# License but which still want to provide support for the GNU gettext
# functionality.
# Please note that the actual code of GNU gettext is covered by the GNU
# General Public License and is *not* in the public domain.
#
# Origin: gettext-0.16
PACKAGE = geda-gaf
VERSION = 1.6.0
PACKAGE_BUGREPORT = [email protected]
SHELL = /bin/sh
srcdir = .
top_srcdir = ../..
prefix = /usr
exec_prefix = ${prefix}
datarootdir = ${prefix}/share
datadir = ${datarootdir}
localedir = ${datarootdir}/locale
gettextsrcdir = $(datadir)/gettext/po
INSTALL = /usr/bin/install -c
INSTALL_DATA = ${INSTALL} -m 644
# We use $(mkdir_p).
# In automake <= 1.9.x, $(mkdir_p) is defined either as "mkdir -p --" or as
# "$(mkinstalldirs)" or as "$(install_sh) -d". For these automake versions,
# $(SHELL) /tmp/geda-gaf-1.6.0/build-tools/install-sh does not start with
$(SHELL), so we add it.
# In automake >= 1.10, /bin/mkdir -p is derived from ${MKDIR_P}, which is
defined
# either as "/path/to/mkdir -p" or ".../install-sh -c -d". For these automake
# versions, $(mkinstalldirs) and $(install_sh) are unused.
mkinstalldirs = $(SHELL) $(SHELL) /tmp/geda-gaf-1.6.0/build-tools/install-sh -d
install_sh = $(SHELL) $(SHELL) /tmp/geda-gaf-1.6.0/build-tools/install-sh
MKDIR_P = /bin/mkdir -p
mkdir_p = /bin/mkdir -p
GMSGFMT_ = /usr/bin/msgfmt
GMSGFMT_no = /usr/bin/msgfmt
GMSGFMT_yes = /usr/bin/msgfmt
GMSGFMT = $(GMSGFMT_$(USE_MSGCTXT))
MSGFMT_ = /usr/bin/msgfmt
MSGFMT_no = /usr/bin/msgfmt
MSGFMT_yes = /usr/bin/msgfmt
MSGFMT = $(MSGFMT_$(USE_MSGCTXT))
XGETTEXT_ = ${SHELL} /tmp/geda-gaf-1.6.0/build-tools/desktop-i18n --extract
--xgettext=/usr/bin/xgettext --
XGETTEXT_no = ${SHELL} /tmp/geda-gaf-1.6.0/build-tools/desktop-i18n --extract
--xgettext=/usr/bin/xgettext --
XGETTEXT_yes = /usr/bin/xgettext
XGETTEXT = $(XGETTEXT_$(USE_MSGCTXT))
MSGMERGE = msgmerge
MSGMERGE_UPDATE = /usr/bin/msgmerge --update
MSGINIT = msginit
MSGCONV = msgconv
MSGFILTER = msgfilter
POFILES = nl.po en_GB.po es.po de.po
GMOFILES = nl.gmo en_GB.gmo es.gmo de.gmo
UPDATEPOFILES = nl.po-update en_GB.po-update es.po-update de.po-update
DUMMYPOFILES = nl.nop en_GB.nop es.nop de.nop
DISTFILES.common = Makefile.in.in remove-potcdate.sin \
$(DISTFILES.common.extra1) $(DISTFILES.common.extra2) $(DISTFILES.common.extra3)
DISTFILES = $(DISTFILES.common) Makevars POTFILES.in \
$(POFILES) $(GMOFILES) \
$(DISTFILES.extra1) $(DISTFILES.extra2) $(DISTFILES.extra3)
POTFILES = \
../../libgeda/data/libgeda.xml.in \
../../libgeda/data/x-geda-gsch2pcb-project.desktop.in \
../../libgeda/data/x-geda-schematic.desktop.in \
../../libgeda/data/x-geda-symbol.desktop.in \
../../libgeda/src/a_basic.c \
../../libgeda/src/f_basic.c \
../../libgeda/src/f_print.c \
../../libgeda/src/g_basic.c \
../../libgeda/src/g_rc.c \
../../libgeda/src/o_arc_basic.c \
../../libgeda/src/o_attrib.c \
../../libgeda/src/o_basic.c \
../../libgeda/src/o_box_basic.c \
../../libgeda/src/o_bus_basic.c \
../../libgeda/src/o_circle_basic.c \
../../libgeda/src/o_complex_basic.c \
../../libgeda/src/o_embed.c \
../../libgeda/src/o_line_basic.c \
../../libgeda/src/o_net_basic.c \
../../libgeda/src/o_path_basic.c \
../../libgeda/src/o_picture.c \
../../libgeda/src/o_pin_basic.c \
../../libgeda/src/o_text_basic.c \
../../libgeda/src/s_clib.c \
../../libgeda/src/s_color.c \
../../libgeda/src/s_hierarchy.c \
../../libgeda/src/s_page.c \
../../libgeda/src/s_slib.c \
../../intl/plural.c
CATALOGS = nl.gmo en_GB.gmo es.gmo de.gmo
# Makevars gets inserted here. (Don't remove this line!)
# -*-GNUmakefile-*-
# Makefile variables for PO directory in any package using GNU gettext.
# Usually the message domain is the same as the package name.
#DOMAIN = $(PACKAGE)
# Unfortunately, we need to use message domains that match the current
# version of libgeda. Even more unfortunately, the way that the
# gettext m4 code merges Makevars into the Makefile precludes Makevars
# from containing anything determined at configure time. So we have
# *yet another* Makefile fragment.
include domain.mak
# These two variables depend on the location of this directory.
subdir = libgeda/po
top_builddir = ../..
# These options get passed to xgettext.
XGETTEXT_OPTIONS = --keyword=_ --keyword=N_
# This is the copyright holder that gets inserted into the header of the
# $(DOMAIN).pot file. Set this to the copyright holder of the surrounding
# package. (Note that the msgstr strings, extracted from the package's
# sources, belong to the copyright holder of the package.) Translators are
# expected to transfer the copyright for their translations to this person
# or entity, or to disclaim their copyright. The empty string stands for
# the public domain; in this case the translators are expected to disclaim
# their copyright.
COPYRIGHT_HOLDER = gEDA Developers
# This is the email address or URL to which the translators shall report
# bugs in the untranslated strings:
# - Strings which are not entire sentences, see the maintainer guidelines
# in the GNU gettext documentation, section 'Preparing Strings'.
# - Strings which use unclear terms or require additional context to be
# understood.
# - Strings which make invalid assumptions about notation of date, time or
# money.
# - Pluralisation problems.
# - Incorrect English spelling.
# - Incorrect formatting.
# It can be your email address, or a mailing list address where translators
# can write to without being subscribed, or the URL of a web page through
# which the translators can contact you.
MSGID_BUGS_ADDRESS = [email protected]
# This is the list of locale categories, beyond LC_MESSAGES, for which the
# message catalogs shall be used. It is usually empty.
EXTRA_LOCALE_CATEGORIES =
..SUFFIXES:
..SUFFIXES: .po .gmo .mo .sed .sin .nop .po-create .po-update
..po.mo:
@echo "$(MSGFMT) -c -o $@ $<"; \
$(MSGFMT) -c -o t-$@ $< && mv t-$@ $@
..po.gmo:
@lang=`echo $* | sed -e 's,.*/,,'`; \
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
echo "$${cdcmd}rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics -o
$${lang}.gmo $${lang}.po"; \
cd $(srcdir) && rm -f $${lang}.gmo && $(GMSGFMT) -c --statistics -o
t-$${lang}.gmo $${lang}.po && mv t-$${lang}.gmo $${lang}.gmo
..sin.sed:
sed -e '/^#/d' $< > t-$@
mv t-$@ $@
all: all-yes
all-yes: stamp-po
all-no:
# $(srcdir)/$(DOMAIN).pot is only created when needed. When xgettext finds no
# internationalized messages, no $(srcdir)/$(DOMAIN).pot is created (because
# we don't want to bother translators with empty POT files). We assume that
# LINGUAS is empty in this case, i.e. $(POFILES) and $(GMOFILES) are empty.
# In this case, stamp-po is a nop (i.e. a phony target).
# stamp-po is a timestamp denoting the last time at which the CATALOGS have
# been loosely updated. Its purpose is that when a developer or translator
# checks out the package via CVS, and the $(DOMAIN).pot file is not in CVS,
# "make" will update the $(DOMAIN).pot and the $(CATALOGS), but subsequent
# invocations of "make" will do nothing. This timestamp would not be necessary
# if updating the $(CATALOGS) would always touch them; however, the rule for
# $(POFILES) has been designed to not touch files that don't need to be
# changed.
stamp-po: $(srcdir)/$(DOMAIN).pot
test ! -f $(srcdir)/$(DOMAIN).pot || \
test -z "$(GMOFILES)" || $(MAKE) $(GMOFILES)
@test ! -f $(srcdir)/$(DOMAIN).pot || { \
echo "touch stamp-po" && \
echo timestamp > stamp-poT && \
mv stamp-poT stamp-po; \
}
# Note: Target 'all' must not depend on target '$(DOMAIN).pot-update',
# otherwise packages like GCC can not be built if only parts of the source
# have been downloaded.
# This target rebuilds $(DOMAIN).pot; it is an expensive operation.
# Note that $(DOMAIN).pot is not touched if it doesn't need to be changed.
$(DOMAIN).pot-update: $(POTFILES) $(srcdir)/POTFILES.in remove-potcdate.sed
if test -n '$(MSGID_BUGS_ADDRESS)' || test '$(PACKAGE_BUGREPORT)' =
'@'PACKAGE_BUGREPORT'@'; then \
msgid_bugs_address='$(MSGID_BUGS_ADDRESS)'; \
else \
msgid_bugs_address='$(PACKAGE_BUGREPORT)'; \
fi; \
$(XGETTEXT) --default-domain=$(DOMAIN) --directory=$(top_srcdir) \
--add-comments=TRANSLATORS: $(XGETTEXT_OPTIONS) \
--files-from=$(srcdir)/POTFILES.in \
--copyright-holder='$(COPYRIGHT_HOLDER)' \
--msgid-bugs-address="$$msgid_bugs_address"
test ! -f $(DOMAIN).po || { \
if test -f $(srcdir)/$(DOMAIN).pot; then \
sed -f remove-potcdate.sed < $(srcdir)/$(DOMAIN).pot >
$(DOMAIN).1po && \
sed -f remove-potcdate.sed < $(DOMAIN).po > $(DOMAIN).2po && \
if cmp $(DOMAIN).1po $(DOMAIN).2po >/dev/null 2>&1; then \
rm -f $(DOMAIN).1po $(DOMAIN).2po $(DOMAIN).po; \
else \
rm -f $(DOMAIN).1po $(DOMAIN).2po $(srcdir)/$(DOMAIN).pot && \
mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \
fi; \
else \
mv $(DOMAIN).po $(srcdir)/$(DOMAIN).pot; \
fi; \
}
# This rule has no dependencies: we don't need to update $(DOMAIN).pot at
# every "make" invocation, only create it when it is missing.
# Only "make $(DOMAIN).pot-update" or "make dist" will force an update.
$(srcdir)/$(DOMAIN).pot:
$(MAKE) $(DOMAIN).pot-update
# This target rebuilds a PO file if $(DOMAIN).pot has changed.
# Note that a PO file is not touched if it doesn't need to be changed.
$(POFILES): $(srcdir)/$(DOMAIN).pot
@lang=`echo $@ | sed -e 's,.*/,,' -e 's/\.po$$//'`; \
if test -f "$(srcdir)/$${lang}.po"; then \
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
echo "$${cdcmd}$(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot"; \
cd $(srcdir) && $(MSGMERGE_UPDATE) $${lang}.po $(DOMAIN).pot; \
else \
$(MAKE) $${lang}.po-create; \
fi
install: install-exec install-data
install-exec:
install-data: install-data-yes
if test "$(PACKAGE)" = "gettext-tools"; then \
$(mkdir_p) $(DESTDIR)$(gettextsrcdir); \
for file in $(DISTFILES.common) Makevars.template; do \
$(INSTALL_DATA) $(srcdir)/$$file \
$(DESTDIR)$(gettextsrcdir)/$$file; \
done; \
for file in Makevars; do \
rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
done; \
else \
: ; \
fi
install-data-no: all
install-data-yes: all
$(mkdir_p) $(DESTDIR)$(datadir)
@catalogs='$(CATALOGS)'; \
for cat in $$catalogs; do \
cat=`basename $$cat`; \
lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \
dir=$(localedir)/$$lang/LC_MESSAGES; \
$(mkdir_p) $(DESTDIR)$$dir; \
if test -r $$cat; then realcat=$$cat; else realcat=$(srcdir)/$$cat;
fi; \
$(INSTALL_DATA) $$realcat $(DESTDIR)$$dir/$(DOMAIN).mo; \
echo "installing $$realcat as $(DESTDIR)$$dir/$(DOMAIN).mo"; \
for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \
if test -n "$$lc"; then \
if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc
2>/dev/null) | grep ' -> ' >/dev/null; then \
link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d
$$lc | sed -e 's/^.* -> //'`; \
mv $(DESTDIR)$(localedir)/$$lang/$$lc
$(DESTDIR)$(localedir)/$$lang/$$lc.old; \
mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \
(cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \
for file in *; do \
if test -f $$file; then \
ln -s ../$$link/$$file
$(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \
fi; \
done); \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \
else \
if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \
:; \
else \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \
mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \
fi; \
fi; \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \
ln -s ../LC_MESSAGES/$(DOMAIN).mo
$(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \
ln $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo
$(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo 2>/dev/null || \
cp -p $(DESTDIR)$(localedir)/$$lang/LC_MESSAGES/$(DOMAIN).mo
$(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \
echo "installing $$realcat link as
$(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo"; \
fi; \
done; \
done
install-strip: install
installdirs: installdirs-exec installdirs-data
installdirs-exec:
installdirs-data: installdirs-data-yes
if test "$(PACKAGE)" = "gettext-tools"; then \
$(mkdir_p) $(DESTDIR)$(gettextsrcdir); \
else \
: ; \
fi
installdirs-data-no:
installdirs-data-yes:
$(mkdir_p) $(DESTDIR)$(datadir)
@catalogs='$(CATALOGS)'; \
for cat in $$catalogs; do \
cat=`basename $$cat`; \
lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \
dir=$(localedir)/$$lang/LC_MESSAGES; \
$(mkdir_p) $(DESTDIR)$$dir; \
for lc in '' $(EXTRA_LOCALE_CATEGORIES); do \
if test -n "$$lc"; then \
if (cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d $$lc
2>/dev/null) | grep ' -> ' >/dev/null; then \
link=`cd $(DESTDIR)$(localedir)/$$lang && LC_ALL=C ls -l -d
$$lc | sed -e 's/^.* -> //'`; \
mv $(DESTDIR)$(localedir)/$$lang/$$lc
$(DESTDIR)$(localedir)/$$lang/$$lc.old; \
mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \
(cd $(DESTDIR)$(localedir)/$$lang/$$lc.old && \
for file in *; do \
if test -f $$file; then \
ln -s ../$$link/$$file
$(DESTDIR)$(localedir)/$$lang/$$lc/$$file; \
fi; \
done); \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc.old; \
else \
if test -d $(DESTDIR)$(localedir)/$$lang/$$lc; then \
:; \
else \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc; \
mkdir $(DESTDIR)$(localedir)/$$lang/$$lc; \
fi; \
fi; \
fi; \
done; \
done
# Define this as empty until I found a useful application.
installcheck:
uninstall: uninstall-exec uninstall-data
uninstall-exec:
uninstall-data: uninstall-data-yes
if test "$(PACKAGE)" = "gettext-tools"; then \
for file in $(DISTFILES.common) Makevars.template; do \
rm -f $(DESTDIR)$(gettextsrcdir)/$$file; \
done; \
else \
: ; \
fi
uninstall-data-no:
uninstall-data-yes:
catalogs='$(CATALOGS)'; \
for cat in $$catalogs; do \
cat=`basename $$cat`; \
lang=`echo $$cat | sed -e 's/\.gmo$$//'`; \
for lc in LC_MESSAGES $(EXTRA_LOCALE_CATEGORIES); do \
rm -f $(DESTDIR)$(localedir)/$$lang/$$lc/$(DOMAIN).mo; \
done; \
done
check: all
info dvi ps pdf html tags TAGS ctags CTAGS ID:
mostlyclean:
rm -f remove-potcdate.sed
rm -f stamp-poT
rm -f core core.* $(DOMAIN).po $(DOMAIN).1po $(DOMAIN).2po *.new.po
rm -fr *.o
clean: mostlyclean
distclean: clean
rm -f Makefile Makefile.in POTFILES *.mo
maintainer-clean: distclean
@echo "This command is intended for maintainers to use;"
@echo "it deletes files that may require special tools to rebuild."
rm -f stamp-po $(GMOFILES)
distdir = $(top_builddir)/$(PACKAGE)-$(VERSION)/$(subdir)
dist distdir:
$(MAKE) update-po
@$(MAKE) dist2
# This is a separate target because 'update-po' must be executed before.
dist2: stamp-po $(DISTFILES)
dists="$(DISTFILES)"; \
if test "$(PACKAGE)" = "gettext-tools"; then \
dists="$$dists Makevars.template"; \
fi; \
if test -f $(srcdir)/$(DOMAIN).pot; then \
dists="$$dists $(DOMAIN).pot stamp-po"; \
fi; \
if test -f $(srcdir)/ChangeLog; then \
dists="$$dists ChangeLog"; \
fi; \
for i in 0 1 2 3 4 5 6 7 8 9; do \
if test -f $(srcdir)/ChangeLog.$$i; then \
dists="$$dists ChangeLog.$$i"; \
fi; \
done; \
if test -f $(srcdir)/LINGUAS; then dists="$$dists LINGUAS"; fi; \
for file in $$dists; do \
if test -f $$file; then \
cp -p $$file $(distdir) || exit 1; \
else \
cp -p $(srcdir)/$$file $(distdir) || exit 1; \
fi; \
done
update-po: Makefile
$(MAKE) $(DOMAIN).pot-update
test -z "$(UPDATEPOFILES)" || $(MAKE) $(UPDATEPOFILES)
$(MAKE) update-gmo
# General rule for creating PO files.
..nop.po-create:
@lang=`echo $@ | sed -e 's/\.po-create$$//'`; \
echo "File $$lang.po does not exist. If you are a translator, you can
create it through 'msginit'." 1>&2; \
exit 1
# General rule for updating PO files.
..nop.po-update:
@lang=`echo $@ | sed -e 's/\.po-update$$//'`; \
if test "$(PACKAGE)" = "gettext-tools"; then PATH=`pwd`/../src:$$PATH;
fi; \
tmpdir=`pwd`; \
echo "$$lang:"; \
test "$(srcdir)" = . && cdcmd="" || cdcmd="cd $(srcdir) && "; \
echo "$${cdcmd}$(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$lang.new.po"; \
cd $(srcdir); \
if $(MSGMERGE) $$lang.po $(DOMAIN).pot -o $$tmpdir/$$lang.new.po; then \
if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
rm -f $$tmpdir/$$lang.new.po; \
else \
if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \
:; \
else \
echo "msgmerge for $$lang.po failed: cannot move
$$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \
exit 1; \
fi; \
fi; \
else \
echo "msgmerge for $$lang.po failed!" 1>&2; \
rm -f $$tmpdir/$$lang.new.po; \
fi
$(DUMMYPOFILES):
update-gmo: Makefile $(GMOFILES)
@:
Makefile: Makefile.in.in Makevars $(top_builddir)/config.status POTFILES.in
LINGUAS
cd $(top_builddir) \
&& $(SHELL) ./config.status $(subdir)/[email protected] po-directories
force:
# Tell versions [3.59,3.63) of GNU make not to export all variables.
# Otherwise a system limit (for SysV at least) may be exceeded.
..NOEXPORT:
# DESKTOP_I18N_RULES (Do not edit or remove this line)
#####################################################################
# Makefile rules needed by the desktop-i18n tool.
# Copyright (C) 2009 Peter Brett <[email protected]>
#
# This program is free software; you can redistribute it and/or modify
# it under the terms of the GNU General Public License as published by
# the Free Software Foundation; either version 2 of the License, or
# (at your option) any later version.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place, Suite 330, Boston, MA 02111-1307 USA
top_builddir = ../..
MKDIR_P = /bin/mkdir -p
DESKTOP_I18N_LOCALE_DIR = $(top_builddir)/.desktop-i18n
# We need to temporarily install the localisation files somewhere so
# that desktop-i18n --create can look up messages in them. We recreate
# the timestamp before *and* after running 'make install' so that the
# make doesn't go into an infinite loop!
all: stamp-i18n
stamp-i18n: $(DESKTOP_I18N_LOCALE_DIR) stamp-po Makefile
@echo timestamp > stamp-i18nT && mv stamp-i18nT stamp-i18n
$(MAKE) prefix=$(DESKTOP_I18N_LOCALE_DIR) install && cp
$(srcdir)/LINGUAS $(DESKTOP_I18N_LOCALE_DIR)/$(DOMAIN).LINGUAS || rm
stamp-i18n
@echo timestamp > stamp-i18nT && mv stamp-i18nT stamp-i18n
$(DESKTOP_I18N_LOCALE_DIR):
$(MKDIR_P) $(DESKTOP_I18N_LOCALE_DIR)
clean: clean-i18n
clean-i18n:
-rm -rf $(DESKTOP_I18N_LOCALE_DIR) stamp-i18n
# End of desktop-i18n rules
#####################################################################
# Special Makefile rules for English message catalogs with quotation marks.
DISTFILES.common.extra1 = quot.sed boldquot.sed [email protected]
[email protected] insert-header.sin Rules-quot
..SUFFIXES: .insert-header .po-update-en
[email protected]:
$(MAKE) [email protected]
[email protected]:
$(MAKE) [email protected]
[email protected]: [email protected]
[email protected]: [email protected]
..insert-header.po-update-en:
@lang=`echo $@ | sed -e 's/\.po-update-en$$//'`; \
if test "$(PACKAGE)" = "gettext"; then PATH=`pwd`/../src:$$PATH;
GETTEXTLIBDIR=`cd $(top_srcdir)/src && pwd`; export GETTEXTLIBDIR; fi; \
tmpdir=`pwd`; \
echo "$$lang:"; \
ll=`echo $$lang | sed -e 's/@.*//'`; \
LC_ALL=C; export LC_ALL; \
cd $(srcdir); \
if $(MSGINIT) -i $(DOMAIN).pot --no-translator -l $$ll -o - 2>/dev/null
| sed -f $$tmpdir/$$lang.insert-header | $(MSGCONV) -t UTF-8 | $(MSGFILTER) sed
-f `echo $$lang | sed -e 's/.*@//'`.sed 2>/dev/null > $$tmpdir/$$lang.new.po;
then \
if cmp $$lang.po $$tmpdir/$$lang.new.po >/dev/null 2>&1; then \
rm -f $$tmpdir/$$lang.new.po; \
else \
if mv -f $$tmpdir/$$lang.new.po $$lang.po; then \
:; \
else \
echo "creation of $$lang.po failed: cannot move
$$tmpdir/$$lang.new.po to $$lang.po" 1>&2; \
exit 1; \
fi; \
fi; \
else \
echo "creation of $$lang.po failed!" 1>&2; \
rm -f $$tmpdir/$$lang.new.po; \
fi
[email protected]: insert-header.sin
sed -e '/^#/d' -e 's/HEADER/[email protected]/g'
$(srcdir)/insert-header.sin > [email protected]
[email protected]: insert-header.sin
sed -e '/^#/d' -e 's/HEADER/[email protected]/g'
$(srcdir)/insert-header.sin > [email protected]
mostlyclean: mostlyclean-quot
mostlyclean-quot:
rm -f *.insert-header
--- End Message ---
--- Begin Message ---
Source: debhelper
Source-Version: 7.4.7
We believe that the bug you reported is fixed in the latest version of
debhelper, which is due to be installed in the Debian FTP archive:
debhelper_7.4.7.dsc
to main/d/debhelper/debhelper_7.4.7.dsc
debhelper_7.4.7.tar.gz
to main/d/debhelper/debhelper_7.4.7.tar.gz
debhelper_7.4.7_all.deb
to main/d/debhelper/debhelper_7.4.7_all.deb
A summary of the changes between this version and the previous one is
attached.
Thank you for reporting the bug, which will now be closed. If you
have further comments please address them to [email protected],
and the maintainer will reopen the bug report if appropriate.
Debian distribution maintenance software
pp.
Joey Hess <[email protected]> (supplier of updated debhelper package)
(This message was generated automatically at their request; if you
believe that there is a problem with it please contact the archive
administrators by mailing [email protected])
-----BEGIN PGP SIGNED MESSAGE-----
Hash: SHA256
Format: 1.8
Date: Sat, 21 Nov 2009 13:35:22 -0500
Source: debhelper
Binary: debhelper
Architecture: source all
Version: 7.4.7
Distribution: unstable
Urgency: low
Maintainer: Joey Hess <[email protected]>
Changed-By: Joey Hess <[email protected]>
Description:
debhelper - helper programs for debian/rules
Closes: 557307
Changes:
debhelper (7.4.7) unstable; urgency=low
.
* make: Avoid infinite make recursion that occurrs when testing existence
of a target in a certian horribly broken makefile, by making the test stop
after it sees one line of output from make. (This may be better replaced
with dh's makefile parser in the future.) Closes: #557307
Checksums-Sha1:
540fd871767f5567218f715abe265bbca9a603a1 1547 debhelper_7.4.7.dsc
193f58e6bd835d31291be75d95e441328f19f2fa 348835 debhelper_7.4.7.tar.gz
85508d3ebeb2509c71144f8b7b717d3edf94e66b 457168 debhelper_7.4.7_all.deb
Checksums-Sha256:
0e1d2cce1034d335538b180e40119993ff053c0b5c21dbccaf1c4fbaf32e0a8e 1547
debhelper_7.4.7.dsc
7eead6e766c88d644ae0a70ebf229a265b0687107aa7a91c4fa272f744de50fd 348835
debhelper_7.4.7.tar.gz
eb32401768412988648672b4dd856359673bc04488064d2e1e3aa566789a4e35 457168
debhelper_7.4.7_all.deb
Files:
d187f497c37dd7c8ff7d04d2813d3bcd 1547 devel optional debhelper_7.4.7.dsc
abf44d62ff30a1c670de63e8fb41d0b3 348835 devel optional debhelper_7.4.7.tar.gz
29341a5f4abc1d198b178be03370b46a 457168 devel optional debhelper_7.4.7_all.deb
-----BEGIN PGP SIGNATURE-----
Version: GnuPG v1.4.10 (GNU/Linux)
iQIVAwUBSwg0BckQ2SIlEuPHAQjd+hAAqIk+4WbqoIRXeQBqpzdtSM2mlreTn15p
UeSUDUyGooKftwBOoNfGkRrPZP2DEpUeWWZuz7gqBphYLpeNO5xHfylJ69NCuRAg
/MWKpJUNOz8nrC+vBu6WAS9lwqM1WfYn0f5296rurWp+2eVL7fg++IDSI//P/ieL
+gupYFimcXLm5Zhh201hiwtiyh04yN4bK9Jg0fJ1o0b0gcPZePB3TIHclwd0ZlIq
gLhOCk7h5SRzWihBtFDCTIzAbj1SRdYewk41wKxWwuLv9SzHXZuFIaRbJ1pW8jyk
BjY1vVOqDKqOgdBBF3lmTosPGe/vcEWRE9h8WyLFX3R342RxU6zlbAh7IUOZhgyZ
JKB1OQZGjwpvHk3wkq2EOKUCJwCwh5LxDBK9/Z25namHMQdGHpmX+LKT+WHgNi6e
0TZcKDztj7uqd3OE/jz4UHse+N5dMdfixVJehqVbS+fP21sroqWhFaeB70+0RKhd
7Jsj4KblV3xg+XPsUz2ug2cyF66atBrgD0B/2gbqnH8P/QXUKOVDwumdwDMBy805
oI0uH5qvRB+sBzofd5JWS60BgdwRyVKAljOCEbMlG9Mxn+dlIeFAX81PJ0fTAQ0j
WRyJglw/iy4Q+xm8EMJax3tBNbP7mzZPwoVsDwCLs6P3qbXrlfaipQx4o2yC05w4
/ZSUr8E7AXg=
=Cm/8
-----END PGP SIGNATURE-----
--- End Message ---