Skip site navigation (1)Skip section navigation (2)
Date:      Fri, 8 Nov 2013 01:25:00 +0100
From:      Dimitry Andric <dim@FreeBSD.org>
To:        dweimer@dweimer.net
Cc:        FreeBSD Stable <freebsd-stable@freebsd.org>
Subject:   Re: www/squid33 seems to be broke in 10 Beta 2 & 3
Message-ID:  <958EE6DF-E93B-40AF-8A13-AB0D510751CE@FreeBSD.org>
In-Reply-To: <2f2fbc2dd37f2be506ae459b164a6c24@dweimer.net>
References:  <2f2fbc2dd37f2be506ae459b164a6c24@dweimer.net>

next in thread | previous in thread | raw e-mail | index | archive | help

--Apple-Mail=_3977A6CC-3685-4FF9-BC87-2B6E810EBABB
Content-Type: multipart/mixed;
	boundary="Apple-Mail=_312D6598-3FF7-400F-B1A1-00B1175AD784"


--Apple-Mail=_312D6598-3FF7-400F-B1A1-00B1175AD784
Content-Transfer-Encoding: quoted-printable
Content-Type: text/plain;
	charset=us-ascii

On 07 Nov 2013, at 22:24, dweimer <dweimer@dweimer.net> wrote:
> Just curious if anyone else has had problems getting the Squid 3.3 =
port to build in 10?  I first built test server with 10 beta 2, and have =
since upgraded it to beta 3, the only port I have running an any servers =
that I have been enable to build and test is squid33, I haven't tried =
any of the older squid versions, and I haven't tried prior to beta 2 =
under the 10 stable branch.
>=20
> Here is the start of the error under the build process.
>=20
> --- TextException.lo ---
> In file included from TextException.cc:3:
> In file included from ../../src/Debug.h:36:
> In file included from /usr/include/c++/v1/iostream:38:
> In file included from /usr/include/c++/v1/ios:216:
> In file included from /usr/include/c++/v1/__locale:15:
> In file included from /usr/include/c++/v1/string:432:
> /usr/include/c++/v1/cstdio:139:9: error: no member named =
'ERROR_sprintf_UNSAFE_IN_SQUID' in the global namespace
> using ::sprintf;
>      ~~^
> ../../compat/unsafe.h:10:17: note: expanded from macro 'sprintf'
> #define sprintf ERROR_sprintf_UNSAFE_IN_SQUID

Squid plays some games with redefining "unsafe" identifiers, so you =
hopefully avoid using them.  However, it does not properly check for =
existence of the cstdio header.  You can apply the attached patch to fix =
this problem (and other problems) in the squid33 port.

-Dimitry

--Apple-Mail=_312D6598-3FF7-400F-B1A1-00B1175AD784
Content-Disposition: attachment;
	filename=www__squid33-fix-cstdio-1.diff
Content-Type: application/octet-stream;
	x-unix-mode=0644;
	name="www__squid33-fix-cstdio-1.diff"
Content-Transfer-Encoding: 7bit

Index: www/squid33/files/patch-compat__stdio.h
===================================================================
--- www/squid33/files/patch-compat__stdio.h	(revision 0)
+++ www/squid33/files/patch-compat__stdio.h	(working copy)
@@ -0,0 +1,11 @@
+--- compat/stdio.h.orig	2013-05-20 13:48:55.000000000 +0200
++++ compat/stdio.h	2013-07-15 22:34:49.000000000 +0200
+@@ -46,7 +46,7 @@
+ #endif /* __USE_FILE_OFFSET64 && !__REDIRECT */
+ 
+ // Finally import the <cstdio> stuff we actually use
+-#if HAVE_CSTDIO
++#if defined(__cplusplus) && HAVE_CSTDIO
+ #include<cstdio>
+ #endif
+ 
Index: www/squid33/files/patch-configure
===================================================================
--- www/squid33/files/patch-configure	(revision 333160)
+++ www/squid33/files/patch-configure	(working copy)
@@ -1,6 +1,6 @@
 --- configure.orig	2013-03-12 11:18:22.000000000 +0100
 +++ configure	2013-04-09 11:43:01.000000000 +0200
-@@ -22437,7 +22437,7 @@
+@@ -22798,7 +22798,7 @@
  
  done
  
@@ -9,7 +9,7 @@
      for ac_header in gssapi/gssapi_generic.h
  do :
    ac_fn_cxx_check_header_mongrel "$LINENO" "gssapi/gssapi_generic.h" "ac_cv_header_gssapi_gssapi_generic_h" "$ac_includes_default"
-@@ -22634,7 +22634,7 @@
+@@ -22995,7 +22995,7 @@
  
  
    ac_com_error_message=no
@@ -18,7 +18,7 @@
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
  #include <com_err.h>
-@@ -22646,7 +22646,7 @@
+@@ -23007,7 +23007,7 @@
  fi
  rm -f conftest*
  
@@ -27,7 +27,7 @@
        cat confdefs.h - <<_ACEOF >conftest.$ac_ext
  /* end confdefs.h.  */
  #include <et/com_err.h>
-@@ -22707,7 +22707,7 @@
+@@ -23068,7 +23068,7 @@
  
    fi
  
@@ -36,7 +36,7 @@
      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for error_message in -lcom_err" >&5
  $as_echo_n "checking for error_message in -lcom_err... " >&6; }
  if ${ac_cv_lib_com_err_error_message+:} false; then :
-@@ -22750,7 +22750,7 @@
+@@ -23111,7 +23111,7 @@
  
  fi
  
@@ -45,3 +45,11 @@
      { $as_echo "$as_me:${as_lineno-$LINENO}: checking for error_message in -lkrb5" >&5
  $as_echo_n "checking for error_message in -lkrb5... " >&6; }
  if ${ac_cv_lib_krb5_error_message+:} false; then :
+@@ -24704,6 +24704,7 @@
+   cassert \
+   crypt.h \
+   cstdarg \
++  cstdio \
+   cstdlib \
+   cstring \
+   list \
Index: www/squid33/files/patch-include__Array.h
===================================================================
--- www/squid33/files/patch-include__Array.h	(revision 0)
+++ www/squid33/files/patch-include__Array.h	(working copy)
@@ -0,0 +1,33 @@
+--- include/Array.h.orig	2013-05-20 13:48:55.000000000 +0200
++++ include/Array.h	2013-07-15 23:00:06.000000000 +0200
+@@ -42,12 +42,19 @@
+ #include "compat/assert.h"
+ 
+ /* iterator support */
++#include <iterator>
+ 
+ template <class C>
+ class VectorIteratorBase
+ {
+ 
+ public:
++    typedef typename C::value_type value_type;
++    typedef std::forward_iterator_tag iterator_category;
++    typedef typename C::pointer pointer;
++    typedef typename C::reference reference;
++    typedef typename C::difference_type difference_type;
++
+     VectorIteratorBase();
+     VectorIteratorBase(C &);
+     VectorIteratorBase(size_t, C &);
+@@ -79,8 +86,10 @@
+ public:
+     typedef E value_type;
+     typedef E* pointer;
++    typedef E& reference;
+     typedef VectorIteratorBase<Vector<E> > iterator;
+     typedef VectorIteratorBase<Vector<E> const> const_iterator;
++    typedef ptrdiff_t difference_type;
+ 
+     void *operator new (size_t);
+     void operator delete (void *);
Index: www/squid33/files/patch-include__autoconf.h.in
===================================================================
--- www/squid33/files/patch-include__autoconf.h.in	(revision 0)
+++ www/squid33/files/patch-include__autoconf.h.in	(working copy)
@@ -0,0 +1,12 @@
+--- include/autoconf.h.in.orig	2013-05-20 13:49:34.000000000 +0200
++++ include/autoconf.h.in	2013-07-15 22:23:33.000000000 +0200
+@@ -158,6 +158,9 @@
+ /* Define to 1 if you have the <cstdarg> header file. */
+ #undef HAVE_CSTDARG
+ 
++/* Define to 1 if you have the <cstdio> header file. */
++#undef HAVE_CSTDIO
++
+ /* Define to 1 if you have the <cstdlib> header file. */
+ #undef HAVE_CSTDLIB
+ 

--Apple-Mail=_312D6598-3FF7-400F-B1A1-00B1175AD784
Content-Transfer-Encoding: 7bit
Content-Type: text/plain;
	charset=us-ascii



--Apple-Mail=_312D6598-3FF7-400F-B1A1-00B1175AD784--

--Apple-Mail=_3977A6CC-3685-4FF9-BC87-2B6E810EBABB
Content-Transfer-Encoding: 7bit
Content-Disposition: attachment;
	filename=signature.asc
Content-Type: application/pgp-signature;
	name=signature.asc
Content-Description: Message signed with OpenPGP using GPGMail

-----BEGIN PGP SIGNATURE-----
Version: GnuPG/MacGPG2 v2.0.22 (Darwin)

iEYEARECAAYFAlJ8L2IACgkQsF6jCi4glqO2LwCglho5FsJbVWOOS1+BW3i9XWjH
ys4AnjlsmOHTmqdRF6fL92EjUe09vJvv
=7G77
-----END PGP SIGNATURE-----

--Apple-Mail=_3977A6CC-3685-4FF9-BC87-2B6E810EBABB--



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?958EE6DF-E93B-40AF-8A13-AB0D510751CE>