3 changed files with 126 additions and 0 deletions
-
113l/python-typed-ast/python-typed-ast.SlackBuild
-
12l/python-typed-ast/slack-desc
-
1l/python-typed-ast/typed_ast-1.4.1.tar.gz.sha256
@ -0,0 +1,113 @@ |
|||
#!/bin/bash |
|||
# Build script for Slackware |
|||
# Copyright (C) 2020 Damien Goutte-Gattat |
|||
# |
|||
# Redistribution and use of this script, with or without modifications, |
|||
# is permitted provided that the following conditions are met: |
|||
# |
|||
# 1. Redistributions of this script must retain the above copyright |
|||
# notice, this list of conditions and the following disclaimer. |
|||
# |
|||
# THIS SOFTWARE IS PROVIDED BY THE AUTHOR AS IS'' AND ANY EXPRESS OR |
|||
# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED |
|||
# WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE |
|||
# DISCLAIMED. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, |
|||
# INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES |
|||
# (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR |
|||
# SERVICES; LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) |
|||
# HOWEVER CAUSED AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, |
|||
# STRICT LIABILITY, OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING |
|||
# IN ANY WAY OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE |
|||
# POSSIBILITY OF SUCH DAMAGE. |
|||
# |
|||
# Contact: Damien Goutte-Gattat <dgouttegattat@incenp.org> |
|||
# |
|||
# Latest typed_ast sourcecode is available at: |
|||
# <https://github.com/python/typed_ast>. |
|||
|
|||
# Source package infos |
|||
NAMESRC=${NAMESRC:-typed_ast} |
|||
VERSION=${VERSION:-1.4.1} |
|||
ARCHIVE=${ARCHIVE:-$NAMESRC-$VERSION.tar.gz} |
|||
|
|||
# Build infos |
|||
NAMEPKG=${NAMEPKG:-python-typed-ast} |
|||
BUILD=${BUILD:-1GGD} |
|||
ARCH=${ARCH:-$(uname -m | sed 's/^i.86$/i486/;s/^arm.*/arm/')} |
|||
JOBS=${JOBS:-1} |
|||
EXT=${EXT:-txz} |
|||
|
|||
# Directories |
|||
TMP=${TMP:-/tmp} |
|||
OUT=${OUT:-$TMP/build} |
|||
PKG=${PKG:-$OUT/$NAMEPKG} |
|||
CWD=$(pwd) |
|||
PYTHONDIR=$(python3 -c 'import sysconfig; print(sysconfig.get_paths()["purelib"])') |
|||
|
|||
set -e # Quit if a command returns non-zero |
|||
|
|||
# Sanity checks |
|||
if [ $UID -eq 0 ]; then |
|||
echo "You should NOT run this script as ROOT!" |
|||
exit 1 |
|||
fi |
|||
if [ ! -d $TMP ]; then |
|||
echo "$TMP does not exists or is not a directory!" |
|||
exit 1 |
|||
fi |
|||
|
|||
# Compilation flags |
|||
case "$ARCH" in |
|||
i?86) |
|||
CPUOPT="-O2 -march=$ARCH -mtune=i686" |
|||
;; |
|||
x86_64) |
|||
CPUOPT="-O2 -fPIC" |
|||
;; |
|||
*) |
|||
CPUOPT="-O2" |
|||
;; |
|||
esac |
|||
|
|||
# Get and verify the source archive |
|||
if [ ! -r $ARCHIVE ]; then |
|||
pip3 download --no-binary :all: --no-deps $NAMESRC==$VERSION |
|||
fi |
|||
sha256sum -c $ARCHIVE.sha256 |
|||
NAME=$(tar ft $ARCHIVE | head -n 1 | cut -d / -f 1) |
|||
|
|||
# Compile |
|||
cd $TMP |
|||
echo "Building $ARCHIVE..." |
|||
tar xf $CWD/$ARCHIVE |
|||
cd $NAME |
|||
CFLAGS=$CPUOPT \ |
|||
CXXFLAGS=$CPUOPT \ |
|||
python3 setup.py build |
|||
python3 setup.py install --root=$PKG |
|||
|
|||
# Strip binaries |
|||
find $PKG | xargs file | grep "ELF \(32\|64\)-bit LSB" | cut -d : -f 1 | \ |
|||
xargs strip --strip-unneeded 2> /dev/null |
|||
|
|||
# Install the documentation |
|||
mkdir -p $PKG/usr/doc/$NAMEPKG-$VERSION |
|||
install -m 644 LICENSE README.md $PKG/usr/doc/$NAMEPKG-$VERSION |
|||
|
|||
# Copy slack-desc file |
|||
install -D -m 644 $CWD/slack-desc $PKG/install/slack-desc |
|||
|
|||
# Package the tree |
|||
cd $PKG |
|||
mkdir -p $OUT |
|||
PACKAGING=" |
|||
chown root:root . -R |
|||
/sbin/makepkg -l y -c n $OUT/$NAMEPKG-$VERSION-$ARCH-$BUILD.$EXT |
|||
rm -rf $PKG |
|||
rm -rf $TMP/$NAME |
|||
" |
|||
if type -p fakeroot ; then |
|||
echo "$PACKAGING" | fakeroot |
|||
else |
|||
su -c "$PACKAGING" |
|||
fi |
@ -0,0 +1,12 @@ |
|||
|-----handy-ruler-----------------------------------------------------| |
|||
python-typed-ast: python-typed-ast (an ast-like parser with comment support) |
|||
python-typed-ast: |
|||
python-typed-ast: This is a Python3 package that provides a parser similar to the |
|||
python-typed-ast: standard 'ast' library. Unlike 'ast', the parsers in 'typed_ast' |
|||
python-typed-ast: include PEP 484 type comments and are independent of the version of |
|||
python-typed-ast: Python under which they are run. |
|||
python-typed-ast: |
|||
python-typed-ast: |
|||
python-typed-ast: |
|||
python-typed-ast: |
|||
python-typed-ast: |
@ -0,0 +1 @@ |
|||
8c8aaad94455178e3187ab22c8b01a3837f8ee50e09cf31f1ba129eb293ec30b typed_ast-1.4.1.tar.gz |
Write
Preview
Loading…
Cancel
Save
Reference in new issue