build-mingw-w64-tools: Only build one single widl binary

This commit is contained in:
Martin Storsjö committed 2020-09-16 00:03:57 +03:00
1 parent 5c83b904bd
commit d067b4909b
1 file changed
+17 -22
+17 -22
View File
@@ -60,7 +60,7 @@ fi
if [ -n "$HOST" ]; then if [ -n "$HOST" ]; then
CONFIGFLAGS="$CONFIGFLAGS --host=$HOST" CONFIGFLAGS="$CONFIGFLAGS --host=$HOST"
CROSS_NAME=$HOST- CROSS_NAME=-$HOST
EXEEXT=.exe EXEEXT=.exe
else else
case $(uname) in case $(uname) in
@@ -72,31 +72,26 @@ else
esac esac
fi fi
if [ -n "$SKIP_INCLUDE_TRIPLET_PREFIX" ]; then if [ -n "$SKIP_INCLUDE_TRIPLET_PREFIX" ]; then
CONFIGFLAGS="$CONFIGFLAGS --with-widl-includedir=$PREFIX/include" INCLUDEDIR="$PREFIX/include"
# If using the same includedir for all archs, it's enough to else
# build one single binary. INCLUDEDIR="$PREFIX/generic-w64-mingw32/include"
ALL_ARCHS="$ARCHS"
ARCHS=$(echo $ARCHS | awk '{print $1}')
fi fi
ANY_ARCH=$(echo $ARCHS | awk '{print $1}')
cd mingw-w64-tools/widl cd mingw-w64-tools/widl
for arch in $ARCHS; do [ -z "$CLEAN" ] || rm -rf build${CROSS_NAME}
[ -z "$CLEAN" ] || rm -rf build-$CROSS_NAME$arch mkdir -p build${CROSS_NAME}
mkdir -p build-$CROSS_NAME$arch cd build${CROSS_NAME}
cd build-$CROSS_NAME$arch ../configure --prefix="$PREFIX" --target=$ANY_ARCH-w64-mingw32 --with-widl-includedir="$INCLUDEDIR" $CONFIGFLAGS
../configure --prefix="$PREFIX" --target=$arch-w64-mingw32 $CONFIGFLAGS $MAKE -j$CORES
$MAKE -j$CORES $MAKE install-strip
$MAKE install-strip cd ..
cd ..
done
cd "$PREFIX/bin" cd "$PREFIX/bin"
if [ -n "$SKIP_INCLUDE_TRIPLET_PREFIX" ]; then for arch in $ARCHS; do
for arch in $ALL_ARCHS; do if [ "$arch" != "$ANY_ARCH" ]; then
if [ "$arch" != "$ARCHS" ]; then ln -sf $ANY_ARCH-w64-mingw32-widl$EXEEXT $arch-w64-mingw32-widl$EXEEXT
ln -sf $ARCHS-w64-mingw32-widl$EXEEXT $arch-w64-mingw32-widl$EXEEXT fi
fi done
done
fi
if [ -n "$EXEEXT" ]; then if [ -n "$EXEEXT" ]; then
if [ -z "$HOST" ] && [ -f clang$EXEEXT ]; then if [ -z "$HOST" ] && [ -f clang$EXEEXT ]; then
HOST=$(./clang -dumpmachine | sed 's/-.*//')-w64-mingw32 HOST=$(./clang -dumpmachine | sed 's/-.*//')-w64-mingw32