diff --git a/plugins/python-build/bin/python-build b/plugins/python-build/bin/python-build index 0e7306eb..d2e829d3 100755 --- a/plugins/python-build/bin/python-build +++ b/plugins/python-build/bin/python-build @@ -911,6 +911,11 @@ pyston_architecture() { pypy_architecture } +build_package_graalpython() { + build_package_copy + ln -fs "${PREFIX_PATH}/bin/graalpython" "${PREFIX_PATH}/bin/python" +} + build_package_pypy() { build_package_copy mkdir -p "${PREFIX_PATH}/bin" "${PREFIX_PATH}/lib" diff --git a/plugins/python-build/share/python-build/graalpython-20.1.0 b/plugins/python-build/share/python-build/graalpython-20.1.0 new file mode 100644 index 00000000..7b735764 --- /dev/null +++ b/plugins/python-build/share/python-build/graalpython-20.1.0 @@ -0,0 +1,48 @@ +# Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved. +# +# Permission is hereby granted, free of charge, to any person obtaining a copy of +# this software and associated documentation files (the "Software"), to deal in +# the Software without restriction, including without limitation the rights to +# use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +# of the Software, and to permit persons to whom the Software is furnished to do +# so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. +VERSION='20.1.0' +BUILD='' + +case "$(pypy_architecture 2>/dev/null || true)" in +"linux64" ) + graalpython_arch="linux" + checksum="8df5d3797876d63e5b0fed6460b1943d53160fa3c3a589d0c1ce68c23646dd93" + ;; +"osx64" ) + graalpython_arch="macos" + checksum="7fe5aca69a64fd411d9b424b68118f2225daf96509ee1e0fcc4252a19887d9c7" + ;; +* ) + { echo + colorize 1 "ERROR" + echo ": No binary distribution of GraalPython is available for $(pypy_architecture 2>/dev/null || true)." + echo + } >&2 + exit 1 + ;; +esac + +if [ -n "${BUILD}" ]; then + urlprefix="https://github.com/graalvm/graalvm-ce-dev-builds/releases/download/${VERSION}-${BUILD}" +else + urlprefix="https://github.com/graalvm/graalpython/releases/download/vm-${VERSION}" +fi + +install_package "graalpython-${VERSION}${BUILD}" "${urlprefix}/graalpython-${VERSION}-${graalpython_arch}-amd64.tar.gz#${checksum}" "graalpython" ensurepip diff --git a/plugins/python-build/share/python-build/graalpython-20.2.0 b/plugins/python-build/share/python-build/graalpython-20.2.0 new file mode 100644 index 00000000..f7a556bc --- /dev/null +++ b/plugins/python-build/share/python-build/graalpython-20.2.0 @@ -0,0 +1,48 @@ +# Copyright (c) 2020, Oracle and/or its affiliates. All rights reserved. +# +# Permission is hereby granted, free of charge, to any person obtaining a copy of +# this software and associated documentation files (the "Software"), to deal in +# the Software without restriction, including without limitation the rights to +# use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies +# of the Software, and to permit persons to whom the Software is furnished to do +# so, subject to the following conditions: +# +# The above copyright notice and this permission notice shall be included in all +# copies or substantial portions of the Software. +# +# THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR +# IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, +# FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE +# AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER +# LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, +# OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE +# SOFTWARE. +VERSION='20.2.0' +BUILD='' + +case "$(pypy_architecture 2>/dev/null || true)" in +"linux64" ) + graalpython_arch="linux" + checksum="9ba0447523a6cf6f8b74fef2b918672762b7d7f67be9f5be8ab6b479f173cfd7" + ;; +"osx64" ) + graalpython_arch="macos" + checksum="e06f8e6f5766483d5613eca6a4703cec8a93236443c7c6f2866b31307e62bbe6" + ;; +* ) + { echo + colorize 1 "ERROR" + echo ": No binary distribution of GraalPython is available for $(pypy_architecture 2>/dev/null || true)." + echo + } >&2 + exit 1 + ;; +esac + +if [ -n "${BUILD}" ]; then + urlprefix="https://github.com/graalvm/graalvm-ce-dev-builds/releases/download/${VERSION}-${BUILD}" +else + urlprefix="https://github.com/graalvm/graalpython/releases/download/vm-${VERSION}" +fi + +install_package "graalpython-${VERSION}${BUILD}" "${urlprefix}/graalpython-${VERSION}-${graalpython_arch}-amd64.tar.gz#${checksum}" "graalpython" ensurepip