Commit 1562ce17 authored by Andy Polyakov's avatar Andy Polyakov
Browse files

fipsld, incore: switch to new cross-compile support [from HEAD].

parent 68b2f55b
Loading
Loading
Loading
Loading
+17 −11
Original line number Diff line number Diff line
#!/bin/sh -e
#
# Copyright (c) 2005-2007 The OpenSSL Project.
# Copyright (c) 2005-2011 The OpenSSL Project.
#
# Depending on output file name, the script either embeds fingerprint
# into libcrypto.so or static application. "Static" refers to static
@@ -127,12 +127,15 @@ lib*|*.dll) # must be linking a shared lib...
		"${PREMAIN_C}" \
		${_WL_PREMAIN} "$@"

	if [ "x${FIPS_SIG}" != "x" ]; then
		# embed signature
		"${FIPS_SIG}" "${TARGET}"
		[ $? -ne 42 ] && exit $?
	fi

	# generate signature...
	if [ -z "${FIPS_SIG}" ]; then
	SIG=`"${PREMAIN_DSO}" "${TARGET}"`
	else
		SIG=`"${FIPS_SIG}" -dso "${TARGET}"`
	fi

	/bin/rm -f "${TARGET}"
	if [ -z "${SIG}" ]; then
	   echo "unable to collect signature"; exit 1
@@ -172,12 +175,15 @@ lib*|*.dll) # must be linking a shared lib...
		"${PREMAIN_C}" \
		${_WL_PREMAIN} "$@"

	if [ "x${FIPS_SIG}" != "x" ]; then
		# embed signature
		"${FIPS_SIG}" "${TARGET}"
		[ $? -ne 42 ] && exit $?
	fi

	# generate signature...
	if [ -z "${FIPS_SIG}" ]; then
	SIG=`"${TARGET}"`
	else
		SIG=`"${FIPS_SIG}" -exe "${TARGET}"`
	fi

	/bin/rm -f "${TARGET}"
	if [ -z "${SIG}" ]; then
	   echo "unable to collect signature"; exit 1
+2 −1
Original line number Diff line number Diff line
@@ -34,6 +34,7 @@
	@e_ident{magic,class,data,version,osabi,abiver,pad}=
		unpack("a4C*",$elf);

	$!=42;		# signal fipsld to revert to two-step link
	die "not ELF file" if ($e_ident{magic} ne chr(0177)."ELF");

	my $elf_bits   = $e_ident{class}*32;	# 32 or 64
@@ -377,7 +378,7 @@ $FIPS_text_endX = $exe->Lookup("FIPS_text_endX");
if (!$legacy_mode) {
    if (!$FIPS_text_startX || !$FIPS_text_endX) {
	print STDERR "@ARGV[$#ARGV] is not cross-compiler aware.\n";
	exit(1);
	exit(42);	# signal fipsld to revert to two-step link
    }

    $FINGERPRINT_ascii_value