pkgsrc-Bugs archive

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index][Old Index]

pkg/48936: Fix lang/gcc47 on OS X Tiger PowerPC



>Number:         48936
>Category:       pkg
>Synopsis:       Fix lang/gcc47 on OS X Tiger PowerPC
>Confidential:   no
>Severity:       non-critical
>Priority:       low
>Responsible:    pkg-manager
>State:          open
>Class:          change-request
>Submitter-Id:   net
>Arrival-Date:   Sun Jun 22 13:45:00 +0000 2014
>Originator:     Sevan
>Release:        pkgsrc-current 20/6/2014
>Organization:
>Environment:
Darwin 8.11.0 Darwin Kernel Version 8.11.0: Wed Oct 10 18:26:00 PDT 2007; 
root:xnu-792.24.17~1/RELEASE_PPC Power Macintosh powerpc
>Description:
Attached patch allows lang/gcc47 to build on OS X Tiger a PowerBook G4.
The patch sets the following:
1) Use DWARF2 as the multistage tests fail otherwise.
2) cctools shipped with XCode 2.5 cannot build libitm, disable libitm (with a 
newer version of cctools on Tiger, libitm does build)
3) Don't build multilib support on a 32bit PowerPC system because 64bit 
binaries are not going to work.
4) gcc-go doesn't work on Darwin, mark it broken
5) list perl in $USE_TOOLS, gcc-go build fails fails
6) add C++ to $LANGS, warned when building with -gcc-c++ -gcc-fortran -gcc-objc 
-gcc-objc++ -gcc-java -gcc-go 


Using built-in specs.
COLLECT_GCC=/usr/pkg/gcc47/bin/gcc
COLLECT_LTO_WRAPPER=/usr/pkg/gcc47/libexec/gcc/powerpc-apple-darwin8/4.7.3/lto-wrapper
Target: powerpc-apple-darwin8
Configured with: ../gcc-4.7.3/configure --enable-languages='c obj-c++ objc 
fortran c++' --enable-shared --enable-long-long 
--with-local-prefix=/usr/pkg/gcc47 --enable-libssp --enable-threads=posix 
--with-boot-ldflags='-static-libstdc++ -static-libgcc -L/usr/pkg/lib ' 
--with-dwarf2 --disable-multilib STRIP_FOR_TARGET=/usr/bin/strip --disable-nls 
--with-gmp=/usr/pkg --with-mpc=/usr/pkg --with-mpfr=/usr/pkg 
--enable-__cxa_atexit --with-gxx-include-dir=/usr/pkg/gcc47/include/c++/ 
--prefix=/usr/pkg/gcc47 --build=powerpc-apple-darwin8 
--host=powerpc-apple-darwin8 --infodir=/usr/pkg/gcc47/info 
--mandir=/usr/pkg/gcc47/man : (reconfigured) ../gcc-4.7.3/configure 
--enable-languages='c obj-c++ objc fortran c++' --enable-shared 
--enable-long-long --with-local-prefix=/usr/pkg/gcc47 --enable-libssp 
--enable-threads=posix --with-boot-ldflags='-static-libstdc++ -static-libgcc 
-L/usr/pkg/lib ' --with-dwarf2 --disable-multilib --disable-libitm 
STRIP_FOR_TARGET=/usr/bin/strip --disable-nls --wi
 th-gmp=/usr/pkg --with-mpc=/usr/pkg --with-mpfr=/usr/pkg --enable-__cxa_atexit 
--with-gxx-include-dir=/usr/pkg/gcc47/include/c++/ --prefix=/usr/pkg/gcc47 
--build=powerpc-apple-darwin8 --host=powerpc-apple-darwin8 
--infodir=/usr/pkg/gcc47/info --mandir=/usr/pkg/gcc47/man
Thread model: posix
gcc version 4.7.3 (GCC)
>How-To-Repeat:

>Fix:
Index: Makefile
===================================================================
RCS file: /cvsroot/pkgsrc/lang/gcc47/Makefile,v
retrieving revision 1.30
diff -u -r1.30 Makefile
--- Makefile    29 May 2014 23:36:42 -0000      1.30
+++ Makefile    22 Jun 2014 12:28:14 -0000
@@ -23,7 +23,7 @@
 
 NOT_FOR_PLATFORM=      Interix-*-*
 
-USE_TOOLS+=            gmake makeinfo sed:run
+USE_TOOLS+=            gmake makeinfo sed:run perl
 
 GNU_CONFIGURE=         yes
 ## Build outside ${WRKSRC}
@@ -46,7 +46,7 @@
 
 .include "../../mk/bsd.prefs.mk"
 
-LANGS=                 c
+LANGS=                 c c++
 
 # In some cases LINKER_RPATH_FLAG needs a trailing space.
 LINKER_RPATH_FLAG:=    ${LINKER_RPATH_FLAG:S/-rpath/& /}
@@ -88,12 +88,25 @@
 CONFIGURE_ARGS+=       STRIP_FOR_TARGET=${TOOLS_PLATFORM.strip}
 .endif
 
+.if !empty(MACHINE_PLATFORM:MDarwin-[0-8].*-*)
+CONFIGURE_ARGS+=       --with-dwarf2
+CONFIGURE_ARGS+=       --disable-libitm
+.endif
+
+.if !empty(MACHINE_PLATFORM:MDarwin-[0-8].*-powerpc)
+CONFIGURE_ARGS+=       --disable-multilib
+.endif
+
 .if !empty(MACHINE_PLATFORM:MNetBSD-*-i386) || 
!empty(MACHINE_PLATFORM:MLinux-*-i386)
 CONFIGURE_ARGS+=       --with-arch=i486 --with-tune=i486
 .endif
 
 .include "options.mk"
 
+.if !empty(PKG_OPTIONS:Mgcc-go) && !empty(MACHINE_PLATFORM:MDarwin-*-*)
+BROKEN=        Doesn't work on Darwin, GCC bugzilla ID 46986
+.endif
+
 # ${WRKSRC}/fixincludes/ looks for sed and compiles the path to sed into
 # a binary so we need to make sure we give it the installed sed and not
 # the tool wrapped one.



Home | Main Index | Thread Index | Old Index