summaryrefslogtreecommitdiffstats
path: root/make/include/contrib.defs
Commit message (Collapse)AuthorAgeFilesLines
* contrib: make: Remove --enable-local-autotools and --enable-local-pkgconfig.Bradley Sepos2018-06-171-1/+1
| | | | Closes #549.
* scripts: add script for creating flatpak manifestsJohn Stebbins2018-06-061-0/+5
| | | | | | | This script can generate manifests that are suitable for submitting to flathub for publishing to their repository. It can also be used for generating manifests suitable for building local flatpak bundles and is used during 'make pkg.create.flatpak'
* contrib: add lzma supportJohn Stebbins2018-05-291-1/+1
| | | | | lzma may be used by the ffmpeg tiff decoder which can be used in matroska files.
* x265: add support for 8/10/12 bit encoding in single static lib (#975)John Stebbins2017-11-061-15/+20
| | | | Builds x265 three times, once for each bit depth. Then merges the static libs into one library that HandBrake can statically link against.
* contrib: Use SHA256 instead of MD5 for contrib archive checksums.Justin Scholz2016-12-151-3/+3
| | | | Closes #356.
* Build: add target contrib.fetch.testKonaBlend2016-05-251-0/+7
| | | | - remove configure --df-exhaust-url
* Build: split fetch into df-fetch and df-verifyKonaBlend2016-05-251-7/+10
| | | | | | | - moved common python code to lib/hb_distfile.py - beautified tmpfile creation - added stack-style resource management to df-fetch - fixed contrib assumptions about single URL
* Build: add target: contrib.verifyKonaBlend2016-05-251-2/+27
| | | | | New target sits between extract and fetch. Thus every build ensures that exach tarball is not corrupt before extract.
* Build: refactor fetch for contrib tarballsKonaBlend2016-05-251-2/+2
| | | | | | | | | | | | | | | | | | | | | | | | Fetch is now python-based and runs on the same version as does configure. The source script is make/fetch.py. New features: MD5 hash tracking for tarballs. Data values for all contribs added. Upon download, the file will be verified, and only then will it be moved into place inside downloads/ . Files that exist before the build system does a fetch will not be md5-checked. Multiple URLs for tarballs. Each module may specify one or more URLs and by convention the official HandBrake should be first when possible. Each URL is tried in sequence, and if it fails for any reason, the next URL is tried. If no URL succeeds, a hard-error is reported. Network fetching may be disabled via configure options. --disable-fetch will hard-error if a fetch is attempted. --accept-fetch-url=SPEC and --deny-fetch-url=SPEC offer an ACL-style mechanism using regex to match against URLs. For example, --accept-fecth-url='.*/download.handbrake.fr/.*' would skip any non-matching URLs. Build dependencies have been lightened. wget and curl are no longer required. TODO: GTK packaging should also be able to remove those deps.
* Add ability to set C++ standard (#195)John Stebbins2016-05-241-3/+3
| | | | | | * build: add ability to set c++ standard * fdk-aac: Fix building with g++ 6, set c++98 standard
* contrib: fix building libvpx on mingwjstebbins2014-04-161-1/+1
| | | | git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6166 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add VP8 supportjstebbins2014-04-151-1/+1
| | | | | | | Thanks to Matthew Harvey for this patch git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6165 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Build: pass --build to configure when cross-compiling.Rodeo2014-03-131-1/+4
| | | | | | | | This is the right thing to do, and also happens to fix building with MinGW-w64 in a non-Linux environment such as e.g. Cygwin. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@6104 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Build: use GNU99 mode.Rodeo2013-12-051-3/+3
| | | | | | | | | Required for proper POSIX behaviour on Solaris. Patch by icchan. Thanks! git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5915 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fix mingw build problemsjstebbins2012-10-041-8/+8
| | | | | | | | | | | | If the mingw environment has duplicates of some of the contrib libraries that we build, the mingw system lib or header was being used instead of our contrib version. Also, some dependencies were missing which would cause parallel builds to randomly fail because a necessary contrib hadn't been built yet. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@5000 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Remove mingw+libmkv dependency on libiberty.konablend2012-09-081-8/+8
| | | | | | | | Remove mingw+test dependency on libiberty. Add build system support for propagating compiler DEFINES to contrib configure. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4942 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add autotools { autoconf, automake, libtool } as contribs.konablend2012-09-071-1/+2
| | | | | | | | | | | | | | | | | | | Primarily necessary for OSX platform after Xcode 4.2.x, but also useful for any platform which is missing or has obsolete versions. 1. add configure option: --enable-local-autotools 2. --enable-local-autotools is automatically TRUE when any of { autoconf, automake, libtool } are not found in path. 3. --enable-local-autotools causes contribs of { m4, autoconf, automake, lib tool } to be built 4. add m4 to contrib (prerequisite for autoconf) 5. add autoconf to contrib (prerequisite for automaker and many contribs) 6. add automake to contrib (prerequisite for many contribs) 7. add libtool to contrib (prerequisite for many contribs) 8. All contribs (except the autotools themselves) automatically mark autotools as a prerequisite. 9. $(AUTOTOOL_MODULES) is available if other non-contrib modules need to mark as prerequisite. 10. PATH is automatically prefixed with contrib/bin for all modules, all targets. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4933 b64f7644-9d1e-0410-96f1-a4d463321fa5
* build system: enforce an order to applying contrib patchesjstebbins2012-08-021-2/+2
| | | | | | | | | New patch for a52dec has a dependency on another patch and must be applied after it. Patches appeared to be getting applied in whatever order the filesystem presented the files in. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4886 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add CFLAGS and LDFLAGS specified during configure to compile and link commandsjstebbins2012-06-171-1/+1
| | | | | | | | | | | Enhances portability. configure.py already added these to the GNUmakefile output, but the values did not get incorporated into compile or link commands. Thanks to Fabian Greffrath and Rogerio Brito for this patch git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4742 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Add optional yasm contribjstebbins2011-10-251-2/+4
| | | | | | | | | | To enable, "configure --enable-local-yasm" Ubuntu 10.04 LTS (lucid) has yasm 0.8 which is no longer compatible with x264. This change allows us to build yasm as a contrib and use it for building both Libav and x264 which require yasm. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4314 b64f7644-9d1e-0410-96f1-a4d463321fa5
* contrib: enable debuggin when debug=max and disable optimizations when ↵jstebbins2011-07-111-2/+15
| | | | | | | | | | optimizations=none except for ffmpeg on darwin i386 which fails to build when optimizations are disabled due to gcc running out of registers. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@4103 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Fix linking on mingw when using libtooljstebbins2011-03-211-1/+2
| | | | | | | | | | | | | | | | Linking the gtk gui uses libtool. The *.la files libtool uses specify the dependency libraries that libraries are built against. Our libbluray contrib was being built against the system libxml2 due to dependencies that were not set in our build system and PKG_CONFIG_PATH not being set when configuring. Note that on fedora (and possibly other systems) the ${cross}-pkg-config script provided is broken and explicitely sets PKG_CONFIG_PATH="". You need to replace this script with something like this: PKG_CONFIG_LIBDIR=$(${cross}-gcc --print-sysroot)/mingw/lib/pkgconfig pkg-config $* git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3858 b64f7644-9d1e-0410-96f1-a4d463321fa5
* bump ffmpeg to rev 22950jstebbins2010-04-251-1/+1
| | | | | | | | | offset ffmpeg seeks by value of initial timestamp since it can be non-zero catch pix fmt that is unsupported by swscale, log it, skip the track use new ffmpeg avg_frame_rate for more accurate framerate estimate git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@3267 b64f7644-9d1e-0410-96f1-a4d463321fa5
* build system: add capability to build Leopard target from Snow Leopard Hostjstebbins2009-09-041-4/+4
| | | | | | | | | To configure for building Leopard target from Snow Leopard: configure --sysroot /Developer/SDKs/MacOSX10.5.sdk --minver 10.5 git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2806 b64f7644-9d1e-0410-96f1-a4d463321fa5
* BuildSystem: fixed regression introduced in r2425.konablend2009-05-191-1/+1
| | | | | | | | | - a 'space' snuck it's way into EXTRACT.tarbase default setting. - solution is to strip value of leading/trailing whitespace. - tested against a full-build. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2426 b64f7644-9d1e-0410-96f1-a4d463321fa5
* BuildSystem: fixed EXTRACT.tarbase default to support .tar.bz2 and .tar.gz ↵konablend2009-05-191-1/+1
| | | | | | extensions. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2425 b64f7644-9d1e-0410-96f1-a4d463321fa5
* This patch adds mingw32 cross-compilation support to HandBrake trunk tokonablend2009-04-141-3/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | 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://svn.handbrake.fr/HandBrake/trunk@2326 b64f7644-9d1e-0410-96f1-a4d463321fa5
* Cygwin: removed faad2 patch no longer required as per faad2 bump.konablend2009-03-201-1/+1
| | | | | | | - added -N flag to contrib usage of patch to ignore patches which appear already applied. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2269 b64f7644-9d1e-0410-96f1-a4d463321fa5
* BuildSystem: general, configure and Xcode updates.konablend2009-03-081-7/+7
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | *** NOTICE: This changeset requires a clean build directory. Please issue 'make xclean' inside build dir(s) after 'svn up'. This will help ensure there are no unexpected results. *** GENERAL: - renamed makevar PROJECT/ -> SRC/ for clarity. - renamed makevar PREFIX.install/ -> PREFIX/ for clarity. - split custom GNUmakefile overrides into defs/rules files. - inserted optional level of make customization at SRC/ level; see docs. - dropped HB.repo.wcversion (svnversion is no longer used). - corrected several 'rm' usages to use -f flag which avoids some build errors. - refreshed generated 00-Building.*.txt docs; work still in progress on the wiki front. *** CONFIGURE: - made configure more robust; configure may now be run outside of build directory! - adding log recording of configure activities. - improved readability of default options for configure - added: --force overwrite existing build config --src=DIR specify top-level source dir [.] --build=DIR specify build scratch/output dir [.] --prefix=DIR specify install dir for products [/Applications] - dropped --launch-force (replaced by --force) - dropped --launch-dir (replaced by --build) - dropped --launch-log *** XCODE: - renamed pbxproj definition EXTERNAL_PROJECT -> EXTERNAL_SRC for clarity. - fixed all configurations to default to EXTERNAL_JOBS=1 . - enabled Xcode internal parallelization (libhb, HandBrakeCLI and HandBrake benefit). - make now tickles Xcode build files to cause Info.plist regeneration and posting to HandBrake.app output; ie: svn up; click build and HandBrake.app's about panel will reflect the new repository rev. *** DARWIN: - added support to build universal binaries; see docs. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2242 b64f7644-9d1e-0410-96f1-a4d463321fa5
* BuildSystem:konablend2009-03-051-1/+1
| | | | | | | | | | | | | | | | | | - changed behavior (which was introduced in r2223) of what MODULE target (phase) is dirtied when one of the contrib modules it depends upon is changed; eg: cleaned or build: old: MODULE.extract new: MODULE.configure - example of new (corrected) behavior: 1. svn update brings in a new change on faad2 module which has new version (url) 2. make 3. result: faad2 runs the guantlet: fetch->extract->patch->configure->build->install (FXPCBI for short) 4. result: ffmpeg has a dependency on faad2 and runs: CBI 5. result: libhb depends on all contrib modules and recompiles all .o and creates .a 6. result: [no xcode] HandBrakeCLI depends on libhb and recompiles all .o and relinks. 7. result: [xcode] HandBrakeCLI and HandBrake may need to be 'cleaned' to force them to recompile as opposed to just relinking. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2225 b64f7644-9d1e-0410-96f1-a4d463321fa5
* BuildSystem:konablend2009-03-051-1/+3
| | | | | | | | - fixed race condition where bzip2,xvidcore may fail on missing contrib/{lib,include} dirs. - replaced literal command uses with var in bzip2,xvidcore . git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2224 b64f7644-9d1e-0410-96f1-a4d463321fa5
* BuildSystem:konablend2009-03-051-21/+55
| | | | | | | | | | | | | | | | | | | - increased inter-contrib module rebuild sanity; ie: if an svn update is done and a new x264 tarball is available, the system will fetch it and proceed to extract->patch->configure->build->install and because it is utterly dangerous (undefined results can easily occur) to re-extract over an existing extract, the appropriate steps are taken to first rm -fr the tarball extraction directory. This is generally good practice but I'm explaining it here in detail in case some developers are taking risks like editing files in the build/ tree and erroneously assuming they will not be overwritten by either this new build system or contrib (foreign) build systems. - added contrib touch/untouch targets; see doc. - updated docs accordingly. - fixed typo for GCCargs.g.max which caused --debug=max to not operate properly. - unofficial builds will no longer rebrand naming to 'NoNameBrand' git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2223 b64f7644-9d1e-0410-96f1-a4d463321fa5
* BuildSystem: conversion from jam-based to make-based system.konablend2009-03-011-0/+276
KNOWN ISSUES: 1. OSX + Xcode builds do not support parallel builds; attempting to use them may cause unbounded number of jobs. However, disabling via configure --disable-xcode avoids the issue. 2. OSX ppc binary produces binary which has audio-scan problems. 3. OSX ppc64 binary has not been runtime tested. ADDED: 00-BuildUserGuide.txt contrib/*/module.* doc/ make/ libhb/module.* test/module.* macos/module.* gtk/module.* DROPPED: BUILD BuildContribDarwin.sh DownloadMacOsXContribBinaries.sh Jamfile Jamrules MacOsXContribBinariesVersion.txt Makefile Makefile.config jam libhb/Jamefile libhb/Makefile test/BUILDSHARED test/Makefile contrib/Jamfile contrib/Makefile contrib/patch-ffmpeg.patch contrib/patch-x264-idr.patch contrib/patch-x264-linux.patch RENAMED: contrib/*.patch -> contrib/MODULE/[AP]??-*.patch macosx/HandBrake.plist -> macosx/Info.plist MODIFIED: libhb/decavcodec.c Patched to use cleaner include "libavcodec/audioconvert". Second part to support this cleanup is ffmpeg A02-audioconvert.patch . MODIFIED: libhb/hb.c MODIFIED: libhb/hb.h MODIFIED: libhb/muxmkv.c MODIFIED: libhb/muxmp4.c MODIFIED: libhb/update.c Patched to use "project.h" for project metadata. Renamed HB_BUILD -> HB_PROJECT_BUILD. Renamed HB_VERSION -> HB_PROJECT_VERSION. MODIFIED: test/test.c: Patched HandBrakeCLI to support I/O on Mac OS X ZFS filesystems. Reference r1803 as similar patch for HandBrake.app . Unpatched behavior is crash/buserror when using ZFS. MODIFIED: macosx/Growl.framework/ Upgraded 0.7.6 (i386,ppc) -> 1.1.2 (i386,x86_64,ppc,ppc64). New architectures facilitate x86_64 and ppc64 builds. MODIFIED: macosx/HandBrake.xcodeproj/ Bumped compatibilty mode from 2.4 -> 3.1 . Dumped old configurations Deployment, Developer. Added configurations standard, sebug as replacements. Added standard.i386, standard.x86_64, standard.ppc, standard.ppc64 . for explicit architecture build. All configurations settings cleaned up and normalized. Build output directories adjusted to support new build system. git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@2180 b64f7644-9d1e-0410-96f1-a4d463321fa5