Re: [yocto] [meta-raspberrypi][PATCH] userland: Fix multiple inline issues while building with gcc 5.x

2015-10-02 Thread Andrei Gherzan
On Sun, Sep 27, 2015 at 03:34:14PM +0200, Tom Doehring wrote:
> Building userland source with gcc 5.x causes multiple issues such as:
> 
> vcos_thread.h:186:15: warning: inline function 'vcos_thread_get_affinity' 
> declared but never defined
> |  VCOS_UNSIGNED vcos_thread_get_affinity(VCOS_THREAD_T *thread);
> 
> The following patches fixes these issues and allows building userland on the 
> current
> poky master branch.
> 
> Signed-off-by: Tom Doehring 
> ---
>  .../userland/0001-Use-newer-POSIX-macro.patch  | 35 
> --
>  .../userland/0001-fix-gcc-5.x-inlines.patch| 26 
>  .../userland/userland/0002-fix-musl-build.patch| 22 ++
>  .../0003-fix-alloc-size-uninitialized.patch| 13 
>  recipes-graphics/userland/userland_git.bb  | 13 +---
>  5 files changed, 70 insertions(+), 39 deletions(-)
>  delete mode 100644 
> recipes-graphics/userland/userland/0001-Use-newer-POSIX-macro.patch
>  create mode 100644 
> recipes-graphics/userland/userland/0001-fix-gcc-5.x-inlines.patch
>  create mode 100644 
> recipes-graphics/userland/userland/0002-fix-musl-build.patch
>  create mode 100644 
> recipes-graphics/userland/userland/0003-fix-alloc-size-uninitialized.patch
> 

Tested on GCC 5.2.0 and worked fine. Merged to master. Thank you.

-- 
Andrei Gherzan
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto


Re: [yocto] [meta-raspberrypi][PATCH] userland: Fix multiple inline issues while building with gcc 5.x

2015-09-28 Thread Khem Raj

> On Sep 28, 2015, at 8:13 AM, Gary Thomas  wrote:
> 
> On 2015-09-27 07:34, Tom Doehring wrote:
>> Building userland source with gcc 5.x causes multiple issues such as:
>> 
>> vcos_thread.h:186:15: warning: inline function 'vcos_thread_get_affinity' 
>> declared but never defined
>> |  VCOS_UNSIGNED vcos_thread_get_affinity(VCOS_THREAD_T *thread);
>> 
>> The following patches fixes these issues and allows building userland on the 
>> current
>> poky master branch.
> 
> Are these patches compatible with older GCC, or does having them
> require using GCC-5?

they should work with older gcc equally well.



signature.asc
Description: Message signed with OpenPGP using GPGMail
-- 
___
yocto mailing list
yocto@yoctoproject.org
https://lists.yoctoproject.org/listinfo/yocto


[yocto] [meta-raspberrypi][PATCH] userland: Fix multiple inline issues while building with gcc 5.x

2015-09-28 Thread Tom Doehring
Building userland source with gcc 5.x causes multiple issues such as:

vcos_thread.h:186:15: warning: inline function 'vcos_thread_get_affinity' 
declared but never defined
|  VCOS_UNSIGNED vcos_thread_get_affinity(VCOS_THREAD_T *thread);

The following patches fixes these issues and allows building userland on the 
current
poky master branch.

Signed-off-by: Tom Doehring 
---
 .../userland/0001-Use-newer-POSIX-macro.patch  | 35 --
 .../userland/0001-fix-gcc-5.x-inlines.patch| 26 
 .../userland/userland/0002-fix-musl-build.patch| 22 ++
 .../0003-fix-alloc-size-uninitialized.patch| 13 
 recipes-graphics/userland/userland_git.bb  | 13 +---
 5 files changed, 70 insertions(+), 39 deletions(-)
 delete mode 100644 
recipes-graphics/userland/userland/0001-Use-newer-POSIX-macro.patch
 create mode 100644 
recipes-graphics/userland/userland/0001-fix-gcc-5.x-inlines.patch
 create mode 100644 recipes-graphics/userland/userland/0002-fix-musl-build.patch
 create mode 100644 
recipes-graphics/userland/userland/0003-fix-alloc-size-uninitialized.patch

diff --git 
a/recipes-graphics/userland/userland/0001-Use-newer-POSIX-macro.patch 
b/recipes-graphics/userland/userland/0001-Use-newer-POSIX-macro.patch
deleted file mode 100644
index 2a092c2..000
--- a/recipes-graphics/userland/userland/0001-Use-newer-POSIX-macro.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 12f7718bb0e08e2c06825c7ab7541b3c5bfe74c1 Mon Sep 17 00:00:00 2001
-From: Khem Raj 
-Date: Sun, 9 Aug 2015 08:55:05 -0700
-Subject: [PATCH] Use newer POSIX macro
-
-Define _POSIX_C_SOURCE such that it demands correct
-posix interfaces, netdb.h declares interfaces such as
-getaddrinfo if __USE_POSIX, i.e. POSIX.1:1990 or later.
-However, these interfaces were new in the 2001 edition of POSIX
-therefore ask for Extension from POSIX.1:2001 since we use addrinfo
-structure here.
-
-Signed-off-by: Khem Raj 

-Upstream-Status: Submitted
-
- containers/CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/containers/CMakeLists.txt b/containers/CMakeLists.txt
-index a29a885..5570038 100644
 a/containers/CMakeLists.txt
-+++ b/containers/CMakeLists.txt
-@@ -13,7 +13,7 @@ add_definitions(-DDL_PATH_PREFIX="${VMCS_PLUGIN_DIR}/")
- 
- SET( GCC_COMPILER_FLAGS -Wall -g -O2 -Wstrict-prototypes -Wmissing-prototypes 
-Wmissing-declarations -Wcast-qual -Wwrite-strings -Wundef )
- SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -Wextra 
)#-Wno-missing-field-initializers )
--SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -std=c99 
-D_POSIX_C_SOURCE=199309L )
-+SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -std=c99 
-D_POSIX_C_SOURCE=200112L )
- SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -Wno-missing-field-initializers 
)
- SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -Wno-unused-value )
- 
--- 
-2.1.4
-
diff --git a/recipes-graphics/userland/userland/0001-fix-gcc-5.x-inlines.patch 
b/recipes-graphics/userland/userland/0001-fix-gcc-5.x-inlines.patch
new file mode 100644
index 000..57f3518
--- /dev/null
+++ b/recipes-graphics/userland/userland/0001-fix-gcc-5.x-inlines.patch
@@ -0,0 +1,26 @@
+--- 
userland-fb11b39d97371c076eef7c85bbcab5733883a41e.orig/interface/vcos/vcos_types.h
 
userland-fb11b39d97371c076eef7c85bbcab5733883a41e/interface/vcos/vcos_types.h
+@@ -121,10 +121,10 @@
+ #if defined(NDEBUG)
+ 
+ #ifdef __GNUC__
+-# define VCOS_INLINE_DECL extern __inline__
++# define VCOS_INLINE_DECL extern
+ # define VCOS_INLINE_IMPL static __inline__
+ #else
+-# define VCOS_INLINE_DECL static _VCOS_INLINE   /* declare a func */
++# define VCOS_INLINE_DECL extern
+ # define VCOS_INLINE_IMPL static _VCOS_INLINE   /* implement a func inline */
+ #endif
+ 
+--- 
userland-fb11b39d97371c076eef7c85bbcab5733883a41e.orig/interface/vcos/pthreads/vcos_platform_types.h
 
userland-fb11b39d97371c076eef7c85bbcab5733883a41e/interface/vcos/pthreads/vcos_platform_types.h
+@@ -61,7 +61,7 @@
+ #define VCOS_ASSERT_MSG(...) ((VCOS_ASSERT_LOGGING && 
!VCOS_ASSERT_LOGGING_DISABLE) ? vcos_pthreads_logging_assert(__FILE__, 
__func__, __LINE__, __VA_ARGS__) : (void)0)
+ 
+ #define VCOS_INLINE_BODIES
+-#define VCOS_INLINE_DECL extern __inline__
++#define VCOS_INLINE_DECL extern
+ #define VCOS_INLINE_IMPL static __inline__
+ 
+ #ifdef __cplusplus
diff --git a/recipes-graphics/userland/userland/0002-fix-musl-build.patch 
b/recipes-graphics/userland/userland/0002-fix-musl-build.patch
new file mode 100644
index 000..2fb11e7
--- /dev/null
+++ b/recipes-graphics/userland/userland/0002-fix-musl-build.patch
@@ -0,0 +1,22 @@
+--- 
userland-d4aa617de3b196399bb8e2ce32e181768cb52179.orig/host_applications/linux/apps/raspicam/RaspiVidYUV.c
 
userland-d4aa617de3b196399bb8e2ce32e181768cb52179/host_applications/linux/apps/raspicam/RaspiVidYUV.c
+@@ -106,8 +106,6 @@
+ /// Run/record forever
+ #define WAIT_METHOD_FOREVER4

Re: [yocto] [meta-raspberrypi][PATCH] userland: Fix multiple inline issues while building with gcc 5.x

2015-09-28 Thread Gary Thomas

On 2015-09-27 07:34, Tom Doehring wrote:

Building userland source with gcc 5.x causes multiple issues such as:

vcos_thread.h:186:15: warning: inline function 'vcos_thread_get_affinity' 
declared but never defined
|  VCOS_UNSIGNED vcos_thread_get_affinity(VCOS_THREAD_T *thread);

The following patches fixes these issues and allows building userland on the 
current
poky master branch.


Are these patches compatible with older GCC, or does having them
require using GCC-5?



Signed-off-by: Tom Doehring 
---
  .../userland/0001-Use-newer-POSIX-macro.patch  | 35 --
  .../userland/0001-fix-gcc-5.x-inlines.patch| 26 
  .../userland/userland/0002-fix-musl-build.patch| 22 ++
  .../0003-fix-alloc-size-uninitialized.patch| 13 
  recipes-graphics/userland/userland_git.bb  | 13 +---
  5 files changed, 70 insertions(+), 39 deletions(-)
  delete mode 100644 
recipes-graphics/userland/userland/0001-Use-newer-POSIX-macro.patch
  create mode 100644 
recipes-graphics/userland/userland/0001-fix-gcc-5.x-inlines.patch
  create mode 100644 
recipes-graphics/userland/userland/0002-fix-musl-build.patch
  create mode 100644 
recipes-graphics/userland/userland/0003-fix-alloc-size-uninitialized.patch

diff --git 
a/recipes-graphics/userland/userland/0001-Use-newer-POSIX-macro.patch 
b/recipes-graphics/userland/userland/0001-Use-newer-POSIX-macro.patch
deleted file mode 100644
index 2a092c2..000
--- a/recipes-graphics/userland/userland/0001-Use-newer-POSIX-macro.patch
+++ /dev/null
@@ -1,35 +0,0 @@
-From 12f7718bb0e08e2c06825c7ab7541b3c5bfe74c1 Mon Sep 17 00:00:00 2001
-From: Khem Raj 
-Date: Sun, 9 Aug 2015 08:55:05 -0700
-Subject: [PATCH] Use newer POSIX macro
-
-Define _POSIX_C_SOURCE such that it demands correct
-posix interfaces, netdb.h declares interfaces such as
-getaddrinfo if __USE_POSIX, i.e. POSIX.1:1990 or later.
-However, these interfaces were new in the 2001 edition of POSIX
-therefore ask for Extension from POSIX.1:2001 since we use addrinfo
-structure here.
-
-Signed-off-by: Khem Raj 

-Upstream-Status: Submitted
-
- containers/CMakeLists.txt | 2 +-
- 1 file changed, 1 insertion(+), 1 deletion(-)
-
-diff --git a/containers/CMakeLists.txt b/containers/CMakeLists.txt
-index a29a885..5570038 100644
 a/containers/CMakeLists.txt
-+++ b/containers/CMakeLists.txt
-@@ -13,7 +13,7 @@ add_definitions(-DDL_PATH_PREFIX="${VMCS_PLUGIN_DIR}/")
-
- SET( GCC_COMPILER_FLAGS -Wall -g -O2 -Wstrict-prototypes -Wmissing-prototypes 
-Wmissing-declarations -Wcast-qual -Wwrite-strings -Wundef )
- SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -Wextra 
)#-Wno-missing-field-initializers )
--SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -std=c99 
-D_POSIX_C_SOURCE=199309L )
-+SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -std=c99 
-D_POSIX_C_SOURCE=200112L )
- SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -Wno-missing-field-initializers 
)
- SET( GCC_COMPILER_FLAGS ${GCC_COMPILER_FLAGS} -Wno-unused-value )
-
---
-2.1.4
-
diff --git a/recipes-graphics/userland/userland/0001-fix-gcc-5.x-inlines.patch 
b/recipes-graphics/userland/userland/0001-fix-gcc-5.x-inlines.patch
new file mode 100644
index 000..57f3518
--- /dev/null
+++ b/recipes-graphics/userland/userland/0001-fix-gcc-5.x-inlines.patch
@@ -0,0 +1,26 @@
+--- 
userland-fb11b39d97371c076eef7c85bbcab5733883a41e.orig/interface/vcos/vcos_types.h
 
userland-fb11b39d97371c076eef7c85bbcab5733883a41e/interface/vcos/vcos_types.h
+@@ -121,10 +121,10 @@
+ #if defined(NDEBUG)
+
+ #ifdef __GNUC__
+-# define VCOS_INLINE_DECL extern __inline__
++# define VCOS_INLINE_DECL extern
+ # define VCOS_INLINE_IMPL static __inline__
+ #else
+-# define VCOS_INLINE_DECL static _VCOS_INLINE   /* declare a func */
++# define VCOS_INLINE_DECL extern
+ # define VCOS_INLINE_IMPL static _VCOS_INLINE   /* implement a func inline */
+ #endif
+
+--- 
userland-fb11b39d97371c076eef7c85bbcab5733883a41e.orig/interface/vcos/pthreads/vcos_platform_types.h
 
userland-fb11b39d97371c076eef7c85bbcab5733883a41e/interface/vcos/pthreads/vcos_platform_types.h
+@@ -61,7 +61,7 @@
+ #define VCOS_ASSERT_MSG(...) ((VCOS_ASSERT_LOGGING && 
!VCOS_ASSERT_LOGGING_DISABLE) ? vcos_pthreads_logging_assert(__FILE__, __func__, 
__LINE__, __VA_ARGS__) : (void)0)
+
+ #define VCOS_INLINE_BODIES
+-#define VCOS_INLINE_DECL extern __inline__
++#define VCOS_INLINE_DECL extern
+ #define VCOS_INLINE_IMPL static __inline__
+
+ #ifdef __cplusplus
diff --git a/recipes-graphics/userland/userland/0002-fix-musl-build.patch 
b/recipes-graphics/userland/userland/0002-fix-musl-build.patch
new file mode 100644
index 000..2fb11e7
--- /dev/null
+++ b/recipes-graphics/userland/userland/0002-fix-musl-build.patch
@@ -0,0 +1,22 @@
+--- 
userland-d4aa617de3b196399bb8e2ce32e181768cb52179.orig/host_applications/linux/apps/raspicam/RaspiVidYUV.c