diff options
Diffstat (limited to 'sys-devel')
9 files changed, 316 insertions, 1 deletions
diff --git a/sys-devel/gcc-apple/files/gcc-apple-4.0.1_p5465-default-altivec.patch b/sys-devel/gcc-apple/files/gcc-apple-4.0.1_p5465-default-altivec.patch new file mode 100644 index 000000000000..e7b0bbbf8078 --- /dev/null +++ b/sys-devel/gcc-apple/files/gcc-apple-4.0.1_p5465-default-altivec.patch @@ -0,0 +1,38 @@ +* reverse patch to gain 10.4 behaviour for AltiVec. + +--- gcc/config/rs6000/rs6000-c.c ++++ gcc/config/rs6000/rs6000-c.c +@@ -245,22 +245,22 @@ + builtin_define ("__bool=__attribute__((altivec(bool__))) unsigned"); + + /* APPLE LOCAL begin AltiVec */ ++ builtin_define ("vector=vector"); ++ builtin_define ("pixel=pixel"); ++ builtin_define ("_Bool=_Bool"); ++ builtin_define ("bool=bool"); ++ init_vector_keywords (pfile); ++ ++ /* Indicate that the compiler supports Apple AltiVec syntax, ++ including context-sensitive keywords. */ + if (rs6000_altivec_pim) + { +- builtin_define ("vector=vector"); +- builtin_define ("pixel=pixel"); +- builtin_define ("_Bool=_Bool"); +- builtin_define ("bool=bool"); +- init_vector_keywords (pfile); +- +- /* Indicate that the compiler supports Apple AltiVec syntax, +- including context-sensitive keywords. */ + builtin_define ("__APPLE_ALTIVEC__"); + builtin_define ("vec_step(T)=(sizeof (__typeof__(T)) / sizeof (__typeof__(T) __attribute__((altivec(element__)))))"); +- +- /* Enable context-sensitive macros. */ +- cpp_get_callbacks (pfile)->macro_to_expand = rs6000_macro_to_expand; + } ++ ++ /* Enable context-sensitive macros. */ ++ cpp_get_callbacks (pfile)->macro_to_expand = rs6000_macro_to_expand; + /* APPLE LOCAL end AltiVec */ + } + if (TARGET_SPE) diff --git a/sys-devel/gcc-apple/files/gcc-apple-4.2.1-dsymutil.patch b/sys-devel/gcc-apple/files/gcc-apple-4.2.1-dsymutil.patch new file mode 100644 index 000000000000..8da025d8c5d0 --- /dev/null +++ b/sys-devel/gcc-apple/files/gcc-apple-4.2.1-dsymutil.patch @@ -0,0 +1,20 @@ +Revert of dsymutil part of +http://gcc.gnu.org/ml/gcc-patches/2006-09/msg00057.html +See http://article.gmane.org/gmane.linux.gentoo.alt/4327 + +--- gcc/config/darwin.h ++++ gcc/config/darwin.h +@@ -326,12 +326,7 @@ + "/* APPLE LOCAL nested functions 4357979 */"\ + %{fnested-functions: -allow_stack_execute} \ + %{!nostdlib:%{!nodefaultlibs:%(link_ssp) %G %L}} \ +-"/* APPLE LOCAL begin mainline 4.3 2006-10-31 4370146 */"\ +- %{!A:%{!nostdlib:%{!nostartfiles:%E}}} %{T*} %{F*} }}}}}}}}\n\ +-%{!fdump=*:%{!fsyntax-only:%{!c:%{!M:%{!MM:%{!E:%{!S:\ +-"/* APPLE LOCAL end mainline 4.3 2006-10-31 4370146 */"\ +- %{.c|.cc|.C|.cpp|.cp|.c++|.cxx|.CPP|.m|.mm: \ +- %{g*:%{!gstabs*:%{!g0: dsymutil %{o*:%*}%{!o:a.out}}}}}}}}}}}}" ++ %{!A:%{!nostdlib:%{!nostartfiles:%E}}} %{T*} %{F*} }}}}}}}}" + /* APPLE LOCAL end mainline */ + + #ifdef TARGET_SYSTEM_ROOT diff --git a/sys-devel/gcc-apple/files/gcc-apple-4.2.1-gfortran.patch b/sys-devel/gcc-apple/files/gcc-apple-4.2.1-gfortran.patch new file mode 100644 index 000000000000..b5f2cc544c96 --- /dev/null +++ b/sys-devel/gcc-apple/files/gcc-apple-4.2.1-gfortran.patch @@ -0,0 +1,137 @@ +diff -Nru gcc_42-5564/build_gcc gcc_42-5564.mod/build_gcc +--- gcc_42-5564/build_gcc 2008-04-15 20:25:12.000000000 -0400 ++++ gcc_42-5564.mod/build_gcc 2008-08-29 17:25:03.000000000 -0400 +@@ -112,7 +112,7 @@ + CONFIGFLAGS="--disable-checking --enable-werror \ + --prefix=$DEST_ROOT \ + --mandir=\${prefix}/share/man \ +- --enable-languages=c,objc,c++,obj-c++ \ ++ --enable-languages=c,objc,c++,obj-c++,fortran \ + --program-transform-name=/^[cg][^.-]*$/s/$/-$MAJ_VERS/ \ + --with-gxx-include-dir=\${prefix}/include/c++/$LIBSTDCXX_VERSION \ + --with-slibdir=/usr/lib \ +@@ -326,6 +326,8 @@ + $DIR/dst-*-$t$DEST_ROOT/bin/$t-apple-darwin$DARWIN_VERS-gcc-$VERS || exit 1 + lipo -output .$DEST_ROOT/bin/$t-apple-darwin$DARWIN_VERS-g++-$VERS -create \ + $DIR/dst-*-$t$DEST_ROOT/bin/$t-apple-darwin$DARWIN_VERS-g++* || exit 1 ++ lipo -output .$DEST_ROOT/bin/$t-apple-darwin$DARWIN_VERS-gfortran-$VERS -create \ ++ $DIR/dst-*-$t$DEST_ROOT/bin/$t-apple-darwin$DARWIN_VERS-gfortran* || exit 1 + done + + # lib +@@ -348,16 +350,22 @@ + .$DEST_ROOT/lib/gcc/$t-apple-darwin$DARWIN_VERS/$VERS/ || exit 1 + cp -p $DIR/dst-$h-$t$DEST_ROOT/lib/libgomp.spec \ + .$DEST_ROOT/lib/gcc/$t-apple-darwin$DARWIN_VERS/$VERS/ || exit 1 ++ cp -p $DIR/dst-$h-$t$DEST_ROOT/lib/libgfortran.a \ ++ .$DEST_ROOT/lib/gcc/$t-apple-darwin$DARWIN_VERS/$VERS/ || exit 1 + if [ $h = 'powerpc' ] ; then + cp -p $DIR/dst-$h-$t$DEST_ROOT/lib/ppc64/libgomp.a \ + .$DEST_ROOT/lib/gcc/$t-apple-darwin$DARWIN_VERS/$VERS/ppc64/ || exit 1 + cp -p $DIR/dst-$h-$t$DEST_ROOT/lib/ppc64/libgomp.spec \ + .$DEST_ROOT/lib/gcc/$t-apple-darwin$DARWIN_VERS/$VERS/ppc64/ || exit 1 ++ cp -p $DIR/dst-$h-$t$DEST_ROOT/lib/ppc64/libgfortran.a \ ++ .$DEST_ROOT/lib/gcc/$t-apple-darwin$DARWIN_VERS/$VERS/ppc64/ || exit 1 + elif [ $h = 'i686' ] ; then + cp -p $DIR/dst-$h-$t$DEST_ROOT/lib/x86_64/libgomp.a \ + .$DEST_ROOT/lib/gcc/$t-apple-darwin$DARWIN_VERS/$VERS/x86_64/ || exit 1 + cp -p $DIR/dst-$h-$t$DEST_ROOT/lib/x86_64/libgomp.spec \ + .$DEST_ROOT/lib/gcc/$t-apple-darwin$DARWIN_VERS/$VERS/x86_64/ || exit 1 ++ cp -p $DIR/dst-$h-$t$DEST_ROOT/lib/x86_64/libgfortran.a \ ++ .$DEST_ROOT/lib/gcc/$t-apple-darwin$DARWIN_VERS/$VERS/x86_64/ || exit 1 + fi + fi + done +@@ -432,6 +440,16 @@ + -L$DIR/dst-$BUILD-$h$DEST_ROOT/$h-apple-darwin$DARWIN_VERS/lib/ \ + -L$DIR/obj-$h-$BUILD/libiberty/ \ + -o $DEST_DIR/$DEST_ROOT/bin/tmp-$h-g++-$MAJ_VERS || exit 1 ++ ++ $DEST_DIR$DEST_ROOT/bin/$h-apple-darwin$DARWIN_VERS-gcc-$VERS \ ++ $ORIG_SRC_DIR/driverdriver.c \ ++ -DPDN="\"-apple-darwin$DARWIN_VERS-gfortran-$VERS\"" \ ++ -DIL="\"$DEST_ROOT/bin/\"" -I $ORIG_SRC_DIR/include \ ++ -I $ORIG_SRC_DIR/gcc -I $ORIG_SRC_DIR/gcc/config \ ++ -liberty -L$DIR/dst-$BUILD-$h$DEST_ROOT/lib/ \ ++ -L$DIR/dst-$BUILD-$h$DEST_ROOT/$h-apple-darwin$DARWIN_VERS/lib/ \ ++ -L$DIR/obj-$h-$BUILD/libiberty/ \ ++ -o $DEST_DIR/$DEST_ROOT/bin/tmp-$h-gfortran-$MAJ_VERS || exit 1 + done + + lipo -output $DEST_DIR/$DEST_ROOT/bin/gcc-$MAJ_VERS -create \ +@@ -440,10 +458,14 @@ + lipo -output $DEST_DIR/$DEST_ROOT/bin/g++-$MAJ_VERS -create \ + $DEST_DIR/$DEST_ROOT/bin/tmp-*-g++-$MAJ_VERS || exit 1 + ++lipo -output $DEST_DIR/$DEST_ROOT/bin/gfortran-$MAJ_VERS -create \ ++ $DEST_DIR/$DEST_ROOT/bin/tmp-*-gfortran-$MAJ_VERS || exit 1 ++ + ln -f $DEST_DIR/$DEST_ROOT/bin/g++-$MAJ_VERS $DEST_DIR/$DEST_ROOT/bin/c++-$MAJ_VERS || exit 1 + + rm $DEST_DIR/$DEST_ROOT/bin/tmp-*-gcc-$MAJ_VERS || exit 1 + rm $DEST_DIR/$DEST_ROOT/bin/tmp-*-g++-$MAJ_VERS || exit 1 ++rm $DEST_DIR/$DEST_ROOT/bin/tmp-*-gfortran-$MAJ_VERS || exit 1 + + # Remove extraneous stuff + rm -rf $DEST_DIR/$DEST_ROOT/lib/gcc/*/*/include/c++ +@@ -472,7 +494,7 @@ + ######################################## + # Remove debugging information from DEST_DIR. + +-find $DEST_DIR -perm -0111 \! -name fixinc.sh \ ++find $DEST_DIR -perm -0111 \! -name fixinc.sh \! -name libgfortran\* \ + \! -name mkheaders \! -name libstdc++.dylib -type f -print \ + | xargs strip || exit 1 + find $DEST_DIR -name \*.a -print | xargs strip -SX || exit 1 +diff -Nru gcc_42-5564/gcc/fortran/Make-lang.in gcc_42-5564.mod/gcc/fortran/Make-lang.in +--- gcc_42-5564/gcc/fortran/Make-lang.in 2008-04-01 17:26:19.000000000 -0400 ++++ gcc_42-5564.mod/gcc/fortran/Make-lang.in 2008-08-29 17:25:03.000000000 -0400 +@@ -73,7 +73,7 @@ + fortran/trans.o fortran/trans-array.o fortran/trans-common.o \ + fortran/trans-const.o fortran/trans-decl.o fortran/trans-expr.o \ + fortran/trans-intrinsic.o fortran/trans-io.o fortran/trans-openmp.o \ +- fortran/trans-stmt.o fortran/trans-types.o ++ fortran/trans-stmt.o fortran/trans-types.o fortran/fake.o + + # GFORTRAN uses GMP for its internal arithmetics. + F95_LIBS = $(GMPLIBS) $(LIBS) +@@ -106,7 +106,7 @@ + f951$(exeext): $(F95_OBJS) \ + $(BACKEND) $(LIBDEPS) + $(CC) $(ALL_CFLAGS) $(LDFLAGS) -o $@ \ +- $(F95_OBJS) $(BACKEND) $(F95_LIBS) ++ $(F95_OBJS) $(BACKEND) $(F95_LIBS) stub-objc.o + + gt-fortran-trans.h : s-gtype; @true + # +diff -Nru gcc_42-5564/gcc/fortran/fake.c gcc_42-5564.mod/gcc/fortran/fake.c +--- gcc_42-5564/gcc/fortran/fake.c 1969-12-31 19:00:00.000000000 -0500 ++++ gcc_42-5564.mod/gcc/fortran/fake.c 2008-08-29 17:42:58.000000000 -0400 +@@ -0,0 +1,27 @@ ++#include <stdlib.h> ++#include <stdio.h> ++ ++#define MK_FAKE(X) void X (void); void X (void) { fprintf(stderr, "** FATAL: call to an unsupported function!\n"); exit(1); } ++ ++int c_language = 0; /* 0 is C which is the default */ ++int disable_typechecking_for_spec_flag = 0; ++ ++MK_FAKE(build_function_call) ++MK_FAKE(build_modify_expr) ++MK_FAKE(build_stmt) ++MK_FAKE(decl_attributes) ++MK_FAKE(decl_constant_value) ++MK_FAKE(flag_iasm_blocks) ++MK_FAKE(iasm_addr) ++MK_FAKE(iasm_build_bracket) ++MK_FAKE(iasm_force_constraint) ++MK_FAKE(iasm_get_register_var) ++MK_FAKE(iasm_in_operands) ++MK_FAKE(iasm_is_pseudo) ++MK_FAKE(iasm_print_operand) ++MK_FAKE(iasm_state) ++MK_FAKE(lookup_name) ++MK_FAKE(parse_in) ++MK_FAKE(pointer_int_sum) ++MK_FAKE(store_init_value) ++ diff --git a/sys-devel/gcc-apple/files/gcc-apple-4.2.1-inline-asm.patch b/sys-devel/gcc-apple/files/gcc-apple-4.2.1-inline-asm.patch new file mode 100644 index 000000000000..a7fb6a98328e --- /dev/null +++ b/sys-devel/gcc-apple/files/gcc-apple-4.2.1-inline-asm.patch @@ -0,0 +1,24 @@ +--- gcc/cp/parser.c ++++ gcc/cp/parser.c +@@ -11845,8 +11845,7 @@ + || cp_lexer_next_token_is (parser->lexer, CPP_ATSIGN) + || cp_lexer_next_token_is (parser->lexer, CPP_NAME) + || cp_lexer_next_token_is_keyword (parser->lexer, RID_ASM) +- || cp_lexer_next_token_is (parser->lexer, CPP_SEMICOLON) +- || cp_lexer_iasm_bol (parser->lexer)) ++ || cp_lexer_next_token_is (parser->lexer, CPP_SEMICOLON)) + { + if (flag_iasm_blocks) + cp_parser_iasm_top_statement (parser); +--- gcc/c-parser.c ++++ gcc/c-parser.c +@@ -4505,8 +4505,7 @@ + || c_parser_next_token_is (parser, CPP_ATSIGN) + || c_parser_next_token_is (parser, CPP_NAME) + || c_parser_next_token_is_keyword (parser, RID_ASM) +- || c_parser_next_token_is (parser, CPP_SEMICOLON) +- || c_parser_iasm_bol (parser)) ++ || c_parser_next_token_is (parser, CPP_SEMICOLON)) + { + if (flag_iasm_blocks) + c_parser_iasm_top_statement (parser); diff --git a/sys-devel/gcc-apple/files/gcc-apple-4.2.1-prefix-search-dirs.patch b/sys-devel/gcc-apple/files/gcc-apple-4.2.1-prefix-search-dirs.patch new file mode 100644 index 000000000000..2cd947b4e82f --- /dev/null +++ b/sys-devel/gcc-apple/files/gcc-apple-4.2.1-prefix-search-dirs.patch @@ -0,0 +1,27 @@ +In Prefix we are really self-providing, so don't look back! +Patch by Heiko Przybyl + +--- gcc/gcc.c ++++ gcc/gcc.c +@@ -1525,8 +1525,8 @@ static const char *gcc_libexec_prefix; + #endif + + static const char *const standard_exec_prefix = STANDARD_EXEC_PREFIX; +-static const char *const standard_exec_prefix_1 = "/usr/libexec/gcc/"; +-static const char *const standard_exec_prefix_2 = "/usr/lib/gcc/"; ++static const char *const standard_exec_prefix_1 = "@GENTOO_PORTAGE_EPREFIX@/usr/libexec/gcc/"; ++static const char *const standard_exec_prefix_2 = "@GENTOO_PORTAGE_EPREFIX@/usr/lib/gcc/"; + static const char *md_exec_prefix = MD_EXEC_PREFIX; + + static const char *md_startfile_prefix = MD_STARTFILE_PREFIX; +--- gcc/config/darwin.h ++++ gcc/config/darwin.h +@@ -1286,7 +1286,7 @@ void add_framework_path (char *); + } \ + } while (0) + +-#define SYSROOT_PRIORITY PREFIX_PRIORITY_FIRST ++#define SYSROOT_PRIORITY PREFIX_PRIORITY_LAST + /* APPLE LOCAL end isysroot 5083137 */ + + /* Every program on darwin links against libSystem which contains the pthread diff --git a/sys-devel/gcc-apple/files/gcc-apple-4.2.1-texinfo.patch b/sys-devel/gcc-apple/files/gcc-apple-4.2.1-texinfo.patch new file mode 100644 index 000000000000..f82fe60d2ee7 --- /dev/null +++ b/sys-devel/gcc-apple/files/gcc-apple-4.2.1-texinfo.patch @@ -0,0 +1,33 @@ +--- configure ++++ configure +@@ -3748,7 +3748,7 @@ + # For an installed makeinfo, we require it to be from texinfo 4.4 or + # higher, else we use the "missing" dummy. + if ${MAKEINFO} --version \ +- | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[4-9]|[5-9])' >/dev/null 2>&1; then ++ | egrep 'texinfo[^0-9]*([1-3][0-9]|4\.[4-9]|4\.[1-9][0-9]|[5-9])' >/dev/null 2>&1; then + : + else + MAKEINFO="$MISSING makeinfo" +--- gcc/configure.ac ++++ gcc/configure.ac +@@ -882,7 +882,7 @@ + # that we can use it. + gcc_AC_CHECK_PROG_VER(MAKEINFO, makeinfo, --version, + [GNU texinfo.* \([0-9][0-9.]*\)], +- [4.[4-9]*]) ++ [4.[4-9]*|4.[1-9][0-9]]) + if test $gcc_cv_prog_makeinfo_modern = no; then + MAKEINFO="$MISSING makeinfo" + AC_MSG_WARN([ +--- libgomp/configure.ac ++++ libgomp/configure.ac +@@ -135,7 +135,7 @@ + # that we can use it. + ACX_CHECK_PROG_VER([MAKEINFO], [makeinfo], [--version], + [GNU texinfo.* \([0-9][0-9.]*\)], +- [4.[4-9]*]) ++ [4.[4-9]*|4.[1-9][0-9]]) + AM_CONDITIONAL(BUILD_INFO, test $gcc_cv_prog_makeinfo_modern = "yes") + + diff --git a/sys-devel/gcc-apple/files/gcc-apple-4.2.1_p5566-x86_64-defines.patch b/sys-devel/gcc-apple/files/gcc-apple-4.2.1_p5566-x86_64-defines.patch new file mode 100644 index 000000000000..e0096290ac25 --- /dev/null +++ b/sys-devel/gcc-apple/files/gcc-apple-4.2.1_p5566-x86_64-defines.patch @@ -0,0 +1,25 @@ +gcc/config.gcc: + We need this alignment thing to get some defines that the code relies on +gcc/config/i386/darwin64.h: + Don't forget about crt1.o, makes it hard to link something together + +--- gcc_42-5566/gcc/config.gcc ++++ gcc_42-5566/gcc/config.gcc +@@ -1051,6 +1051,7 @@ + # Deleted with_arch + # APPLE LOCAL mainline + with_cpu=${with_cpu:-core2} ++ extra_options="${extra_options} i386/darwin.opt" + tmake_file="t-darwin ${cpu_type}/t-darwin64 t-slibgcc-darwin" + tm_file="${tm_file} ${cpu_type}/darwin64.h" + ;; +--- gcc_42-5566/gcc/config/i386/darwin64.h ++++ gcc_42-5566/gcc/config/i386/darwin64.h +@@ -30,6 +30,7 @@ + + #undef SUBTARGET_EXTRA_SPECS + #define SUBTARGET_EXTRA_SPECS \ ++ DARWIN_EXTRA_SPECS \ + { "darwin_arch", DARWIN_ARCH_SPEC }, \ + { "darwin_crt2", "" }, \ + { "darwin_subarch", DARWIN_SUBARCH_SPEC }, diff --git a/sys-devel/gcc-apple/files/libstdc++-16.patch b/sys-devel/gcc-apple/files/libstdc++-16.patch new file mode 100644 index 000000000000..81d075bface7 --- /dev/null +++ b/sys-devel/gcc-apple/files/libstdc++-16.patch @@ -0,0 +1,11 @@ +--- libstdc++-v3/include/bits/c++config ++++ libstdc++-v3/include/bits/c++config +@@ -76,7 +76,7 @@ + } + namespace std + { +- using namespace __gnu_debug_def __attribute__ ((strong)); ++ using namespace __gnu_debug_def; + } + #else + # define _GLIBCXX_STD std diff --git a/sys-devel/gcc-apple/metadata.xml b/sys-devel/gcc-apple/metadata.xml index 2dc2044ae29e..d60e1cd69bd1 100644 --- a/sys-devel/gcc-apple/metadata.xml +++ b/sys-devel/gcc-apple/metadata.xml @@ -1,7 +1,7 @@ <?xml version="1.0" encoding="UTF-8"?> <!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd"> <pkgmetadata> - <herd>apple</herd> + <herd>prefix</herd> <use> <flag name="multislot">Allow for SLOTs to include minor version (3.3.4 instead of just 3.3)</flag> |