Add libpng
authoruser <balthazar@yandex.ru>
Sun, 26 Dec 2021 00:09:07 +0000 (03:09 +0300)
committeruser <balthazar@yandex.ru>
Sun, 26 Dec 2021 00:09:07 +0000 (03:09 +0300)
mingw64_deps/png/build.sh [new file with mode: 0755]
mingw64_deps/png/setup.sh [new file with mode: 0755]

diff --git a/mingw64_deps/png/build.sh b/mingw64_deps/png/build.sh
new file mode 100755 (executable)
index 0000000..8c115a1
--- /dev/null
@@ -0,0 +1,41 @@
+#!/bin/bash
+
+CROSS=$1
+ROOT=$(pwd)
+
+if [[ ! "${CROSS}" =~ ^(aarch64|x86_64) ]]; then
+echo "Platform ${CROSS} is not supported"
+echo "Expected either aarch64 or x86_64."
+exit 1
+fi
+
+# Make build directories
+cp -r ${ROOT}/zlib ${ROOT}/${CROSS}-w64-mingw32-build-zlib
+mkdir ${ROOT}/${CROSS}-w64-mingw32-build-libpng
+
+# Stage directory
+mkdir ${ROOT}/${CROSS}-w64-mingw32
+
+# Compile zlib
+cd ${ROOT}/${CROSS}-w64-mingw32-build-zlib
+perl -i -pe "s,(PREFIX =)\$,\$1 ${CROSS}-w64-mingw32-," win32/Makefile.gcc
+make -j 4 -f win32/Makefile.gcc
+
+# Install zlib to our cross-tools directory
+make install DESTDIR=${ROOT}/${CROSS}-w64-mingw32 INCLUDE_PATH=/include LIBRARY_PATH=/lib BINARY_PATH=/bin -f win32/Makefile.gcc
+
+# Remove build directory
+cd ${ROOT}
+rm -rf ${ROOT}/${CROSS}-w64-mingw32-build-zlib
+
+# Compile libpng
+cd ${ROOT}/${CROSS}-w64-mingw32-build-libpng
+export CFLAGS="-I${ROOT}/${CROSS}-w64-mingw32/include"
+export LDFLAGS="-I${ROOT}/${CROSS}-w64-mingw32/lib"
+${ROOT}/libpng/configure --prefix=${ROOT}/${CROSS}-w64-mingw32 --target=${CROSS}-w64-mingw32
+make -j 4
+make install
+
+# Remove build directory
+cd ${ROOT}
+rm -rf ${ROOT}/${CROSS}-w64-mingw32-build-libpng
diff --git a/mingw64_deps/png/setup.sh b/mingw64_deps/png/setup.sh
new file mode 100755 (executable)
index 0000000..49f0b2a
--- /dev/null
@@ -0,0 +1,4 @@
+#!/bin/sh
+
+git clone  https://github.com/madler/zlib
+git clone https://github.com/glennrp/libpng