diff --git a/buildroot-external/Config.in b/buildroot-external/Config.in index 4a6b1843..dbb9749c 100644 --- a/buildroot-external/Config.in +++ b/buildroot-external/Config.in @@ -53,6 +53,7 @@ endmenu source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/respeaker/Config.in" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/snapcast/Config.in" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/spotifyd/Config.in" + source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/userland-tools/Config.in" source "$BR2_EXTERNAL_MYCROFTOS_PATH/package/wifi-connect/Config.in" endmenu menu "Additional external python modules" diff --git a/buildroot-external/configs/rpi3_64-gui_defconfig b/buildroot-external/configs/rpi3_64-gui_defconfig index 7ce421d9..72200ab6 100644 --- a/buildroot-external/configs/rpi3_64-gui_defconfig +++ b/buildroot-external/configs/rpi3_64-gui_defconfig @@ -501,6 +501,7 @@ BR2_PACKAGE_RESPEAKER=y BR2_PACKAGE_SNAPCAST=y BR2_PACKAGE_SNAPCAST_SERVER=y BR2_PACKAGE_SPOTIFYD=y +BR2_PACKAGE_USERLAND_TOOLS=y BR2_PACKAGE_WIFI_CONNECT=y BR2_PACKAGE_PYTHON_ADAPT_PARSER=y BR2_PACKAGE_PYTHON_COLORZERO=y diff --git a/buildroot-external/configs/rpi4_64-gui_defconfig b/buildroot-external/configs/rpi4_64-gui_defconfig index 1c75f2fa..2bb1da5f 100644 --- a/buildroot-external/configs/rpi4_64-gui_defconfig +++ b/buildroot-external/configs/rpi4_64-gui_defconfig @@ -505,6 +505,7 @@ BR2_PACKAGE_RESPEAKER=y BR2_PACKAGE_SNAPCAST=y BR2_PACKAGE_SNAPCAST_SERVER=y BR2_PACKAGE_SPOTIFYD=y +BR2_PACKAGE_USERLAND_TOOLS=y BR2_PACKAGE_WIFI_CONNECT=y BR2_PACKAGE_PYTHON_ADAPT_PARSER=y BR2_PACKAGE_PYTHON_COLORZERO=y diff --git a/buildroot-external/package/userland-tools/0001-Add-.pc-files-for-the-OpenGLESv2-EGL-and-bcm_host-li.patch b/buildroot-external/package/userland-tools/0001-Add-.pc-files-for-the-OpenGLESv2-EGL-and-bcm_host-li.patch new file mode 100644 index 00000000..fb873371 --- /dev/null +++ b/buildroot-external/package/userland-tools/0001-Add-.pc-files-for-the-OpenGLESv2-EGL-and-bcm_host-li.patch @@ -0,0 +1,107 @@ +From 4824be8986c2b6ef0b0bd2b32bc99c4ba6406640 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sat, 24 Jan 2015 19:44:14 +0100 +Subject: [PATCH] Add .pc files for the OpenGLESv2, EGL and bcm_host libraries + +Those pkg-config files make it easier for Qt5 to find those libraries +and the appropriate link flags. + +Signed-off-by: Thomas Petazzoni +Signed-off-by: "Yann E. MORIN" + +[Rebased for rpi-userland-a1b89e91f393c7134b4cdc36431f863bb3333163] +Signed-off-by: Peter Seiderer +--- + host_applications/linux/libs/bcm_host/CMakeLists.txt | 4 ++++ + host_applications/linux/libs/bcm_host/bcm_host.pc.in | 10 ++++++++++ + interface/khronos/CMakeLists.txt | 8 ++++++++ + interface/khronos/egl/egl.pc.in | 11 +++++++++++ + interface/khronos/glxx/glesv2.pc.in | 10 ++++++++++ + 5 files changed, 43 insertions(+) + create mode 100644 host_applications/linux/libs/bcm_host/bcm_host.pc.in + create mode 100644 interface/khronos/egl/egl.pc.in + create mode 100644 interface/khronos/glxx/glesv2.pc.in + +diff --git a/host_applications/linux/libs/bcm_host/CMakeLists.txt b/host_applications/linux/libs/bcm_host/CMakeLists.txt +index 1edf50a..1f29ead 100644 +--- a/host_applications/linux/libs/bcm_host/CMakeLists.txt ++++ b/host_applications/linux/libs/bcm_host/CMakeLists.txt +@@ -20,3 +20,7 @@ target_link_libraries(bcm_host vcos vchostif) + + install(TARGETS bcm_host DESTINATION lib) + ++configure_file("${CMAKE_CURRENT_SOURCE_DIR}/bcm_host.pc.in" ++ "${CMAKE_CURRENT_BINARY_DIR}/bcm_host.pc" @ONLY) ++install(FILES "${CMAKE_CURRENT_BINARY_DIR}/bcm_host.pc" ++ DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig") +diff --git a/host_applications/linux/libs/bcm_host/bcm_host.pc.in b/host_applications/linux/libs/bcm_host/bcm_host.pc.in +new file mode 100644 +index 0000000..d40d350 +--- /dev/null ++++ b/host_applications/linux/libs/bcm_host/bcm_host.pc.in +@@ -0,0 +1,10 @@ ++prefix=/usr ++exec_prefix=${prefix} ++libdir=${exec_prefix}/lib ++includedir=${prefix}/include ++ ++Name: bcm_host ++Description: Broadcom VideoCore host API library ++Version: 1 ++Libs: -L${libdir} -lbcm_host -lvcos -lvchiq_arm ++Cflags: -I${includedir} -I${includedir}/interface/vmcs_host/linux -I${includedir}/interface/vcos/pthreads -DUSE_VCHIQ_ARM +diff --git a/interface/khronos/CMakeLists.txt b/interface/khronos/CMakeLists.txt +index 4231af4..2844ebd 100644 +--- a/interface/khronos/CMakeLists.txt ++++ b/interface/khronos/CMakeLists.txt +@@ -74,6 +74,14 @@ target_link_libraries(OpenVG EGL) + + install(TARGETS EGL GLESv2 OpenVG WFC khrn_client DESTINATION lib) + install(TARGETS EGL_static GLESv2_static khrn_static DESTINATION lib) ++configure_file("${CMAKE_CURRENT_SOURCE_DIR}/egl/egl.pc.in" ++ "${CMAKE_CURRENT_BINARY_DIR}/egl/egl.pc" @ONLY) ++install(FILES "${CMAKE_CURRENT_BINARY_DIR}/egl/egl.pc" ++ DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig") ++configure_file("${CMAKE_CURRENT_SOURCE_DIR}/glxx/glesv2.pc.in" ++ "${CMAKE_CURRENT_BINARY_DIR}/glxx/glesv2.pc" @ONLY) ++install(FILES "${CMAKE_CURRENT_BINARY_DIR}/glxx/glesv2.pc" ++ DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig") + + # recommended names to use to avoid conflicts with mesa libs + add_library(brcmEGL ${SHARED} ${EGL_SOURCE}) +diff --git a/interface/khronos/egl/egl.pc.in b/interface/khronos/egl/egl.pc.in +new file mode 100644 +index 0000000..5868706 +--- /dev/null ++++ b/interface/khronos/egl/egl.pc.in +@@ -0,0 +1,11 @@ ++prefix=@CMAKE_INSTALL_PREFIX@ ++exec_prefix=${prefix} ++libdir=${exec_prefix}/lib ++includedir=${prefix}/include ++ ++Name: egl ++Description: RasberryPi implementation of EGL ++Version: 10 ++Libs: -L${libdir} -lEGL -lGLESv2 -lbcm_host -lvchostif ++Cflags: -I${includedir}/ -I${includedir}/interface/vcos/pthreads/ \ ++ -I${includedir}/interface/vmcs_host/linux/ +diff --git a/interface/khronos/glxx/glesv2.pc.in b/interface/khronos/glxx/glesv2.pc.in +new file mode 100644 +index 0000000..2f58eed +--- /dev/null ++++ b/interface/khronos/glxx/glesv2.pc.in +@@ -0,0 +1,10 @@ ++prefix=@CMAKE_INSTALL_PREFIX@ ++exec_prefix=${prefix} ++libdir=${exec_prefix}/lib ++includedir=${prefix}/include ++ ++Name: glesv2 ++Description: RasberryPi implementation of OpenGL ESv2 ++Version: 2.0 ++Libs: -L${libdir} -lGLESv2 ++Cflags: -I${includedir}/ +-- +2.8.1 + diff --git a/buildroot-external/package/userland-tools/0002-interface-remove-faulty-assert-to-make-weston-happy-.patch b/buildroot-external/package/userland-tools/0002-interface-remove-faulty-assert-to-make-weston-happy-.patch new file mode 100644 index 00000000..0e9dede5 --- /dev/null +++ b/buildroot-external/package/userland-tools/0002-interface-remove-faulty-assert-to-make-weston-happy-.patch @@ -0,0 +1,35 @@ +From a126ee5a3235792abb58daffd9d4b3e1012f675b Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Sat, 24 Jan 2015 22:07:19 +0100 +Subject: [PATCH] interface: remove faulty assert() to make weston happy at + runtime + +This was removed after a discussion on IRC with the weston guys +('daniels' on irc.freenode.net/#wayland). + +Upstream status: no, will be pushed by weston guys later. +If not, I'll do it. + +Signed-off-by: "Yann E. MORIN" + +[Rebased for rpi-userland-a1b89e91f393c7134b4cdc36431f863bb3333163] +Signed-off-by: Peter Seiderer +--- + interface/vmcs_host/vc_vchi_dispmanx.c | 1 - + 1 file changed, 1 deletion(-) + +diff --git a/interface/vmcs_host/vc_vchi_dispmanx.c b/interface/vmcs_host/vc_vchi_dispmanx.c +index 133e86d..0c7873c 100755 +--- a/interface/vmcs_host/vc_vchi_dispmanx.c ++++ b/interface/vmcs_host/vc_vchi_dispmanx.c +@@ -1306,7 +1306,6 @@ static void *dispmanx_notify_func( void *arg ) { + // Decrement the use count - the corresponding "use" is in vc_dispmanx_update_submit. + vchi_service_release(dispmanx_client.notify_handle[0]); + if (dispmanx_client.update_callback ) { +- vcos_assert( dispmanx_client.pending_update_handle == handle); + dispmanx_client.update_callback(handle, dispmanx_client.update_callback_param); + } + } else { +-- +2.8.1 + diff --git a/buildroot-external/package/userland-tools/0003-Disable-Werror-everywhere.patch b/buildroot-external/package/userland-tools/0003-Disable-Werror-everywhere.patch new file mode 100644 index 00000000..27c8acdd --- /dev/null +++ b/buildroot-external/package/userland-tools/0003-Disable-Werror-everywhere.patch @@ -0,0 +1,165 @@ +From cc9ac86bcff79697d354cc51d3a984fd0f362868 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Thu, 22 Sep 2016 22:59:11 +0200 +Subject: [PATCH] Disable Werror everywhere + +With gcc-5.1, some constructs that were previously accepted (but wrong) +are now considered warnings, and thus -Werror makes them errors. + +Ditch -Werror altoghether. + +Signed-off-by: "Yann E. MORIN" + +[Rebased for rpi-userland-a1b89e91f393c7134b4cdc36431f863bb3333163] +Signed-off-by: Peter Seiderer + +[Rebased for rpi-userland-8f0abfb07b96e7ee85f46e59d895014ec5e25f5e] +Signed-off-by: Peter Seiderer + +[Rebased for rpi-userland-5070cb7fc150fc98f1ed64a7739c3356970d9f76] +Signed-off-by: Peter Seiderer +--- + host_applications/android/apps/vidtex/CMakeLists.txt | 2 +- + host_applications/linux/apps/gencmd/CMakeLists.txt | 2 +- + host_applications/linux/apps/raspicam/CMakeLists.txt | 2 +- + host_applications/linux/apps/smem/CMakeLists.txt | 2 +- + host_applications/linux/libs/bcm_host/CMakeLists.txt | 2 +- + host_applications/linux/libs/sm/CMakeLists.txt | 2 +- + interface/mmal/CMakeLists.txt | 2 +- + interface/vcos/CMakeLists.txt | 2 +- + interface/vcos/pthreads/CMakeLists.txt | 2 +- + interface/vmcs_host/CMakeLists.txt | 2 +- + 10 files changed, 10 insertions(+), 10 deletions(-) + +diff --git a/host_applications/android/apps/vidtex/CMakeLists.txt b/host_applications/android/apps/vidtex/CMakeLists.txt +index 6d66d69..06a3192 100644 +--- a/host_applications/android/apps/vidtex/CMakeLists.txt ++++ b/host_applications/android/apps/vidtex/CMakeLists.txt +@@ -1,6 +1,6 @@ + cmake_minimum_required(VERSION 2.8) + +-SET(COMPILE_DEFINITIONS -Werror -Wall) ++SET(COMPILE_DEFINITIONS -Wall) + + # Set --no-as-needed to stop the linker discarding mmal_vc_client + # as it can't see that the constructor registers a load of functionality +diff --git a/host_applications/linux/apps/gencmd/CMakeLists.txt b/host_applications/linux/apps/gencmd/CMakeLists.txt +index f95d1a1..034bf20 100644 +--- a/host_applications/linux/apps/gencmd/CMakeLists.txt ++++ b/host_applications/linux/apps/gencmd/CMakeLists.txt +@@ -4,7 +4,7 @@ if (WIN32) + set(VCOS_PLATFORM win32) + else () + set(VCOS_PLATFORM pthreads) +- add_definitions(-Wall -Werror) ++ add_definitions(-Wall ) + endif () + + include_directories( ../../../.. +diff --git a/host_applications/linux/apps/raspicam/CMakeLists.txt b/host_applications/linux/apps/raspicam/CMakeLists.txt +index f7db21e..b94bdc3 100644 +--- a/host_applications/linux/apps/raspicam/CMakeLists.txt ++++ b/host_applications/linux/apps/raspicam/CMakeLists.txt +@@ -1,7 +1,7 @@ + + # raspistill/raspivid/raspiyuv + +-SET(COMPILE_DEFINITIONS -Werror) ++SET(COMPILE_DEFINITIONS ) + + # Set --no-as-needed to stop the linker discarding mmal_vc_client + # as it can't see that the constructor registers a load of functionality +diff --git a/host_applications/linux/apps/smem/CMakeLists.txt b/host_applications/linux/apps/smem/CMakeLists.txt +index 0fa8328..f0d1e77 100644 +--- a/host_applications/linux/apps/smem/CMakeLists.txt ++++ b/host_applications/linux/apps/smem/CMakeLists.txt +@@ -4,7 +4,7 @@ get_filename_component (VIDEOCORE_ROOT ../../../.. ABSOLUTE) + include (${VIDEOCORE_ROOT}/makefiles/cmake/global_settings.cmake) + + if (NOT WIN32) +- add_definitions(-Wall -Werror) ++ add_definitions(-Wall ) + endif () + + include_directories ( +diff --git a/host_applications/linux/libs/bcm_host/CMakeLists.txt b/host_applications/linux/libs/bcm_host/CMakeLists.txt +index 2154e53..c23779b 100644 +--- a/host_applications/linux/libs/bcm_host/CMakeLists.txt ++++ b/host_applications/linux/libs/bcm_host/CMakeLists.txt +@@ -3,7 +3,7 @@ if (WIN32) + set(VCOS_PLATFORM win32) + else () + set(VCOS_PLATFORM pthreads) +- add_definitions(-Wall -Werror) ++ add_definitions(-Wall ) + endif () + + # set this as we want all the source of vchostif to be available in libbcm_host +diff --git a/host_applications/linux/libs/sm/CMakeLists.txt b/host_applications/linux/libs/sm/CMakeLists.txt +index 5ce5aca..02aea7c 100644 +--- a/host_applications/linux/libs/sm/CMakeLists.txt ++++ b/host_applications/linux/libs/sm/CMakeLists.txt +@@ -3,7 +3,7 @@ if (WIN32) + set(VCOS_PLATFORM win32) + else () + set(VCOS_PLATFORM pthreads) +- add_definitions(-Wall -Werror) ++ add_definitions(-Wall ) + endif () + + include_directories( ../../../.. +diff --git a/interface/mmal/CMakeLists.txt b/interface/mmal/CMakeLists.txt +index 46f149d..06273dc 100644 +--- a/interface/mmal/CMakeLists.txt ++++ b/interface/mmal/CMakeLists.txt +@@ -3,7 +3,7 @@ if (NOT DEFINED LIBRARY_TYPE) + set(LIBRARY_TYPE SHARED) + endif (NOT DEFINED LIBRARY_TYPE) + +-add_definitions(-Wall -Werror) ++add_definitions(-Wall ) + + add_library(mmal SHARED util/mmal_util.c) + +diff --git a/interface/vcos/CMakeLists.txt b/interface/vcos/CMakeLists.txt +index 23a8d72..988b104 100644 +--- a/interface/vcos/CMakeLists.txt ++++ b/interface/vcos/CMakeLists.txt +@@ -43,7 +43,7 @@ foreach (header ${HEADERS}) + endforeach () + + if (CMAKE_COMPILER_IS_GNUCC) +- add_definitions (-ggdb -Werror -Wall) ++ add_definitions (-ggdb -Wall) + endif () + + if (CMAKE_COMPILER_2005) +diff --git a/interface/vcos/pthreads/CMakeLists.txt b/interface/vcos/pthreads/CMakeLists.txt +index 1d81ca3..b35cd8e 100644 +--- a/interface/vcos/pthreads/CMakeLists.txt ++++ b/interface/vcos/pthreads/CMakeLists.txt +@@ -1,7 +1,7 @@ + # MSVC5 does not fully support C99, enabling declaration-after-statement + # warnings allows a common MSVC5 build error to be detected in Linux builds. + if (CMAKE_COMPILER_IS_GNUCC) +- set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Werror -Wdeclaration-after-statement") ++ set (CMAKE_C_FLAGS "${CMAKE_C_FLAGS} -Wall -Wdeclaration-after-statement") + add_definitions (-D_GNU_SOURCE) + endif () + +diff --git a/interface/vmcs_host/CMakeLists.txt b/interface/vmcs_host/CMakeLists.txt +index a157db1..dc384ca 100755 +--- a/interface/vmcs_host/CMakeLists.txt ++++ b/interface/vmcs_host/CMakeLists.txt +@@ -2,7 +2,7 @@ + # interface/vmcs_host + + # not working in release build +-# add_definitions(-Werror) ++# add_definitions() + + # vc_vchi_gencmd.c has a type-punning problem in vc_gencmd_read_response + add_definitions(-fno-strict-aliasing) +-- +2.23.0 + diff --git a/buildroot-external/package/userland-tools/0004-host-applications-disable-missing-applications.patch b/buildroot-external/package/userland-tools/0004-host-applications-disable-missing-applications.patch new file mode 100644 index 00000000..08039123 --- /dev/null +++ b/buildroot-external/package/userland-tools/0004-host-applications-disable-missing-applications.patch @@ -0,0 +1,34 @@ +From c8d2c332da2a03ed80d62628bbf54187a66f49b6 Mon Sep 17 00:00:00 2001 +From: "Yann E. MORIN" +Date: Fri, 24 Jul 2015 20:20:33 +0200 +Subject: [PATCH] host-applications: disable missing applications + +Those applications are missing from the public rpi-firmware package, so +do not even try to build them. + +Signed-off-by: "Yann E. MORIN" + +[Rebased for rpi-userland-a1b89e91f393c7134b4cdc36431f863bb3333163] +Signed-off-by: Peter Seiderer +--- + host_applications/linux/CMakeLists.txt | 3 --- + 1 file changed, 3 deletions(-) + +diff --git a/host_applications/linux/CMakeLists.txt b/host_applications/linux/CMakeLists.txt +index 5a648e7..83bb66e 100644 +--- a/host_applications/linux/CMakeLists.txt ++++ b/host_applications/linux/CMakeLists.txt +@@ -12,10 +12,7 @@ add_subdirectory(apps/dtoverlay) + add_subdirectory(apps/dtmerge) + + if(ALL_APPS) +- add_subdirectory(apps/vcdbg) +- add_subdirectory(libs/elftoolchain) + # add_subdirectory(apps/smct) +- add_subdirectory(apps/edid_parser) + add_subdirectory(apps/hello_pi) + endif() + +-- +2.8.1 + diff --git a/buildroot-external/package/userland-tools/0005-dtmerge-add-missing-include-for-va_list.patch b/buildroot-external/package/userland-tools/0005-dtmerge-add-missing-include-for-va_list.patch new file mode 100644 index 00000000..f028f67b --- /dev/null +++ b/buildroot-external/package/userland-tools/0005-dtmerge-add-missing-include-for-va_list.patch @@ -0,0 +1,34 @@ +From 1ffed0e8601afb7e65545bd545772edd0fccc404 Mon Sep 17 00:00:00 2001 +From: Peter Seiderer +Date: Sat, 23 Apr 2016 17:48:13 +0200 +Subject: [PATCH] dtmerge: add missing include for va_list +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Fixes compile error with uclibc-1.0.14: + + In file included from rpi-userland-52eca998aa43f278314579dba4798a3fe1da46c3/host_applications/linux/apps/dtmerge/dtmerge.c:32:0: + rpi-userland-52eca998aa43f278314579dba4798a3fe1da46c3/helpers/dtoverlay/dtoverlay.h:65:54: error: unknown type name ‘va_list’ + const char *fmt, va_list args); + +Signed-off-by: Peter Seiderer +--- + host_applications/linux/apps/dtmerge/dtmerge.c | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/host_applications/linux/apps/dtmerge/dtmerge.c b/host_applications/linux/apps/dtmerge/dtmerge.c +index 9243da1..2ac8d39 100644 +--- a/host_applications/linux/apps/dtmerge/dtmerge.c ++++ b/host_applications/linux/apps/dtmerge/dtmerge.c +@@ -28,6 +28,7 @@ SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. + #include + #include + #include ++#include + + #include "dtoverlay.h" + +-- +2.8.1 + diff --git a/buildroot-external/package/userland-tools/0006-linux-tools-only.patch b/buildroot-external/package/userland-tools/0006-linux-tools-only.patch new file mode 100644 index 00000000..980e0fcc --- /dev/null +++ b/buildroot-external/package/userland-tools/0006-linux-tools-only.patch @@ -0,0 +1,142 @@ +From 54c913784e94825d604e3e4323bf4979f399037a Mon Sep 17 00:00:00 2001 +From: j1nx +Date: Tue, 4 Aug 2020 15:12:49 +0200 +Subject: [PATCH 1/1] Linux tools only + +--- + CMakeLists.txt | 68 +++++++++++++------------- + host_applications/linux/CMakeLists.txt | 10 ++-- + 2 files changed, 39 insertions(+), 39 deletions(-) + +diff --git a/CMakeLists.txt b/CMakeLists.txt +index fe67fc8..9496af0 100644 +--- a/CMakeLists.txt ++++ b/CMakeLists.txt +@@ -22,20 +22,20 @@ set(VCOS_PTHREADS_BUILD_SHARED TRUE) + + include(makefiles/cmake/global_settings.cmake) + include(makefiles/cmake/arm-linux.cmake) +-include(makefiles/cmake/vmcs.cmake) ++#include(makefiles/cmake/vmcs.cmake) + + enable_language(ASM) + + # Global include paths + include_directories(host_applications/framework) + include_directories(${PROJECT_SOURCE_DIR}) +-include_directories(interface/vcos/pthreads) +-include_directories(interface/vmcs_host/linux) +-include_directories(interface/vmcs_host) +-include_directories(interface/vmcs_host/khronos) +-include_directories(interface/khronos/include) +-include_directories(${PROJECT_BINARY_DIR}) +-include_directories(interface/vchiq_arm) ++#include_directories(interface/vcos/pthreads) ++#include_directories(interface/vmcs_host/linux) ++#include_directories(interface/vmcs_host) ++#include_directories(interface/vmcs_host/khronos) ++#include_directories(interface/khronos/include) ++#include_directories(${PROJECT_BINARY_DIR}) ++#include_directories(interface/vchiq_arm) + #include_directories(tools/inet_transport) + include_directories(host_support/include) + +@@ -63,28 +63,28 @@ if(KHRONOS_EGL_PLATFORM MATCHES "openwfc") + endif() + + # List of subsidiary CMakeLists +-add_subdirectory(interface/vcos) +-add_subdirectory(interface/vmcs_host) +-add_subdirectory(interface/vchiq_arm) +-if(NOT ARM64) +- add_subdirectory(interface/khronos) +-endif() ++#add_subdirectory(interface/vcos) ++#add_subdirectory(interface/vmcs_host) ++#add_subdirectory(interface/vchiq_arm) ++#if(NOT ARM64) ++# add_subdirectory(interface/khronos) ++#endif() + + #add_subdirectory(opensrc/tools/lua) +-if(BUILD_MMAL) +- include_directories(interface/mmal) +- add_subdirectory(interface/mmal) +- add_subdirectory(containers) +-endif() ++#if(BUILD_MMAL) ++# include_directories(interface/mmal) ++# add_subdirectory(interface/mmal) ++# add_subdirectory(containers) ++#endif() + + # VidTex supports Android and Linux +-if(BUILD_MMAL_APPS) +-add_subdirectory(host_applications/android/apps/vidtex) +-endif(BUILD_MMAL_APPS) ++#if(BUILD_MMAL_APPS) ++#add_subdirectory(host_applications/android/apps/vidtex) ++#endif(BUILD_MMAL_APPS) + +-if(NOT ARM64) +- add_subdirectory(middleware/openmaxil) +-endif() ++#if(NOT ARM64) ++# add_subdirectory(middleware/openmaxil) ++#endif() + + # 3d demo code + #if(NOT ANDROID) +@@ -118,15 +118,15 @@ add_subdirectory(helpers/dtoverlay) + set(vmcs_host_apps_VERSION_MAJOR 1) + set(vmcs_host_apps_VERSION_MINOR 0) + +-include_directories("${PROJECT_BINARY_DIR}") +-include(FindPkgConfig QUIET) +-if(PKG_CONFIG_FOUND) ++#include_directories("${PROJECT_BINARY_DIR}") ++#include(FindPkgConfig QUIET) ++#if(PKG_CONFIG_FOUND) + # Produce a pkg-config file +- foreach(PCFILE bcm_host.pc brcmegl.pc brcmglesv2.pc brcmvg.pc vcsm.pc mmal.pc) +- configure_file("pkgconfig/${PCFILE}.in" "${PCFILE}" @ONLY) +- install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${PCFILE}" +- DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig") +- endforeach() +-endif() ++# foreach(PCFILE bcm_host.pc brcmegl.pc brcmglesv2.pc brcmvg.pc vcsm.pc mmal.pc) ++# configure_file("pkgconfig/${PCFILE}.in" "${PCFILE}" @ONLY) ++# install(FILES "${CMAKE_CURRENT_BINARY_DIR}/${PCFILE}" ++# DESTINATION "${CMAKE_INSTALL_PREFIX}/lib/pkgconfig") ++# endforeach() ++#endif() + # Remove cache entry, if one added by command line + unset(KHRONOS_EGL_PLATFORM CACHE) +diff --git a/host_applications/linux/CMakeLists.txt b/host_applications/linux/CMakeLists.txt +index 928b637..9ef9cab 100644 +--- a/host_applications/linux/CMakeLists.txt ++++ b/host_applications/linux/CMakeLists.txt +@@ -1,15 +1,15 @@ + # linux apps + +-add_subdirectory(libs/bcm_host) +-add_subdirectory(apps/gencmd) +-add_subdirectory(apps/tvservice) +-add_subdirectory(apps/vcmailbox) ++#add_subdirectory(libs/bcm_host) ++#add_subdirectory(apps/gencmd) ++#add_subdirectory(apps/tvservice) ++#add_subdirectory(apps/vcmailbox) + if(NOT ARM64) + add_subdirectory(apps/raspicam) + add_subdirectory(libs/sm) + add_subdirectory(apps/smem) + endif() +-add_subdirectory(libs/debug_sym) ++#add_subdirectory(libs/debug_sym) + add_subdirectory(apps/dtoverlay) + add_subdirectory(apps/dtmerge) + +-- +2.20.1 + diff --git a/buildroot-external/package/userland-tools/Config.in b/buildroot-external/package/userland-tools/Config.in new file mode 100644 index 00000000..5332807f --- /dev/null +++ b/buildroot-external/package/userland-tools/Config.in @@ -0,0 +1,13 @@ +config BR2_PACKAGE_USERLAND_TOOLS + bool "userland-tools" + depends on BR2_TOOLCHAIN_HAS_THREADS + depends on !BR2_STATIC_LIBS + help + Raspberry Pi Userland contains the necessary library to use + the VideoCore driver. + + Includes source for the ARM side code to interface to: EGL, + mmal, GLESv2, vcos, openmaxil, vchiq_arm, bcm_host, WFC, + OpenVG. + + https://github.com/raspberrypi/userland/ diff --git a/buildroot-external/package/userland-tools/userland-tools.hash b/buildroot-external/package/userland-tools/userland-tools.hash new file mode 100644 index 00000000..5506a6ef --- /dev/null +++ b/buildroot-external/package/userland-tools/userland-tools.hash @@ -0,0 +1,3 @@ +# Locally computed +sha256 274560adc7afac65b79f4564915d63275b6b220ec0fa29019ece3eb3ca9e0ef2 userland-tools-3e59217bd93b8024fb8fc1c6530b00cbae64bc73.tar.gz +sha256 bee6f1249175683d8610651706e1aa7dffcbfd3f9c4c05bc1e5ab34f313c2db5 LICENCE diff --git a/buildroot-external/package/userland-tools/userland-tools.mk b/buildroot-external/package/userland-tools/userland-tools.mk new file mode 100644 index 00000000..6d7fe00b --- /dev/null +++ b/buildroot-external/package/userland-tools/userland-tools.mk @@ -0,0 +1,13 @@ +################################################################################ +# +# userland-tools +# +################################################################################ + +USERLAND_TOOLS_VERSION = 3e59217bd93b8024fb8fc1c6530b00cbae64bc73 +USERLAND_TOOLS_SITE = $(call github,raspberrypi,userland,$(USERLAND_TOOLS_VERSION)) +USERLAND_TOOLS_LICENSE = BSD-3-Clause +USERLAND_TOOLS_LICENSE_FILES = LICENCE +USERLAND_TOOLS_CONF_OPTS = -DVMCS_INSTALL_PREFIX=/usr -DALL_APPS=OFF -DARM64=y + +$(eval $(cmake-package))