# HG changeset patch # User Franz Glasner # Date 1664121272 -7200 # Node ID 56877b42b246a6264f47c57550d59c39ddd689e5 # Parent 4e5892c75f51ea5aa17507d039beb9d45930aa18# Parent 4443158ec41b53ac4e1f0376d6b281fdc39edbc7 MERGE: original version as of 2022-09-21 (commit 4f7a47b7e058481ff1b327a2767093399a58b364) diff -r 4443158ec41b -r 56877b42b246 .hgignore --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.hgignore Sun Sep 25 17:54:32 2022 +0200 @@ -0,0 +1,4 @@ +syntax: regexp + +/work/ +/work\.old/ diff -r 4443158ec41b -r 56877b42b246 .hgsigs --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.hgsigs Sun Sep 25 17:54:32 2022 +0200 @@ -0,0 +1,5 @@ +689ef3454fc98e68f72a3403d97c9523785e4845 0 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 diff -r 4443158ec41b -r 56877b42b246 .hgtags --- /dev/null Thu Jan 01 00:00:00 1970 +0000 +++ b/.hgtags Sun Sep 25 17:54:32 2022 +0200 @@ -0,0 +1,5 @@ +02a0807309f71884397fbb6cb79de557bed54664 v2.0.18 +0f8e5c6bf77b3a5ad3daea019588edfee5140581 v2.1.pl1.g20201011 +4b01da8b5a33cd57176bcc5ee2c9e5088bf9e5a4 v2.1.pl2.g20201129 +8335c02a2e45d51d46fd8e66dea669e9e68d401e v2.1.pl3.g20210418 +a813664e4595a01da5f70d6a68f18d8f4145d5f4 v2.1.pl4.g20211229 diff -r 4443158ec41b -r 56877b42b246 Makefile --- a/Makefile Sun Sep 25 13:08:29 2022 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,83 +0,0 @@ -PORTNAME= uwsgi -PORTVERSION= 2.0.20 -CATEGORIES= www python -MASTER_SITES= http://projects.unbit.it/downloads/ - -MAINTAINER= eugene@zhegan.in -COMMENT= Developer-friendly WSGI server which uses uwsgi protocol -WWW= https://projects.unbit.it/uwsgi/ - -LICENSE= GPLv2 -LICENSE_FILE= ${WRKSRC}/LICENSE - -USES= cpe pkgconfig python:3.6-3.10 -USE_PYTHON= distutils concurrent optsuffix -USE_RC_SUBR= uwsgi -CPE_VENDOR= unbit - -MAKE_ENV+= CPUCOUNT=${MAKE_JOBS_NUMBER} UWSGI_EMBED_PLUGINS=cgi - -PYSETUP= uwsgiconfig.py -PYDISTUTILS_BUILD_TARGET= --build -PYDISTUTILS_BUILDARGS= --verbose - -USERS= uwsgi -GROUPS= uwsgi - -PLIST_FILES= bin/uwsgi \ - ${PYTHON_SITELIBDIR}/uwsgidecorators.py - -SUB_LIST= PYTHON_VER=${PYTHON_VER} - -OPTIONS_DEFINE= DEBUG JSON PCRE XML SSL -OPTIONS_DEFAULT= SSL - -OPTIONS_GROUP= PLG -OPTIONS_GROUP_PLG= COROAE LOGPIPE PSGI - -PLG_DESC= Enable plugins -COROAE_DESC= Coro::AnyEvent support -LOGPIPE_DESC= Pipe logger support -PSGI_DESC= PSGI embedded plugin - -COROAE_BUILD_DEPENDS= p5-Coro>=0:devel/p5-Coro -COROAE_IMPLIES= PSGI - -DEBUG_VARS= PYDISTUTILS_BUILDARGS+=--debug - -JSON_VARS= BUILDCONF_JSON=jansson -JSON_LIB_DEPENDS= libjansson.so:devel/jansson - -PCRE_VARS= BUILDCONF_PCRE=true -PCRE_LIB_DEPENDS= libpcre.so:devel/pcre - -PSGI_USES= perl5 - -XML_VARS= BUILDCONF_XML=libxml2 -XML_LIB_DEPENDS= libxml2.so:textproc/libxml2 - -SSL_VARS= BUILDCONF_SSL=true -SSL_USES= ssl -SSL_CFLAGS= -I${OPENSSLINC} -SSL_LDFLAGS= ${OPENSSL_LDFLAGS} - -post-patch: -.for var in JSON PCRE XML SSL - @${REINPLACE_CMD} -e '/^${var:tl} =/ s|= .*|= ${BUILDCONF_${var}:Ufalse}|' ${WRKSRC}/buildconf/base.ini -.endfor - -.for plugin in COROAE LOGPIPE PSGI -post-patch-${plugin}-on: - @${REINPLACE_CMD} -e 's/%(main_plugin)s,/& ${plugin:tl},/' \ - ${WRKSRC}/buildconf/base.ini -.endfor - -do-configure: - @${DO_NADA} - -do-install: - ${INSTALL_PROGRAM} ${WRKSRC}/${PORTNAME} ${STAGEDIR}${PREFIX}/bin/ - @${MKDIR} ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} - ${INSTALL_DATA} ${WRKSRC}/uwsgidecorators.py ${STAGEDIR}${PYTHONPREFIX_SITELIBDIR} - -.include diff -r 4443158ec41b -r 56877b42b246 distinfo --- a/distinfo Sun Sep 25 13:08:29 2022 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,3 +0,0 @@ -TIMESTAMP = 1637775824 -SHA256 (uwsgi-2.0.20.tar.gz) = 88ab9867d8973d8ae84719cf233b7dafc54326fcaec89683c3f9f77c002cdff9 -SIZE (uwsgi-2.0.20.tar.gz) = 804906 diff -r 4443158ec41b -r 56877b42b246 files/patch-core-logging.c --- a/files/patch-core-logging.c Sun Sep 25 13:08:29 2022 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,32 +0,0 @@ ---- core/logging.c.orig 2020-11-06 10:12:49.865752000 +0100 -+++ core/logging.c 2020-11-06 10:17:57.825745000 +0100 -@@ -536,13 +536,23 @@ - uwsgi_error_open(logfile); - exit(1); - } -- else { -- if (dup2(fd, log_fd) < 0) { -- // this could be lost :( -- uwsgi_error("uwsgi_log_do_rotate()/dup2()"); -- exit(1); -- } -+ if (dup2(fd, log_fd) < 0) { -+ // this could be lost :( -+ uwsgi_error("uwsgi_log_do_rotate()/dup2()"); - close(fd); -+ exit(1); -+ } -+ close(fd); -+ -+ if (uwsgi.chmod_logfile_value) { -+ if (fchmod(log_fd, uwsgi.chmod_logfile_value)) { -+ uwsgi_error("fchmod()"); -+ } -+ } -+ if (uwsgi.logfile_chown) { -+ if (fchown(log_fd, uwsgi.uid, uwsgi.gid)) { -+ uwsgi_error("fchown()"); -+ } - } - } - else { diff -r 4443158ec41b -r 56877b42b246 files/patch-plugins_coroae_uwsgiplugin.py --- a/files/patch-plugins_coroae_uwsgiplugin.py Sun Sep 25 13:08:29 2022 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,11 +0,0 @@ ---- plugins/coroae/uwsgiplugin.py.orig 2020-06-17 09:03:34 UTC -+++ plugins/coroae/uwsgiplugin.py -@@ -9,7 +9,7 @@ for p in search_paths: - coroapi = p - - if not coroapi: -- print "unable to find the Coro perl module !!!" -+ print("unable to find the Coro perl module !!!") - sys.exit(1) - - NAME='coroae' diff -r 4443158ec41b -r 56877b42b246 files/uwsgi.in --- a/files/uwsgi.in Sun Sep 25 13:08:29 2022 +0200 +++ /dev/null Thu Jan 01 00:00:00 1970 +0000 @@ -1,157 +0,0 @@ -#!/bin/sh - -# PROVIDE: uwsgi -# REQUIRE: DAEMON -# KEYWORD: shutdown -# -# Add the following lines to /etc/rc.conf to enable uwsgi: -# -# uwsgi_enable (bool): Set it to "YES" to enable uwsgi -# Default is "NO". -# uwsgi_socket (path/str): Set the path to the uwsgi unix socket -# Default is /tmp/uwsgi.sock. -# uwsgi_socket_mode (int): Set the mode of the socket. -# Default is 660. -# uwsgi_socket_owner (str): Set the owner of the socket. -# Default is uwsgi:www. -# uwsgi_emperor (bool): Set it to "YES" to run uwsgi in emperor mode -# Default is "NO". -# uwsgi_configfile (path): Set the path to the config file -# Default is %%PREFIX%%/etc/uwsgi/uwsgi.ini. -# uwsgi_vassals_dir (path): Set the path to the vassals directory -# Default is %%PREFIX%%/etc/uwsgi/vassals. -# uwsgi_logfile (path): Set the path to the uwsgi log file -# Default is /var/log/uwsgi.log. -# uwsgi_pidfile (path): Set the path to the uwsgi pid file -# Default is /var/run/uwsgi.pid. -# uwsgi_uid (int): Set the UID of the process to run with -# Default is uwsgi. -# uwsgi_gid (int): Set the GID of the process to run with -# Default is uwsgi. -# uwsgi_flags (str): Set the uwsgi command line arguments -# Default is "-L". -# uwsgi_procname (str): Define to "uWSGI" if you start uwsgi with -# --auto-procname option. -# -# If you would like to have multiple uWSGI instances running, you can -# define multiple profiles: -# -# uwsgi_profiles (str): Set the list of uwsgi profiles -# Default is "". -# -# For each profile you can then define different options (except for -# uwsgi_enable) using the syntax uwsgi__