[MacPorts] #62400: When installing Squid4 on Leopard Intel, MacPorts tries (and fails) to build libcxx
MacPorts
noreply at macports.org
Sun Mar 7 16:51:40 UTC 2021
#62400: When installing Squid4 on Leopard Intel, MacPorts tries (and fails) to
build libcxx
--------------------------+--------------------
Reporter: Wowfunhappy | Owner: (none)
Type: defect | Status: new
Priority: Normal | Milestone:
Component: ports | Version:
Resolution: | Keywords:
Port: squid4 |
--------------------------+--------------------
Comment (by kencu):
So indeed, with generic {{{macports.conf}}} set to the MacPorts defaults,
there is quite a difference between squid4's deps on 10.4 Intel and 10.5
Intel.
10.4:
{{{
$ port rdeps squid4
The following ports are dependencies of squid4 @4.13_0+openssl:
xz
apple-gcc42
ld64
ld64-97
libmacho-headers
libunwind-headers
cctools
gcc_select
libiconv
gperf
gettext
ncurses
pkgconfig
gcc7
gmp
isl
zlib
libmpc
mpfr
libgcc
libgcc7
expat
openssl
perl5
perl5.28
db48
gdbm
readline
}}}
10.5:
{{{
$ port rdeps squid4
Warning: All compilers are either blacklisted or unavailable; defaulting
to first fallback option
The following ports are dependencies of squid4 @4.13_0+openssl:
xz
libiconv
gperf
gettext
ncurses
pkgconfig
clang-7.0
cmake
clang-3.7
cctools
libunwind-headers
clang-3.4
llvm-3.4
libffi
expect
automake
autoconf
tcl
dejagnu
zlib
perl5
perl5.28
db48
gdbm
readline
llvm_select
python27
bzip2
expat
libedit
openssl
sqlite3
python_select
python2_select
clang_select
ld64
ld64-127
libmacho-headers
llvm-3.3
llvm-3.7
libcxx
curl
libidn2
libtool
xattr
unzip
libunistring
texinfo
help2man
p5.28-locale-gettext
perl5.30
libpsl
python39
python3_select
glib2
libxml2
icu
gcc7
gmp
isl
libmpc
mpfr
gcc_select
libgcc
libgcc7
pcre
zstd
lz4
curl-ca-bundle
libarchive
lzo2
libuv
legacy-support
libomp
llvm-7.0
xar
}}}
It seems that on 10.5, base is recommending clang-7.0 be used to build
against libgcc7, whereas on 10.4, base is happy with gcc7.
10.4:
{{{
$ port -d info squid4
Warning: port definitions are more than two weeks old, consider updating
them by running 'port selfupdate'.
DEBUG: Changing to port directory:
/opt/toolchains/var/macports/sources/rsync.macports.org/macports/release/tarballs/ports/net/squid4
DEBUG: OS darwin/8.11.1 (macOS 10.4) arch i386
DEBUG: Compiler doesn't support universal builds, so not adding the
default universal variant
DEBUG: Executing variant openssl provides openssl
DEBUG: Running callback portconfigure::add_automatic_compiler_dependencies
DEBUG: Chosen compiler macports-gcc-7 is provided by a port, adding
dependency
DEBUG: Adding depends_build port:gcc7
DEBUG: Adding depends_lib path:share/doc/libgcc/README:libgcc
DEBUG: Adding depends_lib port:libgcc7
DEBUG: Adding depends_skip_archcheck gcc7
DEBUG: Finished running callback
portconfigure::add_automatic_compiler_dependencies
DEBUG: Running callback portbuild::add_automatic_buildsystem_dependencies
DEBUG: Finished running callback
portbuild::add_automatic_buildsystem_dependencies
DEBUG: Running callback portstartupitem::add_notes
DEBUG: Finished running callback portstartupitem::add_notes
squid4 @4.13 (net)
Variants: gnutls, ipfw_transparent, kerberos, [+]openssl,
ssl_crtd
Description: Squid is a high-performance proxy caching server for
web clients, supporting FTP, gopher, and
HTTP data objects. Unlike traditional caching
software, Squid handles all requests in a single,
non-blocking, I/O-driven process. Squid keeps meta
data and especially hot objects cached in
RAM, caches DNS lookups, supports non-blocking DNS
lookups, and implements negative caching of
failed requests. Squid 4.x is the latest release
series, and needs a C++11 compiler to build.
Homepage: http://www.squid-cache.org/
Extract Dependencies: bin:xz:xz
Build Dependencies: port:pkgconfig, port:gcc7
Library Dependencies: port:expat, port:zlib, port:openssl,
path:share/doc/libgcc/README:libgcc, port:libgcc7
Conflicts with: squid2, squid3
Platforms: darwin
License: GPL-2+
Maintainers: Email: jmr at macports.org, GitHub: jmroot
Policy: openmaintainer
}}}
10.5:
{{{
$ port -d info squid4
DEBUG: Changing to port directory:
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/net/squid4
DEBUG: OS darwin/9.8.0 (macOS 10.5) arch i386
DEBUG: adding the default universal variant
DEBUG: Reading variant descriptions from
/opt/local/var/macports/sources/rsync.macports.org/release/tarballs/ports/_resources/port1.0/variant_descriptions.conf
DEBUG: Executing variant openssl provides openssl
DEBUG: Running callback portconfigure::add_automatic_compiler_dependencies
DEBUG: Chosen compiler macports-clang-7.0 is provided by a port, adding
dependency
DEBUG: Adding depends_build port:clang-7.0
DEBUG: Adding depends_lib path:lib/libgcc/libgcc_s.1.dylib:libgcc
DEBUG: Adding depends_skip_archcheck clang-7.0
DEBUG: Finished running callback
portconfigure::add_automatic_compiler_dependencies
DEBUG: Running callback portbuild::add_automatic_buildsystem_dependencies
DEBUG: Finished running callback
portbuild::add_automatic_buildsystem_dependencies
DEBUG: Running callback portstartupitem::add_notes
DEBUG: Finished running callback portstartupitem::add_notes
squid4 @4.13 (net)
Variants: gnutls, ipfw_transparent, kerberos, [+]openssl,
ssl_crtd, universal
Description: Squid is a high-performance proxy caching server for
web clients, supporting FTP, gopher,
and HTTP data objects. Unlike traditional caching
software, Squid handles all requests in
a single, non-blocking, I/O-driven process. Squid
keeps meta data and especially hot
objects cached in RAM, caches DNS lookups, supports
non-blocking DNS lookups, and
implements negative caching of failed requests.
Squid 4.x is the latest release series,
and needs a C++11 compiler to build.
Homepage: http://www.squid-cache.org/
Extract Dependencies: bin:xz:xz
Build Dependencies: port:pkgconfig, port:clang-7.0
Library Dependencies: port:expat, port:zlib, port:openssl,
path:lib/libgcc/libgcc_s.1.dylib:libgcc
Conflicts with: squid2, squid3
Platforms: darwin
License: GPL-2+
Maintainers: Email: jmr at macports.org, GitHub: jmroot
Policy: openmaintainer
}}}
So the issue is probably in compiler selection in base for the c++11
compiler on 10.5 Intel.
However -- let me say this.
For pretty much any real use, you will need to have base give you
clang-7.0 on 10.5 Intel as a compiler. It is 100x more compatible with the
rest of the MacPorts port tree to have that.
It works perfectly fine if you change the universal archs to "i386 x86_64"
on 10.5 Intel to have clang-7.0 as the compiler. And 10.5 PPC works
because it's compiler selection is different.
===== SO =====
we could "fix" this by changing the compiler selection on 10.5 Intel to
match 10.5 PPC, and in so doing, break a whole bunch of 10.5 Intel
systems that presently work great (for no reason).
Or -- we could tell 10.5 Intel users to change their universal archs to
"i386 x86_64" and then all would be well.
Everyone knows what I would suggest we do, I've been saying the same thing
for several years now..
For you, for today, for squid4 on an unchanged 10.5 system with universal
archs set to "i386 ppc" and you don't want to change them for some reason
-- well -- force the squid compiler like this:
{{{
sudo port -v install squid4 configure.compiler=macports-gcc-7
}}}
--
Ticket URL: <https://trac.macports.org/ticket/62400#comment:6>
MacPorts <https://www.macports.org/>
Ports system for macOS
More information about the macports-tickets
mailing list