Hi,

> http://build-failures.rhaalovely.net//powerpc/2019-05-19/www/squid.log

It happens because upstream made a nice atomic detection code,
that takes -latomic into account (amazing!), but, i quote
$WRKSRC/configure test code:

/* Override any GCC internal prototype to avoid an error.
   Use char because int might match the return type of a GCC
   builtin and then its argument prototype would still apply.  */

It's supposed to be uint64_t iirc, so the test fails with:

conftest.cpp:55:6: error: new declaration 'char __atomic_load_8()'
ambiguates built-in declaration 'long long unsigned int
__atomic_load_8(const volatile void*, int)' [-fpermissive]

So yes, i'm adding that block again *sigh*. The test needs to be 
bypassed as well, or it overrides LIBS. 

I've tested the runtime, it works as expected with the default
configuration on macppc (and it doesn't impact other archs).


Comments/feedback are welcome,

Charlène.


Index: Makefile
===================================================================
RCS file: /cvs/ports/www/squid/Makefile,v
retrieving revision 1.217
diff -u -p -u -p -r1.217 Makefile
--- Makefile    3 Jun 2019 16:06:58 -0000       1.217
+++ Makefile    8 Jun 2019 11:22:47 -0000
@@ -10,7 +10,9 @@ EXTRACT_SUFX= .tar.xz
 PKGNAME-main=  squid-$V
 PKGNAME-ldap=  squid-ldap-$V
 PKGNAME-ntlm=  squid-ntlm-$V
-REVISION-main= 0
+REVISION-main= 1
+REVISION-ldap= 0
+REVISION-ntlm= 0
 
 CATEGORIES=    www
 
@@ -123,6 +125,13 @@ WANTLIB-ldap +=     ${cWANTLIB} crypto l
 RUN_DEPENDS-ntlm=   net/samba ${BASE_PKGPATH}
 LIB_DEPENDS-ntlm += security/libnettle
 WANTLIB-ntlm=       ${WANTLIB} ${COMPILER_LIBCXX}
+
+.if ${MACHINE_ARCH} == "powerpc"
+WANTLIB +=             atomic
+# The test in configure don't want atomic builtins, bypass it.
+CONFIGURE_ENV +=       LIBS=-latomic \
+                       ac_cv_search___atomic_load_8=-latomic
+.endif
 
 pre-build:
        @cd ${WRKSRC}; \

Reply via email to