#!/bin/bash set -e -u WIMLIB_ARCH=i686 if [ $# -ge 1 ]; then WIMLIB_ARCH=$1 fi if [ $# -ge 2 ]; then CONF_EXTRA_ARGS="$2" else CONF_EXTRA_ARGS= fi if [[ $WIMLIB_ARCH = i686 ]] ; then DESTDIR=/mnt/tmp/wimlib elif [[ $WIMLIB_ARCH = x86_64 ]]; then DESTDIR=/mnt/tmp/x64/wimlib else echo "Unknown architecture $1" 1>&2 exit 2 fi VERSION=$(grep 'This is wimlib version' README | grep -o '[0-9]\+\.[0-9]\+\.[0-9]') ZIPFILE=wimlib-${VERSION}-windows-${WIMLIB_ARCH}-bin.zip if ! grep -q "./configure --host=${WIMLIB_ARCH}-w64-mingw32" config.log; then ./configure --host=${WIMLIB_ARCH}-w64-mingw32 $CONF_EXTRA_ARGS make clean fi make -j2 rm -f $DESTDIR/{libwim-*.dll,doc/*,README*,NEWS*,wim*.bat,wim*.cmd} cp .libs/imagex.exe $DESTDIR/wimlib-imagex.exe cp .libs/libwim-*.dll $DESTDIR cp README* NEWS $DESTDIR function genman() { local name=$1 local dest=$DESTDIR/doc/${name}.pdf echo "Generating $dest" MANPATH="./doc" man -t $name | ps2pdf - $dest } for fil in ./doc/man1/wimlib-imagex-*.1; do base=`basename $fil` base=${base%%.1} cmd=$(echo $base | sed s/wimlib-imagex-//) if [ $cmd == mount -o $cmd == mountrw -o $cmd == unmount ]; then continue fi genman $base sed 's/$/\r/g' > $DESTDIR/wim${cmd}.cmd <<- EOF @echo off %~dp0\\wimlib-imagex $cmd %* EOF done genman wimlib-imagex for fil in $DESTDIR/{README*,NEWS}; do sed < $fil > ${fil}.txt -e 's/$/\r/g' rm $fil done ${WIMLIB_ARCH}-w64-mingw32-strip $DESTDIR/*.{dll,exe} rm -f $ZIPFILE ( dir=$PWD cd $DESTDIR zip -r $dir/$ZIPFILE . )