added my Recipes
This commit is contained in:
@@ -0,0 +1,30 @@
|
||||
From e108aff9d6dae613f486c1b1681f4a3cdf17b845 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Mon, 19 Dec 2022 15:07:55 -0800
|
||||
Subject: [PATCH] Set HAVE_LARGEFILE_SUPPORT to 1 explicitly
|
||||
|
||||
nothing sets this to 0, but for some reason it gets undef'd
|
||||
|
||||
Upstream-Status: Pending
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
build/cmake/setup.h.in | 3 +--
|
||||
1 file changed, 1 insertion(+), 2 deletions(-)
|
||||
|
||||
diff --git a/build/cmake/setup.h.in b/build/cmake/setup.h.in
|
||||
index bce33a73f3..22afb4cfa0 100644
|
||||
--- a/build/cmake/setup.h.in
|
||||
+++ b/build/cmake/setup.h.in
|
||||
@@ -869,8 +869,7 @@
|
||||
/*
|
||||
* Define if large (64 bit file offsets) files are supported.
|
||||
*/
|
||||
-#cmakedefine HAVE_LARGEFILE_SUPPORT 1
|
||||
-
|
||||
+#define HAVE_LARGEFILE_SUPPORT 1
|
||||
/*
|
||||
* Use OpenGL
|
||||
*/
|
||||
--
|
||||
2.39.0
|
||||
|
||||
@@ -0,0 +1,26 @@
|
||||
From 72c3b7324f00047e6dc5d8380ed2f6ff2494a6f9 Mon Sep 17 00:00:00 2001
|
||||
From: Khem Raj <raj.khem@gmail.com>
|
||||
Date: Sun, 18 Dec 2022 14:51:34 -0800
|
||||
Subject: [PATCH] locale: Avoid using glibc specific defines on musl
|
||||
|
||||
musl does not provide some glibc-only enum members e.g. _NL_ADDRESS_LANG_NAME
|
||||
|
||||
Upstream-Status: Submitted [https://github.com/wxWidgets/wxWidgets/pull/23050]
|
||||
Signed-off-by: Khem Raj <raj.khem@gmail.com>
|
||||
---
|
||||
src/unix/uilocale.cpp | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/src/unix/uilocale.cpp b/src/unix/uilocale.cpp
|
||||
index 57773e17f5..86816ba896 100644
|
||||
--- a/src/unix/uilocale.cpp
|
||||
+++ b/src/unix/uilocale.cpp
|
||||
@@ -619,7 +619,7 @@ wxString
|
||||
wxUILocaleImplUnix::GetLocalizedName(wxLocaleName name, wxLocaleForm form) const
|
||||
{
|
||||
wxString str;
|
||||
-#if defined(HAVE_LANGINFO_H) && defined(__LINUX__)
|
||||
+#if defined(HAVE_LANGINFO_H) && defined(__LINUX__) && defined(__GLIBC__)
|
||||
switch (name)
|
||||
{
|
||||
case wxLOCALE_NAME_LOCALE:
|
||||
@@ -0,0 +1,35 @@
|
||||
From a071243763f4b06fc7e71f541c49cecf380b6f27 Mon Sep 17 00:00:00 2001
|
||||
From: =?UTF-8?q?Andreas=20M=C3=BCller?= <schnitzeltony@gmail.com>
|
||||
Date: Sun, 11 Oct 2020 22:16:55 +0200
|
||||
Subject: [PATCH] wx-config.in: Disable cross magic - it does not work for us
|
||||
MIME-Version: 1.0
|
||||
Content-Type: text/plain; charset=UTF-8
|
||||
Content-Transfer-Encoding: 8bit
|
||||
|
||||
E.g 'wx-config --libs' appends a '-Linux' to all libraries (e.g
|
||||
-lwx_gtk3u_xrc-3.1 is reported as -lwx_gtk3u_xrc-3.1-Linux) which is wrong and
|
||||
make projects depending on wxwidgets fail.
|
||||
|
||||
Upstream-Status: Inappropriate [oe specific]
|
||||
|
||||
Signed-off-by: Andreas Müller <schnitzeltony@gmail.com>
|
||||
---
|
||||
wx-config.in | 2 +-
|
||||
1 file changed, 1 insertion(+), 1 deletion(-)
|
||||
|
||||
diff --git a/wx-config.in b/wx-config.in
|
||||
index d132e3182f..d0d162e8a3 100755
|
||||
--- a/wx-config.in
|
||||
+++ b/wx-config.in
|
||||
@@ -396,7 +396,7 @@ get_mask()
|
||||
}
|
||||
|
||||
# Returns true if this script is for a cross compiled config.
|
||||
-is_cross() { [ "x@cross_compiling@" = "xyes" ]; }
|
||||
+is_cross() { [ "xno" = "xyes" ]; }
|
||||
|
||||
|
||||
# Determine the base directories we require.
|
||||
--
|
||||
2.26.2
|
||||
|
||||
@@ -0,0 +1,52 @@
|
||||
It fails to build python3-wxgtk4 which depends on wxwidgets:
|
||||
|
||||
| ERROR: wxwidgets-native-3.2.1-r0 do_populate_sysroot: sstate found an
|
||||
absolute path symlink /path/to/build/tmp-glibc/work/x86_64-linux
|
||||
/wxwidgets-native/3.2.1-r0/sysroot-destdir/path/to/build/tmp-glibc/work
|
||||
/x86_64-linux/wxwidgets-native/3.2.1-r0/recipe-sysroot-native/usr/bin/wx-config
|
||||
pointing at /path/to/build/tmp-glibc/work/x86_64-linux/wxwidgets-native/3.2.1-r0
|
||||
/recipe-sysroot-native/usr/lib/wx/config/gtk3-unicode-3.2.
|
||||
Please replace this with a relative link.
|
||||
| ERROR: wxwidgets-native-3.2.1-r0 do_populate_sysroot: sstate found an
|
||||
absolute path symlink /path/to/build/tmp-glibc/work/x86_64-linux/wxwidgets-native
|
||||
/3.2.1-r0/sysroot-destdir/path/to/build/tmp-glibc/work/x86_64-linux/wxwidgets-native
|
||||
/3.2.1-r0/recipe-sysroot-native/usr/bin/wxrc pointing at /path/to/build/tmp-glibc
|
||||
/work/x86_64-linux/wxwidgets-native/3.2.1-r0/recipe-sysroot-native/usr/bin/wxrc-3.2.
|
||||
Please replace this with a relative link.
|
||||
|
||||
Create symlink with relative path to fix the issues.
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Kai Kang <kai.kang@windriver.com>
|
||||
---
|
||||
build/cmake/install.cmake | 2 +-
|
||||
build/cmake/utils/CMakeLists.txt | 2 +-
|
||||
2 files changed, 2 insertions(+), 2 deletions(-)
|
||||
|
||||
diff --git a/build/cmake/install.cmake b/build/cmake/install.cmake
|
||||
index d3303faabb..c79e187f37 100644
|
||||
--- a/build/cmake/install.cmake
|
||||
+++ b/build/cmake/install.cmake
|
||||
@@ -42,7 +42,7 @@ else()
|
||||
install(DIRECTORY DESTINATION "bin")
|
||||
install(CODE "execute_process( \
|
||||
COMMAND ${CMAKE_COMMAND} -E create_symlink \
|
||||
- \"${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/wx/config/${wxBUILD_FILE_ID}\" \
|
||||
+ \"../lib${LIB_SUFFIX}/wx/config/${wxBUILD_FILE_ID}\" \
|
||||
\"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/wx-config\" \
|
||||
)"
|
||||
)
|
||||
diff --git a/build/cmake/utils/CMakeLists.txt b/build/cmake/utils/CMakeLists.txt
|
||||
index dbed8cc9b3..1dbc3261d3 100644
|
||||
--- a/build/cmake/utils/CMakeLists.txt
|
||||
+++ b/build/cmake/utils/CMakeLists.txt
|
||||
@@ -40,7 +40,7 @@ if(wxUSE_XRC)
|
||||
# Don't use wx_install() here to preserve escaping.
|
||||
install(CODE "execute_process( \
|
||||
COMMAND ${CMAKE_COMMAND} -E create_symlink \
|
||||
- \"${CMAKE_INSTALL_PREFIX}/bin/${wxrc_output_name}${EXE_SUFFIX}\" \
|
||||
+ \"./${wxrc_output_name}${EXE_SUFFIX}\" \
|
||||
\"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/wxrc${EXE_SUFFIX}\" \
|
||||
)"
|
||||
)
|
||||
@@ -0,0 +1,107 @@
|
||||
wxWidgets hardcodes libdir with 'lib' and does not support multilib which will
|
||||
change it. Respect variable wxPLATFORM_LIB_DIR to support libdir be configurable.
|
||||
|
||||
Upstream-Status: Pending
|
||||
|
||||
Signed-off-by: Kai Kang <kai.kang@windriver.com>
|
||||
|
||||
Rebase for wxWidgets 3.2.1. Replace wxPLATFORM_LIB_DIR with LIB_SUFFIX in this
|
||||
patch that LIB_SUFFIX has been passed to cmake in cmake.bbclass.
|
||||
|
||||
Signed-off-by: Kai Kang <kai.kang@windriver.com>
|
||||
---
|
||||
CMakeLists.txt | 2 +-
|
||||
build/cmake/config.cmake | 2 +-
|
||||
build/cmake/functions.cmake | 4 ++--
|
||||
build/cmake/install.cmake | 12 ++++++------
|
||||
4 files changed, 10 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/CMakeLists.txt b/CMakeLists.txt
|
||||
index a49ecd3883..d469471f38 100644
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -45,7 +45,7 @@ include(build/cmake/policies.cmake NO_POLICY_SCOPE)
|
||||
# Initialize variables for quick access to wx root dir in sub dirs
|
||||
set(wxSOURCE_DIR ${CMAKE_CURRENT_SOURCE_DIR})
|
||||
set(wxBINARY_DIR ${CMAKE_BINARY_DIR})
|
||||
-set(wxOUTPUT_DIR ${wxBINARY_DIR}/lib)
|
||||
+set(wxOUTPUT_DIR ${wxBINARY_DIR}/lib${LIB_SUFFIX})
|
||||
|
||||
# parse the version number from wx/version.h and include in wxMAJOR_VERSION and wxMINOR_VERSION
|
||||
file(READ "${wxSOURCE_DIR}/include/wx/version.h" WX_VERSION_H_CONTENTS)
|
||||
diff --git a/build/cmake/config.cmake b/build/cmake/config.cmake
|
||||
index b359560bc0..c59ea60923 100644
|
||||
--- a/build/cmake/config.cmake
|
||||
+++ b/build/cmake/config.cmake
|
||||
@@ -76,7 +76,7 @@ function(wx_write_config_inplace)
|
||||
execute_process(
|
||||
COMMAND
|
||||
"${CMAKE_COMMAND}" -E ${COPY_CMD}
|
||||
- "${CMAKE_CURRENT_BINARY_DIR}/lib/wx/config/inplace-${TOOLCHAIN_FULLNAME}"
|
||||
+ "${CMAKE_CURRENT_BINARY_DIR}/lib${LIB_SUFFIX}/wx/config/inplace-${TOOLCHAIN_FULLNAME}"
|
||||
"${CMAKE_CURRENT_BINARY_DIR}/wx-config"
|
||||
)
|
||||
endfunction()
|
||||
diff --git a/build/cmake/functions.cmake b/build/cmake/functions.cmake
|
||||
index 7182364e5e..55fbebc7ee 100644
|
||||
--- a/build/cmake/functions.cmake
|
||||
+++ b/build/cmake/functions.cmake
|
||||
@@ -435,8 +435,8 @@ macro(wx_add_library name)
|
||||
endif()
|
||||
wx_install(TARGETS ${name}
|
||||
EXPORT wxWidgetsTargets
|
||||
- LIBRARY DESTINATION "lib${GEN_EXPR_DIR}${wxPLATFORM_LIB_DIR}"
|
||||
- ARCHIVE DESTINATION "lib${GEN_EXPR_DIR}${wxPLATFORM_LIB_DIR}"
|
||||
+ LIBRARY DESTINATION "lib${LIB_SUFFIX}${GEN_EXPR_DIR}${wxPLATFORM_LIB_DIR}"
|
||||
+ ARCHIVE DESTINATION "lib${LIB_SUFFIX}${GEN_EXPR_DIR}${wxPLATFORM_LIB_DIR}"
|
||||
RUNTIME DESTINATION "${runtime_dir}${GEN_EXPR_DIR}${wxPLATFORM_LIB_DIR}"
|
||||
BUNDLE DESTINATION Applications/wxWidgets
|
||||
)
|
||||
diff --git a/build/cmake/install.cmake b/build/cmake/install.cmake
|
||||
index 384c6837b8..d3303faabb 100644
|
||||
--- a/build/cmake/install.cmake
|
||||
+++ b/build/cmake/install.cmake
|
||||
@@ -29,11 +29,11 @@ if(WIN32_MSVC_NAMING)
|
||||
else()
|
||||
install(
|
||||
DIRECTORY "${wxSETUP_HEADER_PATH}"
|
||||
- DESTINATION "lib/wx/include")
|
||||
+ DESTINATION "lib${LIB_SUFFIX}/wx/include")
|
||||
|
||||
install(
|
||||
FILES "${wxOUTPUT_DIR}/wx/config/${wxBUILD_FILE_ID}"
|
||||
- DESTINATION "lib/wx/config"
|
||||
+ DESTINATION "lib${LIB_SUFFIX}/wx/config"
|
||||
PERMISSIONS OWNER_EXECUTE OWNER_WRITE OWNER_READ
|
||||
GROUP_EXECUTE GROUP_READ
|
||||
WORLD_EXECUTE WORLD_READ
|
||||
@@ -42,13 +42,13 @@ else()
|
||||
install(DIRECTORY DESTINATION "bin")
|
||||
install(CODE "execute_process( \
|
||||
COMMAND ${CMAKE_COMMAND} -E create_symlink \
|
||||
- \"${CMAKE_INSTALL_PREFIX}/lib/wx/config/${wxBUILD_FILE_ID}\" \
|
||||
+ \"${CMAKE_INSTALL_PREFIX}/lib${LIB_SUFFIX}/wx/config/${wxBUILD_FILE_ID}\" \
|
||||
\"\$ENV{DESTDIR}${CMAKE_INSTALL_PREFIX}/bin/wx-config\" \
|
||||
)"
|
||||
)
|
||||
endif()
|
||||
|
||||
-install(EXPORT wxWidgetsTargets NAMESPACE wx:: DESTINATION "lib/cmake/wxWidgets/${wxPLATFORM_LIB_DIR}")
|
||||
+install(EXPORT wxWidgetsTargets NAMESPACE wx:: DESTINATION "lib${LIB_SUFFIX}/cmake/wxWidgets/${wxPLATFORM_LIB_DIR}")
|
||||
|
||||
# find_package config file
|
||||
include(CMakePackageConfigHelpers)
|
||||
@@ -71,11 +71,11 @@ write_basic_package_version_file(
|
||||
configure_package_config_file(
|
||||
"${wxSOURCE_DIR}/build/cmake/wxWidgetsConfig.cmake.in"
|
||||
"${projectConfig}"
|
||||
- INSTALL_DESTINATION "lib/cmake/wxWidgets"
|
||||
+ INSTALL_DESTINATION "lib${LIB_SUFFIX}/cmake/wxWidgets"
|
||||
)
|
||||
install(
|
||||
FILES "${projectConfig}" "${versionConfig}"
|
||||
- DESTINATION "lib/cmake/wxWidgets"
|
||||
+ DESTINATION "lib${LIB_SUFFIX}/cmake/wxWidgets"
|
||||
)
|
||||
|
||||
# uninstall target
|
||||
@@ -0,0 +1,32 @@
|
||||
these macro'd away functions don't exist in musl (yet)
|
||||
diff --git a/include/wx/xlocale.h b/include/wx/xlocale.h
|
||||
index c433d25..3ab9d84 100644
|
||||
--- a/include/wx/xlocale.h
|
||||
+++ b/include/wx/xlocale.h
|
||||
@@ -33,6 +33,26 @@
|
||||
#include "wx/crt.h" // Includes wx/chartype.h, wx/wxcrt.h(wx/string.h)
|
||||
#include "wx/intl.h" // wxLanguage
|
||||
|
||||
+#ifndef strtol_l
|
||||
+#define strtol_l(s, p, base, l) strtol(s, p, base)
|
||||
+#endif
|
||||
+
|
||||
+#ifndef strtoul_l
|
||||
+#define strtoul_l(s, p, base, l) strtoul(s, p, base)
|
||||
+#endif
|
||||
+
|
||||
+#ifndef wcstod_l
|
||||
+#define wcstod_l(s, p, l) wcstod(s, p)
|
||||
+#endif
|
||||
+
|
||||
+#ifndef wcstol_l
|
||||
+#define wcstol_l(s, p, base, l) wcstol(s, p, base)
|
||||
+#endif
|
||||
+
|
||||
+#ifndef wcstoul_l
|
||||
+#define wcstoul_l(s, p, base, l) wcstoul(s, p, base)
|
||||
+#endif
|
||||
+
|
||||
// The platform-specific locale type
|
||||
// If wxXLocale_t is not defined, then only "C" locale support is provided
|
||||
#ifdef wxHAS_XLOCALE_SUPPORT
|
||||
@@ -0,0 +1,32 @@
|
||||
It appends system name to library names for cross compile. For example, the
|
||||
library name is libwx_baseu-3.1-Linux.so rather than libwx_baseu-3.1.so. It is
|
||||
not appropriate for oe.
|
||||
|
||||
Upstream-Status: Pending [oe specific]
|
||||
|
||||
Signed-off-by: Kai Kang <kai.kang@windriver.com>
|
||||
|
||||
Rebase for wxWidgets 3.2.1.
|
||||
|
||||
Signed-off-by: Kai Kang <kai.kang@windriver.com>
|
||||
---
|
||||
build/cmake/functions.cmake | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/build/cmake/functions.cmake b/build/cmake/functions.cmake
|
||||
index e374d9a273..c6b1908bd6 100644
|
||||
--- a/build/cmake/functions.cmake
|
||||
+++ b/build/cmake/functions.cmake
|
||||
@@ -219,9 +219,9 @@ function(wx_set_target_properties target_name)
|
||||
endif()
|
||||
|
||||
set(cross_target)
|
||||
- if (CMAKE_CROSSCOMPILING)
|
||||
- set(cross_target "-${CMAKE_SYSTEM_NAME}")
|
||||
- endif()
|
||||
+ #if (CMAKE_CROSSCOMPILING)
|
||||
+ # set(cross_target "-${CMAKE_SYSTEM_NAME}")
|
||||
+ #endif()
|
||||
|
||||
set(lib_prefix "lib")
|
||||
if(MSVC OR (WIN32 AND wxBUILD_SHARED))
|
||||
@@ -0,0 +1,60 @@
|
||||
It sets 'libdir' with path element 'lib' directly which is not suitable for
|
||||
multilib. Add an option '--baselib' for wx-config to support multilib when
|
||||
cross compile. And set default value of baselib with "lib${wxPLATFORM_LIB_DIR}".
|
||||
|
||||
Upstream-Status: Pending [oe specific]
|
||||
|
||||
Signed-off-by: Kai Kang <kai.kang@windriver.com>
|
||||
|
||||
Rebase for wxWidgets 3.2.1. Replace wxPLATFORM_LIB_DIR with variable LIB_SUFFIX.
|
||||
|
||||
Signed-off-by: Kai Kang <kai.kang@windriver.com>
|
||||
---
|
||||
build/cmake/config.cmake | 2 +-
|
||||
wx-config.in | 6 ++++--
|
||||
2 files changed, 5 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/build/cmake/config.cmake b/build/cmake/config.cmake
|
||||
index 52ae69d3f6..28aa733eb0 100644
|
||||
--- a/build/cmake/config.cmake
|
||||
+++ b/build/cmake/config.cmake
|
||||
@@ -86,7 +86,7 @@ function(wx_write_config)
|
||||
set(prefix ${CMAKE_INSTALL_PREFIX})
|
||||
set(exec_prefix "\${prefix}")
|
||||
set(includedir "\${prefix}/include")
|
||||
- set(libdir "\${exec_prefix}/lib")
|
||||
+ set(libdir "\${exec_prefix}/\${baselib}")
|
||||
set(bindir "\${exec_prefix}/bin")
|
||||
|
||||
find_program(EGREP egrep)
|
||||
diff --git a/wx-config.in b/wx-config.in
|
||||
index e3f7d115bb..0e78af03c7 100755
|
||||
--- a/wx-config.in
|
||||
+++ b/wx-config.in
|
||||
@@ -42,7 +42,8 @@ usage()
|
||||
{
|
||||
cat 1>&2 <<EOF
|
||||
|
||||
- wx-config [--prefix[=DIR]] [--exec-prefix[=DIR]] [--release] [--version-full]
|
||||
+ wx-config [--prefix[=DIR]] [--exec-prefix[=DIR]][--baselib=DIR]
|
||||
+ [--release] [--version-full]
|
||||
[--list] [--selected-config] [--host=HOST] [--toolkit=TOOLKIT]
|
||||
[--universal[=yes|no]] [--unicode[=yes|no]] [--static[=yes|no]]
|
||||
[--debug[=yes|no]] [--version[=VERSION]] [--flavour=FLAVOUR]
|
||||
@@ -137,7 +138,7 @@ wxconfig_output_options="prefix exec_prefix
|
||||
|
||||
# Options that permit the user to supply hints that may affect the output.
|
||||
# These options all accept arbitrary values, to interpret as they please.
|
||||
-wxconfig_input_options="prefix exec_prefix utility $wxconfig_schema"
|
||||
+wxconfig_input_options="prefix exec_prefix baselib utility $wxconfig_schema"
|
||||
|
||||
# Input options that accept only a yes or no argument.
|
||||
#
|
||||
@@ -404,6 +405,7 @@ is_cross() { [ "x@cross_compiling@" = "xyes" ]; }
|
||||
# Determine the base directories we require.
|
||||
prefix=${input_option_prefix-${this_prefix:-@prefix@}}
|
||||
exec_prefix=${input_option_exec_prefix-${input_option_prefix-${this_exec_prefix:-@exec_prefix@}}}
|
||||
+baselib=${input_option_baselib:-lib${LIB_SUFFIX}}
|
||||
wxconfdir="@libdir@/wx/config"
|
||||
|
||||
installed_configs=`cd "$wxconfdir" 2> /dev/null && ls | grep -v "^inplace-"`
|
||||
@@ -0,0 +1,123 @@
|
||||
SUMMARY = "Cross-Plattform GUI Library"
|
||||
DESCRIPTION = "wxWidgets is a free and open source cross-platform C++ framework for writing advanced GUI applications using native controls."
|
||||
HOMEPAGE = "https://www.wxwidgets.org/"
|
||||
BUGTRACKER = "https://trac.wxwidgets.org/"
|
||||
|
||||
# WXwindows licence is a modified version of LGPL explicitly allowing not
|
||||
# distributing the sources of an application using the library even in the
|
||||
# case of static linking.
|
||||
LICENSE = "WXwindows"
|
||||
LIC_FILES_CHKSUM = "file://docs/licence.txt;md5=981f50a934828620b08f44d75db557c6"
|
||||
|
||||
inherit ${@bb.utils.contains('PACKAGECONFIG', 'qt', 'cmake_qt5', 'cmake', d)}
|
||||
inherit lib_package binconfig pkgconfig
|
||||
|
||||
DEPENDS += " \
|
||||
jpeg \
|
||||
libpng \
|
||||
tiff \
|
||||
"
|
||||
|
||||
SRC_URI = "gitsm://github.com/wxWidgets/wxWidgets.git;branch=3.2;protocol=https \
|
||||
file://0001-wx-config.in-Disable-cross-magic-it-does-not-work-fo.patch \
|
||||
file://fix-libdir-for-multilib.patch \
|
||||
file://create-links-with-relative-path.patch \
|
||||
file://not-append-system-name-to-lib-name.patch \
|
||||
file://wx-config-fix-libdir-for-multilib.patch \
|
||||
file://0001-locale-Avoid-using-glibc-specific-defines-on-musl.patch \
|
||||
file://musl-locale-l.patch \
|
||||
file://0001-Set-HAVE_LARGEFILE_SUPPORT-to-1-explicitly.patch \
|
||||
"
|
||||
SRCREV= "97e99707c5d2271a70cb686720b48dbf34ced496"
|
||||
S = "${WORKDIR}/git"
|
||||
|
||||
# These can be either 'builtin' or 'sys' and builtin means cloned soures are
|
||||
# build. So these cannot be PACKAGECONFIGs and let's use libs where we can (see
|
||||
# DEPENDS)
|
||||
EXTRA_OECMAKE += " \
|
||||
-DwxUSE_GLCANVAS_EGL=OFF \
|
||||
-DwxUSE_LIBJPEG=sys \
|
||||
-DwxUSE_LIBPNG=sys \
|
||||
-DwxUSE_LIBTIFF=sys \
|
||||
-DwxUSE_REGEX=builtin \
|
||||
"
|
||||
EXTRA_OECMAKE:append:class-target = ' -DEGREP="/bin/grep -E"'
|
||||
|
||||
# OpenGL support currently seems tied to using libglu, which requires x11
|
||||
PACKAGECONFIG ?= "${@bb.utils.contains_any('DISTRO_FEATURES', 'x11 wayland', 'gtk', 'no_gui', d)} \
|
||||
${@bb.utils.contains('DISTRO_FEATURES', 'x11 opengl', 'opengl', '', d)} \
|
||||
"
|
||||
|
||||
PACKAGECONFIG:remove:class-native = "opengl"
|
||||
|
||||
# Note on toolkit-PACKAGECONFIGs: select exactly one of 'no_gui' / 'gtk' / 'qt'
|
||||
PACKAGECONFIG[no_gui] = "-DwxUSE_GUI=OFF,,,,,qt gtk opengl"
|
||||
PACKAGECONFIG[gtk] = "-DwxBUILD_TOOLKIT=gtk3 -DwxUSE_GUI=ON -DwxUSE_PRIVATE_FONTS=ON,,gtk+3,,,no_gui qt"
|
||||
PACKAGECONFIG[qt] = "-DwxBUILD_TOOLKIT=qt -DwxUSE_GUI=ON,,qtbase,,,no_gui gtk"
|
||||
python () {
|
||||
pkgconfig = d.getVar('PACKAGECONFIG')
|
||||
if (not 'no_gui' in pkgconfig) and (not 'gtk' in pkgconfig) and (not 'qt' in pkgconfig):
|
||||
bb.error("PACKAGECONFIG must select a toolkit. Add one of no_gui / gtk / qt!")
|
||||
}
|
||||
|
||||
# Notes on other PACKAGECONFIGs:
|
||||
# * 'no_gui' overrides some configs below so they are marked as conflicting
|
||||
# with 'no_gui' to avoid surprises
|
||||
# * qt+gstreamer is broken due to incorrect references on glib-2.0 -> mark
|
||||
# as conflicting
|
||||
# * wxUSE_LIBGNOMEVFS is for gtk2 (see init.cmake) which we don't support
|
||||
# -> no gvfs PACKAGECONFIG
|
||||
# * libmspack is in meta-security
|
||||
PACKAGECONFIG[gstreamer] = "-DwxUSE_MEDIACTRL=ON,-DwxUSE_MEDIACTRL=OFF,gstreamer1.0-plugins-base,,,no_gui qt"
|
||||
PACKAGECONFIG[libsecret] = "-DwxUSE_SECRETSTORE=ON,-DwxUSE_SECRETSTORE=OFF,libsecret,,,no_gui"
|
||||
PACKAGECONFIG[lzma] = "-DwxUSE_LIBLZMA=ON,-DwxUSE_LIBLZMA=OFF,xz"
|
||||
PACKAGECONFIG[mspack] = "-DwxUSE_LIBMSPACK=ON,-DwxUSE_LIBMSPACK=OFF,libmspack"
|
||||
PACKAGECONFIG[opengl] = "-DwxUSE_OPENGL=ON,-DwxUSE_OPENGL=OFF,libglu"
|
||||
PACKAGECONFIG[sdl_audio] = "-DwxUSE_LIBSDL=ON,-DwxUSE_LIBSDL=OFF,libsdl2"
|
||||
PACKAGECONFIG[webkit] = "-DwxUSE_WEBVIEW_WEBKIT=ON,-DwxUSE_WEBVIEW_WEBKIT=OFF,webkitgtk,,,no_gui"
|
||||
PACKAGECONFIG[curl] = "-DwxUSE_WEBREQUEST_CURL=ON,-DwxUSE_WEBREQUEST_CURL=OFF,curl"
|
||||
|
||||
# Support LFS unconditionally
|
||||
CXXFLAGS += "-D_FILE_OFFSET_BITS=64"
|
||||
|
||||
do_compile:append() {
|
||||
# if not at re-compile
|
||||
if [ -L ${B}/wx-config ]; then
|
||||
# ${B}/wx-config is a symlink for build and not needed after compile
|
||||
# So for our purposes do:
|
||||
# 1. make a file out of wx-config so that binconfig.bbclass detects it
|
||||
# 2. make sure we do not move the file used for compiling into sysroot
|
||||
cp --remove-destination `readlink ${B}/wx-config | sed 's:inplace-::'` ${B}/wx-config
|
||||
fi
|
||||
# 3. Set full sysroot paths so sstate can translate them when setting
|
||||
# up wxwidgets's consumer sysroots
|
||||
sed -i \
|
||||
-e 's,^includedir=.*,includedir="${STAGING_INCDIR}",g' \
|
||||
-e 's,^libdir=.*",libdir="${STAGING_LIBDIR}",g' \
|
||||
-e 's,^bindir=.*",bindir="${STAGING_BINDIR}",g' \
|
||||
${B}/wx-config
|
||||
}
|
||||
|
||||
do_install:append() {
|
||||
# do not ship bindir if empty
|
||||
rmdir --ignore-fail-on-non-empty ${D}${bindir}
|
||||
|
||||
# fix host contamination
|
||||
sed -i -e "s#${STAGING_DIR_NATIVE}##g" \
|
||||
-e "s#${STAGING_DIR_TARGET}##g" \
|
||||
${D}${libdir}/wx/config/*-unicode-3.2 \
|
||||
${D}${libdir}/cmake/wxWidgets/wxWidgetsTargets.cmake
|
||||
}
|
||||
|
||||
FILES:${PN} += " \
|
||||
${libdir}/wx/ \
|
||||
"
|
||||
|
||||
FILES:${PN}-dev += " \
|
||||
${libdir}/wx/include/ \
|
||||
${libdir}/wx/config/ \
|
||||
"
|
||||
|
||||
RDEPENDS:${PN}-dev += "grep"
|
||||
|
||||
BBCLASSEXTEND = "native"
|
||||
Reference in New Issue
Block a user