diff options
author | Bryan Drewery <bdrewery@FreeBSD.org> | 2013-09-20 12:54:54 +0000 |
---|---|---|
committer | Bryan Drewery <bdrewery@FreeBSD.org> | 2013-09-20 12:54:54 +0000 |
commit | c93dfc2e9f8b7b990c22c6baa6cdab361cd12e16 (patch) | |
tree | e61ab76efa292f985d8e20e449572329fa964c1c /lang | |
parent | b10d5a64b7ea8bb32e9735304272e7344926e3b2 (diff) | |
download | ports-c93dfc2e9f8b7b990c22c6baa6cdab361cd12e16.tar.gz ports-c93dfc2e9f8b7b990c22c6baa6cdab361cd12e16.zip |
SSP support has been added to ports with WITH_SSP for i386 and amd64
on FreeBSD 10, and amd64 on earlier versions.
SSP_UNSAFE is added to disable in a port if it fails to build, but
this should only be used in rare circumstances such as kernel modules.
Otherwise, the port may just be failing due to lack of respecting
LDFLAGS.
On FreeBSD 10, this uses an ldscript in /usr/lib/libc.so to pull in
libssp_nonshared.a to address issues linking on i386 [1].
On earlier FreeBSD versions the WITH_SSP knob will add -lssp_nonshared
to LDFLAGS on i386. This is not needed on amd64. However, several hundred
ports do not currently respect LDFLAGS, so this support is disabled currently
as it causes build failures if a dependency is looking for the stack_chk
symbols.
Many thanks to jlh@ for this as he had many years of patience in getting
all of the necessary pieces [1][2] in.
[1] http://svnweb.freebsd.org/base/head/lib/libc/libc.ldscript?revision=251668&view=markup
PR: ports/138228 [2]
Submitted by: jlh (bsd.ssp.mk based on)
Reviewed by: bapt
With hat: portmgr
exp-runs done: 37 over a month on 91i386,91amd64,10i386,10amd64
Notes
Notes:
svn path=/head/; revision=327697
Diffstat (limited to 'lang')
-rw-r--r-- | lang/gcc/Makefile | 1 | ||||
-rw-r--r-- | lang/gcc34/Makefile | 1 | ||||
-rw-r--r-- | lang/gcc42/Makefile | 1 | ||||
-rw-r--r-- | lang/gcc44/Makefile | 1 | ||||
-rw-r--r-- | lang/gcc46/Makefile | 1 | ||||
-rw-r--r-- | lang/gcc47/Makefile | 1 | ||||
-rw-r--r-- | lang/gcc48/Makefile | 1 | ||||
-rw-r--r-- | lang/gcc49/Makefile | 1 | ||||
-rw-r--r-- | lang/libobjc2/Makefile | 2 | ||||
-rw-r--r-- | lang/ocaml/Makefile | 1 |
10 files changed, 11 insertions, 0 deletions
diff --git a/lang/gcc/Makefile b/lang/gcc/Makefile index 7a704e9d2480..5c7fce579080 100644 --- a/lang/gcc/Makefile +++ b/lang/gcc/Makefile @@ -32,6 +32,7 @@ USES= bison gmake iconv perl5 USE_BINUTILS= yes USE_BZIP2= yes USE_PERL5= build +SSP_UNSAFE= yes PATCH_WRKSRC= ${SRCDIR} CONFIGURE_SCRIPT= ../${SRCDIR:S/${WRKDIR}\///}/configure diff --git a/lang/gcc34/Makefile b/lang/gcc34/Makefile index f8868d5a73b1..996b06f28197 100644 --- a/lang/gcc34/Makefile +++ b/lang/gcc34/Makefile @@ -21,6 +21,7 @@ LATEST_LINK= gcc${SUFFIX}${PKGNAMESUFFIX} USES= bison gmake iconv perl5 USE_BZIP2= yes USE_PERL= build +SSP_UNSAFE= yes PATCH_WRKSRC= ${SRCDIR} CONFIGURE_SCRIPT= ../${SRCDIR:C/${WRKDIR}//}/configure diff --git a/lang/gcc42/Makefile b/lang/gcc42/Makefile index ef933775fbae..7a5df5e49bd3 100644 --- a/lang/gcc42/Makefile +++ b/lang/gcc42/Makefile @@ -27,6 +27,7 @@ USES= bison gmake iconv perl5 USE_BZIP2= yes USE_CSTD= gnu89 USE_PERL5= build +SSP_UNSAFE= yes PATCH_WRKSRC= ${SRCDIR} CONFIGURE_SCRIPT= ../${SRCDIR:S/${WRKDIR}\///}/configure diff --git a/lang/gcc44/Makefile b/lang/gcc44/Makefile index ab8880749455..4d1cefafefb0 100644 --- a/lang/gcc44/Makefile +++ b/lang/gcc44/Makefile @@ -25,6 +25,7 @@ USE_BINUTILS= yes USES= bison gmake iconv perl5 USE_BZIP2= yes USE_PERL5= build +SSP_UNSAFE= yes PATCH_WRKSRC= ${SRCDIR} CONFIGURE_SCRIPT= ../${SRCDIR:S/${WRKDIR}\///}/configure diff --git a/lang/gcc46/Makefile b/lang/gcc46/Makefile index 44a6241f1a75..074f5fb6abca 100644 --- a/lang/gcc46/Makefile +++ b/lang/gcc46/Makefile @@ -34,6 +34,7 @@ USES= bison gmake iconv perl5 USE_BINUTILS= yes USE_BZIP2= yes USE_PERL5= build +SSP_UNSAFE= yes PATCH_WRKSRC= ${SRCDIR} CONFIGURE_SCRIPT= ../${SRCDIR:S/${WRKDIR}\///}/configure diff --git a/lang/gcc47/Makefile b/lang/gcc47/Makefile index 3726df56e8a1..ce0eb3bbd234 100644 --- a/lang/gcc47/Makefile +++ b/lang/gcc47/Makefile @@ -33,6 +33,7 @@ USES= bison gmake iconv perl5 USE_BINUTILS= yes USE_BZIP2= yes USE_PERL5= build +SSP_UNSAFE= yes PATCH_WRKSRC= ${SRCDIR} CONFIGURE_SCRIPT= ../${SRCDIR:S/${WRKDIR}\///}/configure diff --git a/lang/gcc48/Makefile b/lang/gcc48/Makefile index fc48334432b0..4d6049c10b89 100644 --- a/lang/gcc48/Makefile +++ b/lang/gcc48/Makefile @@ -33,6 +33,7 @@ USES= bison gmake iconv perl5 USE_BINUTILS= yes USE_BZIP2= yes USE_PERL5= build +SSP_UNSAFE= yes PATCH_WRKSRC= ${SRCDIR} CONFIGURE_SCRIPT= ../${SRCDIR:S/${WRKDIR}\///}/configure diff --git a/lang/gcc49/Makefile b/lang/gcc49/Makefile index 83d35b6e06a0..e3a210bf363f 100644 --- a/lang/gcc49/Makefile +++ b/lang/gcc49/Makefile @@ -33,6 +33,7 @@ USES= gmake iconv perl5 USE_BINUTILS= yes USE_BZIP2= yes USE_PERL5= build +SSP_UNSAFE= yes PATCH_WRKSRC= ${SRCDIR} CONFIGURE_SCRIPT= ../${SRCDIR:S/${WRKDIR}\///}/configure diff --git a/lang/libobjc2/Makefile b/lang/libobjc2/Makefile index bcad3448ea16..7325abd055e7 100644 --- a/lang/libobjc2/Makefile +++ b/lang/libobjc2/Makefile @@ -9,6 +9,8 @@ MASTER_SITES= http://download.gna.org/gnustep/ MAINTAINER= theraven@FreeBSD.org COMMENT= Replacement Objective-C runtime supporting modern Objective-C features +SSP_UNSAFE= yes + .include <bsd.port.options.mk> USES= cmake diff --git a/lang/ocaml/Makefile b/lang/ocaml/Makefile index 393dfe9b10d6..5354fd067f74 100644 --- a/lang/ocaml/Makefile +++ b/lang/ocaml/Makefile @@ -20,6 +20,7 @@ REINPLACE_ARGS= -i "" HAS_CONFIGURE= yes ALL_TARGET= world.opt STRIP= +SSP_UNSAFE= yes MAKE_JOBS_UNSAFE= yes CONFIGURE_ARGS= -verbose -prefix "${PREFIX}" -cc "${CC}" -as "${AS}" \ |