summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'dev-go/qt/qt-0_pre20200904.ebuild')
-rw-r--r--dev-go/qt/qt-0_pre20200904.ebuild123
1 files changed, 123 insertions, 0 deletions
diff --git a/dev-go/qt/qt-0_pre20200904.ebuild b/dev-go/qt/qt-0_pre20200904.ebuild
new file mode 100644
index 000000000000..d219474554db
--- /dev/null
+++ b/dev-go/qt/qt-0_pre20200904.ebuild
@@ -0,0 +1,123 @@
+# Copyright 1999-2021 Gentoo Authors
+# Distributed under the terms of the GNU General Public License v2
+
+EAPI=7
+
+EGO_PN="github.com/therecipe/qt"
+EGO_VENDOR=(
+ "github.com/davecgh/go-spew v1.1.0"
+ "github.com/davecgh/go-spew v1.1.1"
+ "github.com/gopherjs/gopherjs bd77b112433e"
+ "github.com/konsorten/go-windows-terminal-sequences v1.0.1"
+ "github.com/konsorten/go-windows-terminal-sequences v1.0.2"
+ "github.com/pmezard/go-difflib v1.0.0"
+ "github.com/sirupsen/logrus v1.4.1"
+ "github.com/stretchr/objx v0.1.0"
+ "github.com/stretchr/objx v0.1.1"
+ "github.com/stretchr/objx v0.2.0"
+ "github.com/stretchr/testify v1.2.2"
+ "github.com/stretchr/testify v1.3.0"
+ "golang.org/x/crypto df01cb2cc480 github.com/golang/crypto"
+ "golang.org/x/net afa5a82059c6 github.com/golang/net"
+ "golang.org/x/sys e8e3143a4f4a github.com/golang/sys"
+ "golang.org/x/sys e8e3143a4f4a github.com/golang/sys"
+ "golang.org/x/text f4905fbd45b6 github.com/golang/text"
+ "golang.org/x/tools aa740d480789 github.com/golang/tools"
+)
+
+inherit golang-vcs-snapshot xdg-utils
+
+EGIT_COMMIT="c0c124a5770d357908f16fa57e0aa0ec6ccd3f91"
+
+DESCRIPTION="Qt5 Go bindings"
+HOMEPAGE="https://github.com/therecipe/qt/"
+SRC_URI="https://github.com/therecipe/${PN}/archive/${EGIT_COMMIT}.tar.gz -> ${P}.tar.gz
+ ${EGO_VENDOR_URI}"
+
+LICENSE="LGPL-3+"
+SLOT="0"
+KEYWORDS="~amd64"
+
+# As of 2021-01-20 the test 'widgets/textedit' calls methods which do not exist, at least in qt-5.15.
+# TODO: figure out how to disable this test.
+RESTRICT="test"
+
+# We need qt-docs[html] because binding generation depends on core .index files
+# installed by this USE flag.
+RDEPEND="dev-qt/designer:5=
+ dev-qt/qt-docs:5=[html]
+ dev-qt/qtbluetooth:5=
+ dev-qt/qtcharts:5=
+ dev-qt/qtdatavis3d:5=
+ dev-qt/qtdbus:5=
+ dev-qt/qtgamepad:5=
+ dev-qt/qthelp:5=
+ dev-qt/qtlocation:5=
+ dev-qt/qtmultimedia:5=[widgets]
+ dev-qt/qtpositioning:5=
+ dev-qt/qtquickcontrols2:5=
+ dev-qt/qtscxml:5=
+ dev-qt/qtsensors:5=
+ dev-qt/qtserialbus:5=
+ dev-qt/qtserialport:5=
+ dev-qt/qtspeech:5=
+ dev-qt/qtsql:5=
+ dev-qt/qtsvg:5=
+ dev-qt/qtvirtualkeyboard:5=
+ dev-qt/qtwebchannel:5=
+ dev-qt/qtwebengine:5=
+ dev-qt/qtwebsockets:5=
+ dev-qt/qtwebview:5=
+"
+DEPEND="${RDEPEND}"
+
+PATCHES=(
+ "${FILESDIR}"/${PN}-0_pre20200904-disable_modules.patch
+)
+
+src_prepare() {
+ xdg_environment_reset
+ default
+}
+
+src_configure() {
+ export GOPATH="${WORKDIR}"/${P}
+ export QT_PKG_CONFIG=true
+ export QT_DOC_DIR="${EPREFIX}/usr/share/qt5-doc"
+}
+
+src_compile() {
+ # Not a typo, all that gets installed here is the bootstrap for generating
+ # and building actual bindings
+ go install -v -work -x -tags=no_env ${EGO_PN}/cmd/... || die
+
+ # Conversely, this step DOES install the actual bindings but there seems
+ # to be no way of only building them.
+ # Note: passing -test actually DISABLES running tests
+ "${GOPATH}"/bin/qtsetup -failfast -test=false || die
+}
+
+src_test() {
+ "${GOPATH}"/bin/qtsetup -failfast test || die
+}
+
+src_install() {
+ # Just in case
+ unset GOPATH
+
+ rm -rf src/${EGO_PN}/vendor
+ rm -rf src/${EGO_PN}/.git*
+ find src/${EGO_PN}/internal/examples -type d -name deploy -exec rm -rf {} \;
+ find src/${EGO_PN} -name '*.c' -exec rm -f {} \;
+ find src/${EGO_PN} -name '*.h' -exec rm -f {} \;
+
+ insinto $(dirname "$(get_golibdir)/src/${EGO_PN%/*}")
+ doins -r src/${EGO_PN%/*}
+
+ insinto $(dirname "$(get_golibdir)/pkg/$(go env GOOS)_$(go env GOARCH)/${EGO_PN%/*}")
+ doins -r pkg/$(go env GOOS)_$(go env GOARCH)/${EGO_PN%/*}
+
+ # Not sure if we actually need these - but just in case
+ exeinto "$(get_golibdir)"/bin
+ doexe bin/*
+}