Patchwork [PATCHv2,2/2] gettext: move remove-potcdate.sin from gettext-native to gettext-minimal-native

login
register
mail settings
Submitter Martin Jansa
Date Dec. 12, 2012, 11:48 p.m.
Message ID <1355356120-20313-1-git-send-email-Martin.Jansa@gmail.com>
Download mbox | patch
Permalink /patch/40863/
State Superseded, archived
Headers show

Comments

Martin Jansa - Dec. 12, 2012, 11:48 p.m.
* now autotools.bbclass are copying not only Makefile.in.in but also 
  remove-potcdate.sin which is used by Makefile.in.in, so we need to
  provide this file already in gettext-minimal-native otherwise build 
  can fail, when autotools.bbclass is used before gettext-native (full) 
  is built.

Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
---

 v2: only commit message

 .../gettext-minimal-0.18.1.1/remove-potcdate.sin      | 19 +++++++++++++++++++
 .../gettext/gettext-minimal-native_0.18.1.1.bb        |  4 +++-
 meta/recipes-core/gettext/gettext_0.18.1.1.bb         |  3 ++-
 3 files changed, 24 insertions(+), 2 deletions(-)
 create mode 100644 meta/recipes-core/gettext/gettext-minimal-0.18.1.1/remove-potcdate.sin
Martin Jansa - Dec. 13, 2012, 6:14 p.m.
On Thu, Dec 13, 2012 at 12:48:40AM +0100, Martin Jansa wrote:
> * now autotools.bbclass are copying not only Makefile.in.in but also 
>   remove-potcdate.sin which is used by Makefile.in.in, so we need to
>   provide this file already in gettext-minimal-native otherwise build 
>   can fail, when autotools.bbclass is used before gettext-native (full) 
>   is built.
> 
> Signed-off-by: Martin Jansa <Martin.Jansa@gmail.com>
> ---
> 
>  v2: only commit message

Please be aware that this needs one manual step.

clean gettext-native before upgrading gettext-minimal-native
or
clean gettext-minimal-native after gettext-native was rebuilt

Without this manual step it will cause missing remove-potcdate.sin in
native sysroot, because

1) gettext-minimal-native_0.18.1.1.bb installs it with warning:
   WARNING: The recipe gettext-minimal-native is trying to install files
   into a shared area when those files already exist. Those files and their
   manifest location are:
      /OE/oe-core/tmp-eglibc/sysroots/x86_64-linux/usr/share/gettext/po/remove-potcdate.sin
      Matched in manifest-x86_64-gettext-native
   Please verify which package should provide the above files.

2) building gettext-native will clean its own sstate data from sysroot
   including remove-potcdate.sin because it was part of gettext-native
   before, then installs without error, but also without remove-potcdate.sin

It's the same problem as with config.rpath before:
http://lists.linuxtogo.org/pipermail/openembedded-core/2012-October/031120.html

Cheers,

> 
>  .../gettext-minimal-0.18.1.1/remove-potcdate.sin      | 19 +++++++++++++++++++
>  .../gettext/gettext-minimal-native_0.18.1.1.bb        |  4 +++-
>  meta/recipes-core/gettext/gettext_0.18.1.1.bb         |  3 ++-
>  3 files changed, 24 insertions(+), 2 deletions(-)
>  create mode 100644 meta/recipes-core/gettext/gettext-minimal-0.18.1.1/remove-potcdate.sin
> 
> diff --git a/meta/recipes-core/gettext/gettext-minimal-0.18.1.1/remove-potcdate.sin b/meta/recipes-core/gettext/gettext-minimal-0.18.1.1/remove-potcdate.sin
> new file mode 100644
> index 0000000..2436c49
> --- /dev/null
> +++ b/meta/recipes-core/gettext/gettext-minimal-0.18.1.1/remove-potcdate.sin
> @@ -0,0 +1,19 @@
> +# Sed script that remove the POT-Creation-Date line in the header entry
> +# from a POT file.
> +#
> +# The distinction between the first and the following occurrences of the
> +# pattern is achieved by looking at the hold space.
> +/^"POT-Creation-Date: .*"$/{
> +x
> +# Test if the hold space is empty.
> +s/P/P/
> +ta
> +# Yes it was empty. First occurrence. Remove the line.
> +g
> +d
> +bb
> +:a
> +# The hold space was nonempty. Following occurrences. Do nothing.
> +x
> +:b
> +}
> diff --git a/meta/recipes-core/gettext/gettext-minimal-native_0.18.1.1.bb b/meta/recipes-core/gettext/gettext-minimal-native_0.18.1.1.bb
> index a46a40d..f008a79 100644
> --- a/meta/recipes-core/gettext/gettext-minimal-native_0.18.1.1.bb
> +++ b/meta/recipes-core/gettext/gettext-minimal-native_0.18.1.1.bb
> @@ -1,6 +1,7 @@
>  SRC_URI = "file://aclocal.tgz \
>             file://config.rpath \
>             file://Makefile.in.in \
> +           file://remove-potcdate.sin \
>             file://COPYING"
>  
>  INHIBIT_DEFAULT_DEPS = "1"
> @@ -11,7 +12,7 @@ LIC_FILES_CHKSUM = "file://COPYING;md5=0854da868a929923087141d9d7aba7d5"
>  
>  inherit native
>  
> -PR = "r4"
> +PR = "r5"
>  
>  S = "${WORKDIR}"
>  
> @@ -21,4 +22,5 @@ do_install () {
>  	install -d ${D}${datadir}/gettext/po/
>  	cp ${WORKDIR}/config.rpath ${D}${datadir}/gettext/
>  	cp ${WORKDIR}/Makefile.in.in ${D}${datadir}/gettext/po/
> +	cp ${WORKDIR}/remove-potcdate.sin ${D}${datadir}/gettext/po/
>  }
> diff --git a/meta/recipes-core/gettext/gettext_0.18.1.1.bb b/meta/recipes-core/gettext/gettext_0.18.1.1.bb
> index c3265e1..4639481 100644
> --- a/meta/recipes-core/gettext/gettext_0.18.1.1.bb
> +++ b/meta/recipes-core/gettext/gettext_0.18.1.1.bb
> @@ -5,7 +5,7 @@ SECTION = "libs"
>  LICENSE = "GPLv3+ & LGPL-2.1+"
>  LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
>  
> -PR = "r18"
> +PR = "r19"
>  DEPENDS = "gettext-native virtual/libiconv ncurses expat"
>  DEPENDS_class-native = "gettext-minimal-native"
>  PROVIDES = "virtual/libintl virtual/gettext"
> @@ -104,6 +104,7 @@ do_install_append_class-native () {
>  	rm ${D}${datadir}/aclocal/*
>  	rm ${D}${datadir}/gettext/config.rpath
>  	rm ${D}${datadir}/gettext/po/Makefile.in.in
> +	rm ${D}${datadir}/gettext/po/remove-potcdate.sin
>  }
>  
>  BBCLASSEXTEND = "native nativesdk"
> -- 
> 1.8.0
>

Patch

diff --git a/meta/recipes-core/gettext/gettext-minimal-0.18.1.1/remove-potcdate.sin b/meta/recipes-core/gettext/gettext-minimal-0.18.1.1/remove-potcdate.sin
new file mode 100644
index 0000000..2436c49
--- /dev/null
+++ b/meta/recipes-core/gettext/gettext-minimal-0.18.1.1/remove-potcdate.sin
@@ -0,0 +1,19 @@ 
+# Sed script that remove the POT-Creation-Date line in the header entry
+# from a POT file.
+#
+# The distinction between the first and the following occurrences of the
+# pattern is achieved by looking at the hold space.
+/^"POT-Creation-Date: .*"$/{
+x
+# Test if the hold space is empty.
+s/P/P/
+ta
+# Yes it was empty. First occurrence. Remove the line.
+g
+d
+bb
+:a
+# The hold space was nonempty. Following occurrences. Do nothing.
+x
+:b
+}
diff --git a/meta/recipes-core/gettext/gettext-minimal-native_0.18.1.1.bb b/meta/recipes-core/gettext/gettext-minimal-native_0.18.1.1.bb
index a46a40d..f008a79 100644
--- a/meta/recipes-core/gettext/gettext-minimal-native_0.18.1.1.bb
+++ b/meta/recipes-core/gettext/gettext-minimal-native_0.18.1.1.bb
@@ -1,6 +1,7 @@ 
 SRC_URI = "file://aclocal.tgz \
            file://config.rpath \
            file://Makefile.in.in \
+           file://remove-potcdate.sin \
            file://COPYING"
 
 INHIBIT_DEFAULT_DEPS = "1"
@@ -11,7 +12,7 @@  LIC_FILES_CHKSUM = "file://COPYING;md5=0854da868a929923087141d9d7aba7d5"
 
 inherit native
 
-PR = "r4"
+PR = "r5"
 
 S = "${WORKDIR}"
 
@@ -21,4 +22,5 @@  do_install () {
 	install -d ${D}${datadir}/gettext/po/
 	cp ${WORKDIR}/config.rpath ${D}${datadir}/gettext/
 	cp ${WORKDIR}/Makefile.in.in ${D}${datadir}/gettext/po/
+	cp ${WORKDIR}/remove-potcdate.sin ${D}${datadir}/gettext/po/
 }
diff --git a/meta/recipes-core/gettext/gettext_0.18.1.1.bb b/meta/recipes-core/gettext/gettext_0.18.1.1.bb
index c3265e1..4639481 100644
--- a/meta/recipes-core/gettext/gettext_0.18.1.1.bb
+++ b/meta/recipes-core/gettext/gettext_0.18.1.1.bb
@@ -5,7 +5,7 @@  SECTION = "libs"
 LICENSE = "GPLv3+ & LGPL-2.1+"
 LIC_FILES_CHKSUM = "file://COPYING;md5=d32239bcb673463ab874e80d47fae504"
 
-PR = "r18"
+PR = "r19"
 DEPENDS = "gettext-native virtual/libiconv ncurses expat"
 DEPENDS_class-native = "gettext-minimal-native"
 PROVIDES = "virtual/libintl virtual/gettext"
@@ -104,6 +104,7 @@  do_install_append_class-native () {
 	rm ${D}${datadir}/aclocal/*
 	rm ${D}${datadir}/gettext/config.rpath
 	rm ${D}${datadir}/gettext/po/Makefile.in.in
+	rm ${D}${datadir}/gettext/po/remove-potcdate.sin
 }
 
 BBCLASSEXTEND = "native nativesdk"