aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorIsaac Yu <isaacyu1@isaacyu1.com>2021-02-12 20:04:12 +0000
committerWilly Sudiarto Raharjo <willysr@slackbuilds.org>2021-02-14 06:27:52 +0700
commitd5e006947cc8002afc1c42dfbedd3b7742bdd538 (patch)
tree37ac6de4cc61eace7d6ae6fcaf146bcc33bf84b9
parent2fe5e8fa3b86fc16fd8b9670ba2e9755df1d4e59 (diff)
python/BeautifulSoup4: Fix python3 build.
Signed-off-by: Dave Woodfall <dave@slackbuilds.org> Signed-off-by: Willy Sudiarto Raharjo <willysr@slackbuilds.org>
-rw-r--r--python/BeautifulSoup4/BeautifulSoup4.SlackBuild13
-rw-r--r--python/BeautifulSoup4/README32
-rw-r--r--python/BeautifulSoup4/slack-desc2
3 files changed, 14 insertions, 33 deletions
diff --git a/python/BeautifulSoup4/BeautifulSoup4.SlackBuild b/python/BeautifulSoup4/BeautifulSoup4.SlackBuild
index 1c370f2fcd991..6793e1369aa8d 100644
--- a/python/BeautifulSoup4/BeautifulSoup4.SlackBuild
+++ b/python/BeautifulSoup4/BeautifulSoup4.SlackBuild
@@ -3,7 +3,7 @@
# Slackware build script for BeautifulSoup4
# Copyright 2014-2018 Dimitris Zlatanidis Orestiada, Greece
-# Copyright 2020 Isaac Yu <isaacyu1@isaacyu1.com>
+# Copyright 2020-2021 Isaac Yu <isaacyu1@isaacyu1.com>
# All rights reserved.
#
# Redistribution and use of this script, with or without modification, is
@@ -25,7 +25,7 @@
PRGNAM=BeautifulSoup4
VERSION=${VERSION:-4.9.3}
-BUILD=${BUILD:-1}
+BUILD=${BUILD:-2}
TAG=${TAG:-_SBo}
SRCNAM=beautifulsoup4
@@ -72,12 +72,17 @@ find -L . \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+# Python 2 support (requires python-soupsieve)
if $(python2 -c 'import soupsieve' 2>/dev/null); then
python setup.py install --root=$PKG
fi
# Python 3 support (requires python3-soupsieve)
-if $(python3 -c 'import soupsieve' 2>/dev/null); then
+# shaypal5 provided an example package check:
+# https://gist.github.com/shaypal5/d505af9953cd86f59c750fa600ee4ba6
+if $(python3 -c 'import pkgutil; exit(not pkgutil.find_loader("soupsieve"))'); then
+
+ # Prepare another source tarball before building for Python 3
cd $TMP
rm -rf $SRCNAM-$VERSION
tar xvf $CWD/$SRCNAM-$VERSION.tar.gz
@@ -88,6 +93,8 @@ if $(python3 -c 'import soupsieve' 2>/dev/null); then
-o -perm 511 \) -exec chmod 755 {} \; -o \
\( -perm 666 -o -perm 664 -o -perm 640 -o -perm 600 -o -perm 444 \
-o -perm 440 -o -perm 400 \) -exec chmod 644 {} \;
+
+ # Build for Python 3
sed -i "s/-rfI/-rf/" convert-py3k
sh convert-py3k
python3 setup.py install --root=$PKG
diff --git a/python/BeautifulSoup4/README b/python/BeautifulSoup4/README
index e0e102b270175..9e5e23a85003f 100644
--- a/python/BeautifulSoup4/README
+++ b/python/BeautifulSoup4/README
@@ -1,32 +1,6 @@
Beautiful Soup is a Python HTML/XML parser designed for quick
-turnaround projects like screen-scraping. Three features make it
-powerful:
+turnaround projects like screen-scraping. It commonly saves
+programmers hours or days of work.
-1. Beautiful Soup won't choke if you give it bad markup. It yields a
-parse tree that makes approximately as much sense as your original
-document. This is usually good enough to collect the data you need
-and run away.
-
-2. Beautiful Soup provides a few simple methods and Pythonic idioms for
-navigating, searching, and modifying a parse tree: a toolkit for
-dissecting a document and extracting what you need. You don't have to
-create a custom parser for each application.
-
-3. Beautiful Soup automatically converts incoming documents to Unicode
-and outgoing documents to UTF-8. You don't have to think about
-encodings, unless the document doesn't specify an encoding and
-Beautiful Soup can't autodetect one. Then you just have to specify
-the original encoding.
-
-Beautiful Soup parses anything you give it, and does the tree traversal
-stuff for you. You can tell it "Find all the links", or "Find all the
-links of class externalLink", or "Find all the links whose urls match
-"foo.com", or "Find the table heading that's got bold text, then give
-me that text."
-
-Valuable data that was once locked up in poorly-designed websites is
-now within your reach. Projects that would have taken hours take only
-minutes with Beautiful Soup.
-
-If python3-soupsieve is installed, then this will also build for
+If python3-soupsieve is installed, then this will also build for
Python 3.
diff --git a/python/BeautifulSoup4/slack-desc b/python/BeautifulSoup4/slack-desc
index 2aa7bc4813e4f..fda61011b6bb4 100644
--- a/python/BeautifulSoup4/slack-desc
+++ b/python/BeautifulSoup4/slack-desc
@@ -9,7 +9,7 @@
BeautifulSoup4: BeautifulSoup4 (Python HTML/XML parser)
BeautifulSoup4:
BeautifulSoup4: BeautifulSoup is a Python HTML/XML parser designed for quick
-BeautifulSoup4: turnaround projects like screen-scraping
+BeautifulSoup4: turnaround projects like screen-scraping.
BeautifulSoup4:
BeautifulSoup4: Homepage: http://www.crummy.com/software/BeautifulSoup/
BeautifulSoup4: