Created attachment 207835 [details] Fix squid build with libc++ 9 Because squid builds with -Werror, with libc++ 9 it errors out on deprecated classes from <functional>: libtool: compile: c++ -DHAVE_CONFIG_H -DDEFAULT_CONFIG_FILE=\"/usr/local/etc/squid/squid.conf\" -DDEFAULT_SQUID_DATA_DIR=\"/usr/local/etc/squid\" -DDEFAULT_SQUID_CONFIG_DIR=\"/usr/local/etc/squid\" -I../.. -I../../include -I../../lib -I../../src -I../../include -I/usr/include -I/usr/include -I../../libltdl -I/usr/include -I/usr/local/include -Werror -Qunused-arguments -Wno-deprecated-register -D_REENTRANT -I/usr/include -I/usr/include -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -I/usr/local/include -MT InnerNode.lo -MD -MP -MF .deps/InnerNode.Tpo -c InnerNode.cc -fPIC -DPIC -o .libs/InnerNode.o InnerNode.cc:24:52: error: 'mem_fun<void, ACL>' is deprecated [-Werror,-Wdeprecated-declarations] std::for_each(nodes.begin(), nodes.end(), std::mem_fun(&ACL::prepareForUse)); ^ /usr/include/c++/v1/functional:1148:1: note: 'mem_fun<void, ACL>' has been explicitly marked deprecated here _LIBCPP_DEPRECATED_IN_CXX11 inline _LIBCPP_INLINE_VISIBILITY ^ /usr/include/c++/v1/__config:944:39: note: expanded from macro '_LIBCPP_DEPRECATED_IN_CXX11' # define _LIBCPP_DEPRECATED_IN_CXX11 _LIBCPP_DEPRECATED ^ /usr/include/c++/v1/__config:933:48: note: expanded from macro '_LIBCPP_DEPRECATED' # define _LIBCPP_DEPRECATED __attribute__ ((deprecated)) ^ 1 error generated. To fix this, allow it to continue even though the warnings are shown. Ideally upstream should replace usage of deprecated functionality with C++11 equivalents, but I am unsure whether that is an upstream goal...
A commit references this bug: Author: swills Date: Wed Oct 16 22:02:02 UTC 2019 New revision: 514623 URL: https://svnweb.freebsd.org/changeset/ports/514623 Log: www/squid: Fix build with libc++ 9 PR: 240830 Submitted by: dim Approved by: maintainer timeout (timp87@gmail.com, >2 weeks) Changes: head/www/squid/Makefile
Committed, thanks!