|
|
|
@ -8,44 +8,21 @@ set -e
|
|
|
|
|
|
|
|
|
|
ROOTDIR=dist
|
|
|
|
|
BUNDLE="${ROOTDIR}/Litecoin-Qt.app"
|
|
|
|
|
CODESIGN=codesign
|
|
|
|
|
SIGNAPPLE=signapple
|
|
|
|
|
TEMPDIR=sign.temp
|
|
|
|
|
TEMPLIST=${TEMPDIR}/signatures.txt
|
|
|
|
|
OUT=signature-osx.tar.gz
|
|
|
|
|
OUTROOT=osx
|
|
|
|
|
OUTROOT=osx/dist
|
|
|
|
|
|
|
|
|
|
if [ -z "$1" ]; then
|
|
|
|
|
echo "usage: $0 <codesign args>"
|
|
|
|
|
echo "example: $0 -s MyIdentity"
|
|
|
|
|
echo "usage: $0 <signapple args>"
|
|
|
|
|
echo "example: $0 <path to key>"
|
|
|
|
|
exit 1
|
|
|
|
|
fi
|
|
|
|
|
|
|
|
|
|
rm -rf ${TEMPDIR} ${TEMPLIST}
|
|
|
|
|
rm -rf ${TEMPDIR}
|
|
|
|
|
mkdir -p ${TEMPDIR}
|
|
|
|
|
|
|
|
|
|
${CODESIGN} -f --options runtime --timestamp --deep --file-list ${TEMPLIST} "$@" "${BUNDLE}"
|
|
|
|
|
|
|
|
|
|
grep -v CodeResources < "${TEMPLIST}" | while read i; do
|
|
|
|
|
TARGETFILE="${BUNDLE}/$(echo "${i}" | sed "s|.*${BUNDLE}/||")"
|
|
|
|
|
SIZE=$(pagestuff "$i" -p | tail -2 | grep size | sed 's/[^0-9]*//g')
|
|
|
|
|
OFFSET=$(pagestuff "$i" -p | tail -2 | grep offset | sed 's/[^0-9]*//g')
|
|
|
|
|
SIGNFILE="${TEMPDIR}/${OUTROOT}/${TARGETFILE}.sign"
|
|
|
|
|
DIRNAME="$(dirname "${SIGNFILE}")"
|
|
|
|
|
mkdir -p "${DIRNAME}"
|
|
|
|
|
echo "Adding detached signature for: ${TARGETFILE}. Size: ${SIZE}. Offset: ${OFFSET}"
|
|
|
|
|
dd if="$i" of="${SIGNFILE}" bs=1 skip=${OFFSET} count=${SIZE} 2>/dev/null
|
|
|
|
|
done
|
|
|
|
|
|
|
|
|
|
grep CodeResources < "${TEMPLIST}" | while read i; do
|
|
|
|
|
TARGETFILE="${BUNDLE}/$(echo "${i}" | sed "s|.*${BUNDLE}/||")"
|
|
|
|
|
RESOURCE="${TEMPDIR}/${OUTROOT}/${TARGETFILE}"
|
|
|
|
|
DIRNAME="$(dirname "${RESOURCE}")"
|
|
|
|
|
mkdir -p "${DIRNAME}"
|
|
|
|
|
echo "Adding resource for: \"${TARGETFILE}\""
|
|
|
|
|
cp "${i}" "${RESOURCE}"
|
|
|
|
|
done
|
|
|
|
|
|
|
|
|
|
rm ${TEMPLIST}
|
|
|
|
|
${SIGNAPPLE} sign -f --detach "${TEMPDIR}/${OUTROOT}" "$@" "${BUNDLE}"
|
|
|
|
|
|
|
|
|
|
tar -C "${TEMPDIR}" -czf "${OUT}" .
|
|
|
|
|
rm -rf "${TEMPDIR}"
|
|
|
|
|