- Remove explicit build options (waffle has autodetection). - Correct the destination directories. - Bump mingw64-crt requirement 3.1.0-3 (fixes the strerror_s issue). - Build twice - once for cross-builds and second time for win32 usage.
TODO: - Get CPack to amend the install prefix - fix the "build twice" issue. - Strip some/all of the binaries ? - Current package works of a local git repo. Rename to -git or convert to a release one ? Signed-off-by: Emil Velikov <emil.l.veli...@gmail.com> --- pkg/archlinux/mingw-w64-waffle/PKGBUILD | 80 +++++++++++++++++++++++++++++++++ 1 file changed, 80 insertions(+) create mode 100644 pkg/archlinux/mingw-w64-waffle/PKGBUILD diff --git a/pkg/archlinux/mingw-w64-waffle/PKGBUILD b/pkg/archlinux/mingw-w64-waffle/PKGBUILD new file mode 100644 index 0000000..a2ebde5 --- /dev/null +++ b/pkg/archlinux/mingw-w64-waffle/PKGBUILD @@ -0,0 +1,80 @@ +# Maintainer: Chad Versace <chad.vers...@linux.intel.com> + +pkgname='mingw-w64-waffle' +pkgver='1.3.0' +pkgrel=1 +pkgdesc='a library for choosing window system and OpenGL API at runtime (mingw-w64)' +arch=('any') +url='http://waffle-gl.github.io' +license=('BSD') + +depends=( + 'mingw-w64-crt>=3.1.0-3' + ) +makedepends=( + 'mingw-w64-cmake' + + # For building the docs. +# XXX: Add as soon as we enable docs/manpages +# 'libxslt' +# 'docbook-xsl' + + ) + +options=('!strip' '!buildflags' 'staticlibs') +_architectures="i686-w64-mingw32 x86_64-w64-mingw32" + +srcroot=${HOME}/development/waffle +build() { + unset LDFLAGS + cd "${srcroot}" + msg "Building mingw-w64-waffle for cross-building" + for _arch in ${_architectures}; do + mkdir -p build-${_arch} && pushd build-${_arch} + ${_arch}-cmake .. \ + -DCMAKE_INSTALL_PREFIX=/usr/${_arch} \ + -DCMAKE_INSTALL_LIBDIR=/usr/${_arch}/lib \ + -DCMAKE_BUILD_TYPE=Release \ + \ + -Dwaffle_build_tests=0 \ + -Dwaffle_build_manpages=0 \ + -Dwaffle_build_htmldocs=0 \ + -Dwaffle_build_examples=1 + make + popd + done + + # There should be a better way to do this + msg "Building mingw-w64-waffle for native builds" + for _arch in ${_architectures}; do + mkdir -p "build-${_arch}-win" && pushd "build-${_arch}-win" + ${_arch}-cmake .. \ + -DCMAKE_INSTALL_PREFIX="" \ + -DCMAKE_INSTALL_LIBDIR="lib" \ + -DCMAKE_BUILD_TYPE=Release \ + \ + -Dwaffle_build_tests=0 \ + -Dwaffle_build_manpages=0 \ + -Dwaffle_build_htmldocs=0 \ + -Dwaffle_build_examples=1 + make + popd + done +} + +package() { + for _arch in ${_architectures}; do + cd "${srcroot}/build-${_arch}" + make DESTDIR="${pkgdir}" install +# ${_arch}-strip --strip-unneeded "$pkgdir"/usr/${_arch}/bin/*.dll +# ${_arch}-strip -g "$pkgdir"/usr/${_arch}/lib/*.a + done + + for _arch in ${_architectures}; do + cd "${srcroot}/build-${_arch}-win" + # Create Windows zip archives + make package + done +} + +# vim:set ts=2 sw=2 et: -- 2.0.2 _______________________________________________ waffle mailing list waffle@lists.freedesktop.org http://lists.freedesktop.org/mailman/listinfo/waffle