Solved How to use pcre2 on system for all ports

Hello, please tell me how to use the new version pcre2 instead of the old pcre one by default in the system.
I added a line to the file /etc/make.conf
DEFAULT_VERSIONS+=pcre2
but nginx still compiles with the old one.
How to do it?
 
Okay, so what to do with the support message (install nginx)?


===> nginx-1.26.3_2,3 depends on shared library: libavutil.so - found (/usr/local/lib/libavutil.so)
===> nginx-1.26.3_2,3 depends on shared library: libjpeg.so - found (/usr/local/lib/libjpeg.so)
===> nginx-1.26.3_2,3 depends on shared library: libpcre.so - not found
===> Deinstalling for pcre
===> pcre not installed, skipping
===> NOTICE:

This port is deprecated; you may wish to reconsider installing it:

EOLed by upstream, use devel/pcre2 instead.


===> License BSD3CLAUSE accepted by the user
===> pcre-8.45_4 depends on file: /usr/local/sbin/pkg - found
===> Fetching all distfiles required by pcre-8.45_4 for building
===> Extracting for pcre-8.45_4
=> SHA256 Checksum OK for pcre-8.45.tar.bz2.
===> Patching for pcre-8.45_4
===> Applying FreeBSD patches for pcre-8.45_4 from /usr/ports/devel/pcre/files
 
I am a little confused about this discussion on pcre contra pcre2.

I am running all packages from my own pudriere repo and also saw the notice about pcre being EOL.
Not thinking too much about it, I simply uninstalled pcre and installed pcre2 whereever it was needed and everything has worked well, no issues whatsoever.

As for nginx, on my poudriere server I have the following (default) in ports/www/nginx/Makefile:
LIB_DEPENDS+= libpcre2-8.so:devel/pcre2

Code:
pkg info -r pcre2
pcre2-10.45:
        nginx-1.26.3_2,3
        zabbix72-agent-7.2.3
        git-2.48.1
        glib-2.80.5_1,2


Checking the other FreeBSD servers, pkg info -r returns these packages:

Code:
pcre2-10.45:
        apache24-2.4.63
        courier-imap-5.2.10,2
        git-2.48.1
        git-lite-2.48.1
        glib-2.80.5_1,2
        haproxy-3.0.8
        mariadb114-client-11.4.5_1
        mariadb114-server-11.4.5_1
        nginx-1.26.3_2,3
        php83-8.3.17_1
        postfix-3.10.0,1
        wireshark-nox11-4.4.5
        zabbix64-agent-6.4.20
        zabbix72-agent-7.2.3
        zabbix72-server-7.2.3


I have just tried a clean 14.2 server using latest FreeBSD repo:
Code:
Repositories:
  FreeBSD: {
    url             : "pkg+http://pkg.FreeBSD.org/FreeBSD:14:amd64/latest",
    enabled         : yes,

root@porter:~ # pkg info -r pcre2
pcre2-10.45:
        nginx-1.26.3_2,3
        git-lite-2.48.1
        glib-2.80.5_1,2

- also no problems with pcre2.

So I fail to see the problem. What am i missing?
 
So I fail to see the problem. What am i missing?
OP's question was "How to use pcre2 on system for all ports".
I added a line to the file /etc/make.conf
DEFAULT_VERSIONS+=pcre2
but nginx still compiles with the old one.

Since there is no DEFAULT_VERSIONS variable to override devel/pcre, which OP wasn't aware of, each port must be configured individually, as you pointed out:
As for nginx, on my poudriere server I have the following (default) in ports/www/nginx/Makefile:
LIB_DEPENDS+= libpcre2-8.so:devel/pcre2

@andrian, currently there are around 177 ports still having lib dependency on devel/pcre. For the time being, it is the responsibility of the port maintainer (official port maintainer, or port tree / poudrier / other ports-mgnt tool port maintainer) to change the ports library dependency to use devel/pcre2. See "Example 5:" in ports(7) EXAMPLES section .

If I recall correctly from a bug report (I can't find it right now), some ports can't handle pcre2.

Code:
      1 /usr/ports/audio/libmp3splt/Makefile:PCRE_LIB_DEPENDS=  libpcre.so:devel/pcre
      2 /usr/ports/audio/vimpc/Makefile:                libpcre.so:devel/pcre \
      3 /usr/ports/audio/zrythm/Makefile:               libpcre.so:devel/pcre \
      4 /usr/ports/biology/ncbi-blast+/Makefile:                libpcre.so:devel/pcre \
      5 /usr/ports/biology/ncbi-cxx-toolkit/Makefile:           libpcre.so:devel/pcre \
      6 /usr/ports/databases/dbtool/Makefile:LIB_DEPENDS=       libpcre.so:devel/pcre
      7 /usr/ports/databases/mongodb50/Makefile:                libpcre.so:devel/pcre \
      8 /usr/ports/databases/mongodb60/Makefile:                libpcre.so:devel/pcre \
      9 /usr/ports/databases/mydumper/Makefile:LIB_DEPENDS=     libpcre.so:devel/pcre
     10 /usr/ports/databases/postgis31/Makefile:ADDRSTD_LIB_DEPENDS=            libpcre.so:devel/pcre
     11 /usr/ports/databases/postgis33/Makefile:ADDRSTD_LIB_DEPENDS=            libpcre.so:devel/pcre
     12 /usr/ports/databases/sqlite-ext-pcre/Makefile:LIB_DEPENDS=      libpcre.so:devel/pcre
     13 /usr/ports/deskutils/hs-arbtt/Makefile:LIB_DEPENDS=             libpcre.so:devel/pcre
     14 /usr/ports/deskutils/xneur/Makefile:            libpcre.so:devel/pcre
     15 /usr/ports/devel/aifad/Makefile:LIB_DEPENDS=    libpcre.so:devel/pcre
     16 /usr/ports/devel/bitkeeper/Makefile:            libpcre.so:devel/pcre   \
     17 /usr/ports/devel/coccinelle/Makefile:LIB_DEPENDS=       libpcre.so:devel/pcre
     18 /usr/ports/devel/collada-dom/Makefile:LIB_DEPENDS=      libpcre.so:devel/pcre \
     19 /usr/ports/devel/cppcheck/Makefile:RULES_LIB_DEPENDS=   libpcre.so:devel/pcre
     20 /usr/ports/devel/gnome-builder/Makefile:                libpcre.so:devel/pcre \
     21 /usr/ports/devel/libast/Makefile:LIB_DEPENDS=   libpcre.so:devel/pcre \
     22 /usr/ports/devel/libklel/Makefile:LIB_DEPENDS=  libpcre.so:devel/pcre
     23 /usr/ports/devel/libr3/Makefile:                libpcre.so:devel/pcre
     24 /usr/ports/devel/libslang2/Makefile:PCRE_LIB_DEPENDS=   libpcre.so:devel/pcre
     25 /usr/ports/devel/ocaml-pcre/Makefile:LIB_DEPENDS=       libpcre.so:devel/pcre
     26 /usr/ports/devel/py-python-pcre/Makefile:LIB_DEPENDS=   libpcre.so:devel/pcre
     27 /usr/ports/devel/regexx/Makefile:LIB_DEPENDS=   libpcre.so:devel/pcre
     28 /usr/ports/devel/rudiments/Makefile:PCRE_LIB_DEPENDS=   libpcre.so:devel/pcre
     29 /usr/ports/devel/shedskin/Makefile:             pcre>0:devel/pcre
     30 /usr/ports/devel/swig40/Makefile:LIB_DEPENDS=   libpcre.so:devel/pcre
     31 /usr/ports/devel/tup/Makefile:LIB_DEPENDS=      libpcre.so:devel/pcre
     32 /usr/ports/dns/dnshistory/Makefile:LIB_DEPENDS= libpcre.so:devel/pcre
     33 /usr/ports/editors/gnome-text-editor/Makefile:          libpcre.so:devel/pcre
     34 /usr/ports/editors/mp/Makefile:PCRE_LIB_DEPENDS=        libpcre.so:devel/pcre
     35 /usr/ports/editors/ted/Makefile:LIB_DEPENDS=    libpcre.so:devel/pcre \
     36 /usr/ports/emulators/open-simh/Makefile:LIB_DEPENDS=    libpcre.so:devel/pcre \
     37 /usr/ports/emulators/xcpc/Makefile:LIB_DEPENDS+=        libpcre.so:devel/pcre \
     38 /usr/ports/ftp/proftpd/Makefile:PCRE1_LIB_DEPENDS=      libpcre.so:devel/pcre
     39 /usr/ports/games/ezquake/Makefile:              libpcre.so:devel/pcre \
     40 /usr/ports/games/ivan/Makefile:         libpcre.so:devel/pcre
     41 /usr/ports/games/ldmud/Makefile:LIB_DEPENDS=    libpcre.so:devel/pcre
     42 /usr/ports/games/mvdsv/Makefile:                libpcre.so:devel/pcre
     43 /usr/ports/graphics/blender/Makefile:                           libpcre.so:devel/pcre
     44 /usr/ports/graphics/cegui/Makefile:PCRE_LIB_DEPENDS=    libpcre.so:devel/pcre
     45 /usr/ports/graphics/gource/Makefile:            libpcre.so:devel/pcre \
     46 /usr/ports/graphics/mapcache/Makefile:PCRE_LIB_DEPENDS= libpcre.so:devel/pcre
     47 /usr/ports/graphics/opencollada/Makefile:LIB_DEPENDS=   libpcre.so:devel/pcre
     48 /usr/ports/graphics/openfx-arena/Makefile:              libpcre.so:devel/pcre \
     49 /usr/ports/irc/anope/Makefile:PCRE_LIB_DEPENDS= libpcre.so:devel/pcre
     50 /usr/ports/irc/atheme-services/Makefile:PCRE_LIB_DEPENDS=       libpcre.so:devel/pcre
     51 /usr/ports/lang/clisp/Makefile:PCRE_LIB_DEPENDS=        libpcre.so:devel/pcre
     52 /usr/ports/lang/crystal/Makefile:               libpcre.so:devel/pcre \
     53 /usr/ports/lang/neko/Makefile:          libpcre.so:devel/pcre libpcreposix.so:devel/pcre \
     54 /usr/ports/lang/nim/Makefile:LIB_DEPENDS=       libpcre.so:devel/pcre
     55 /usr/ports/mail/anubis/Makefile:PCRE_LIB_DEPENDS=       libpcre.so:devel/pcre
     56 /usr/ports/mail/balsa/Makefile:LIB_DEPENDS=     libpcre.so:devel/pcre \
     57 /usr/ports/mail/courier/Makefile:               libpcre.so:devel/pcre \
     58 /usr/ports/mail/cyrus-imapd25/Makefile:         libpcre.so:devel/pcre
     59 /usr/ports/mail/cyrus-imapd30/Makefile:         libpcre.so:devel/pcre
     60 /usr/ports/mail/cyrus-imapd310/Makefile:PCRE2_LIB_DEPENDS_OFF=  libpcre.so:devel/pcre
     61 /usr/ports/mail/cyrus-imapd32/Makefile:PCRE2_LIB_DEPENDS_OFF=   libpcre.so:devel/pcre
     62 /usr/ports/mail/cyrus-imapd34/Makefile:PCRE2_LIB_DEPENDS_OFF=   libpcre.so:devel/pcre
     63 /usr/ports/mail/cyrus-imapd36/Makefile:PCRE2_LIB_DEPENDS_OFF=   libpcre.so:devel/pcre
     64 /usr/ports/mail/cyrus-imapd38/Makefile:PCRE2_LIB_DEPENDS_OFF=   libpcre.so:devel/pcre
     65 /usr/ports/mail/rmilter/Makefile:LIB_DEPENDS=   libpcre.so:devel/pcre
     66 /usr/ports/mail/sentinel/Makefile:LIB_DEPENDS=  libpcre.so:devel/pcre
     67 /usr/ports/mail/sqwebmail/Makefile:LIB_DEPENDS= libpcre.so:devel/pcre \
     68 /usr/ports/math/cadabra2/Makefile:              libpcrecpp.so:devel/pcre \
     69 /usr/ports/math/octave/Makefile:                libpcre.so:devel/pcre \
     70 /usr/ports/math/scilab/Makefile:LIB_DEPENDS=    libpcre.so:devel/pcre \
     71 /usr/ports/misc/far2l/Makefile:LIB_DEPENDS=     libpcre.so:devel/pcre \
     72 /usr/ports/misc/wmweather+/Makefile:            libpcre.so:devel/pcre \
     73 /usr/ports/multimedia/kodi/Makefile:            libpcre.so:devel/pcre \
     74 /usr/ports/net-mgmt/aircrack-ng/Makefile:PCRE_LIB_DEPENDS=      libpcre.so:devel/pcre
     75 /usr/ports/net-mgmt/bsnmp-regex/Makefile:# OPTION PCRE is safe to be removed when devel/pcre is remove     75 d
     76 /usr/ports/net-mgmt/bsnmp-regex/Makefile:PCRE_LIB_DEPENDS=              libpcre.so:devel/pcre
     77 /usr/ports/net-mgmt/ettercap/Makefile:PCRE_LIB_DEPENDS= libpcre.so:devel/pcre
     78 /usr/ports/net-mgmt/grepip/Makefile:LIB_DEPENDS=        libpcre.so:devel/pcre
     79 /usr/ports/net-mgmt/kismet/Makefile:PCRE_LIB_DEPENDS=   libpcre.so:devel/pcre
     80 /usr/ports/net-mgmt/netxms/Makefile:            libpcre.so:devel/pcre \
     81 /usr/ports/net-mgmt/pads/Makefile:LIB_DEPENDS=  libpcre.so:devel/pcre
     82 /usr/ports/net-mgmt/xymon-server/Makefile:              libpcre.so:devel/pcre \
     83 /usr/ports/net-mgmt/yaf/Makefile:               libpcre.so:devel/pcre
     84 /usr/ports/net-mgmt/zabbix5-server/Makefile:LIB_DEPENDS=        libpcre.so:devel/pcre
     85 /usr/ports/net-mgmt/zabbix6-server/Makefile:PCRE1_LIB_DEPENDS=  libpcre.so:devel/pcre
     86 /usr/ports/net-mgmt/zabbix7-server/Makefile:PCRE1_LIB_DEPENDS=  libpcre.so:devel/pcre
     87 /usr/ports/net-mgmt/zabbix72-server/Makefile:PCRE1_LIB_DEPENDS= libpcre.so:devel/pcre
     88 /usr/ports/net-p2p/eiskaltdcpp-lib/Makefile:PCRE_LIB_DEPENDS=   libpcre.so:devel/pcre
     89 /usr/ports/net/freeradius3/Makefile:PCRE_LIB_DEPENDS=           libpcre.so:devel/pcre
     90 /usr/ports/net/freeswitch/Makefile:             libpcre.so:devel/pcre \
     91 /usr/ports/net/haproxy-devel/Makefile:DPCRE_LIB_DEPENDS=        libpcre.so:devel/pcre
     92 /usr/ports/net/haproxy-devel/Makefile:SPCRE_BUILD_DEPENDS=      ${LOCALBASE}/lib/libpcre.a:devel/pcre
     93 /usr/ports/net/haproxy/Makefile:DPCRE_LIB_DEPENDS=      libpcre.so:devel/pcre
     94 /usr/ports/net/haproxy/Makefile:SPCRE_BUILD_DEPENDS=    ${LOCALBASE}/lib/libpcre.a:devel/pcre
     95 /usr/ports/net/haproxy22/Makefile:DPCRE_LIB_DEPENDS=    libpcre.so:devel/pcre
     96 /usr/ports/net/haproxy22/Makefile:SPCRE_LIB_DEPENDS=    libpcre.so:devel/pcre
     97 /usr/ports/net/haproxy24/Makefile:DPCRE_LIB_DEPENDS=    libpcre.so:devel/pcre
     98 /usr/ports/net/haproxy24/Makefile:SPCRE_LIB_DEPENDS=    libpcre.so:devel/pcre
     99 /usr/ports/net/haproxy25/Makefile:DPCRE_LIB_DEPENDS=    libpcre.so:devel/pcre
    100 /usr/ports/net/haproxy25/Makefile:SPCRE_BUILD_DEPENDS=  ${LOCALBASE}/lib/libpcre.a:devel/pcre
    101 /usr/ports/net/haproxy26/Makefile:DPCRE_LIB_DEPENDS=    libpcre.so:devel/pcre
    102 /usr/ports/net/haproxy26/Makefile:SPCRE_BUILD_DEPENDS=  ${LOCALBASE}/lib/libpcre.a:devel/pcre
    103 /usr/ports/net/haproxy27/Makefile:DPCRE_LIB_DEPENDS=    libpcre.so:devel/pcre
    104 /usr/ports/net/haproxy27/Makefile:SPCRE_BUILD_DEPENDS=  ${LOCALBASE}/lib/libpcre.a:devel/pcre
    105 /usr/ports/net/haproxy28/Makefile:DPCRE_LIB_DEPENDS=    libpcre.so:devel/pcre
    106 /usr/ports/net/haproxy28/Makefile:SPCRE_BUILD_DEPENDS=  ${LOCALBASE}/lib/libpcre.a:devel/pcre
    107 /usr/ports/net/haproxy29/Makefile:DPCRE_LIB_DEPENDS=    libpcre.so:devel/pcre
    108 /usr/ports/net/haproxy29/Makefile:SPCRE_BUILD_DEPENDS=  ${LOCALBASE}/lib/libpcre.a:devel/pcre
    109 /usr/ports/net/honeyd/Makefile:         libpcre.so:devel/pcre
    110 /usr/ports/net/libyang/Makefile:LIB_DEPENDS=    libpcre.so:devel/pcre
    111 /usr/ports/net/megacmd/Makefile:                libpcre.so:devel/pcre \
    112 /usr/ports/net/opensips31/Makefile:             libpcre.so:devel/pcre \
    113 /usr/ports/net/pacemaker2/Makefile:     libpcre.so:devel/pcre \
    114 /usr/ports/net/pecl-oauth2/Makefile:            libpcre.so:devel/pcre
    115 /usr/ports/net/shmux/Makefile:PCRE_LIB_DEPENDS= libpcre.so:devel/pcre
    116 /usr/ports/net/sniproxy/Makefile:               libpcre.so:devel/pcre \
    117 /usr/ports/net/tacacs/Makefile:PCRE_LIB_DEPENDS=        libpcre.so:devel/pcre
    118 /usr/ports/net/tintin++/Makefile:LIB_DEPENDS=   libpcre.so:devel/pcre
    119 /usr/ports/net/tinyfugue-devel/Makefile:LIB_DEPENDS=    libpcre.so:devel/pcre
    120 /usr/ports/net/tinyfugue/Makefile:LIB_DEPENDS=  libpcre.so:devel/pcre
    121 /usr/ports/news/pan/Makefile:LIB_DEPENDS=       libpcre.so:devel/pcre \
    122 /usr/ports/science/paraview/Makefile:           libpcre.so:devel/pcre \
    123 /usr/ports/science/py-tensorflow/Makefile:              libpcre.so:devel/pcre \
    124 /usr/ports/science/zotero/Makefile:             libpcre.so:devel/pcre \
    125 /usr/ports/security/bsmtrace/Makefile:PCRE_LIB_DEPENDS= libpcre.so:devel/pcre
    126 /usr/ports/security/bsmtrace3/Makefile:LIB_DEPENDS=     libpcre.so:devel/pcre
    127 /usr/ports/security/ftimes/Makefile:LIB_DEPENDS+=               libpcre.so:devel/pcre
    128 /usr/ports/security/hydra/Makefile:             libpcre.so:devel/pcre \
    129 /usr/ports/security/libprelude/Makefile:                libpcre.so:devel/pcre
    130 /usr/ports/security/libpreludedb/Makefile:              libpcre.so:devel/pcre \
    131 /usr/ports/security/modsecurity3/Makefile:              libpcre.so:devel/pcre \
    132 /usr/ports/security/pev/Makefile:LIB_DEPENDS=   libpcre.so:devel/pcre
    133 /usr/ports/security/snort/Makefile:LIB_DEPENDS= libpcre.so:devel/pcre \
    134 /usr/ports/shells/zsh/Makefile:PCRE_LIB_DEPENDS=        libpcre.so:devel/pcre
    135 /usr/ports/sysutils/ccze/Makefile:LIB_DEPENDS=  libpcre.so:devel/pcre
    136 /usr/ports/sysutils/cfengine-devel/Makefile:LIB_DEPENDS+=       libpcre.so:devel/pcre \
    137 /usr/ports/sysutils/cfengine321/Makefile:LIB_DEPENDS+=  libpcre.so:devel/pcre \
    138 /usr/ports/sysutils/cfengine322/Makefile:LIB_DEPENDS+=  libpcre.so:devel/pcre \
    139 /usr/ports/sysutils/cfengine323/Makefile:LIB_DEPENDS+=  libpcre.so:devel/pcre \
    140 /usr/ports/sysutils/cfengine324/Makefile:LIB_DEPENDS+=  libpcre.so:devel/pcre \
    141 /usr/ports/sysutils/cfengine325/Makefile:LIB_DEPENDS+=  libpcre.so:devel/pcre \
    142 /usr/ports/sysutils/ftwin/Makefile:             libpcre.so:devel/pcre \
    143 /usr/ports/sysutils/ganglia-monitor-core/Makefile:              libpcre.so:devel/pcre \
    144 /usr/ports/sysutils/gsmartcontrol/Makefile:LIB_DEPENDS= libpcre.so:devel/pcre
    145 /usr/ports/sysutils/hardlink/Makefile:PCRE_LIB_DEPENDS= libpcreposix.so:devel/pcre
    146 /usr/ports/sysutils/less/Makefile:PCRE_LIB_DEPENDS=     libpcre.so:devel/pcre
    147 /usr/ports/sysutils/metalog/Makefile:LIB_DEPENDS=       libpcre.so:devel/pcre
    148 /usr/ports/sysutils/rdup/Makefile:LIB_DEPENDS=  libpcre.so:devel/pcre \
    149 /usr/ports/sysutils/watchman/Makefile:PCRE_LIB_DEPENDS= libpcre.so:devel/pcre
    150 /usr/ports/textproc/cgrep/Makefile:LIB_DEPENDS= libpcre.so:devel/pcre
    151 /usr/ports/textproc/modlogan/Makefile:          libpcre.so:devel/pcre \
    152 /usr/ports/textproc/modlogan/Makefile:DEPRECATED=       dependency devel/pcre is EOL
    153 /usr/ports/textproc/pdfgrep/Makefile:LIBPCRE_LIB_DEPENDS=       libpcre.so:devel/pcre
    154 /usr/ports/textproc/py-pyscss/Makefile:LIB_DEPENDS=     libpcre.so:devel/pcre
    155 /usr/ports/textproc/rasqal/Makefile:            libpcre.so:devel/pcre
    156 /usr/ports/textproc/the_silver_searcher/Makefile:LIB_DEPENDS=   libpcre.so:devel/pcre
    157 /usr/ports/www/angie-module-lua/Makefile:LIB_DEPENDS=   libpcre.so:devel/pcre
    158 /usr/ports/www/c-icap/Makefile:         libpcre.so:devel/pcre
    159 /usr/ports/www/cas/Makefile:            libpcre.so:devel/pcre
    160 /usr/ports/www/e2guardian/Makefile:LIB_DEPENDS= libpcre.so:devel/pcre
    161 /usr/ports/www/freenginx-devel/Makefile:LIB_DEPENDS+=           libpcre.so:devel/pcre
    162 /usr/ports/www/freenginx/Makefile:LIB_DEPENDS+=         libpcre.so:devel/pcre
    163 /usr/ports/www/hypermail/Makefile:LIB_DEPENDS+= libpcre.so:devel/pcre \
    164 /usr/ports/www/kannel-sqlbox/Makefile:LIB_DEPENDS=      libpcreposix.so:devel/pcre
    165 /usr/ports/www/kannel/Makefile:LIB_DEPENDS=     libpcre.so:devel/pcre
    166 /usr/ports/www/kf5-kjs/Makefile:LIB_DEPENDS=    libpcre.so:devel/pcre
    167 /usr/ports/www/mod_auth_cas/Makefile:           libpcre.so:devel/pcre
    168 /usr/ports/www/mod_security/Makefile:LIB_DEPENDS+=      libpcre.so:devel/pcre \
    169 /usr/ports/www/nginx-devel/Makefile:LIB_DEPENDS+=               libpcre.so:devel/pcre
    170 /usr/ports/www/nginx/Makefile:LIB_DEPENDS+=             libpcre.so:devel/pcre
    171 /usr/ports/www/openresty/Makefile:              libpcre.so:devel/pcre
    172 /usr/ports/www/rejik/Makefile:LIB_DEPENDS=      libpcre.so:devel/pcre
    173 /usr/ports/www/sarg/Makefile:PCRE_LIB_DEPENDS=  libpcre.so:devel/pcre
    174 /usr/ports/www/trafficserver/Makefile:          libpcre.so:devel/pcre \
    175 /usr/ports/www/uwsgi/Makefile:PCRE_LIB_DEPENDS= libpcre.so:devel/pcre
    176 /usr/ports/www/wget2/Makefile:PCRE1_LIB_DEPENDS=        libpcre.so:devel/pcre
    177 /usr/ports/x11-wm/compton/Makefile:PCRE_LIB_DEPENDS=    libpcre.so:devel/pcre
 
[...]For the time being, it is the responsibility of the port maintainer (official port maintainer, or port tree / poudrier / other ports-mgnt tool port maintainer) to change the ports library dependency to use devel/pcre2.

My understanding is that pcre2 is different even in some details of the regular expressions. That shifts the responsibility upstream to the person doing the original applications, not the ports people. You need domain knowledge of the original program.
 
As for nginx, on my poudriere server I have the following (default) in ports/www/nginx/Makefile:
LIB_DEPENDS+= libpcre2-8.so:devel/pcre2
You are not attentive.
There are still lines in this file:
...
CONFIGURE_ARGS+=--prefix=${ETCDIR} \
--with-cc-opt="-I ${LOCALBASE}/include" \
--conf-path=${ETCDIR}/nginx.conf \
--sbin-path=${PREFIX}/sbin/nginx \
--pid-path=${NGINX_RUNDIR}/nginx.pid \
--error-log-path=${NGINX_ERRORLOG} \
--user=${WWWOWN} --group=${WWWGRP} \
--with-compat \
--with-pcre
...
and
...
.if empty(PORT_OPTIONS:MMODSECURITY3) && empty(PORT_OPTIONS:MPASSENGER)
CONFIGURE_ARGS+= --with-ld-opt="-L ${LOCALBASE}/lib"
.else
CONFIGURE_ARGS+= --with-ld-opt="-L ${LOCALBASE}/lib -lpcre"
LIB_DEPENDS+= libpcre.so:devel/pcre
.endif

Therefore "pcre" will be installed!
 
You are not attentive.
There are still lines in this file:
...
CONFIGURE_ARGS+=--prefix=${ETCDIR} \
--with-cc-opt="-I ${LOCALBASE}/include" \
--conf-path=${ETCDIR}/nginx.conf \
--sbin-path=${PREFIX}/sbin/nginx \
--pid-path=${NGINX_RUNDIR}/nginx.pid \
--error-log-path=${NGINX_ERRORLOG} \
--user=${WWWOWN} --group=${WWWGRP} \
--with-compat \
--with-pcre
...
and
...
.if empty(PORT_OPTIONS:MMODSECURITY3) && empty(PORT_OPTIONS:MPASSENGER)
CONFIGURE_ARGS+= --with-ld-opt="-L ${LOCALBASE}/lib"
.else
CONFIGURE_ARGS+= --with-ld-opt="-L ${LOCALBASE}/lib -lpcre"
LIB_DEPENDS+= libpcre.so:devel/pcre
.endif

Therefore "pcre" will be installed!

As I wrote, on a clean standard FreeBSD 14.2, this is what gets installed with nginx:

Code:
root@porter:~ # pkg info | grep -e pcre -e nginx
nginx-1.26.3_2,3               Robust and small WWW server
pcre2-10.45                    Perl Compatible Regular Expressions library, version 2
root@porter:~ # uname -a
FreeBSD porter 14.2-RELEASE-p1 FreeBSD 14.2-RELEASE-p1 GENERIC amd64

pcre2 only.

I see now my confusion comes from you trying to install ALL ports using pcre, my response was obviously only correct for SOME ports, including www/nginx.
 
Back
Top