git: 2b6a56463d65 - main - www/mediawiki145: Add new port

From: Wen Heping <wen_at_FreeBSD.org>
Date: Thu, 11 Dec 2025 02:06:10 UTC
The branch main has been updated by wen:

URL: https://cgit.FreeBSD.org/ports/commit/?id=2b6a56463d655e1d1e71b6212dab89aec74d25ed

commit 2b6a56463d655e1d1e71b6212dab89aec74d25ed
Author:     Wen Heping <wen@FreeBSD.org>
AuthorDate: 2025-12-11 02:05:18 +0000
Commit:     Wen Heping <wen@FreeBSD.org>
CommitDate: 2025-12-11 02:05:18 +0000

    www/mediawiki145: Add new port
    
    MediaWiki is the collaborative editing software that runs Wikipedia,
    the free encyclopedia, and other projects.
    It's designed to handle a large number of users and pages without imposing
    too rigid a structure or workflow.
---
 www/Makefile                          |  1 +
 www/mediawiki145/Makefile             | 64 +++++++++++++++++++++++++++++++++++
 www/mediawiki145/distinfo             |  3 ++
 www/mediawiki145/files/pkg-message.in | 15 ++++++++
 www/mediawiki145/pkg-descr            |  4 +++
 5 files changed, 87 insertions(+)

diff --git a/www/Makefile b/www/Makefile
index 07f03e528ff7..1afb5e923f1a 100644
--- a/www/Makefile
+++ b/www/Makefile
@@ -389,6 +389,7 @@
     SUBDIR += mediawiki139
     SUBDIR += mediawiki143
     SUBDIR += mediawiki144
+    SUBDIR += mediawiki145
     SUBDIR += mergelog
     SUBDIR += mhonarc
     SUBDIR += micro_httpd
diff --git a/www/mediawiki145/Makefile b/www/mediawiki145/Makefile
new file mode 100644
index 000000000000..f63f68ac40a5
--- /dev/null
+++ b/www/mediawiki145/Makefile
@@ -0,0 +1,64 @@
+PORTNAME=	mediawiki
+PORTVERSION=	1.45.0
+CATEGORIES=	www
+MASTER_SITES=	https://releases.wikimedia.org/mediawiki/${PORTVERSION:R}/ \
+		LOCAL/wen
+PKGNAMESUFFIX=	145${PHP_PKGNAMESUFFIX}
+
+MAINTAINER=	wen@FreeBSD.org
+COMMENT=	Wiki engine used by Wikipedia
+WWW=		https://www.mediawiki.org/
+
+LICENSE=	GPLv2
+
+CONFLICTS=	mediawiki139 mediawiki141 mediawiki142 mediawiki143
+
+USES=		cpe php:flavors shebangfix
+SHEBANG_FILES=	maintenance/storage/make-blobs
+
+USE_PHP=	ctype dom fileinfo filter iconv intl mbstring \
+		readline session xml xmlreader zlib
+MEDIAWIKIDIR?=	www/mediawiki
+
+NO_BUILD=	yes
+PLIST=		${WRKDIR}/plist
+
+SUB_FILES=	pkg-message
+SUB_LIST=	MEDIAWIKIDIR=${PREFIX}/${MEDIAWIKIDIR}
+
+OPTIONS_DEFINE=	LDAP MEMCACHED IMAGICK SOCKETS
+OPTIONS_SINGLE=	DB
+OPTIONS_SINGLE_DB=	MYSQL PGSQL SQLITE
+OPTIONS_DEFAULT=	MYSQL SOCKETS
+
+MEMCACHED_DESC=	Use memcached
+IMAGICK_DESC=	Use ImageMagick
+SOCKETS_DESC=	Use sockets
+
+MYSQL_USES=	mysql
+MYSQL_USE=	php=mysqli
+PGSQL_USE=	php=pgsql
+SQLITE_USE=	php=sqlite3
+LDAP_USE=	php=ldap
+SOCKETS_USE=	php=sockets
+
+MEMCACHED_RUN_DEPENDS=	memcached:databases/memcached
+IMAGICK_RUN_DEPENDS=	${LOCALBASE}/lib/php/${PHP_EXT_DIR}/imagick.so:graphics/pecl-imagick@${PHP_FLAVOR}
+
+pre-install:
+	@${FIND} -s -d ${WRKSRC} -not -type d | ${SED} "s?${WRKSRC}?${MEDIAWIKIDIR}?g" >>${PLIST}
+	@${ECHO} "@dir %%WWWDIR%%/cache" >> ${PLIST}
+	@${ECHO_CMD} "@owner ${WWWOWN}" >> ${PLIST}
+	@${ECHO_CMD} "@group ${WWWGRP}" >> ${PLIST}
+	@${ECHO} "@mode 0755" >> ${PLIST}
+	@${ECHO} "@dir %%WWWDIR%%/images" >> ${PLIST}
+	@${ECHO} "@mode" >> ${PLIST}
+	@${ECHO_CMD} "@owner" >> ${PLIST}
+	@${ECHO_CMD} "@group" >> ${PLIST}
+	@${ECHO} @dir ${MEDIAWIKIDIR} >> ${PLIST}
+
+do-install:
+	@${MKDIR} ${STAGEDIR}${PREFIX}/${MEDIAWIKIDIR}
+	@cd ${WRKSRC} && ${COPYTREE_SHARE} . ${STAGEDIR}${PREFIX}/${MEDIAWIKIDIR}
+
+.include <bsd.port.mk>
diff --git a/www/mediawiki145/distinfo b/www/mediawiki145/distinfo
new file mode 100644
index 000000000000..59dcf532de69
--- /dev/null
+++ b/www/mediawiki145/distinfo
@@ -0,0 +1,3 @@
+TIMESTAMP = 1765417469
+SHA256 (mediawiki-1.45.0.tar.gz) = d499bc7eb3d71835c2bec1c9caed88a0308aec37f07264e75110d2a2bef02534
+SIZE (mediawiki-1.45.0.tar.gz) = 82172174
diff --git a/www/mediawiki145/files/pkg-message.in b/www/mediawiki145/files/pkg-message.in
new file mode 100644
index 000000000000..b05e89945b5f
--- /dev/null
+++ b/www/mediawiki145/files/pkg-message.in
@@ -0,0 +1,15 @@
+[
+{ type: install
+  message: <<EOM
+Remember to check
+
+%%MEDIAWIKIDIR%%/INSTALL
+
+and
+
+%%MEDIAWIKIDIR%%/UPGRADE
+
+for details
+EOM
+}
+]
diff --git a/www/mediawiki145/pkg-descr b/www/mediawiki145/pkg-descr
new file mode 100644
index 000000000000..88e2e7b358ef
--- /dev/null
+++ b/www/mediawiki145/pkg-descr
@@ -0,0 +1,4 @@
+MediaWiki is the collaborative editing software that runs Wikipedia,
+the free encyclopedia, and other projects.
+It's designed to handle a large number of users and pages without imposing
+too rigid a structure or workflow.