638 # We have previously set HAS_GNU_HASH if this is the case |
638 # We have previously set HAS_GNU_HASH if this is the case |
639 if test -n "$HAS_GNU_HASH"; then |
639 if test -n "$HAS_GNU_HASH"; then |
640 LDFLAGS_JDK="${LDFLAGS_JDK} -Xlinker --hash-style=both " |
640 LDFLAGS_JDK="${LDFLAGS_JDK} -Xlinker --hash-style=both " |
641 fi |
641 fi |
642 if test "x$OPENJDK_TARGET_OS" = xlinux; then |
642 if test "x$OPENJDK_TARGET_OS" = xlinux; then |
643 # And since we now know that the linker is gnu, then add -z defs, to forbid |
643 # And since we now know that the linker is gnu, then add: |
644 # undefined symbols in object files. |
644 # -z defs, to forbid undefined symbols in object files |
645 LDFLAGS_JDK="${LDFLAGS_JDK} -Xlinker -z -Xlinker defs" |
645 # -z noexecstack, to mark stack regions as non-executable |
|
646 LDFLAGS_JDK="${LDFLAGS_JDK} -Xlinker -z -Xlinker defs -Xlinker -z -Xlinker noexecstack" |
646 if test "x$DEBUG_LEVEL" = "xrelease"; then |
647 if test "x$DEBUG_LEVEL" = "xrelease"; then |
647 # When building release libraries, tell the linker optimize them. |
648 # When building release libraries, tell the linker optimize them. |
648 # Should this be supplied to the OSS linker as well? |
649 # Should this be supplied to the OSS linker as well? |
649 LDFLAGS_JDK="${LDFLAGS_JDK} -Xlinker -O1" |
650 LDFLAGS_JDK="${LDFLAGS_JDK} -Xlinker -O1" |
650 fi |
651 fi |