###############################################################################
name = openssl
-version = 1.0.1h
-release = 2
+version = 1.0.2d
+release = 4
maintainer = Michael Tremer <michael.tremer@ipfire.org>
groups = System/Libraries
end
CFLAGS += -DPURIFY
- export RPM_OPT_FLAGS = %{CFLAGS}
+ export RPM_OPT_FLAGS = %{CFLAGS} %{LDFLAGS}
prepare_cmds
sed -e 's/SHLIB_VERSION_NUMBER "1.0.0"/SHLIB_VERSION_NUMBER "%{version}"/' \
find crypto/ -name Makefile -exec \
sed 's/^ASFLAGS=/&-Wa,--noexecstack /' -i {} \;
- # Modify the various perl scripts to reference perl in the right location.
- perl util/perlpath.pl /usr/bin
-
# Generate a table with the compile settings for my perusal.
touch Makefile
make TABLE PERL=/usr/bin/perl
end
if "%{DISTRO_ARCH}" == "armv5tel"
- ssl_arch = linux-generic32
+ ssl_arch = linux-armv4
end
if "%{DISTRO_ARCH}" == "armv7hl"
- ssl_arch = linux-generic32
+ ssl_arch = linux-armv4
end
build
mkdir -pv %{BUILDROOT}/usr/share
mv -v %{BUILDROOT}/etc/pki/tls/man %{BUILDROOT}/usr/share/
- mkdir -pv %{BUILDROOT}%{libdir}/openssl
- mv -v %{BUILDROOT}%{libdir}/engines %{BUILDROOT}%{libdir}/openssl
+ if [ -d "%{BUILDROOT}%{libdir}/engines" ]; then
+ mkdir -pv %{BUILDROOT}%{libdir}/openssl
+ mv -v %{BUILDROOT}%{libdir}/engines %{BUILDROOT}%{libdir}/openssl
+ fi
mkdir -pv %{BUILDROOT}/etc/pki/CA/private
chmod -v 700 -R %{BUILDROOT}/etc/pki/CA
# Rename man pages so that they don't conflict with other system man pages.
pushd %{BUILDROOT}%{mandir}
- for manpage in man*/*; do
- if [ -L ${manpage} ]; then
- TARGET=`ls -l ${manpage} | awk '{ print $NF }'`
- ln -snf ${TARGET}ssl ${manpage}ssl
- rm -f ${manpage}
- else
- mv ${manpage} ${manpage}ssl
- fi
+ for m in $(find . -type f | xargs grep -L '#include'); do
+ d="${m%/*}"
+ d="${d#./}"
+ m="${m##*/}"
+ [[ ${m} == openssl.1* ]] && continue
+ [[ -n "$(find -L "${d}" -type l)" ]] && exit 1
+ mv ${d}/{,ssl-}${m}
+
+ # fix up references to renamed man pages
+ sed -i '/^[.]SH "SEE ALSO"/,/^[.]/s:\([^(, ]*(1)\):ssl-\1:g' "${d}/ssl-${m}"
+ ln -s "ssl-${m}" "${d}/openssl-${m}"
+
+ # locate any symlinks that point to this man page ... we assume
+ # that any broken links are due to the above renaming
+ for s in $(find -L "${d}" -type l); do
+ s="${s##*/}"
+ rm -f "${d}/${s}"
+ ln -s "ssl-${m}" "${d}/ssl-${s}"
+ ln -s "ssl-${s}" "${d}/openssl-${s}"
+ done
done
+
+ [[ -n "$(find -L "${d}" -type l)" ]] && exit 1 # "broken manpage links found :("
popd
end
end