diff options
-rw-r--r-- | dev-ruby/poltergeist/Manifest | 1 | ||||
-rw-r--r-- | dev-ruby/poltergeist/metadata.xml | 11 | ||||
-rw-r--r-- | dev-ruby/poltergeist/poltergeist-1.14.0.ebuild | 46 | ||||
-rw-r--r-- | profiles/package.mask | 8 | ||||
-rw-r--r-- | www-client/phantomjs/Manifest | 5 | ||||
-rw-r--r-- | www-client/phantomjs/metadata.xml | 12 | ||||
-rw-r--r-- | www-client/phantomjs/phantomjs-2.1.1-r1.ebuild | 99 | ||||
-rw-r--r-- | www-client/phantomjs/phantomjs-2.1.1.ebuild | 99 |
8 files changed, 281 insertions, 0 deletions
diff --git a/dev-ruby/poltergeist/Manifest b/dev-ruby/poltergeist/Manifest new file mode 100644 index 000000000000..6362d5799832 --- /dev/null +++ b/dev-ruby/poltergeist/Manifest @@ -0,0 +1 @@ +DIST poltergeist-1.14.0.tar.gz 185946 BLAKE2B 0f5d95437ad5c2509264ef0230624ac257e8901e98bd4494576c3dc6895fc38c64572b287eb9842c8af2ddbaf0b3c48ecb0a1fb4a2cb72711abba40646dcaeec SHA512 82ab8aec7e5e091fa2924765e077d8b9816319833d438d9246f8ef3d0045d158de6bce1d14e929cc5cb8d0970ea380d44a51511b17623479f3cd64853580ce71 diff --git a/dev-ruby/poltergeist/metadata.xml b/dev-ruby/poltergeist/metadata.xml new file mode 100644 index 000000000000..1ec3a890fb3a --- /dev/null +++ b/dev-ruby/poltergeist/metadata.xml @@ -0,0 +1,11 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="project"> + <email>ruby@gentoo.org</email> + <name>Gentoo Ruby Project</name> + </maintainer> + <upstream> + <remote-id type="github">jonleighton/poltergeist</remote-id> + </upstream> +</pkgmetadata> diff --git a/dev-ruby/poltergeist/poltergeist-1.14.0.ebuild b/dev-ruby/poltergeist/poltergeist-1.14.0.ebuild new file mode 100644 index 000000000000..4dfa4cf7439d --- /dev/null +++ b/dev-ruby/poltergeist/poltergeist-1.14.0.ebuild @@ -0,0 +1,46 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=5 +USE_RUBY="ruby21 ruby22 ruby23" + +# There are tests but they require several unpackaged dependencies. +RUBY_FAKEGEM_RECIPE_TEST="rspec3" + +RUBY_FAKEGEM_TASK_DOC="" +RUBY_FAKEGEM_EXTRADOC="CHANGELOG.md README.md" + +RUBY_FAKEGEM_GEMSPEC="${PN}.gemspec" + +inherit ruby-fakegem + +DESCRIPTION="A PhantomJS driver for Capybara" +HOMEPAGE="https://github.com/jonleighton/poltergeist" +SRC_URI="https://github.com/jonleighton/poltergeist/archive/v${PV}.tar.gz -> ${P}.tar.gz" + +LICENSE="MIT" +SLOT="0" +KEYWORDS="~amd64" +IUSE="" + +RDEPEND+=" www-client/phantomjs" + +ruby_add_rdepend ">=dev-ruby/cliver-0.3.1 + >=dev-ruby/capybara-2.1 + >=dev-ruby/websocket-driver-0.2.0" + +ruby_add_bdepend "test? ( dev-ruby/sinatra:0 )" + +all_ruby_prepare() { + # Fix cliver versioning to accept all 0.x versions + sed -i -e 's/0.3.1/0.3/' ${RUBY_FAKEGEM_GEMSPEC} || die + + sed -i -e '/bundler/ s:^:#:' spec/spec_helper.rb || die + sed -i -e '2igem "sinatra", "~>1.0"; gem "rack", "~>1.5"' spec/spec_helper.rb || die + + # Remove integration tests for now since they require additional dependencies. + rm -rf spec/integration + + # Avoid a spec failing only in our ebuild test environment + sed -i -e '/can pause indefinitely/,/^ end/ s:^:#:' spec/unit/driver_spec.rb || die +} diff --git a/profiles/package.mask b/profiles/package.mask index ee3815b16a88..65fac9ba71e2 100644 --- a/profiles/package.mask +++ b/profiles/package.mask @@ -331,6 +331,14 @@ sys-devel/automake:1.8 # upstream. >=app-text/jabref-bin-4.0 +# Hans de Graaff <graaff@gentoo.org> (05 Jun 2017) +# Bundles obsolete and vulnerable webkit version. +# Upstream has stopped development and recommends using +# headless mode in >=www-client/chromium-59. +# Masked for removal in 90 days. Bug #589994. +www-client/phantomjs +dev-ruby/poltergeist + # Michał Górny <mgorny@gentoo.org> (22 May 2017) # for Maciej S. Szmigiero <mail@maciej.szmigiero.name> # Any version above 5.100.138 breaks b43 driver in various ways. diff --git a/www-client/phantomjs/Manifest b/www-client/phantomjs/Manifest new file mode 100644 index 000000000000..014f959a009f --- /dev/null +++ b/www-client/phantomjs/Manifest @@ -0,0 +1,5 @@ +DIST gentoo-phantomjs-patchset-0.01.tar.bz2 7537 BLAKE2B 4a0fe19ae338ebb1846e2f04c3a6ea2f790d3835044d089304f7eba1d1f3bf0af41148d87b6f4a32103a5613cb1b470a8572189653bb3c38a64fb0c12e475feb SHA512 3e85fe068da41fa620ad89f9b0450fa7aa405778c2011d4b0f046edd9c921702125adf01075cd90d70cd21d9704081a67be18c1f9eece4070a26407a6a56a5df +DIST gentoo-phantomjs-patchset-0.02.tar.bz2 8017 BLAKE2B 0bde29dab19ced08afeab0484e0d88f9fee35306ddba0aeda3cef158ad0f818a7f93f6d1462766399231513d1279dc1071bde4e82d82c67e156eaeb0c52d6f87 SHA512 88e8acb47842b108c4f01bc778c25d95011462b9d6732e6cca20372824a93321731d1976b19736a87d6e51737dffa0c76a15983d4b0739e97c7dc55ea065e791 +DIST phantomjs-2.1.1.tar.gz 1880406 BLAKE2B e54e8a1d42cdbf6fb98c90283a0ebcb4145350bc34d76b8a0d01163fcca15b7e6bbf7043e2d17bbf21c5d01e7fd0e76a4386f9c01dfc8727998f8d0f17da9291 SHA512 07b769133957c5194c9afdaa347bd9a019ebe47653f98adf17a35d3dd12714d2f8e3773ced91d7d99f31cb18d7f73167022d5b0a3906d9aac0732ef96341f5ec +DIST qtbase-opensource-src-5.5.1.tar.xz 46389212 BLAKE2B 2fd956a2d8cb64e31bff107497191bc601048fe173fe3361a5baf3f5987c9dea035c9c1829595531c5d09eb5168acbabc10a361adea943e597daa781008212dd SHA512 4d31de136870025dfb7544f255798884af1ad4f3060b0c00a0467c98af1f7de368eb298d4c52ba6d1ad27e36060b30c0314ce7ba0744b15642420ec89587a575 +DIST qtwebkit-opensource-src-5.7.1.tar.xz 35298736 BLAKE2B 74819c28ab00b09d090a77f10d5338e04381432130e0420cf006b8dba75da2426b047cf449a708343eae76e06a9230d962e724dc5d34f8c799947de2e5079581 SHA512 538928ada8fd25c01f0b78efac79e004904e6e4ec110108c492877e334acd5d9253653d3b207e535d1e08d092af2833a7566cebb2bf8b90069944634bf24f60a diff --git a/www-client/phantomjs/metadata.xml b/www-client/phantomjs/metadata.xml new file mode 100644 index 000000000000..748968f236d5 --- /dev/null +++ b/www-client/phantomjs/metadata.xml @@ -0,0 +1,12 @@ +<?xml version="1.0" encoding="UTF-8"?> +<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> +<pkgmetadata> + <maintainer type="person"> + <email>chainsaw@gentoo.org</email> + <name>Tony Vroon</name> + </maintainer> + <upstream> + <remote-id type="google-code">phantomjs</remote-id> + <remote-id type="bitbucket">ariya/phantomjs</remote-id> + </upstream> +</pkgmetadata> diff --git a/www-client/phantomjs/phantomjs-2.1.1-r1.ebuild b/www-client/phantomjs/phantomjs-2.1.1-r1.ebuild new file mode 100644 index 000000000000..c9a611bdeb3e --- /dev/null +++ b/www-client/phantomjs/phantomjs-2.1.1-r1.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python{2_7,3_{4,5,6}} pypy{,3} ) +QTB_PV="5.5.1" +QTB_P="qtbase-opensource-src-${QTB_PV}" +QTW_PV="5.7.1" +QTW_P="qtwebkit-opensource-src-${QTW_PV}" + +DESCRIPTION="A headless WebKit scriptable with a JavaScript API" +HOMEPAGE="http://phantomjs.org/" +SRC_URI="https://github.com/ariya/phantomjs/archive/${PV}.tar.gz -> ${P}.tar.gz + https://download.qt.io/archive/qt/${QTB_PV%.*}/${QTB_PV}/submodules/${QTB_P}.tar.xz + https://download.qt.io/community_releases/${QTW_PV%.*}/${QTW_PV}/${QTW_P}.tar.xz + mirror://gentoo/gentoo-${PN}-patchset-0.02.tar.bz2" + +inherit eutils toolchain-funcs pax-utils multiprocessing + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="examples fontconfig libressl truetype" +RESTRICT="mirror" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +EPATCH_SUFFIX="patch" +PATCHES=( "${WORKDIR}/${PN}-patchset" ) + +RDEPEND="dev-libs/icu:= + fontconfig? ( media-libs/fontconfig ) + !libressl? ( dev-libs/openssl:0 ) + libressl? ( dev-libs/libressl ) + truetype? ( media-libs/freetype ) + dev-db/sqlite:3" +DEPEND="${RDEPEND} + net-misc/openssh[-bindist] + app-arch/unzip + dev-lang/ruby + virtual/pkgconfig" + +src_prepare() { + ebegin "Moving third-party libraries into position for build" + mv -T "${WORKDIR}/${QTB_P}" "${S}/src/qt/qtbase/" || die "QT base ${QTB_PV} failed" + mv -T "${WORKDIR}/${QTW_P}" "${S}/src/qt/qtwebkit/" || die "QT webkit ${QTW_PV} failed" + eend "$?" + + ebegin "Instilling C/CXX/LDFLAGS respect in main source" + # Respect CC, CXX, {C,CXX,LD}FLAGS in .qmake.cache + sed -i \ + -e "/^SYSTEM_VARIABLES=/i \ + CC='$(tc-getCC)'\n\ + CXX='$(tc-getCXX)'\n\ + CFLAGS='${CFLAGS}'\n\ + CXXFLAGS='${CXXFLAGS}'\n\ + LDFLAGS='${LDFLAGS}'\n\ + QMakeVar set QMAKE_CFLAGS_RELEASE\n\ + QMakeVar set QMAKE_CFLAGS_DEBUG\n\ + QMakeVar set QMAKE_CXXFLAGS_RELEASE\n\ + QMakeVar set QMAKE_CXXFLAGS_DEBUG\n\ + QMakeVar set QMAKE_LFLAGS_RELEASE\n\ + QMakeVar set QMAKE_LFLAGS_DEBUG\n"\ + src/qt/qtbase/configure \ + || die + eend $? + + ebegin "Instilling C/CXX/LDFLAGS respect in test suite" + # Respect CC, CXX, LINK and *FLAGS in config.tests + find src/qt/qtbase/config.tests/unix -name '*.test' -type f -exec \ + sed -i -e "/bin\/qmake/ s: \"\$SRCDIR/: \ + 'QMAKE_CC=$(tc-getCC)' 'QMAKE_CXX=$(tc-getCXX)' 'QMAKE_LINK=$(tc-getCXX)' \ + 'QMAKE_CFLAGS+=${CFLAGS}' 'QMAKE_CXXFLAGS+=${CXXFLAGS}' 'QMAKE_LFLAGS+=${LDFLAGS}'&:" \ + {} + || die + eend $? + + default +} + +src_compile() { + ./build.py \ + --confirm \ + --jobs $(makeopts_jobs) \ + || die +} + +src_test() { + ./bin/phantomjs test/run-tests.js || die +} + +src_install() { + pax-mark m bin/phantomjs || die + dobin bin/phantomjs + dodoc ChangeLog README.md + if use examples ; then + docinto examples + dodoc examples/* + fi +} diff --git a/www-client/phantomjs/phantomjs-2.1.1.ebuild b/www-client/phantomjs/phantomjs-2.1.1.ebuild new file mode 100644 index 000000000000..cf2bef6794e1 --- /dev/null +++ b/www-client/phantomjs/phantomjs-2.1.1.ebuild @@ -0,0 +1,99 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 + +PYTHON_COMPAT=( python{2_7,3_{4,5,6}} pypy{,3} ) +QTB_PV="5.5.1" +QTB_P="qtbase-opensource-src-${QTB_PV}" +QTW_PV="5.7.1" +QTW_P="qtwebkit-opensource-src-${QTW_PV}" + +DESCRIPTION="A headless WebKit scriptable with a JavaScript API" +HOMEPAGE="http://phantomjs.org/" +SRC_URI="https://github.com/ariya/phantomjs/archive/${PV}.tar.gz -> ${P}.tar.gz + https://download.qt.io/archive/qt/${QTB_PV%.*}/${QTB_PV}/submodules/${QTB_P}.tar.xz + https://download.qt.io/community_releases/${QTW_PV%.*}/${QTW_PV}/${QTW_P}.tar.xz + mirror://gentoo/gentoo-${PN}-patchset-0.01.tar.bz2" + +inherit eutils toolchain-funcs pax-utils multiprocessing + +LICENSE="BSD" +SLOT="0" +KEYWORDS="~amd64 ~x86" +IUSE="examples fontconfig libressl truetype" +RESTRICT="mirror" +REQUIRED_USE="${PYTHON_REQUIRED_USE}" + +EPATCH_SUFFIX="patch" +PATCHES=( "${WORKDIR}/${PN}-patchset" ) + +RDEPEND="dev-libs/icu:= + fontconfig? ( media-libs/fontconfig ) + !libressl? ( dev-libs/openssl:0 ) + libressl? ( dev-libs/libressl ) + truetype? ( media-libs/freetype ) + dev-db/sqlite:3" +DEPEND="${RDEPEND} + net-misc/openssh[-bindist] + app-arch/unzip + dev-lang/ruby + virtual/pkgconfig" + +src_prepare() { + ebegin "Moving third-party libraries into position for build" + mv -T "${WORKDIR}/${QTB_P}" "${S}/src/qt/qtbase/" || die "QT base ${QTB_PV} failed" + mv -T "${WORKDIR}/${QTW_P}" "${S}/src/qt/qtwebkit/" || die "QT webkit ${QTW_PV} failed" + eend "$?" + + ebegin "Instilling C/CXX/LDFLAGS respect in main source" + # Respect CC, CXX, {C,CXX,LD}FLAGS in .qmake.cache + sed -i \ + -e "/^SYSTEM_VARIABLES=/i \ + CC='$(tc-getCC)'\n\ + CXX='$(tc-getCXX)'\n\ + CFLAGS='${CFLAGS}'\n\ + CXXFLAGS='${CXXFLAGS}'\n\ + LDFLAGS='${LDFLAGS}'\n\ + QMakeVar set QMAKE_CFLAGS_RELEASE\n\ + QMakeVar set QMAKE_CFLAGS_DEBUG\n\ + QMakeVar set QMAKE_CXXFLAGS_RELEASE\n\ + QMakeVar set QMAKE_CXXFLAGS_DEBUG\n\ + QMakeVar set QMAKE_LFLAGS_RELEASE\n\ + QMakeVar set QMAKE_LFLAGS_DEBUG\n"\ + src/qt/qtbase/configure \ + || die + eend $? + + ebegin "Instilling C/CXX/LDFLAGS respect in test suite" + # Respect CC, CXX, LINK and *FLAGS in config.tests + find src/qt/qtbase/config.tests/unix -name '*.test' -type f -exec \ + sed -i -e "/bin\/qmake/ s: \"\$SRCDIR/: \ + 'QMAKE_CC=$(tc-getCC)' 'QMAKE_CXX=$(tc-getCXX)' 'QMAKE_LINK=$(tc-getCXX)' \ + 'QMAKE_CFLAGS+=${CFLAGS}' 'QMAKE_CXXFLAGS+=${CXXFLAGS}' 'QMAKE_LFLAGS+=${LDFLAGS}'&:" \ + {} + || die + eend $? + + default +} + +src_compile() { + ./build.py \ + --confirm \ + --jobs $(makeopts_jobs) \ + || die +} + +src_test() { + ./bin/phantomjs test/run-tests.js || die +} + +src_install() { + pax-mark m bin/phantomjs || die + dobin bin/phantomjs + dodoc ChangeLog README.md + if use examples ; then + docinto examples + dodoc examples/* + fi +} |