git: e9dda1108f4c - main - www/py-django52: New port, copied from www/py-django51
- Go to: [ bottom of page ] [ top of archives ] [ this month ]
Date: Wed, 02 Apr 2025 23:49:20 UTC
The branch main has been updated by wen:
URL: https://cgit.FreeBSD.org/ports/commit/?id=e9dda1108f4c8c80fd2c4c230123c04ebe4c7e68
commit e9dda1108f4c8c80fd2c4c230123c04ebe4c7e68
Author: Wen Heping <wen@FreeBSD.org>
AuthorDate: 2025-04-02 23:47:29 +0000
Commit: Wen Heping <wen@FreeBSD.org>
CommitDate: 2025-04-02 23:47:29 +0000
www/py-django52: New port, copied from www/py-django51
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-django52/Makefile | 73 ++++++++++++++++++++++++++++++
www/py-django52/distinfo | 3 ++
www/py-django52/files/patch-pyproject.toml | 11 +++++
www/py-django52/pkg-descr | 8 ++++
5 files changed, 96 insertions(+)
diff --git a/www/Makefile b/www/Makefile
index fa4f1354dd32..82011589d55f 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -1666,6 +1666,7 @@
SUBDIR += py-django42
SUBDIR += py-django50
SUBDIR += py-django51
+ SUBDIR += py-django52
SUBDIR += py-django_compressor
SUBDIR += py-djangocms-admin-style
SUBDIR += py-djangoql
diff --git a/www/py-django52/Makefile b/www/py-django52/Makefile
new file mode 100644
index 000000000000..792b871aadd7
--- /dev/null
+++ b/www/py-django52/Makefile
@@ -0,0 +1,73 @@
+PORTNAME= django
+PORTVERSION= 5.2
+CATEGORIES= www python
+MASTER_SITES= PYPI \
+ https://media.djangoproject.com/releases/${PORTVERSION:R}/
+PKGNAMEPREFIX= ${PYTHON_PKGNAMEPREFIX}
+PKGNAMESUFFIX= 52
+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
+
+BUILD_DEPENDS= ${PYTHON_PKGNAMEPREFIX}setuptools>=61.0.0:devel/py-setuptools@${PY_FLAVOR} \
+ ${PYTHON_PKGNAMEPREFIX}wheel>=0:devel/py-wheel@${PY_FLAVOR}
+RUN_DEPENDS= ${PYTHON_PKGNAMEPREFIX}asgiref>=3.8.1: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 pep517
+
+NO_ARCH= yes
+
+DOCSDIR= ${PREFIX}/share/doc/py-django
+PLIST_FILES= share/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
+HTMLDOCS_USES= gmake
+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}
+
+.include <bsd.port.pre.mk>
+
+post-build-HTMLDOCS-on:
+ cd ${WRKSRC}/docs && ${MAKE_CMD} html SPHINXBUILD=sphinx-build-${PYTHON_VER}
+
+post-install:
+ ${INSTALL_MAN} ${WRKSRC}/docs/man/* ${STAGEDIR}/${PREFIX}/share/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.post.mk>
diff --git a/www/py-django52/distinfo b/www/py-django52/distinfo
new file mode 100644
index 000000000000..94411728ee7b
--- /dev/null
+++ b/www/py-django52/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1743637018
+SHA256 (python/Django-5.2.tar.gz) = 1a47f7a7a3d43ce64570d350e008d2949abe8c7e21737b351b6a1611277c6d89
+SIZE (python/Django-5.2.tar.gz) = 10824891
diff --git a/www/py-django52/files/patch-pyproject.toml b/www/py-django52/files/patch-pyproject.toml
new file mode 100644
index 000000000000..f6b57df6dba0
--- /dev/null
+++ b/www/py-django52/files/patch-pyproject.toml
@@ -0,0 +1,11 @@
+--- pyproject.toml.orig 2024-07-30 23:02:39 UTC
++++ pyproject.toml
+@@ -3,7 +3,7 @@ build-backend = "setuptools.build_meta"
+ build-backend = "setuptools.build_meta"
+
+ [project]
+-name = "Django"
++name = "django"
+ dynamic = ["version"]
+ requires-python = ">= 3.10"
+ dependencies = [
diff --git a/www/py-django52/pkg-descr b/www/py-django52/pkg-descr
new file mode 100644
index 000000000000..1f0e73eddef2
--- /dev/null
+++ b/www/py-django52/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.