Skip site navigation (1)Skip section navigation (2)
Date:      Sun, 8 Feb 2004 02:07:41 +0200
From:      Vladimir Kushnir <vkushnir@Alfacom.net>
To:        freebsd-current@freebsd.org
Subject:   Re: HEADS UP: MAJOR changes to the ports system
Message-ID:  <200402080207.42059.vkushnir@Alfacom.net>
In-Reply-To: <1075880955.76993.54.camel@shumai.marcuscom.com>
References:  <1075880955.76993.54.camel@shumai.marcuscom.com>

next in thread | previous in thread | raw e-mail | index | archive | help
Sorry I know I should have written PR but I'm not sure about correct fix. So 
here it goes. 
After this changes lang/perl5.8 is still linked to libc_r when compiled with 
WITH_THREADS=yes. 
It's hardcoded in perl-5.8.2/hints/freebsd.sh
Easily fixed with this patch:
*** hints/freebsd.sh.orig	Sun Feb  8 02:00:51 2004
--- hints/freebsd.sh	Sun Feb  8 02:03:20 2004
***************
*** 186,192 ****
  cat > UU/usethreads.cbu <<'EOCBU'
  case "$usethreads" in
  $define|true|[yY]*)
!         lc_r=`/sbin/ldconfig -r|grep ':-lc_r'|awk '{print $NF}'|sed -n '$p'`
          case "$osvers" in  
  	0*|1*|2.0*|2.1*)   cat <<EOM >&4
  I did not know that FreeBSD $osvers supports POSIX threads.
--- 186,192 ----
  cat > UU/usethreads.cbu <<'EOCBU'
  case "$usethreads" in
  $define|true|[yY]*)
!         lc_r=`/sbin/ldconfig -r|grep ':-lpthread'|awk '{print $NF}'|sed -n 
'$p'`
          case "$osvers" in  
  	0*|1*|2.0*|2.1*)   cat <<EOM >&4
  I did not know that FreeBSD $osvers supports POSIX threads.
***************
*** 244,250 ****
  
  	esac
  
! 	set `echo X "$libswanted "| sed -e 's/ c / c_r /'`
  	shift
  	libswanted="$*"
  	# Configure will probably pick the wrong libc to use for nm scan.
--- 244,250 ----
  
  	esac
  
! 	set `echo X "$libswanted "| sed -e 's/ c / pthread c /'`
  	shift
  	libswanted="$*"
  	# Configure will probably pick the wrong libc to use for nm scan.

But i) It requires post-changes FreeBSD; and ii) This way libperl.so and the 
progs are linked with "-lpthread -lc" Is this correct?

On Wednesday 04 February 2004 09:49, Joe Marcus Clarke wrote:
> Sorry for the wide distribution, but it is critical that -CURRENT users
> hear this.  Two _MAJOR_ changes just went in to the ports tree that are
> bound to cause some pain to -CURRENT users.
>
> The first is the change in default threading libraries.  The ports
> system now uses -lpthread when linking ports instead of -lc_r.  Binaries
> that wind up with both libc_r and libpthread in them will cause
> problems.  In that case, it is imperative that you report this to the
> port's maintainer ASAP.  You can use pkg_info -W /path/to/binary to
> determine which port installed it.
>
> Second, Perl 5.8.2 is now the default version of Perl in -CURRENT since
> the 5.2 split.  This replaces Perl 5.6.1 as the default.  Note: Perl
> 5.00503 is still the default version of Perl in the 4.X base OS.
>
> If you experience problems with any of these changes (or with the other
> recent changes listed in /usr/ports/CHANGES), please report them on the
> ports@ list and to the appropriate maintainers as soon as possible.
> Thanks.
>
> Joe

Regards,
Vladimir



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?200402080207.42059.vkushnir>