diff --git a/ffmpeg-libfdk_aac-git/git/PKGBUILD b/ffmpeg/libfdk_aac-git/PKGBUILD similarity index 100% rename from ffmpeg-libfdk_aac-git/git/PKGBUILD rename to ffmpeg/libfdk_aac-git/PKGBUILD diff --git a/ffmpeg/mingw-w64/PKGBUILD b/ffmpeg/mingw-w64/PKGBUILD new file mode 100644 index 00000000..3c3e3e41 --- /dev/null +++ b/ffmpeg/mingw-w64/PKGBUILD @@ -0,0 +1,88 @@ +pkgname=mingw-w64-ffmpeg +pkgver=2.8.4 +pkgrel=1 +epoch=1 +pkgdesc="Complete solution to record, convert and stream audio and video (mingw-w64)" +arch=('any') +url="http://ffmpeg.org/" +license=('GPL3') +depends=( +'mingw-w64-crt' 'mingw-w64-bzip2' 'mingw-w64-fontconfig' 'mingw-w64-fribidi' 'mingw-w64-gnutls' +'mingw-w64-gsm' 'mingw-w64-lame' 'mingw-w64-libass' 'mingw-w64-dcadec' 'mingw-w64-libbluray' 'mingw-w64-libmodplug' +'mingw-w64-libsoxr' 'mingw-w64-libtheora' 'mingw-w64-vid.stab' 'mingw-w64-libwebp' 'mingw-w64-libvorbis' 'mingw-w64-libvpx' +'mingw-w64-opencore-amr' 'mingw-w64-openjpeg' 'mingw-w64-opus' 'mingw-w64-libssh' 'mingw-w64-schroedinger' +'mingw-w64-sdl' 'mingw-w64-speex' 'mingw-w64-x264' 'mingw-w64-xvidcore' 'mingw-w64-zlib' 'mingw-w64-x265' +) +options=(!strip !buildflags staticlibs) +makedepends=('mingw-w64-gcc' 'mingw-w64-pkg-config' 'yasm') +source=(http://ffmpeg.org/releases/ffmpeg-${pkgver}.tar.bz2{,.asc}) +validpgpkeys=('FCF986EA15E6E293A5644F10B4322F04D67658D8') +sha256sums=('83cc8136a7845546062a43cda9ae3cf0a02f43ef5e434d2f997f055231a75f8e' + 'SKIP') +_architectures="i686-w64-mingw32 x86_64-w64-mingw32" + +build() { + for _arch in ${_architectures}; do + mkdir -p "${srcdir}"/build-${_arch} && cd "${srcdir}"/build-${_arch} + + "${srcdir}"/ffmpeg-${pkgver}/configure \ + --prefix="/usr/${_arch}" \ + --enable-cross-compile \ + --cross-prefix="${_arch}-" \ + --target-os=mingw32 \ + --arch=${_arch%%-*} \ + --disable-debug \ + --enable-static \ + --disable-stripping \ + --enable-avisynth \ + --enable-avresample \ + --enable-fontconfig \ + --enable-gnutls \ + --enable-gpl \ + --enable-libass \ + --enable-libbluray \ + --enable-libdcadec \ + --enable-libfreetype \ + --enable-libfribidi \ + --enable-libgsm \ + --enable-libmodplug \ + --enable-libmp3lame \ + --enable-libopencore_amrnb \ + --enable-libopencore_amrwb \ + --enable-libopenjpeg \ + --enable-libopus \ + --enable-libschroedinger \ + --enable-libsoxr \ + --enable-libspeex \ + --enable-libssh \ + --enable-libtheora \ + --enable-libvidstab \ + --enable-libvorbis \ + --enable-libvpx \ + --enable-libwebp \ + --enable-libx264 \ + --enable-libx265 \ + --enable-libxvid \ + --enable-zlib \ + --enable-shared \ + --enable-version3 \ + --disable-doc + + make + done +} + +package() { + for _arch in ${_architectures}; do + cd "${srcdir}"/build-${_arch} + make DESTDIR="$pkgdir" install + + ${_arch}-strip --strip-all "${pkgdir}"/usr/${_arch}/bin/*.exe + ${_arch}-strip --strip-unneeded "${pkgdir}"/usr/${_arch}/bin/*.dll + ${_arch}-strip -g "${pkgdir}"/usr/${_arch}/lib/*.a + + mv "${pkgdir}"/usr/${_arch}/bin/*.lib "${pkgdir}"/usr/${_arch}/lib/ + done +} + +# vim:set ts=2 sw=2 et: diff --git a/filezilla/mingw-w64-svn/PKGBUILD b/filezilla/mingw-w64-svn/PKGBUILD new file mode 100644 index 00000000..82de4a5f --- /dev/null +++ b/filezilla/mingw-w64-svn/PKGBUILD @@ -0,0 +1,50 @@ +_name=filezilla +pkgname=mingw-w64-filezilla-svn +pkgver=r7228 +pkgrel=1 +pkgdesc="Fast and reliable FTP, FTPS and SFTP client (mingw-w64, svn version)" +arch=('any') +url="http://filezilla-project.org/" +license=('GPL') +depends=('mingw-w64-crt' 'mingw-w64-hicolor-icon-theme' 'mingw-w64-libpng' 'mingw-w64-dbus' 'mingw-w64-libidn' 'mingw-w64-sqlite' 'mingw-w64-gnutls' 'mingw-w64-libfilezilla-svn') +makedepends=('mingw-w64-gcc' 'mingw-w64-configure' 'mingw-w64-wxmsw' 'wxgtk' 'subversion') +install= +source=("${_name}::svn+https://svn.filezilla-project.org/svn/FileZilla3/trunk") +md5sums=('SKIP') + +_architectures="i686-w64-mingw32 x86_64-w64-mingw32" + +pkgver() { + cd "${_name}" + local ver="$(svnversion)" + printf "r%s" "${ver//[[:alpha:]]}" +} + +prepare() { + cd "${_name}" + autoreconf -i +} + +build() { + for _arch in ${_architectures}; do + mkdir -p "${srcdir}/${_name}/build-${_arch}" && cd "${srcdir}/${_name}/build-${_arch}" + export PATH="/usr/${_arch}/bin:${PATH}" + ${_arch}-configure \ + --disable-manualupdatecheck \ + --disable-autoupdatecheck \ + --with-pugixml=builtin + make + done +} + +package() { + for _arch in ${_architectures}; do + cd "${srcdir}/${_name}/build-${_arch}" + export PATH="/usr/${_arch}/bin:${PATH}" + make DESTDIR="${pkgdir}" install + ${_arch}-strip --strip-all "${pkgdir}"/usr/${_arch}/bin/*.exe + #${_arch}-strip --strip-unneeded "${pkgdir}"/usr/${_arch}/bin/*.dll + #${_arch}-strip -g "${pkgdir}/usr/${_arch}/lib/"*.a + rm -r "${pkgdir}/usr/${_arch}/share/"{icons,man,appdata,applications,pixmaps} + done +} diff --git a/libfilezilla/mingw-w64-svn/PKGBUILD b/libfilezilla/mingw-w64-svn/PKGBUILD new file mode 100644 index 00000000..93e0cfda --- /dev/null +++ b/libfilezilla/mingw-w64-svn/PKGBUILD @@ -0,0 +1,48 @@ +_name=libfilezilla +pkgname=mingw-w64-libfilezilla-svn +pkgver=r7227 +pkgrel=1 +pkgdesc="Library used by FileZilla (mingw-w64, svn version)" +arch=('any') +url="http://filezilla-project.org/" +license=('GPL') +depends=('mingw-w64-crt') +makedepends=('mingw-w64-gcc' 'mingw-w64-configure' 'subversion') +options=(staticlibs !strip !buildflags) +install= +source=("${_name}::svn+https://svn.filezilla-project.org/svn/libfilezilla/trunk") +md5sums=('SKIP') + +_architectures="i686-w64-mingw32 x86_64-w64-mingw32" + +pkgver() { + cd "${_name}" + local ver="$(svnversion)" + printf "r%s" "${ver//[[:alpha:]]}" +} + +prepare() { + cd "${_name}" + autoreconf -i +} + +build() { + for _arch in ${_architectures}; do + mkdir -p "${srcdir}/${_name}/build-${_arch}" && cd "${srcdir}/${_name}/build-${_arch}" + ${_arch}-configure \ + --disable-manualupdatecheck \ + --disable-autoupdatecheck \ + --with-pugixml=builtin + make + done +} + +package() { + for _arch in ${_architectures}; do + cd "${srcdir}/${_name}/build-${_arch}" + export PATH="/usr/${_arch}/bin:${PATH}" + make DESTDIR="${pkgdir}" install + ${_arch}-strip -g "${pkgdir}/usr/${_arch}/lib/"*.a + ${_arch}-strip --strip-unneeded "$pkgdir"/usr/${_arch}/bin/*.dll + done +} diff --git a/pkgbuilds.pro b/pkgbuilds.pro index 904b2271..55a7e516 100644 --- a/pkgbuilds.pro +++ b/pkgbuilds.pro @@ -52,7 +52,6 @@ OTHER_FILES += \ brother-mfc-j4410dw/default/cupswrapper-license.txt \ brother-mfc-j4410dw/default/lpr-license.txt \ python-pyusb/default/PKGBUILD \ - ffmpeg-libfdk_aac-git/git/PKGBUILD \ bento4/default/PKGBUILD \ ubuntu-latex-fonts/git/PKGBUILD \ ubuntu-latex-fonts/git/ubuntu-latex-fonts.install \ @@ -77,4 +76,12 @@ OTHER_FILES += \ libssh/mingw-w64/fix_check_include_files.patch \ libssh/mingw-w64/mingw-as-unix.patch \ libssh/mingw-w64/mingw-DATADIR-conflict.patch \ - libssh/mingw-w64/mingw-pkgconfig.patch + libssh/mingw-w64/mingw-pkgconfig.patch \ + filezilla/mingw-w64-svn/PKGBUILD \ + libfilezilla/mingw-w64-svn/PKGBUILD \ + ffmpeg/libfdk_aac-git/PKGBUILD \ + ffmpeg/mingw-w64/PKGBUILD \ + x264/mingw-w64/PKGBUILD \ + x265/mingw-w64/PKGBUILD \ + x265/mingw-w64/mingw.patch \ + wxwidgets/mingw-w64/PKGBUILD diff --git a/wxwidgets/mingw-w64/PKGBUILD b/wxwidgets/mingw-w64/PKGBUILD new file mode 100644 index 00000000..deba2a1b --- /dev/null +++ b/wxwidgets/mingw-w64/PKGBUILD @@ -0,0 +1,93 @@ +pkgname=mingw-w64-wxmsw +epoch=1 +pkgver=3.0.2 +pkgrel=1.1 +pkgdesc="Win32 implementation of wxWidgets API for GUI (mingw-w64)" +arch=('i686' 'x86_64') # contains binaries executed on the host +url="http://wxwidgets.org" +license=("custom:wxWindows") +depends=(mingw-w64-crt mingw-w64-libpng mingw-w64-libjpeg-turbo mingw-w64-libtiff) +makedepends=(mingw-w64-gcc) +options=(staticlibs !strip !buildflags) +conflicts=(mingw-w64-wxmsw2.9 mingw-w64-wxmsw-static) +provides=(mingw-w64-wxmsw2.9 mingw-w64-wxmsw-static) +replaces=(mingw-w64-wxmsw2.9) +source=("http://downloads.sourceforge.net/wxwindows/wxWidgets-${pkgver}.tar.bz2") +sha1sums=('6461eab4428c0a8b9e41781b8787510484dea800') + +_architectures="i686-w64-mingw32 x86_64-w64-mingw32" + +build() { + # monolithic shared builds + for _arch in ${_architectures}; do + unset LDFLAGS + mkdir -p "${srcdir}/${pkgname}-${pkgver}-build-shared-${_arch}" + cd "${srcdir}/${pkgname}-${pkgver}-build-shared-${_arch}" + "${srcdir}"/wxWidgets-$pkgver/configure \ + --prefix=/usr/${_arch} \ + --build=$CHOST \ + --host=${_arch} \ + --with-msw \ + --with-opengl \ + --disable-mslu \ + --enable-unicode \ + --enable-shared \ + --enable-monolithic \ + --enable-stl \ + --with-regex=builtin \ + --disable-precomp-headers \ + --enable-graphics_ctx \ + --enable-webview \ + --enable-mediactrl \ + --with-libpng=sys \ + --with-libxpm=builtin \ + --with-libjpeg=sys \ + --with-libtiff=sys + make + done + + # static builds + for _arch in ${_architectures}; do + unset LDFLAGS + mkdir -p "${srcdir}/${pkgname}-${pkgver}-build-static-${_arch}" + cd "${srcdir}/${pkgname}-${pkgver}-build-static-${_arch}" + "${srcdir}"/wxWidgets-$pkgver/configure \ + --prefix=/usr/${_arch} \ + --build=$CHOST \ + --host=${_arch} \ + --with-msw \ + --with-opengl \ + --disable-mslu \ + --enable-unicode \ + --disable-shared \ + --enable-stl \ + --with-regex=builtin \ + --disable-precomp-headers \ + --enable-graphics_ctx \ + --enable-webview \ + --enable-mediactrl \ + --with-libpng=sys \ + --with-libxpm=builtin \ + --with-libjpeg=sys \ + --with-libtiff=sys + make + done +} + +package() { + mkdir -p "$pkgdir/usr/bin" + for _arch in ${_architectures}; do + for _build in "shared" "static"; do + cd "${srcdir}/${pkgname}-${pkgver}-build-${_build}-${_arch}" + make DESTDIR="$pkgdir" install + done + mv "$pkgdir/usr/${_arch}/lib/"*.dll "$pkgdir/usr/${_arch}/bin" + find "$pkgdir/usr/${_arch}" -name '*.exe' | xargs -rtl1 rm + find "$pkgdir/usr/${_arch}" -name '*.dll' | xargs -rtl1 ${_arch}-strip --strip-unneeded + find "$pkgdir/usr/${_arch}" -name '*.a' -o -name '*.dll' | xargs -rtl1 ${_arch}-strip -g + rm -r "$pkgdir/usr/${_arch}/share" + rm "$pkgdir/usr/${_arch}/bin/wxrc-3.0" + cd "$pkgdir/usr/bin/" + ln -s "../${_arch}/lib/wx/config/${_arch}-msw-unicode-${pkgver%.*}" "./${_arch}-wx-config" + done +} diff --git a/x264/mingw-w64/PKGBUILD b/x264/mingw-w64/PKGBUILD new file mode 100644 index 00000000..ab9304d7 --- /dev/null +++ b/x264/mingw-w64/PKGBUILD @@ -0,0 +1,56 @@ +pkgname=mingw-w64-x264 +pkgver=148.20150725 +pkgrel=1.1 +epoch=1 +pkgdesc='free library for encoding H264/AVC video streams (mingw-w64)' +arch=('any') +url='http://www.videolan.org/developers/x264.html' +license=('GPL') +depends=('mingw-w64-crt') +#provides=('mingw-w64-libx264.so') +options=(!strip !buildflags staticlibs) +makedepends=('mingw-w64-gcc' 'yasm' 'git') +_commit=73ae2d11d472d0eb3b7c218dc1659db32f649b14 +source=(git://git.videolan.org/x264.git#commit=${_commit}) +md5sums=('SKIP') +_architectures="i686-w64-mingw32 x86_64-w64-mingw32" + +pkgver() { + cd x264 + local _ver=$(grep '#define X264_BUILD' x264.h | cut -d' ' -f3) + local _date=$(git log -1 --format="%cd" --date=short | tr -d -) + + echo ${_ver}.${_date} +} + +build() { + for _arch in ${_architectures}; do + mkdir -p ${srcdir}/build-${_arch} && cd ${srcdir}/build-${_arch} + + unset LDFLAGS CPPFLAGS + ${srcdir}/x264/configure --host=${_arch} \ + --cross-prefix="${_arch}-" \ + --enable-win32thread \ + --enable-shared \ + --enable-static + + make + done +} + +package() { + for _arch in ${_architectures}; do + cd ${srcdir}/build-${_arch} + make DESTDIR="$pkgdir" \ + bindir=/usr/${_arch}/bin \ + libdir=/usr/${_arch}/lib \ + includedir=/usr/${_arch}/include \ + install + + ${_arch}-strip --strip-all ${pkgdir}/usr/${_arch}/bin/*.exe + ${_arch}-strip --strip-unneeded ${pkgdir}/usr/${_arch}/bin/*.dll + ${_arch}-strip -g ${pkgdir}/usr/${_arch}/lib/*.a + done +} + +# vim:set ts=2 sw=2 et: diff --git a/x265/mingw-w64/PKGBUILD b/x265/mingw-w64/PKGBUILD new file mode 100644 index 00000000..07a0f750 --- /dev/null +++ b/x265/mingw-w64/PKGBUILD @@ -0,0 +1,45 @@ +pkgname=mingw-w64-x265 +pkgver=1.8 +pkgrel=2.1 +pkgdesc='Open Source H265/HEVC video encoder (mingw-w64)' +arch=('any') +url='https://bitbucket.org/multicoreware/x265' +license=('GPL') +depends=('mingw-w64-crt') +options=(!strip !buildflags staticlibs) +makedepends=('mingw-w64-gcc' 'yasm' 'mingw-w64-cmake' 'mingw-w64-pkg-config') +source=("https://bitbucket.org/multicoreware/x265/downloads/x265_${pkgver}.tar.gz" + mingw.patch) +md5sums=('8b7ef9bc0b5bd26965d05a4508effeed' + 'd1f6263ad2f345673a8b0ece73f68338') +_architectures="i686-w64-mingw32 x86_64-w64-mingw32" + +prepare() { + cd x265_11047 + patch -Np1 -i "${srcdir}/mingw.patch" +} + +build() { + for _arch in ${_architectures}; do + mkdir -p "${srcdir}"/build-${_arch} && cd "${srcdir}"/build-${_arch} + unset LDFLAGS CPPFLAGS + ${_arch}-cmake -G "Unix Makefiles" \ + -DENABLE_SHARED='TRUE' \ + -DENABLE_CLI='TRUE' \ + -DWINXP_SUPPORT:BOOL='TRUE' \ + "${srcdir}"/x265_11047/source + make + done +} + +package() { + for _arch in ${_architectures}; do + cd "${srcdir}"/build-${_arch} + make DESTDIR="$pkgdir" install + ${_arch}-strip --strip-all "${pkgdir}"/usr/${_arch}/bin/*.exe + ${_arch}-strip --strip-unneeded "${pkgdir}"/usr/${_arch}/bin/*.dll + ${_arch}-strip -g "${pkgdir}"/usr/${_arch}/lib/*.a + done +} + +# vim: ts=2 sw=2 et: diff --git a/x265/mingw-w64/mingw.patch b/x265/mingw-w64/mingw.patch new file mode 100644 index 00000000..45922076 --- /dev/null +++ b/x265/mingw-w64/mingw.patch @@ -0,0 +1,48 @@ +diff -ru multicoreware-x265-d6257335c537/source/CMakeLists.txt patched/source/CMakeLists.txt +--- multicoreware-x265-d6257335c537/source/CMakeLists.txt 2014-07-09 10:25:15.000000000 +0200 ++++ patched/source/CMakeLists.txt 2014-07-11 02:30:52.574683624 +0200 +@@ -283,6 +283,7 @@ + # shared library is not installed if a tag is not found + set_target_properties(x265-shared PROPERTIES VERSION ${X265_LATEST_TAG} SOVERSION ${X265_BUILD}) + install(TARGETS x265-shared ++ RUNTIME DESTINATION ${BIN_INSTALL_DIR} + LIBRARY DESTINATION ${LIB_INSTALL_DIR} + ARCHIVE DESTINATION ${LIB_INSTALL_DIR}) + endif() +diff -ru multicoreware-x265-d6257335c537/source/common/CMakeLists.txt patched/source/common/CMakeLists.txt +--- multicoreware-x265-d6257335c537/source/common/CMakeLists.txt 2014-07-09 10:25:15.000000000 +0200 ++++ patched/source/common/CMakeLists.txt 2014-07-11 02:32:59.046579781 +0200 +@@ -117,10 +117,16 @@ + source_group(Assembly FILES ${ASM_PRIMITIVES}) + endif(ENABLE_ASSEMBLY) + +-check_symbol_exists(strtok_r "string.h" HAVE_STRTOK_R) +-if(HAVE_STRTOK_R) +- set_source_files_properties(param.cpp PROPERTIES COMPILE_FLAGS -DHAVE_STRTOK_R=1) +-endif() ++if(MINGW) ++ set_source_files_properties(param.cpp PROPERTIES COMPILE_FLAGS -DHAVE_STRTOK_R="1") ++else(MINGW) ++ #FIXME Mingw-w64 defines strtok_r in pthread.h (this needs to be fixed in Mingw-w64) ++ #check_symbol_exists(strtok_r "string.h" HAVE_STRTOK_R) ++ check_symbol_exists(strtok_r "pthread.h" HAVE_STRTOK_R) ++ if(HAVE_STRTOK_R) ++ set_source_files_properties(param.cpp PROPERTIES COMPILE_FLAGS -DHAVE_STRTOK_R=1) ++ endif() ++endif(MINGW) + + if(GCC AND CC_HAS_NO_NARROWING) + set_source_files_properties(cpu.cpp PROPERTIES COMPILE_FLAGS -Wno-narrowing) +diff -ru multicoreware-x265-d6257335c537/source/common/param.cpp patched/source/common/param.cpp +--- multicoreware-x265-d6257335c537/source/common/param.cpp 2014-07-09 10:25:15.000000000 +0200 ++++ patched/source/common/param.cpp 2014-07-11 02:36:54.809974684 +0200 +@@ -28,6 +28,9 @@ + #include "x265.h" + #include "TLibCommon/TComSlice.h" + ++//FIXME For strtok_r in Mingw-w64 (see CMakeLists.txt) ++#include ++ + #if _MSC_VER + #pragma warning(disable: 4996) // POSIX functions are just fine, thanks + #pragma warning(disable: 4706) // assignment within conditional