svn commit: r218723 - in head: cddl/lib/libzpool lib/liblzma
lib/libmd lib/libz secure/lib/libcrypto
Dimitry Andric
dim at FreeBSD.org
Tue Feb 15 22:03:10 UTC 2011
Author: dim
Date: Tue Feb 15 22:03:09 2011
New Revision: 218723
URL: http://svn.freebsd.org/changeset/base/218723
Log:
Fix some leftover binaries and shared libraries in the system that still
have an executable stack, due to linking in hand-assembled .S or .s
files, that have no .GNU-stack sections:
RWX --- --- /lib/libcrypto.so.6
RWX --- --- /lib/libmd.so.5
RWX --- --- /lib/libz.so.6
RWX --- --- /lib/libzpool.so.2
RWX --- --- /usr/lib/liblzma.so.5
These were found using scanelf, from the sysutils/pax-utils port.
Reviewed by: kib
Modified:
head/cddl/lib/libzpool/Makefile
head/lib/liblzma/Makefile
head/lib/libmd/Makefile
head/lib/libz/Makefile
head/secure/lib/libcrypto/Makefile
Modified: head/cddl/lib/libzpool/Makefile
==============================================================================
--- head/cddl/lib/libzpool/Makefile Tue Feb 15 22:01:39 2011 (r218722)
+++ head/cddl/lib/libzpool/Makefile Tue Feb 15 22:03:09 2011 (r218723)
@@ -14,6 +14,7 @@
.if ${MACHINE_ARCH} == "i386" || ${MACHINE_ARCH} == "amd64" || ${MACHINE_ARCH} == "ia64" || ${MACHINE_ARCH} == "sparc64" || ${MACHINE_ARCH} == "powerpc64"
.PATH: ${.CURDIR}/../../../sys/cddl/contrib/opensolaris/common/atomic/${MACHINE_ARCH}
ATOMIC_SRCS= opensolaris_atomic.S
+ACFLAGS+= -Wa,--noexecstack
.else
.PATH: ${.CURDIR}/../../../sys/cddl/compat/opensolaris/kern
ATOMIC_SRCS= opensolaris_atomic.c
Modified: head/lib/liblzma/Makefile
==============================================================================
--- head/lib/liblzma/Makefile Tue Feb 15 22:01:39 2011 (r218722)
+++ head/lib/liblzma/Makefile Tue Feb 15 22:03:09 2011 (r218723)
@@ -78,6 +78,7 @@ SRCS+= check.c \
.if defined(MACHINE_ARCH) && ${MACHINE_ARCH} == "i386"
SRCS+= crc32_x86.S \
crc64_x86.S
+ACFLAGS+= -Wa,--noexecstack
.else
SRCS+= crc32_fast.c \
crc64_fast.c
Modified: head/lib/libmd/Makefile
==============================================================================
--- head/lib/libmd/Makefile Tue Feb 15 22:01:39 2011 (r218722)
+++ head/lib/libmd/Makefile Tue Feb 15 22:03:09 2011 (r218723)
@@ -43,11 +43,14 @@ CFLAGS+= -I${.CURDIR}
.if exists(${MACHINE_ARCH}/sha.S)
SRCS+= sha.S
-CFLAGS+= -DSHA1_ASM -DELF
+CFLAGS+= -DSHA1_ASM
.endif
.if exists(${MACHINE_ARCH}/rmd160.S)
SRCS+= rmd160.S
-CFLAGS+= -DRMD160_ASM -DELF
+CFLAGS+= -DRMD160_ASM
+.endif
+.if exists(${MACHINE_ARCH}/sha.S) || exists(${MACHINE_ARCH}/rmd160.S)
+ACFLAGS+= -DELF -Wa,--noexecstack
.endif
md2hl.c: mdXhl.c
Modified: head/lib/libz/Makefile
==============================================================================
--- head/lib/libz/Makefile Tue Feb 15 22:01:39 2011 (r218722)
+++ head/lib/libz/Makefile Tue Feb 15 22:03:09 2011 (r218723)
@@ -39,12 +39,14 @@ SRCS+= zutil.c
.PATH: ${.CURDIR}/contrib/asm686
SRCS+= match.S
CFLAGS+= -DASMV -DNO_UNDERLINE
+ACFLAGS+= -Wa,--noexecstack
.endif
.if ${MACHINE_ARCH} == "amd64"
.PATH: ${.CURDIR}/contrib/gcc_gvmat64
SRCS+= gvmat64.S
CFLAGS+= -DASMV -DNO_UNDERLINE
+ACFLAGS+= -Wa,--noexecstack
.endif
VERSION_DEF= ${.CURDIR}/Versions.def
Modified: head/secure/lib/libcrypto/Makefile
==============================================================================
--- head/secure/lib/libcrypto/Makefile Tue Feb 15 22:01:39 2011 (r218722)
+++ head/secure/lib/libcrypto/Makefile Tue Feb 15 22:03:09 2011 (r218723)
@@ -345,6 +345,10 @@ INCSDIR= ${INCLUDEDIR}/openssl
CSTD= gnu89
+.if !empty(SRCS:M*.s)
+AFLAGS+= --noexecstack
+.endif
+
CLEANFILES= buildinf.h opensslconf.h evp.h
buildinf.h: ${.CURDIR}/Makefile
More information about the svn-src-head
mailing list