summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorAndreas Müller <schnitzeltony@gmail.com>2020-04-01 22:12:17 +0200
committerKhem Raj <raj.khem@gmail.com>2020-04-01 15:11:15 -0700
commit7227897d5d4eb1af442508689ceb09935449efbb (patch)
tree94cdbfb468bc8d1e75cbc7a3c2f61321ad9732fb
parenteb6a0abb3501599380fded9f27d84f26569ff910 (diff)
downloadmeta-openembedded-7227897d5d4eb1af442508689ceb09935449efbb.tar.gz
wxwidgets: initial add 3.1.3
* need it for 0.a.d and audacity * did extensive testing with PACKAGECONFIG combinations (exception: mspack - libmspack is in meta-security) Signed-off-by: Andreas Müller <schnitzeltony@gmail.com> Signed-off-by: Khem Raj <raj.khem@gmail.com>
-rw-r--r--meta-oe/licenses/wxWidgets54
-rw-r--r--meta-oe/recipes-extended/wxwidgets/wxwidgets_git.bb82
2 files changed, 136 insertions, 0 deletions
diff --git a/meta-oe/licenses/wxWidgets b/meta-oe/licenses/wxWidgets
new file mode 100644
index 000000000..0f6b9d6a8
--- /dev/null
+++ b/meta-oe/licenses/wxWidgets
@@ -0,0 +1,54 @@
1 wxWindows Library Licence, Version 3.1
2 ======================================
3
4 Copyright (c) 1998-2005 Julian Smart, Robert Roebling et al
5
6 Everyone is permitted to copy and distribute verbatim copies
7 of this licence document, but changing it is not allowed.
8
9 WXWINDOWS LIBRARY LICENCE
10 TERMS AND CONDITIONS FOR COPYING, DISTRIBUTION AND MODIFICATION
11
12 This library is free software; you can redistribute it and/or modify it
13 under the terms of the GNU Library General Public Licence as published by
14 the Free Software Foundation; either version 2 of the Licence, or (at
15 your option) any later version.
16
17 This library is distributed in the hope that it will be useful, but
18 WITHOUT ANY WARRANTY; without even the implied warranty of
19 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU Library
20 General Public Licence for more details.
21
22 You should have received a copy of the GNU Library General Public Licence
23 along with this software, usually in a file named COPYING.LIB. If not,
24 write to the Free Software Foundation, Inc., 51 Franklin Street, Fifth Floor,
25 Boston, MA 02110-1301 USA.
26
27 EXCEPTION NOTICE
28
29 1. As a special exception, the copyright holders of this library give
30 permission for additional uses of the text contained in this release of
31 the library as licenced under the wxWindows Library Licence, applying
32 either version 3.1 of the Licence, or (at your option) any later version of
33 the Licence as published by the copyright holders of version
34 3.1 of the Licence document.
35
36 2. The exception is that you may use, copy, link, modify and distribute
37 under your own terms, binary object code versions of works based
38 on the Library.
39
40 3. If you copy code from files distributed under the terms of the GNU
41 General Public Licence or the GNU Library General Public Licence into a
42 copy of this library, as this licence permits, the exception does not
43 apply to the code that you add in this way. To avoid misleading anyone as
44 to the status of such modified files, you must delete this exception
45 notice from such code and/or adjust the licensing conditions notice
46 accordingly.
47
48 4. If you write modifications of your own for this library, it is your
49 choice whether to permit this exception to apply to your modifications.
50 If you do not wish that, you must delete the exception notice from such
51 code and/or adjust the licensing conditions notice accordingly.
52
53
54
diff --git a/meta-oe/recipes-extended/wxwidgets/wxwidgets_git.bb b/meta-oe/recipes-extended/wxwidgets/wxwidgets_git.bb
new file mode 100644
index 000000000..06337b79c
--- /dev/null
+++ b/meta-oe/recipes-extended/wxwidgets/wxwidgets_git.bb
@@ -0,0 +1,82 @@
1SUMMARY = "Cross-Plattform GUI Library"
2DESCRIPTIOM = "wxWidgets is a free and open source cross-platform C++ framework for writing advanced GUI applications using native controls."
3HOMEPAGE = "https://www.wxwidgets.org/"
4BUGTRACKER = "https://trac.wxwidgets.org/"
5
6# wxWidgets licence is a modified version of LGPL explicitly allowing not
7# distributing the sources of an application using the library even in the
8# case of static linking.
9LICENSE = "wxWidgets"
10LIC_FILES_CHKSUM = "file://docs/licence.txt;md5=981f50a934828620b08f44d75db557c6"
11
12inherit ${@bb.utils.contains('PACKAGECONFIG', 'qt', 'cmake_qt5', 'cmake', d)}
13inherit features_check lib_package
14
15# All toolkit-configs except 'no_gui' require x11 explicitly (see toolkit.cmake)
16REQUIRED_DISTRO_FEATURES = "${@bb.utils.contains('PACKAGECONFIG', 'no_gui', '', 'x11', d)}"
17
18DEPENDS += " \
19 jpeg \
20 libpng \
21 tiff \
22"
23
24SRC_URI = "git://github.com/wxWidgets/wxWidgets.git"
25PV = "3.1.3"
26SRCREV= "8a40d23b27ed1c80b5a2ca9f7e8461df4fbc1a31"
27S = "${WORKDIR}/git"
28
29# These can be either 'builtin' or 'sys' and builtin means cloned soures are
30# build. So these cannot be PACKAGECONFIGs and let's use libs where we can (see
31# DEPENDS)
32EXTRA_OECMAKE += " \
33 -DwxUSE_LIBJPEG=sys \
34 -DwxUSE_LIBPNG=sys \
35 -DwxUSE_LIBTIFF=sys \
36 -DwxUSE_REGEX=builtin \
37"
38EXTRA_OECMAKE_append_libc-musl = " \
39 -DHAVE_LOCALE_T=OFF \
40"
41
42PACKAGECONFIG ?= "gtk"
43
44# Note on toolkit-PACKAGECONFIGs: select exactly one of 'no_gui' / 'gtk' / 'qt'
45PACKAGECONFIG[no_gui] = "-DwxUSE_GUI=OFF,,,,,qt gtk"
46PACKAGECONFIG[gtk] = "-DwxBUILD_TOOLKIT=gtk3 -DwxUSE_GUI=ON,,gtk+3,,,no_gui qt"
47PACKAGECONFIG[qt] = "-DwxBUILD_TOOLKIT=qt -DwxUSE_GUI=ON,,qtbase,,,no_gui gtk"
48python () {
49 pkgconfig = d.getVar('PACKAGECONFIG')
50 if (not 'no_gui' in pkgconfig) and (not 'gtk' in pkgconfig) and (not 'qt' in pkgconfig):
51 bb.error("PACKAGECONFIG must select a toolkit. Add one of no_gui / gtk / qt!")
52}
53
54# Notes on other PACKAGECONFIGs:
55# * 'no_gui' overrides some configs below so they are marked as conflicting
56# with 'no_gui' to avoid surprises
57# * qt+gstreamer is broken due to incorrect references on glib-2.0 -> mark
58# as conflicting
59# * wxUSE_LIBGNOMEVFS is for gtk2 (see init.cmake) which we don't support
60# -> no gvfs PACKAGECONFIG
61# * libmspack is in meta-security
62PACKAGECONFIG[gstreamer] = "-DwxUSE_MEDIACTRL=ON,-DwxUSE_MEDIACTRL=OFF,gstreamer1.0-plugins-base,,,no_gui qt"
63PACKAGECONFIG[libsecret] = "-DwxUSE_SECRETSTORE=ON,-DwxUSE_SECRETSTORE=OFF,libsecret,,,no_gui"
64PACKAGECONFIG[lzma] = "-DwxUSE_LIBLZMA=ON,-DwxUSE_LIBLZMA=OFF,xz"
65PACKAGECONFIG[mspack] = "-DwxUSE_LIBMSPACK=ON,-DwxUSE_LIBMSPACK=OFF,libmspack"
66PACKAGECONFIG[sdl_audio] = "-DwxUSE_LIBSDL=ON,-DwxUSE_LIBSDL=OFF,libsdl2"
67PACKAGECONFIG[webkit] = "-DwxUSE_WEBVIEW_WEBKIT=ON,-DwxUSE_WEBVIEW_WEBKIT=OFF,webkitgtk,,,no_gui"
68
69do_install_append() {
70 # do not ship bindir if empty
71 rmdir --ignore-fail-on-non-empty ${D}${bindir}
72}
73
74# lib names are not canonical
75FILES_SOLIBSDEV = ""
76
77FILES_${PN} += " \
78 ${libdir}/libwx_*.so \
79 ${libdir}/wx/ \
80"
81
82FILES_${PN}-dev += "${libdir}/wx/include/"