forked from jsonn/pkgsrc
-
Notifications
You must be signed in to change notification settings - Fork 62
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Add ALTERNATIVES files for lang/gcc4[789] - Include the .o files from gcc4[79] in the -libs packages. - Set LOCAL_INCLUDE_DIR to LOCALBASE. - Disable -fomit-frame-pointer, we like stack traces. - DATASET-953 disable full gcc47 dependency - Implement -fstrict-calling-conventions, from richlowe. - Cleanup DEPENDS when using -libs - Fix check-shlibs in -libs - Fix TritonDataCenter/pkgsrc#264 (avoid tls emulation) - Fix TritonDataCenter/pkgsrc#270 (disable fixincludes)
- Loading branch information
Jonathan Perkin
committed
Mar 30, 2016
1 parent
f301b03
commit d1c9624
Showing
25 changed files
with
400 additions
and
19 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
bin/c++ @PREFIX@/gcc47/bin/c++ | ||
bin/cc @PREFIX@/gcc47/bin/cc | ||
bin/cpp @PREFIX@/gcc47/bin/cpp | ||
bin/g++ @PREFIX@/gcc47/bin/g++ | ||
bin/gcc @PREFIX@/gcc47/bin/gcc | ||
bin/gcc-ar @PREFIX@/gcc47/bin/gcc-ar | ||
bin/gcc-nm @PREFIX@/gcc47/bin/gcc-nm | ||
bin/gcc-ranlib @PREFIX@/gcc47/bin/gcc-ranlib | ||
bin/gccgo @PREFIX@/gcc47/bin/gccgo | ||
bin/gcov @PREFIX@/gcc47/bin/gcov | ||
bin/gfortran @PREFIX@/gcc47/bin/gfortran | ||
bin/@MACHINE_GNU_PLATFORM@-c++ @PREFIX@/gcc47/bin/@MACHINE_GNU_PLATFORM@-c++ | ||
bin/@MACHINE_GNU_PLATFORM@-g++ @PREFIX@/gcc47/bin/@MACHINE_GNU_PLATFORM@-g++ | ||
bin/@MACHINE_GNU_PLATFORM@-gcc @PREFIX@/gcc47/bin/@MACHINE_GNU_PLATFORM@-gcc | ||
bin/@MACHINE_GNU_PLATFORM@-gcc-@GCC47_DIST_VERSION@ @PREFIX@/gcc47/bin/@MACHINE_GNU_PLATFORM@-gcc-@GCC47_DIST_VERSION@ | ||
bin/@MACHINE_GNU_PLATFORM@-gcc-ar @PREFIX@/gcc47/bin/@MACHINE_GNU_PLATFORM@-gcc-ar | ||
bin/@MACHINE_GNU_PLATFORM@-gcc-nm @PREFIX@/gcc47/bin/@MACHINE_GNU_PLATFORM@-gcc-nm | ||
bin/@MACHINE_GNU_PLATFORM@-gcc-ranlib @PREFIX@/gcc47/bin/@MACHINE_GNU_PLATFORM@-gcc-ranlib | ||
bin/@MACHINE_GNU_PLATFORM@-gccgo @PREFIX@/gcc47/bin/@MACHINE_GNU_PLATFORM@-gccgo | ||
bin/@MACHINE_GNU_PLATFORM@-gfortran @PREFIX@/gcc47/bin/@MACHINE_GNU_PLATFORM@-gfortran |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
$NetBSD$ | ||
|
||
Disable -fomit-frame-pointer. | ||
|
||
--- gcc/caller-save.c.orig 2011-11-08 17:36:45.000000000 +0000 | ||
+++ gcc/caller-save.c | ||
@@ -380,7 +380,7 @@ saved_hard_reg_compare_func (const void | ||
const struct saved_hard_reg *p1 = *(struct saved_hard_reg * const *) v1p; | ||
const struct saved_hard_reg *p2 = *(struct saved_hard_reg * const *) v2p; | ||
|
||
- if (flag_omit_frame_pointer) | ||
+ if (0) | ||
{ | ||
if (p1->call_freq - p2->call_freq != 0) | ||
return p1->call_freq - p2->call_freq; |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,19 @@ | ||
$NetBSD$ | ||
|
||
Implement -fstrict-calling-conventions, from: | ||
|
||
https://github.com/richlowe/gcc/commit/c245a538375d071928782a1564cd7e55d70bd4a0 | ||
|
||
--- gcc/common.opt.orig 2013-01-14 16:32:37.000000000 +0000 | ||
+++ gcc/common.opt | ||
@@ -1855,6 +1855,10 @@ fstrict-aliasing | ||
Common Report Var(flag_strict_aliasing) Optimization | ||
Assume strict aliasing rules apply | ||
|
||
+fstrict-calling-conventions | ||
+Common Report Var(flag_strict_calling_conventions) Init(1) | ||
+Use strict ABI calling conventions even for static functions | ||
+ | ||
fstrict-overflow | ||
Common Report Var(flag_strict_overflow) | ||
Treat signed overflow as undefined |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,50 @@ | ||
$NetBSD$ | ||
|
||
Disable -fomit-frame-pointer. | ||
Add support for -fstrict-calling-conventions. | ||
|
||
--- gcc/config/i386/i386.c.orig 2013-04-02 16:54:39.000000000 +0000 | ||
+++ gcc/config/i386/i386.c | ||
@@ -3547,7 +3547,7 @@ ix86_option_override_internal (bool main | ||
} | ||
|
||
/* Keep nonleaf frame pointers. */ | ||
- if (flag_omit_frame_pointer) | ||
+ if (0) | ||
target_flags &= ~MASK_OMIT_LEAF_FRAME_POINTER; | ||
else if (TARGET_OMIT_LEAF_FRAME_POINTER) | ||
flag_omit_frame_pointer = 1; | ||
@@ -3685,7 +3685,7 @@ ix86_option_override_internal (bool main | ||
around edges. */ | ||
if ((flag_unwind_tables || flag_asynchronous_unwind_tables | ||
|| flag_exceptions || flag_non_call_exceptions) | ||
- && flag_omit_frame_pointer | ||
+ && 0 | ||
&& !(target_flags & MASK_ACCUMULATE_OUTGOING_ARGS)) | ||
{ | ||
if (target_flags_explicit & MASK_ACCUMULATE_OUTGOING_ARGS) | ||
@@ -5171,6 +5171,7 @@ ix86_function_regparm (const_tree type, | ||
if (decl | ||
&& TREE_CODE (decl) == FUNCTION_DECL | ||
&& optimize | ||
+ && (TARGET_64BIT || !flag_strict_calling_conventions) | ||
&& !(profile_flag && !flag_fentry)) | ||
{ | ||
/* FIXME: remove this CONST_CAST when cgraph.[ch] is constified. */ | ||
@@ -5248,6 +5249,7 @@ ix86_function_sseregparm (const_tree typ | ||
/* For local functions, pass up to SSE_REGPARM_MAX SFmode | ||
(and DFmode for SSE2) arguments in SSE registers. */ | ||
if (decl && TARGET_SSE_MATH && optimize | ||
+ && (TARGET_64BIT || !flag_strict_calling_conventions) | ||
&& !(profile_flag && !flag_fentry)) | ||
{ | ||
/* FIXME: remove this CONST_CAST when cgraph.[ch] is constified. */ | ||
@@ -9973,7 +9975,7 @@ ix86_finalize_stack_realign_flags (void) | ||
&& !crtl->need_drap | ||
&& frame_pointer_needed | ||
&& current_function_is_leaf | ||
- && flag_omit_frame_pointer | ||
+ && 0 | ||
&& current_function_sp_is_unchanging | ||
&& !ix86_current_function_calls_tls_descriptor | ||
&& !crtl->accesses_prior_frames |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,15 @@ | ||
$NetBSD$ | ||
|
||
Disable -fomit-frame-pointer. | ||
|
||
--- gcc/dojump.c.orig 2012-02-09 14:46:02.000000000 +0000 | ||
+++ gcc/dojump.c | ||
@@ -81,7 +81,7 @@ void | ||
clear_pending_stack_adjust (void) | ||
{ | ||
if (optimize > 0 | ||
- && (! flag_omit_frame_pointer || cfun->calls_alloca) | ||
+ && (! 0 || cfun->calls_alloca) | ||
&& EXIT_IGNORE_STACK) | ||
discard_pending_stack_adjust (); | ||
} |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,24 @@ | ||
$NetBSD$ | ||
|
||
Disable -fomit-frame-pointer. | ||
|
||
--- gcc/ira.c.orig 2012-02-21 23:27:59.000000000 +0000 | ||
+++ gcc/ira.c | ||
@@ -1620,7 +1620,7 @@ ira_init (void) | ||
{ | ||
free_register_move_costs (); | ||
setup_reg_mode_hard_regset (); | ||
- setup_alloc_regs (flag_omit_frame_pointer != 0); | ||
+ setup_alloc_regs (0 != 0); | ||
setup_class_subset_and_memory_move_costs (); | ||
setup_reg_class_nregs (); | ||
setup_prohibited_class_mode_regs (); | ||
@@ -1785,7 +1785,7 @@ ira_setup_eliminable_regset (void) | ||
case. At some point, we should improve this by emitting the | ||
sp-adjusting insns for this case. */ | ||
int need_fp | ||
- = (! flag_omit_frame_pointer | ||
+ = (! 0 | ||
|| (cfun->calls_alloca && EXIT_IGNORE_STACK) | ||
/* We need the frame pointer to catch stack overflow exceptions | ||
if the stack pointer is moving. */ |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
bin/c++ @PREFIX@/gcc48/bin/c++ | ||
bin/cc @PREFIX@/gcc48/bin/cc | ||
bin/cpp @PREFIX@/gcc48/bin/cpp | ||
bin/g++ @PREFIX@/gcc48/bin/g++ | ||
bin/gcc @PREFIX@/gcc48/bin/gcc | ||
bin/gcc-ar @PREFIX@/gcc48/bin/gcc-ar | ||
bin/gcc-nm @PREFIX@/gcc48/bin/gcc-nm | ||
bin/gcc-ranlib @PREFIX@/gcc48/bin/gcc-ranlib | ||
bin/gccgo @PREFIX@/gcc48/bin/gccgo | ||
bin/gcov @PREFIX@/gcc48/bin/gcov | ||
bin/gfortran @PREFIX@/gcc48/bin/gfortran | ||
bin/@MACHINE_GNU_PLATFORM@-c++ @PREFIX@/gcc48/bin/@MACHINE_GNU_PLATFORM@-c++ | ||
bin/@MACHINE_GNU_PLATFORM@-g++ @PREFIX@/gcc48/bin/@MACHINE_GNU_PLATFORM@-g++ | ||
bin/@MACHINE_GNU_PLATFORM@-gcc @PREFIX@/gcc48/bin/@MACHINE_GNU_PLATFORM@-gcc | ||
bin/@MACHINE_GNU_PLATFORM@-gcc-@GCC48_DIST_VERSION@ @PREFIX@/gcc48/bin/@MACHINE_GNU_PLATFORM@-gcc-@GCC48_DIST_VERSION@ | ||
bin/@MACHINE_GNU_PLATFORM@-gcc-ar @PREFIX@/gcc48/bin/@MACHINE_GNU_PLATFORM@-gcc-ar | ||
bin/@MACHINE_GNU_PLATFORM@-gcc-nm @PREFIX@/gcc48/bin/@MACHINE_GNU_PLATFORM@-gcc-nm | ||
bin/@MACHINE_GNU_PLATFORM@-gcc-ranlib @PREFIX@/gcc48/bin/@MACHINE_GNU_PLATFORM@-gcc-ranlib | ||
bin/@MACHINE_GNU_PLATFORM@-gccgo @PREFIX@/gcc48/bin/@MACHINE_GNU_PLATFORM@-gccgo | ||
bin/@MACHINE_GNU_PLATFORM@-gfortran @PREFIX@/gcc48/bin/@MACHINE_GNU_PLATFORM@-gfortran |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,20 @@ | ||
bin/c++ @PREFIX@/gcc49/bin/c++ | ||
bin/cc @PREFIX@/gcc49/bin/cc | ||
bin/cpp @PREFIX@/gcc49/bin/cpp | ||
bin/g++ @PREFIX@/gcc49/bin/g++ | ||
bin/gcc @PREFIX@/gcc49/bin/gcc | ||
bin/gcc-ar @PREFIX@/gcc49/bin/gcc-ar | ||
bin/gcc-nm @PREFIX@/gcc49/bin/gcc-nm | ||
bin/gcc-ranlib @PREFIX@/gcc49/bin/gcc-ranlib | ||
bin/gccgo @PREFIX@/gcc49/bin/gccgo | ||
bin/gcov @PREFIX@/gcc49/bin/gcov | ||
bin/gfortran @PREFIX@/gcc49/bin/gfortran | ||
bin/@MACHINE_GNU_PLATFORM@-c++ @PREFIX@/gcc49/bin/@MACHINE_GNU_PLATFORM@-c++ | ||
bin/@MACHINE_GNU_PLATFORM@-g++ @PREFIX@/gcc49/bin/@MACHINE_GNU_PLATFORM@-g++ | ||
bin/@MACHINE_GNU_PLATFORM@-gcc @PREFIX@/gcc49/bin/@MACHINE_GNU_PLATFORM@-gcc | ||
bin/@MACHINE_GNU_PLATFORM@-gcc-@GCC49_DIST_VERSION@ @PREFIX@/gcc49/bin/@MACHINE_GNU_PLATFORM@-gcc-@GCC49_DIST_VERSION@ | ||
bin/@MACHINE_GNU_PLATFORM@-gcc-ar @PREFIX@/gcc49/bin/@MACHINE_GNU_PLATFORM@-gcc-ar | ||
bin/@MACHINE_GNU_PLATFORM@-gcc-nm @PREFIX@/gcc49/bin/@MACHINE_GNU_PLATFORM@-gcc-nm | ||
bin/@MACHINE_GNU_PLATFORM@-gcc-ranlib @PREFIX@/gcc49/bin/@MACHINE_GNU_PLATFORM@-gcc-ranlib | ||
bin/@MACHINE_GNU_PLATFORM@-gccgo @PREFIX@/gcc49/bin/@MACHINE_GNU_PLATFORM@-gccgo | ||
bin/@MACHINE_GNU_PLATFORM@-gfortran @PREFIX@/gcc49/bin/@MACHINE_GNU_PLATFORM@-gfortran |
Oops, something went wrong.