# Buildsheet autogenerated by ravenadm tool -- Do not edit. NAMEBASE= uwsgi VERSION= 2.0.25.1 KEYWORDS= python www VARIANTS= standard SDESC[standard]= Fast, self-healing, application container server HOMEPAGE= http://projects.unbit.it/uwsgi/ CONTACT= nobody DOWNLOAD_GROUPS= main SITES[main]= GITHUB/unbit:uwsgi:2.0.25.1 DISTFILE[1]= generated:main DIST_SUBDIR= uswsi DF_INDEX= 1 SPKGS[standard]= single OPTIONS_AVAILABLE= none OPTIONS_STANDARD= none BUILDRUN_DEPENDS= jansson:single:standard USERS= uwsgi GROUPS= uwsgi USERGROUP_SPKG= single USES= cpe pkgconfig ssl zlib pcre iconv gettext python:v11,sutools GNOME_COMPONENTS= libxml2 LICENSE= GPLv2:single LICENSE_TERMS= single:{{WRKDIR}}/TERMS LICENSE_FILE= GPLv2:{{WRKSRC}}/LICENSE LICENSE_SCHEME= solo CPE_VENDOR= unbit FPC_EQUIVALENT= www/uwsgi PYD_BUILDARGS= --verbose PYD_BUILD_TARGET= --build PYSETUP= uwsgiconfig.py MAKE_ENV= CPUCOUNT={{MAKE_JOBS_NUMBER}} UWSGI_EMBED_PLUGINS=cgi RC_SUBR= uwsgi:single CPPFLAGS= -I{{OPENSSLINC}} LDFLAGS= -L{{OPENSSLLIB}} -Wl,-rpath,{{OPENSSLLIB}} post-patch: ${REINPLACE_CMD} \ -e '/^json =/ s|= .*|= jansson|' \ -e '/^pcre =/ s|= .*|= true|' \ -e '/^xml =/ s|= .*|= libxml2|' \ ${WRKSRC}/buildconf/base.ini do-configure: # don't configure post-extract: ${GREP} License ${WRKSRC}/setup.py > ${WRKDIR}/TERMS do-install: ${MKDIR} ${STAGEDIR}${PYTHON_SITELIBDIR} ${INSTALL_PROGRAM} ${WRKSRC}/uwsgi ${STAGEDIR}${PREFIX}/bin/ ${INSTALL_DATA} ${WRKSRC}/uwsgidecorators.py \ ${STAGEDIR}${PYTHON_SITELIBDIR} [FILE:294:descriptions/desc.single] uWSGI is a fast (pure C), self-healing, developer-friendly WSGI server, aimed for professional python webapps deployment and development. Over time it has evolved in a complete stack for networked/clustered python applications, implementing message/object passing, RPC and process management. [FILE:112:distinfo] a1e4a401f71d29e49d4762223412c32a42594c415f9d72d0f759680e5b8f4cf9 811635 uswsi/unbit-uwsgi-2.0.25.1.tar.gz [FILE:469:patches/patch-core_logging.c] $NetBSD: patch-core_logging.c,v 1.5 2022/11/02 07:26:47 wiz Exp $ Fix build for NetBSD. https://github.com/unbit/uwsgi/pull/2506 --- core/logging.c.orig 2024-04-15 19:43:55 UTC +++ core/logging.c @@ -2,7 +2,9 @@ #include "uwsgi.h" #endif #if defined(__FreeBSD__) || defined(__NetBSD__) || defined(__DragonFly__) || defined(__OpenBSD__) +# if !defined(__NetBSD__) #include +# endif #include #include #elif defined(__sun__) [FILE:2763:patches/patch-uwsgiconfig.py] --- uwsgiconfig.py.orig 2024-04-15 19:43:55 UTC +++ uwsgiconfig.py @@ -834,7 +834,7 @@ class uConf(object): global uwsgi_version - kvm_list = ['FreeBSD', 'OpenBSD', 'NetBSD', 'DragonFly'] + kvm_list = ['FreeBSD', 'OpenBSD', 'NetBSD', 'DragonFly', 'MidnightBSD'] if 'UWSGI_PROFILE_OVERRIDE' in os.environ: for item in os.environ['UWSGI_PROFILE_OVERRIDE'].split(';'): @@ -849,7 +849,7 @@ class uConf(object): self.cflags.append('-DUWSGI_HAS_IFADDRS') report['ifaddrs'] = True - if uwsgi_os in ('FreeBSD', 'DragonFly', 'OpenBSD'): + if uwsgi_os in ('FreeBSD', 'DragonFly', 'OpenBSD', 'MidnightBSD'): if self.has_include('execinfo.h') or os.path.exists('/usr/local/include/execinfo.h'): if os.path.exists('/usr/local/include/execinfo.h'): self.cflags.append('-I/usr/local/include') @@ -936,6 +936,8 @@ class uConf(object): pass elif uwsgi_os == 'GNU': locking_mode = 'posix_sem' + elif uwsgi_os == 'MidnightBSD': + locking_mode = 'posix_sem' elif uwsgi_os == 'Darwin': locking_mode = 'osx_spinlock' elif uwsgi_os.startswith('CYGWIN'): @@ -970,7 +972,7 @@ class uConf(object): if int(sun_major) >= 5: if int(sun_minor) >= 10: event_mode = 'port' - elif uwsgi_os in ('Darwin', 'FreeBSD', 'GNU/kFreeBSD', 'OpenBSD', 'NetBSD', 'DragonFly'): + elif uwsgi_os in ('Darwin', 'FreeBSD', 'GNU/kFreeBSD', 'OpenBSD', 'NetBSD', 'DragonFly', 'MidnightBSD'): event_mode = 'kqueue' elif uwsgi_os.startswith('CYGWIN') or uwsgi_os == 'GNU': event_mode = 'poll' @@ -1013,7 +1015,7 @@ class uConf(object): if int(sun_minor) >= 10: timer_mode = 'port' - elif uwsgi_os in ('Darwin', 'FreeBSD', 'GNU/kFreeBSD', 'OpenBSD', 'NetBSD', 'DragonFly'): + elif uwsgi_os in ('Darwin', 'FreeBSD', 'GNU/kFreeBSD', 'OpenBSD', 'NetBSD', 'DragonFly', 'MidnightBSD'): timer_mode = 'kqueue' if timer_mode == 'timerfd': @@ -1040,7 +1042,7 @@ class uConf(object): if int(sun_major) >= 5: if int(sun_minor) >= 10: filemonitor_mode = 'port' - elif uwsgi_os in ('Darwin', 'FreeBSD', 'GNU/kFreeBSD', 'OpenBSD', 'NetBSD', 'DragonFly'): + elif uwsgi_os in ('Darwin', 'FreeBSD', 'GNU/kFreeBSD', 'OpenBSD', 'NetBSD', 'DragonFly', 'MidnightBSD'): filemonitor_mode = 'kqueue' if filemonitor_mode == 'inotify': [FILE:5086:files/uwsgi.in] #!/bin/sh # # $FreeBSD: head/www/uwsgi/files/uwsgi.in 448482 2017-08-21 17:49:01Z ultima $ # # 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__