forked from HandBrake/HandBrake
-
Notifications
You must be signed in to change notification settings - Fork 0
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
git-svn-id: svn://svn.handbrake.fr/HandBrake/trunk@10 b64f7644-9d1e-0410-96f1-a4d463321fa5
- Loading branch information
handbrake
committed
Jan 14, 2006
1 parent
4beb6a8
commit dc8de40
Showing
121 changed files
with
10,924 additions
and
5,985 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,18 @@ | ||
$Id: AUTHORS,v 1.1 2003/12/26 20:19:38 titer Exp $ | ||
|
||
Eric Petit <[email protected]> | ||
+ Core (construct, multithreading, BeOS/OS X/Linux ports) | ||
+ MPEG demuxer | ||
+ MPEG-2 and AC3 decoders (w/ libmpeg2/liba52) | ||
+ MPEG-4, MP3 and AAC encoders (w/ libavcodec/libxvidcore/libmp3lame/ | ||
libfaac) | ||
+ AVI muxer | ||
+ MP4 muxer (w/ libmp4v2) | ||
+ BeOS interface | ||
+ OS X interface | ||
|
||
Laurent Aimar <[email protected]> | ||
+ H264 and Vorbis encoders (w/ libx264/libvorbis) | ||
+ OGG/OGM muxer (w/ libogg) | ||
+ Gtk2 interface | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
$Id: BUILD,v 1.2 2004/02/13 13:45:50 titer Exp $ | ||
|
||
BUILD file for HandBrake <http://handbrake.m0k.org/> | ||
|
||
Building HandBrake | ||
================== | ||
|
||
Step 1: get jam | ||
=============== | ||
|
||
Jam <http://www.perforce.com/jam/jam.html> is a make replacement. | ||
Get it for your operating system: | ||
+ OS X: get <http://handbrake.m0k.org/files/jam-2.5rc3-OSX.zip> and | ||
copy jam to /usr/local/bin/. Do not use the modified jam shipped with | ||
the developer tools (/Developer/Private/jam). | ||
+ Debian: `apt-get install jam' | ||
Or get the sources from the link above and compile it yourself. | ||
|
||
Step 2 (optional): set custom compiler flags | ||
============================================ | ||
|
||
If you want to optimize the build for a specific CPU, edit the Jamrules | ||
file and modify the "OPTIM = ..." line by adding the needed flags. | ||
|
||
Step 3: build | ||
============= | ||
|
||
Run `jam'. This will build every library HandBrake requires, then | ||
HandBrake itself. | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,5 +1,5 @@ | ||
HandBrake uses a lot of cool libraries from the GNU/Linux world. Thank | ||
their authors ! | ||
their authors! | ||
|
||
liba52 authors: | ||
Aaron Holtzman | ||
|
@@ -59,6 +59,14 @@ libdvdplay authors: | |
Martin Norb�ck | ||
St�phane Borel | ||
|
||
libfaac authors: | ||
M. Bakker | ||
Tony Lenox | ||
RageOMatic | ||
thebard | ||
Ivan Dimkovic | ||
Krzysztof Nikiel | ||
|
||
libmp3lame authors: | ||
Mike Cheng | ||
Robert Hegemann | ||
|
@@ -86,6 +94,22 @@ libmp3lame authors: | |
Acy Stapp | ||
Roel VdB | ||
|
||
libmp4v2 authors: | ||
Dave Mackie | ||
Alix Marchandise-Franquet | ||
Bill May | ||
Massimo Villari | ||
Waqar Mohsin | ||
Richard Chen | ||
Rob Arnold | ||
Howdy Pierce | ||
Steven Schultz | ||
[email protected] | ||
Sean Gilligan | ||
Michael Rossberg | ||
Luis F. Ramirez | ||
Petter Reinholdtsen | ||
|
||
libmpeg2 authors: | ||
Aaron Holtzman | ||
Michel Lespinasse | ||
|
@@ -109,6 +133,15 @@ libmpeg2 authors: | |
Martin Vogt | ||
Fredrik Vraalsen | ||
|
||
libogg authors: | ||
Christopher Montgomery | ||
|
||
libvorbis authors: | ||
Christopher Montgomery | ||
|
||
libx264 authors: | ||
Laurent Aimar | ||
|
||
libxvidcore authors: | ||
Christoph Lampert | ||
Michael Militzer | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -1,104 +1,71 @@ | ||
# $Id: Jamfile,v 1.10 2003/11/13 02:09:14 titer Exp $ | ||
# $Id: Jamfile,v 1.39 2004/02/18 17:21:00 titer Exp $ | ||
# | ||
# This file is part of the HandBrake source code. | ||
# Homepage: <http://handbrake.m0k.org/>. | ||
# It may be used under the terms of the GNU General Public License. | ||
|
||
HB_VERSION = 0.5.2 ; | ||
SubDir TOP ; | ||
|
||
# Compilers | ||
CC = gcc ; | ||
C++ = g++ ; | ||
LINK = gcc ; | ||
HB_PACKAGES = ; | ||
|
||
# Flags | ||
CCFLAGS = $(CFLAGS) ; | ||
CCFLAGS += -g -Wall -Werror ; | ||
CCFLAGS += -DVERSION=\\\"$(HB_VERSION)\\\" -DSYS_$(OS) ; | ||
C++FLAGS = $(CPPFLAGS) ; | ||
C++FLAGS += -g -Wall -Werror ; | ||
C++FLAGS += -DVERSION=\\\"$(HB_VERSION)\\\" -DSYS_$(OS) ; | ||
LINKFLAGS = $(LDFLAGS) ; | ||
HDRS = core ; | ||
|
||
# Optims | ||
CCFLAGS += -funroll-loops ; | ||
C++FLAGS += -funroll-loops ; | ||
OPTIM = -O3 ; | ||
|
||
# Libs | ||
LINKLIBS = -ldvdplay -ldvdread -ldvdcss -lmpeg2 -lavcodec -la52 | ||
-lmp3lame -lxvidcore ; | ||
# CLI app | ||
ObjectCcFlags test/test.c : -I$(TOP)/core -g -Wall ; | ||
LinkLibraries HBTest : | ||
libhb.a liba52.a libavcodec.a libdvdplay.a libdvdread.a libdvdcss.a | ||
libfaac.a libmp3lame.a libmp4v2.a libmpeg2.a libvorbis.a | ||
libvorbisenc.a libogg.a libx264.a libxvidcore.a ; | ||
Main HBTest : test/test.c ; | ||
|
||
# OS specific | ||
# BeOS | ||
if $(OS) = BEOS | ||
{ | ||
CCFLAGS += -Wno-multichar ; | ||
C++FLAGS += -Wno-multichar ; | ||
LINKLIBS += -lbe -ltracker ; | ||
} | ||
else if $(OS) = LINUX | ||
{ | ||
LINKLIBS += -lpthread ; | ||
} | ||
else if $(OS) = MACOSX | ||
{ | ||
CCFLAGS += -no-cpp-precomp ; | ||
C++FLAGS += -no-cpp-precomp ; | ||
LINKFLAGS += -multiply_defined suppress ; | ||
|
||
# needed to clean HandBrake.app | ||
RM = rm -rf ; | ||
} | ||
else if $(OS) = CYGWIN | ||
{ | ||
CCFLAGS += -mno-cygwin ; | ||
C++FLAGS += -mno-cygwin ; | ||
LINKFLAGS += -mno-cygwin ; | ||
SOURCES_BEOS = beos/HBApp.cpp beos/HBWindow.cpp ; | ||
ObjectC++Flags $(SOURCES_BEOS) : | ||
-I$(TOP)/core -I$(TOP)/beos/liblayout -g -Wall ; | ||
LINKLIBS on HandBrake = $(LINKLIBS) -L$(TOP)/lib -llayout -lbe ; | ||
LinkLibraries HandBrake : | ||
libhb.a liba52.a libavcodec.a libdvdplay.a libdvdread.a libdvdcss.a | ||
libfaac.a libmp3lame.a libmp4v2.a libmpeg2.a libvorbis.a | ||
libvorbisenc.a libogg.a libx264.a libxvidcore.a ; | ||
Main HandBrake : $(SOURCES_BEOS) ; | ||
} | ||
|
||
# Do not remove temporary object files | ||
# There MUST be a cleaner way to do this | ||
actions quietly updated piecemeal together RmTemps | ||
{ | ||
} | ||
|
||
# Build HandBrake.app using Xcode | ||
rule OSXApp | ||
# OS X | ||
if $(OS) = MACOSX | ||
{ | ||
Clean clean : $(1) macosx/build ; | ||
BuildOSXApp $(1) ; | ||
# Build the app | ||
OSXApp HandBrake.app ; | ||
Depends HandBrake.app : | ||
libhb.a liba52.a libavcodec.a libdvdplay.a libdvdread.a | ||
libdvdcss.a libfaac.a libmp3lame.a libmp4v2.a libmpeg2.a | ||
libvorbis.a libvorbisenc.a libogg.a libx264.a libxvidcore.a ; | ||
Depends all : HandBrake.app ; | ||
|
||
# Package | ||
OSXPackage HandBrake-$(HB_VERSION)-OSX.zip ; | ||
Depends HandBrake-$(HB_VERSION)-OSX.zip : HandBrake.app ; | ||
HB_PACKAGES += HandBrake-$(HB_VERSION)-OSX.zip ; | ||
} | ||
|
||
actions BuildOSXApp | ||
# GTK2 | ||
if $(OS) = LINUX | ||
{ | ||
$(RM) HandBrake.app ; | ||
( cd macosx && xcodebuild ) && cp -r macosx/build/HandBrake.app . ; | ||
SOURCES_GTK2 = gtk2/main.c gtk2/callbacks.c gtk2/interface.c | ||
gtk2/support.c ; | ||
ObjectCcFlags $(SOURCES_GTK2) : | ||
-I$(TOP)/core `pkg-config gtk+-2.0 --cflags` ; | ||
LINKLIBS on gtk2HB = $(LINKLIBS) `pkg-config gtk+-2.0 --libs` ; | ||
LinkLibraries gtk2HB : | ||
libhb.a liba52.a libavcodec.a libdvdplay.a libdvdread.a libdvdcss.a | ||
libfaac.a libmp3lame.a libmp4v2.a libmpeg2.a libvorbis.a | ||
libvorbisenc.a libogg.a libx264.a libxvidcore.a ; | ||
Main gtk2HB : $(SOURCES_GTK2) ; | ||
} | ||
|
||
Library core/libhb : core/Ac3Dec.c core/AviMux.c | ||
core/Utils.c core/DVDRead.c core/Fifo.c | ||
core/HandBrake.c core/Mp3Enc.c | ||
core/Mpeg2Dec.c core/FfmpegEnc.c | ||
core/MadDec.c core/Scale.c | ||
core/Scan.c core/Thread.c core/Work.c | ||
core/XvidEnc.c core/XvidVbr.c ; | ||
|
||
LinkLibraries HBTest : core/libhb.a ; | ||
Main HBTest : test/test.c ; | ||
# Packages | ||
NotFile package ; | ||
Depends package : $(HB_PACKAGES) ; | ||
|
||
if $(OS) = BEOS | ||
{ | ||
LinkLibraries HandBrake : core/libhb.a ; | ||
Main HandBrake : beos/HBApp.cpp beos/MainWindow.cpp | ||
beos/PictureWin.cpp beos/ScanView.cpp | ||
beos/RipView.cpp ; | ||
} | ||
|
||
if $(OS) = MACOSX | ||
{ | ||
OSXApp HandBrake.app ; | ||
Depends HandBrake.app : core/libhb.a ; | ||
Depends all : HandBrake.app ; | ||
} | ||
SubInclude TOP contrib ; | ||
SubInclude TOP core ; | ||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,126 @@ | ||
# Compilers & flags | ||
CC = gcc ; | ||
C++ = g++ ; | ||
CCFLAGS = $(CFLAGS) ; | ||
C++FLAGS = $(CFLAGS) ; | ||
AS = nasm -f elf ; | ||
LINK = g++ ; | ||
OPTIM = -O3 -funroll-loops ; | ||
|
||
# HandBrake defines | ||
HB_VERSION = 0.6.0-test1 ; | ||
DEFINES = HB_$(OS) HB_VERSION=\\\"$(HB_VERSION)\\\" ; | ||
#DEFINES += HB_NOMMX ; | ||
|
||
# OS-specific | ||
if $(OS) = BEOS | ||
{ | ||
CCFLAGS += -Wno-multichar ; | ||
C++FLAGS += -Wno-multichar ; | ||
} | ||
else if $(OS) = LINUX | ||
{ | ||
LINKLIBS = -lpthread ; | ||
} | ||
else if $(OS) = MACOSX | ||
{ | ||
RM = rm -rf ; | ||
} | ||
|
||
# Contrib* rules: mostly the same than Jambase rules, except | ||
# * Targets aren't cleaned by jam clean (to prevent from deleting | ||
# every contrib library by accident) | ||
# * ContribObject handles *.asm files | ||
# * Temporary *.o files aren't removed | ||
rule ContribObject | ||
{ | ||
MakeLocate $(<) : $(LOCATE_TARGET) ; | ||
SEARCH on $(>) = $(SEARCH_SOURCE) ; | ||
HDRS on $(<) = $(SEARCH_SOURCE) $(SUBDIRHDRS) $(HDRS) ; | ||
HDRRULE on $(>) = HdrRule ; | ||
HDRSCAN on $(>) = $(HDRPATTERN) ; | ||
HDRSEARCH on $(>) = | ||
$(SEARCH_SOURCE:E) $(SUBDIRHDRS) $(HDRS) $(STDHDRS) ; | ||
HDRGRIST on $(>) = $(HDRGRIST) ; | ||
DEFINES on $(<) += $(DEFINES) ; | ||
switch $(>:S) | ||
{ | ||
case .asm : As $(<) : $(>) ; | ||
case .nas : As $(<) : $(>) ; | ||
case .c : Cc $(<) : $(>) ; | ||
case .C : C++ $(<) : $(>) ; | ||
case .cc : C++ $(<) : $(>) ; | ||
case .cpp : C++ $(<) : $(>) ; | ||
case .f : Fortran $(<) : $(>) ; | ||
case .l : Cc $(<) : $(<:S=.c) ; | ||
Lex $(<:S=.c) : $(>) ; | ||
case .s : As $(<) : $(>) ; | ||
case .y : Cc $(<) : $(<:S=$(YACCGEN)) ; | ||
Yacc $(<:S=$(YACCGEN)) : $(>) ; | ||
case * : UserObject $(<) : $(>) ; | ||
} | ||
} | ||
rule ContribObjects | ||
{ | ||
local _i ; | ||
for _i in [ FGristFiles $(<) ] | ||
{ | ||
ContribObject $(_i:S=$(SUFOBJ)) : $(_i) ; | ||
Depends obj : $(_i:S=$(SUFOBJ)) ; | ||
} | ||
} | ||
rule ContribLibrary | ||
{ | ||
local _l _s ; | ||
_s = [ FGristFiles $(>:S=$(SUFOBJ)) ] ; | ||
_l = $(<:S=$(SUFLIB)) ; | ||
ContribObjects $(>) ; | ||
Depends obj : $(_s) ; | ||
MakeLocate $(_l) $(_l)($(_s:BS)) : $(LOCATE_TARGET) ; | ||
Depends $(_l) : $(_s) ; | ||
Archive $(_l) : $(_s) ; | ||
if $(RANLIB) { Ranlib $(_l) ; } | ||
Depends lib : $(_l) ; | ||
} | ||
|
||
# Custom Library rule: same as ContribLibrary, except 'jam clean' | ||
# removes built objects | ||
rule Library | ||
{ | ||
ContribLibrary $(<) : $(>) ; | ||
Clean clean : [ FGristFiles $(>:S=$(SUFOBJ)) ] ; | ||
Clean clean : $(<:S=$(SUFLIB)) ; | ||
} | ||
|
||
# Build HandBrake.app using Xcode | ||
rule OSXApp | ||
{ | ||
Clean clean : $(1) macosx/build ; | ||
BuildOSXApp $(1) ; | ||
} | ||
actions BuildOSXApp | ||
{ | ||
$(RM) $(1) ; | ||
( cd macosx && xcodebuild ) && \ | ||
cp -r macosx/build/HandBrake.app $(1) && \ | ||
for i in French German; do \ | ||
( cd $(1)/Contents/Resources && \ | ||
cp -r English.lproj $i.lproj && \ | ||
cp ../../../macosx/i18n/$i.strings \ | ||
$i.lproj/Localizable.strings ) \ | ||
done ; | ||
} | ||
rule OSXPackage | ||
{ | ||
BuildOSXPackage $(1) ; | ||
} | ||
actions BuildOSXPackage | ||
{ | ||
rm -rf $(1) "HandBrake $(HB_VERSION)" && \ | ||
mkdir "HandBrake $(HB_VERSION)" && \ | ||
cp -r AUTHORS COPYING CREDITS HandBrake.app \ | ||
"HandBrake $(HB_VERSION)" && \ | ||
zip -9 -r $(1) "HandBrake $(HB_VERSION)" && \ | ||
rm -rf "HandBrake $(HB_VERSION)" | ||
} | ||
|
Oops, something went wrong.