git: 25d03c0da81a - main - www/py-django50: Add new port, copied from www/py-django42

From: Wen Heping <wen_at_FreeBSD.org>
Date: Tue, 05 Dec 2023 15:07:44 UTC
The branch main has been updated by wen:

URL: https://cgit.FreeBSD.org/ports/commit/?id=25d03c0da81a018555011b60513fa570ca131933

commit 25d03c0da81a018555011b60513fa570ca131933
Author:     Wen Heping <wen@FreeBSD.org>
AuthorDate: 2023-12-05 15:05:54 +0000
Commit:     Wen Heping <wen@FreeBSD.org>
CommitDate: 2023-12-05 15:05:54 +0000

    www/py-django50: Add new port, copied from www/py-django42
    
    Django is a high-level Python Web framework that encourages rapid development
    and clean, pragmatic design.
    
    Developed and used over the past two years by a fast-moving online-news
    operation, Django was designed from scratch to handle two challenges: the
    intensive deadlines of a newsroom and the stringent requirements of experienced
    Web developers. It has convenient niceties for developing content-management
    systems, but it's an excellent tool for building any Web site.
---
 www/Makefile              |  1 +
 www/py-django50/Makefile  | 68 +++++++++++++++++++++++++++++++++++++++++++++++
 www/py-django50/distinfo  |  3 +++
 www/py-django50/pkg-descr |  8 ++++++
 4 files changed, 80 insertions(+)

diff --git a/www/Makefile b/www/Makefile
index bfe0a55fd042..95103c842a6c 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -1626,6 +1626,7 @@
     SUBDIR += py-django32
     SUBDIR += py-django41
     SUBDIR += py-django42
+    SUBDIR += py-django50
     SUBDIR += py-django_compressor
     SUBDIR += py-djangocms-admin-style
     SUBDIR += py-djangoql
diff --git a/www/py-django50/Makefile b/www/py-django50/Makefile
new file mode 100644
index 000000000000..ea0b3ace0a34
--- /dev/null
+++ b/www/py-django50/Makefile
@@ -0,0 +1,68 @@
+PORTNAME=	django
+PORTVERSION=	5.0
+CATEGORIES=	www python
+MASTER_SITES=	PYPI \
+		https://media.djangoproject.com/releases/${PORTVERSION:R}/
+PKGNAMEPREFIX=	${PYTHON_PKGNAMEPREFIX}
+PKGNAMESUFFIX=	50
+DISTNAME=	Django-${PORTVERSION}
+DIST_SUBDIR=	python
+
+MAINTAINER=	python@FreeBSD.org
+COMMENT=	High-level Python Web Framework
+WWW=		https://www.djangoproject.com/
+
+LICENSE=	BSD3CLAUSE
+LICENSE_FILE=	${WRKSRC}/LICENSE
+
+RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}asgiref>=3.7.0:www/py-asgiref@${PY_FLAVOR} \
+		${PYTHON_PKGNAMEPREFIX}sqlparse>=0.3.1:databases/py-sqlparse@${PY_FLAVOR}
+TEST_DEPENDS=	${PYTHON_PKGNAMEPREFIX}tblib>0:devel/py-tblib@${PY_FLAVOR}
+
+USES=		cpe python:3.10+ shebangfix
+USE_PYTHON=	autoplist distutils
+
+NO_ARCH=	yes
+
+DOCSDIR=	${PREFIX}/share/doc/py-django
+PLIST_FILES=	man/man1/django-admin.1.gz
+PORTDOCS=	*
+
+SHEBANG_FILES=	django/conf/project_template/manage.py-tpl
+
+CONFLICTS_INSTALL=	${PYTHON_PKGNAMEPREFIX}django[0-9][0-9]
+
+CPE_VENDOR=	djangoproject
+
+# Upstream archive contains files with UTF-8 names
+# EXTRACT_CMD=	${SETENV} LC_ALL=en_US.UTF-8 /usr/bin/bsdtar
+
+OPTIONS_DEFINE=	DOCS HTMLDOCS
+OPTIONS_GROUP=	DATABASE
+OPTIONS_GROUP_DATABASE=	PGSQL MYSQL SQLITE
+OPTIONS_DEFAULT=SQLITE
+HTMLDOCS_DESC=	Install HTML documentation (requires Sphinx)
+
+HTMLDOCS_BUILD_DEPENDS=	${PYTHON_PKGNAMEPREFIX}sphinx>=0,1:textproc/py-sphinx@${PY_FLAVOR}
+HTMLDOCS_IMPLIES=	DOCS
+PGSQL_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}psycopg2>0:databases/py-psycopg2@${PY_FLAVOR}
+MYSQL_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}mysqlclient>=1.3.13:databases/py-mysqlclient@${PY_FLAVOR}
+SQLITE_RUN_DEPENDS=	${PYTHON_PKGNAMEPREFIX}sqlite3>0:databases/py-sqlite3@${PY_FLAVOR}
+
+post-build-HTMLDOCS-on:
+	cd ${WRKSRC}/docs && ${MAKE} html SPHINXBUILD=sphinx-build-${PYTHON_VER}
+
+post-install:
+	${INSTALL_MAN} ${WRKSRC}/docs/man/* ${STAGEDIR}/${MAN1PREFIX}/man/man1
+	@${ECHO_MSG}	""
+	@${ECHO_MSG}	"	* See http://docs.djangoproject.com/ for complete documentation"
+	@${ECHO_MSG}	""
+
+post-install-HTMLDOCS-on:
+	${MKDIR} ${STAGEDIR}/${DOCSDIR}
+	${CP} -R ${WRKSRC}/docs/_build/html ${STAGEDIR}/${DOCSDIR}
+
+do-test:
+	@cd ${WRKSRC} && ${PYTHON_CMD} tests/runtests.py --settings=test_sqlite
+
+.include <bsd.port.mk>
diff --git a/www/py-django50/distinfo b/www/py-django50/distinfo
new file mode 100644
index 000000000000..9b31bdea5e2d
--- /dev/null
+++ b/www/py-django50/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1701788127
+SHA256 (python/Django-5.0.tar.gz) = 7d29e14dfbc19cb6a95a4bd669edbde11f5d4c6a71fdaa42c2d40b6846e807f7
+SIZE (python/Django-5.0.tar.gz) = 10585390
diff --git a/www/py-django50/pkg-descr b/www/py-django50/pkg-descr
new file mode 100644
index 000000000000..1f0e73eddef2
--- /dev/null
+++ b/www/py-django50/pkg-descr
@@ -0,0 +1,8 @@
+Django is a high-level Python Web framework that encourages rapid development
+and clean, pragmatic design.
+
+Developed and used over the past two years by a fast-moving online-news
+operation, Django was designed from scratch to handle two challenges: the
+intensive deadlines of a newsroom and the stringent requirements of experienced
+Web developers. It has convenient niceties for developing content-management
+systems, but it's an excellent tool for building any Web site.