]> git.ipfire.org Git - thirdparty/gettext.git/commitdiff
intl: Make the LCOV workaround non-intrusive
authorDaiki Ueno <ueno@gnu.org>
Thu, 4 Dec 2014 02:59:53 +0000 (11:59 +0900)
committerDaiki Ueno <ueno@gnu.org>
Thu, 4 Dec 2014 03:00:36 +0000 (12:00 +0900)
* gettext-runtime/intl/Makefile.in (PLURAL_OBJECT): New variable.
(OBJECTS): Refer to $(PLURAL_OBJECT) instead of plural.$lo.
(pluralx.c, pluralx.lo): New rule.
(mostlyclean): Remove pluralx.c.
* gettext-tools/configure.ac: Replace PLURAL_OBJECT in intl/Makefile.

gettext-runtime/intl/ChangeLog
gettext-runtime/intl/Makefile.in
gettext-tools/ChangeLog
gettext-tools/configure.ac

index d4cc23b10131e11eee689f0a181ef9b6a57fdf78..6a4517e021d1b62cceee0360ad214ce0b493b265 100644 (file)
@@ -1,3 +1,11 @@
+2014-12-04  Daiki Ueno  <ueno@gnu.org>
+
+       intl: Make the LCOV workaround non-intrusive
+       * Makefile.in (PLURAL_OBJECT): New variable.
+       (OBJECTS): Refer to $(PLURAL_OBJECT) instead of plural.$lo.
+       (pluralx.c, pluralx.lo): New rule.
+       (mostlyclean): Remove pluralx.c.
+
 2014-12-03  Daiki Ueno  <ueno@gnu.org>
 
        intl: Work around LCOV relative base directory resolution
index 836a867704ea340262c4a02ce310c8739dcbb6aa..d18a99f8194687286620b68e890a54890203c793 100644 (file)
@@ -112,6 +112,10 @@ LIBS = @LIBS@
 
 COMPILE = $(CC) -c $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CFLAGS) $(XCFLAGS)
 
+# This line will be replaced with pluralx.$lo, when this file is used
+# in gettext-tools/intl/.  See the pluralx.lo rule below for the rationale.
+PLURAL_OBJECT = plural.$lo
+
 HEADERS = \
   gmo.h \
   gettextP.h \
@@ -179,7 +183,7 @@ OBJECTS = \
   dcngettext.$lo \
   dngettext.$lo \
   ngettext.$lo \
-  plural.$lo \
+  $(PLURAL_OBJECT) \
   plural-exp.$lo \
   localcharset.$lo \
   threadlib.$lo \
@@ -277,13 +281,15 @@ dngettext.lo: $(srcdir)/dngettext.c
        $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC --mode=compile $(COMPILE) $(srcdir)/dngettext.c
 ngettext.lo: $(srcdir)/ngettext.c
        $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC --mode=compile $(COMPILE) $(srcdir)/ngettext.c
+plural.lo: $(srcdir)/plural.c
+       $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC --mode=compile $(COMPILE) $(srcdir)/plural.c
 # $(srcdir)/plural.c contains a relative file name of the Bison source.
-# That could mess up gcov when the C source file is referred to from a
+# That could mess up LCOV when the C source file is referred to from a
 # different base directory.
-plural.lo: $(srcdir)/plural.c
-       $(AM_V_GEN)test "$(srcdir)" = . || \
-         sed -e 's|^#line \([0-9]*\) "\(plural\.[cy]\)"|#line \1 "$(srcdir)/\2"|' < $(srcdir)/plural.c > plural.c
-       $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC --mode=compile $(COMPILE) plural.c
+pluralx.c: $(srcdir)/plural.c
+       $(AM_V_GEN)sed -e 's|^#line \([0-9]*\) "\(plural\.[cy]\)"|#line \1 "$(srcdir)/\2"|' < $(srcdir)/plural.c > $@
+pluralx.lo: pluralx.c
+       $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC --mode=compile $(COMPILE) pluralx.c
 plural-exp.lo: $(srcdir)/plural-exp.c
        $(AM_V_CC)$(LIBTOOL) $(AM_V_lt) --tag=CC --mode=compile $(COMPILE) $(srcdir)/plural-exp.c
 localcharset.lo: $(srcdir)/localcharset.c
@@ -589,7 +595,7 @@ bindtextdom.$lo dcgettext.$lo dcigettext.$lo dcngettext.$lo dgettext.$lo dngette
 localename.$lo: $(srcdir)/gettextP.h
 hash-string.$lo dcigettext.$lo loadmsgcat.$lo: $(srcdir)/hash-string.h
 explodename.$lo l10nflist.$lo: $(srcdir)/loadinfo.h
-dcigettext.$lo loadmsgcat.$lo plural.$lo plural-exp.$lo: $(srcdir)/plural-exp.h
+dcigettext.$lo loadmsgcat.$lo $(PLURAL_OBJECT) plural-exp.$lo: $(srcdir)/plural-exp.h
 dcigettext.$lo: $(srcdir)/eval-plural.h
 localcharset.$lo: $(srcdir)/localcharset.h
 bindtextdom.$lo dcigettext.$lo finddomain.$lo loadmsgcat.$lo localealias.$lo lock.$lo log.$lo: $(srcdir)/lock.h
@@ -621,7 +627,7 @@ mostlyclean:
        rm -f *.a *.la *.o *.obj *.lo core core.*
        rm -f libgnuintl.h libintl.h charset.alias ref-add.sed ref-del.sed
        rm -f -r .libs _libs
-       test "$(srcdir)" = . || rm -f plural.c
+       rm -f pluralx.c
 
 clean: mostlyclean
 
index f3c94b2ade65465b9e8796899f12a3cafcaf88f0..cd3f2e8aaa4978d39038c5b5c7c8e23f62e22407 100644 (file)
@@ -1,3 +1,8 @@
+2014-12-04  Daiki Ueno  <ueno@gnu.org>
+
+       intl: Make the LCOV workaround non-intrusive
+       * configure.ac: Replace PLURAL_OBJECT in intl/Makefile.
+
 2014-10-15  Daiki Ueno  <ueno@gnu.org>
 
        * gettext 0.19.3 released.
index 650bd311317797815f99d867546f6e999891e577..26a2aaa83184aead68d5f2139465bec6385f3797 100644 (file)
@@ -508,8 +508,10 @@ AC_CONFIG_FILES([doc/Makefile])
 
 AC_CONFIG_FILES([intl/Makefile:../gettext-runtime/intl/Makefile.in], [
   # Change srcdir variable so that it points to ../gettext-runtime/intl.
+  # Change PLURAL_OBJECT variable so that pluralx.c is used instead of plural.c.
   sed -e 's|^srcdir =.*$|srcdir = $(top_srcdir)/../gettext-runtime/intl|' \
       -e 's|^VPATH =.*$||' \
+      -e 's|^PLURAL_OBJECT = .*$|PLURAL_OBJECT = pluralx.\$lo|' \
     < intl/Makefile > intl/Makefile.tmp
   mv intl/Makefile.tmp intl/Makefile
   ])