OSDN Git Service

This patch adds mingw32 cross-compilation support to HandBrake trunk to
authorkonablend <konablend@b64f7644-9d1e-0410-96f1-a4d463321fa5>
Tue, 14 Apr 2009 20:10:57 +0000 (20:10 +0000)
committerkonablend <konablend@b64f7644-9d1e-0410-96f1-a4d463321fa5>
Tue, 14 Apr 2009 20:10:57 +0000 (20:10 +0000)
commitc593146bf3fab6290c71cbbb974e0a756e43f5e0
treef23def4a82677bda7b031b1e2f56c249e6c93d9e
parent2327fee8183124631ba4b43e0b35f984e1b85a3a
This patch adds mingw32 cross-compilation support to HandBrake trunk to
produce native win32 binaries. The main benefits are the binary does not have
any Cygwin runtime requirements and various host platforms can be leveraged
to build HandBrake.

Cross-compilation toolchains are complex to setup and recommended for experts
only; but once setup it can build at speeds similar to native builds,
on Darwin or Linux.

BUILD INSTRUCTIONS:
  Add mingw32 toolchain to beginning of your path and take the toolchain
  prefix from gcc (eg: i386-mingw32-gcc) and pass to configure:

    ./configure --cross=i386-ming32

PRODUCTS:
  - hb.lib (static library)
  - HandBrakeCLI.exe

DOWNLOADS:
  Contrib downloads need to be seeded with:
  - pthreads-w32-2-8-0-release.tar.gz (new)
  - xvidcore-20090311.tar.gz

SUMMARY:
  Specifically, all GUI trees are not impacted.

  configure
  - added --cross=PREFIX
  - reworked search for gcc and cross-compile related tools to use prefix

  contrib/
  - sub-patches added as needed for mingw

  contrib/xvidcore/
  - bumped from 1.1.3 -> 1.2.1+ (daily 20090311)
  - reconstituted P01-cygwin.patch
  - created new P00-darwin.patch needed for macho64 asm flag on x86_64 arch

  libhb/
  - uint -> uint32_t
  - remaining changes guarded by mingw32 macro.

  test/
  - modified to support pthread-compatibility library attach/detach.
  - all changes guarded by mingw32 macro.

BRANCHES:
  source: https://hbfork.googlecode.com/svn/branches/mingw@28
  target: svn://svn.handbrake.fr/HandBrake/trunk@2325

git-svn-id: svn://localhost/HandBrake/trunk@2326 b64f7644-9d1e-0410-96f1-a4d463321fa5
38 files changed:
contrib/bzip2/module.defs
contrib/faad2/P00-mingw-types.patch [new file with mode: 0644]
contrib/ffmpeg/module.defs
contrib/libdvdread/P02-mingw-ssize_t.patch [new file with mode: 0644]
contrib/libdvdread/P03-mingw-disable-dlopen.patch [new file with mode: 0644]
contrib/libdvdread/P04-mingw-endian-macros.patch [new file with mode: 0644]
contrib/libdvdread/P05-mingw-large-file.patch [new file with mode: 0644]
contrib/libmkv/P00-mingw-large-file.patch [new file with mode: 0644]
contrib/libmp4v2/P00-mingw-static.patch [new file with mode: 0644]
contrib/libmp4v2/P01-mingw-msvcrt-lower.patch [new file with mode: 0644]
contrib/libmp4v2/P02-mingw-configure.patch [new file with mode: 0644]
contrib/libmp4v2/module.defs
contrib/pthreadw32/module.defs [new file with mode: 0644]
contrib/pthreadw32/module.rules [new file with mode: 0644]
contrib/x264/module.defs
contrib/xvidcore/A00-nasm.patch [deleted file]
contrib/xvidcore/A01-fdct.patch [deleted file]
contrib/xvidcore/P00-darwin.patch
contrib/xvidcore/P01-cygwin.patch
contrib/xvidcore/module.defs
contrib/zlib/module.defs
libhb/common.h
libhb/decavcodec.c
libhb/decmetadata.c
libhb/fifo.c
libhb/module.defs
libhb/module.rules
libhb/ports.c
libhb/ports.h
libhb/reader.c
make/configure.py
make/include/contrib.defs
make/include/gcc.defs
make/include/main.defs
make/include/main.rules
make/variant/mingw.defs [new file with mode: 0644]
test/module.defs
test/test.c