Patchwork package/rpi-userland: update to fix no-longer applying patch

login
register
mail settings
Submitter Yann E. MORIN
Date Feb. 10, 2013, 11:58 a.m.
Message ID <1360497506-31282-1-git-send-email-yann.morin.1998@free.fr>
Download mbox | patch
Permalink /patch/219490/
State Accepted
Commit 6056de8971bf25c9853c38583dc50b5abcb982de
Headers show

Comments

Yann E. MORIN - Feb. 10, 2013, 11:58 a.m.
Our patches do not apply as-is against the version of rpi-userland we
package (weird...).

Since rpi-userland does not have releases, and is a relatively fast-moving
target, just bump the version to the latest cset from the git tree, and
get rid of one our failing patch, since it was applied upstream.

Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
Cc: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
---
 ...0002-Test-for-the-existence-of-execinfo-h.patch |   69 --------------------
 package/rpi-userland/rpi-userland.mk               |    2 +-
 2 files changed, 1 insertions(+), 70 deletions(-)
 delete mode 100644 package/rpi-userland/rpi-userland-0002-Test-for-the-existence-of-execinfo-h.patch
Maxime Hadjinlian - Feb. 10, 2013, 12:17 p.m.
Hi all,

I haven't tested this patch yet, but it seems all good.
The inclusion of Floris Bos's patch was done by this commit :
https://github.com/raspberrypi/userland/commit/f7b1cad78497c65e59715d78be2b4fc9c63708c1

As Yann noted, I find interesting that the patch did not apply
although we haven't bumped the version... I'll try to look into that.


On Sun, Feb 10, 2013 at 12:58 PM, Yann E. MORIN <yann.morin.1998@free.fr> wrote:
> Our patches do not apply as-is against the version of rpi-userland we
> package (weird...).
>
> Since rpi-userland does not have releases, and is a relatively fast-moving
> target, just bump the version to the latest cset from the git tree, and
> get rid of one our failing patch, since it was applied upstream.
>
> Signed-off-by: "Yann E. MORIN" <yann.morin.1998@free.fr>
> Cc: Maxime Hadjinlian <maxime.hadjinlian@gmail.com>
> ---
>  ...0002-Test-for-the-existence-of-execinfo-h.patch |   69 --------------------
>  package/rpi-userland/rpi-userland.mk               |    2 +-
>  2 files changed, 1 insertions(+), 70 deletions(-)
>  delete mode 100644 package/rpi-userland/rpi-userland-0002-Test-for-the-existence-of-execinfo-h.patch
>
> diff --git a/package/rpi-userland/rpi-userland-0002-Test-for-the-existence-of-execinfo-h.patch b/package/rpi-userland/rpi-userland-0002-Test-for-the-existence-of-execinfo-h.patch
> deleted file mode 100644
> index ccc67d9..0000000
> --- a/package/rpi-userland/rpi-userland-0002-Test-for-the-existence-of-execinfo-h.patch
> +++ /dev/null
> @@ -1,69 +0,0 @@
> -From 93ae1bcd8005216baf7361ba860b53a2cf2e0401 Mon Sep 17 00:00:00 2001
> -From: Floris Bos <bos@je-eigen-domein.nl>
> -Date: Sun, 25 Nov 2012 19:05:07 +0100
> -Subject: [PATCH] Test for the existence of execinfo.h
> -
> -Previous code assumed that on Linux the execinfo.h functions are always available, which is a glibc extension.
> -This change fixes building the library under buildroot, which uses uClibc by default
> ----
> - interface/vcos/glibc/vcos_backtrace.c |    7 +++++--
> - makefiles/cmake/arm-linux.cmake       |    4 ++++
> - makefiles/cmake/cmake_config.h.in     |    3 +++
> - 3 files changed, 12 insertions(+), 2 deletions(-)
> -
> -diff --git a/interface/vcos/glibc/vcos_backtrace.c b/interface/vcos/glibc/vcos_backtrace.c
> -index 474a328..3bb8aa3 100644
> ---- a/interface/vcos/glibc/vcos_backtrace.c
> -+++ b/interface/vcos/glibc/vcos_backtrace.c
> -@@ -26,7 +26,10 @@
> - */
> -
> - #include <interface/vcos/vcos.h>
> --#ifdef __linux__
> -+#ifdef HAVE_CMAKE_CONFIG
> -+#include "cmake_config.h"
> -+#endif
> -+#ifdef HAVE_EXECINFO_H
> - #include <execinfo.h>
> - #endif
> - #include <stdio.h>
> -@@ -35,7 +38,7 @@
> -
> - void vcos_backtrace_self(void)
> - {
> --#ifdef __linux__
> -+#ifdef HAVE_EXECINFO_H
> -    void *stack[64];
> -    int depth = backtrace(stack, sizeof(stack)/sizeof(stack[0]));
> -    char **names = backtrace_symbols(stack, depth);
> -diff --git a/makefiles/cmake/arm-linux.cmake b/makefiles/cmake/arm-linux.cmake
> -index 89d8bbf..6f2114f 100644
> ---- a/makefiles/cmake/arm-linux.cmake
> -+++ b/makefiles/cmake/arm-linux.cmake
> -@@ -115,6 +115,10 @@ try_compile(HAVE_MTRACE
> -             ${CMAKE_SOURCE_DIR}/makefiles/cmake/srcs/test-mtrace.c
> -             OUTPUT_VARIABLE foo)
> -
> -+# test for existence of execinfo.h header
> -+include(CheckIncludeFile)
> -+check_include_file(execinfo.h HAVE_EXECINFO_H)
> -+
> - add_definitions(-DHAVE_CMAKE_CONFIG)
> - configure_file (
> -     "makefiles/cmake/cmake_config.h.in"
> -diff --git a/makefiles/cmake/cmake_config.h.in b/makefiles/cmake/cmake_config.h.in
> -index 5f08ad5..080b8e8 100644
> ---- a/makefiles/cmake/cmake_config.h.in
> -+++ b/makefiles/cmake/cmake_config.h.in
> -@@ -8,5 +8,8 @@
> - /** Do we have support for GLIBC mtrace() ? */
> - #cmakedefine                    HAVE_MTRACE
> -
> -+/** Do we have the execinfo.h include file ? */
> -+#cmakedefine                    HAVE_EXECINFO_H
> -+
> - #endif
> -
> ---
> -1.7.10
> -
> diff --git a/package/rpi-userland/rpi-userland.mk b/package/rpi-userland/rpi-userland.mk
> index ece37d4..522a97f 100644
> --- a/package/rpi-userland/rpi-userland.mk
> +++ b/package/rpi-userland/rpi-userland.mk
> @@ -4,7 +4,7 @@
>  #
>  #############################################################
>
> -RPI_USERLAND_VERSION = 9852ce28826889e50c4d6786b942f51bccccac54
> +RPI_USERLAND_VERSION = 5e9a740a88a889dfc8a18bb1b00c17e5dd9d0108
>  RPI_USERLAND_SITE = http://github.com/raspberrypi/userland/tarball/master
>  RPI_USERLAND_LICENSE = BSD-3c
>  RPI_USERLAND_LICENSE_FILE = LICENCE
> --
> 1.7.2.5
>
Peter Korsgaard - Feb. 10, 2013, 12:59 p.m.
>>>>> "Yann" == Yann E MORIN <yann.morin.1998@free.fr> writes:

 Yann> Our patches do not apply as-is against the version of
 Yann> rpi-userland we package (weird...).

Committed, thanks.
Floris Bos - Feb. 10, 2013, 1:24 p.m.
On 02/10/2013 12:58 PM, Yann E. MORIN wrote:
> Our patches do not apply as-is against the version of rpi-userland we
> package (weird...).

RPI_USERLAND_SITE = http://github.com/raspberrypi/userland/tarball/master

Shouldn't that be something like this?

RPI_USERLAND_SITE = 
http://github.com/raspberrypi/userland/tarball/$(RPI_USERLAND_VERSION)


Yours sincerely,

Floris Bos
Maxime Hadjinlian - Feb. 10, 2013, 2:14 p.m.
On Sun, Feb 10, 2013 at 2:24 PM, Floris Bos <bos@je-eigen-domein.nl> wrote:
> On 02/10/2013 12:58 PM, Yann E. MORIN wrote:
>>
>> Our patches do not apply as-is against the version of rpi-userland we
>> package (weird...).
>
>
> RPI_USERLAND_SITE = http://github.com/raspberrypi/userland/tarball/master
>
> Shouldn't that be something like this?
>
> RPI_USERLAND_SITE =
> http://github.com/raspberrypi/userland/tarball/$(RPI_USERLAND_VERSION)
>
You are using the version variable only if the projects has tag, which
this one hasn't.
Then, you are forced to use sha1 version, then you give the branch
where this sha1 can be found.
As specified in the doc :
http://buildroot.uclibc.org/downloads/manual/manual.html#github-download-url

It appears to be correct but still seem to not work as expected.
>
> Yours sincerely,
>
> Floris Bos
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
Floris Bos - Feb. 10, 2013, 2:51 p.m.
On 02/10/2013 03:14 PM, Maxime Hadjinlian wrote:
> On Sun, Feb 10, 2013 at 2:24 PM, Floris Bos <bos@je-eigen-domein.nl> wrote:
>> On 02/10/2013 12:58 PM, Yann E. MORIN wrote:
>>> Our patches do not apply as-is against the version of rpi-userland we
>>> package (weird...).
>>
>> RPI_USERLAND_SITE = http://github.com/raspberrypi/userland/tarball/master
>>
>> Shouldn't that be something like this?
>>
>> RPI_USERLAND_SITE =
>> http://github.com/raspberrypi/userland/tarball/$(RPI_USERLAND_VERSION)
>>
> You are using the version variable only if the projects has tag, which
> this one hasn't.
> Then, you are forced to use sha1 version, then you give the branch
> where this sha1 can be found.
> As specified in the doc :
> http://buildroot.uclibc.org/downloads/manual/manual.html#github-download-url

Documentation is incorrect/outdated.

Github only looks at the folder name, ignores the filename, and will 
redirect you to 
https://nodeload.github.com/raspberrypi/userland/legacy.tar.gz/master

==
--2013-02-10 15:42:21-- 
http://github.com/raspberrypi/userland/tarball/master/rpi-userland-9852ce28826889e50c4d6786b942f51bccccac54.tar.gz
Resolving github.com (github.com)... 207.97.227.239
Connecting to github.com (github.com)|207.97.227.239|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: 
https://github.com/raspberrypi/userland/tarball/master/rpi-userland-9852ce28826889e50c4d6786b942f51bccccac54.tar.gz 
[following]
--2013-02-10 15:42:21-- 
https://github.com/raspberrypi/userland/tarball/master/rpi-userland-9852ce28826889e50c4d6786b942f51bccccac54.tar.gz
Connecting to github.com (github.com)|207.97.227.239|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: 
https://nodeload.github.com/raspberrypi/userland/legacy.tar.gz/master 
[following]
--2013-02-10 15:42:21-- 
https://nodeload.github.com/raspberrypi/userland/legacy.tar.gz/master
==



With 
"RPI_USERLAND_SITE=http://github.com/raspberrypi/userland/tarball/$(RPI_USERLAND_VERSION)" 
it does work:

==
--2013-02-10 15:45:53-- 
http://github.com/raspberrypi/userland/tarball/9852ce28826889e50c4d6786b942f51bccccac54/rpi-userland-9852ce28826889e50c4d6786b942f51bccccac54.tar.gz
Resolving github.com (github.com)... 207.97.227.239
Connecting to github.com (github.com)|207.97.227.239|:80... connected.
HTTP request sent, awaiting response... 301 Moved Permanently
Location: 
https://github.com/raspberrypi/userland/tarball/9852ce28826889e50c4d6786b942f51bccccac54/rpi-userland-9852ce28826889e50c4d6786b942f51bccccac54.tar.gz 
[following]
--2013-02-10 15:45:53-- 
https://github.com/raspberrypi/userland/tarball/9852ce28826889e50c4d6786b942f51bccccac54/rpi-userland-9852ce28826889e50c4d6786b942f51bccccac54.tar.gz
Connecting to github.com (github.com)|207.97.227.239|:443... connected.
HTTP request sent, awaiting response... 302 Found
Location: 
https://nodeload.github.com/raspberrypi/userland/legacy.tar.gz/9852ce28826889e50c4d6786b942f51bccccac54 
[following]
--2013-02-10 15:45:53-- 
https://nodeload.github.com/raspberrypi/userland/legacy.tar.gz/9852ce28826889e50c4d6786b942f51bccccac54
Resolving nodeload.github.com (nodeload.github.com)... 207.97.227.252
Connecting to nodeload.github.com 
(nodeload.github.com)|207.97.227.252|:443... connected.
HTTP request sent, awaiting response... 200 OK
Length: 32085513 (31M) [application/x-gzip]
==


Yours sincerely,

Floris Bos
Samuel Martin - Feb. 10, 2013, 3:10 p.m.
Hi all,

2013/2/10 Floris Bos <bos@je-eigen-domein.nl>:
> On 02/10/2013 03:14 PM, Maxime Hadjinlian wrote:
>>
>> On Sun, Feb 10, 2013 at 2:24 PM, Floris Bos <bos@je-eigen-domein.nl>
>> wrote:
>>>
>>> On 02/10/2013 12:58 PM, Yann E. MORIN wrote:
>>>>
>>>> Our patches do not apply as-is against the version of rpi-userland we
>>>> package (weird...).
>>>
>>>
>>> RPI_USERLAND_SITE = http://github.com/raspberrypi/userland/tarball/master
>>>
>>> Shouldn't that be something like this?
>>>
>>> RPI_USERLAND_SITE =
>>> http://github.com/raspberrypi/userland/tarball/$(RPI_USERLAND_VERSION)
>>>
>> You are using the version variable only if the projects has tag, which
>> this one hasn't.
>> Then, you are forced to use sha1 version, then you give the branch
>> where this sha1 can be found.
>> As specified in the doc :
>>
>> http://buildroot.uclibc.org/downloads/manual/manual.html#github-download-url
>
>
> Documentation is incorrect/outdated.
>
> Github only looks at the folder name, ignores the filename, and will
> redirect you to
> https://nodeload.github.com/raspberrypi/userland/legacy.tar.gz/master
>
[...]
>
> With
> "RPI_USERLAND_SITE=http://github.com/raspberrypi/userland/tarball/$(RPI_USERLAND_VERSION)"
> it does work:
[...]

Fair enough.
Care to fix/update the doc?

Also, rpi-userland is not the only package fetched from github...
So patches for all other potentially broken packages will be welcome as well.

Regards,
Maxime Hadjinlian - Feb. 10, 2013, 3:13 p.m.
On Sun, Feb 10, 2013 at 4:10 PM, Samuel Martin <s.martin49@gmail.com> wrote:
> Hi all,
>
> 2013/2/10 Floris Bos <bos@je-eigen-domein.nl>:
>> On 02/10/2013 03:14 PM, Maxime Hadjinlian wrote:
>>>
>>> On Sun, Feb 10, 2013 at 2:24 PM, Floris Bos <bos@je-eigen-domein.nl>
>>> wrote:
>>>>
>>>> On 02/10/2013 12:58 PM, Yann E. MORIN wrote:
>>>>>
>>>>> Our patches do not apply as-is against the version of rpi-userland we
>>>>> package (weird...).
>>>>
>>>>
>>>> RPI_USERLAND_SITE = http://github.com/raspberrypi/userland/tarball/master
>>>>
>>>> Shouldn't that be something like this?
>>>>
>>>> RPI_USERLAND_SITE =
>>>> http://github.com/raspberrypi/userland/tarball/$(RPI_USERLAND_VERSION)
>>>>
>>> You are using the version variable only if the projects has tag, which
>>> this one hasn't.
>>> Then, you are forced to use sha1 version, then you give the branch
>>> where this sha1 can be found.
>>> As specified in the doc :
>>>
>>> http://buildroot.uclibc.org/downloads/manual/manual.html#github-download-url
>>
>>
>> Documentation is incorrect/outdated.
>>
>> Github only looks at the folder name, ignores the filename, and will
>> redirect you to
>> https://nodeload.github.com/raspberrypi/userland/legacy.tar.gz/master
>>
> [...]
>>
>> With
>> "RPI_USERLAND_SITE=http://github.com/raspberrypi/userland/tarball/$(RPI_USERLAND_VERSION)"
>> it does work:
> [...]
>
Indeed, thanks for finding this.

> Fair enough.
> Care to fix/update the doc?
>
> Also, rpi-userland is not the only package fetched from github...
> So patches for all other potentially broken packages will be welcome as well.
Yep, we should do a little grep magic here to find all the possible
incorrect packages.
>
> Regards,
>
> --
> Samuel
> _______________________________________________
> buildroot mailing list
> buildroot@busybox.net
> http://lists.busybox.net/mailman/listinfo/buildroot
Floris Bos - Feb. 10, 2013, 3:28 p.m.
On 02/10/2013 04:10 PM, Samuel Martin wrote:
> Documentation is incorrect/outdated.
>
> Github only looks at the folder name, ignores the filename, and will
> redirect you to
> https://nodeload.github.com/raspberrypi/userland/legacy.tar.gz/master
>
> [...]
>> With
>> "RPI_USERLAND_SITE=http://github.com/raspberrypi/userland/tarball/$(RPI_USERLAND_VERSION)"
>> it does work:
> [...]
>
> Fair enough.
> Care to fix/update the doc?
>
> Also, rpi-userland is not the only package fetched from github...
> So patches for all other potentially broken packages will be welcome as well.

Problem is that if they were to change their tarball URLs in the future, 
it would break all github packages again.
Wonder if it wouldn't be a better long term solution to have some kind 
of abstraction for github (and perhaps sourceforge) packages.

E.g. specify "FOO_SITE=github://foopackage" in the package's makefile, 
and add a special DOWNLOAD_GITHUB helper routine in pkg-download.mk
So we would only need to update pkg-download.mk if it were to change again.


Yours sincerely,

Floris Bos

Patch

diff --git a/package/rpi-userland/rpi-userland-0002-Test-for-the-existence-of-execinfo-h.patch b/package/rpi-userland/rpi-userland-0002-Test-for-the-existence-of-execinfo-h.patch
deleted file mode 100644
index ccc67d9..0000000
--- a/package/rpi-userland/rpi-userland-0002-Test-for-the-existence-of-execinfo-h.patch
+++ /dev/null
@@ -1,69 +0,0 @@ 
-From 93ae1bcd8005216baf7361ba860b53a2cf2e0401 Mon Sep 17 00:00:00 2001
-From: Floris Bos <bos@je-eigen-domein.nl>
-Date: Sun, 25 Nov 2012 19:05:07 +0100
-Subject: [PATCH] Test for the existence of execinfo.h
-
-Previous code assumed that on Linux the execinfo.h functions are always available, which is a glibc extension.
-This change fixes building the library under buildroot, which uses uClibc by default
----
- interface/vcos/glibc/vcos_backtrace.c |    7 +++++--
- makefiles/cmake/arm-linux.cmake       |    4 ++++
- makefiles/cmake/cmake_config.h.in     |    3 +++
- 3 files changed, 12 insertions(+), 2 deletions(-)
-
-diff --git a/interface/vcos/glibc/vcos_backtrace.c b/interface/vcos/glibc/vcos_backtrace.c
-index 474a328..3bb8aa3 100644
---- a/interface/vcos/glibc/vcos_backtrace.c
-+++ b/interface/vcos/glibc/vcos_backtrace.c
-@@ -26,7 +26,10 @@
- */
- 
- #include <interface/vcos/vcos.h>
--#ifdef __linux__
-+#ifdef HAVE_CMAKE_CONFIG
-+#include "cmake_config.h"
-+#endif
-+#ifdef HAVE_EXECINFO_H
- #include <execinfo.h>
- #endif
- #include <stdio.h>
-@@ -35,7 +38,7 @@
- 
- void vcos_backtrace_self(void)
- {
--#ifdef __linux__
-+#ifdef HAVE_EXECINFO_H
-    void *stack[64];
-    int depth = backtrace(stack, sizeof(stack)/sizeof(stack[0]));
-    char **names = backtrace_symbols(stack, depth);
-diff --git a/makefiles/cmake/arm-linux.cmake b/makefiles/cmake/arm-linux.cmake
-index 89d8bbf..6f2114f 100644
---- a/makefiles/cmake/arm-linux.cmake
-+++ b/makefiles/cmake/arm-linux.cmake
-@@ -115,6 +115,10 @@ try_compile(HAVE_MTRACE
-             ${CMAKE_SOURCE_DIR}/makefiles/cmake/srcs/test-mtrace.c
-             OUTPUT_VARIABLE foo)
- 
-+# test for existence of execinfo.h header
-+include(CheckIncludeFile)
-+check_include_file(execinfo.h HAVE_EXECINFO_H)
-+
- add_definitions(-DHAVE_CMAKE_CONFIG)
- configure_file (
-     "makefiles/cmake/cmake_config.h.in"
-diff --git a/makefiles/cmake/cmake_config.h.in b/makefiles/cmake/cmake_config.h.in
-index 5f08ad5..080b8e8 100644
---- a/makefiles/cmake/cmake_config.h.in
-+++ b/makefiles/cmake/cmake_config.h.in
-@@ -8,5 +8,8 @@
- /** Do we have support for GLIBC mtrace() ? */
- #cmakedefine                    HAVE_MTRACE
- 
-+/** Do we have the execinfo.h include file ? */
-+#cmakedefine                    HAVE_EXECINFO_H
-+
- #endif
- 
--- 
-1.7.10
-
diff --git a/package/rpi-userland/rpi-userland.mk b/package/rpi-userland/rpi-userland.mk
index ece37d4..522a97f 100644
--- a/package/rpi-userland/rpi-userland.mk
+++ b/package/rpi-userland/rpi-userland.mk
@@ -4,7 +4,7 @@ 
 #
 #############################################################
 
-RPI_USERLAND_VERSION = 9852ce28826889e50c4d6786b942f51bccccac54
+RPI_USERLAND_VERSION = 5e9a740a88a889dfc8a18bb1b00c17e5dd9d0108
 RPI_USERLAND_SITE = http://github.com/raspberrypi/userland/tarball/master
 RPI_USERLAND_LICENSE = BSD-3c
 RPI_USERLAND_LICENSE_FILE = LICENCE