X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=Jamfile;h=ac3e7948455256f7a03ca951e4266dcf283a5042;hb=44efb915fba763294bbb4153ca5ebf151fce0f75;hp=31e4874a2f028b83f6c8d61c0c6aaeb890f1ef59;hpb=978b5df21a0ab14687411c2191f1b6e938ce764d;p=handbrake-jp%2Fhandbrake-jp-git.git diff --git a/Jamfile b/Jamfile index 31e4874a..ac3e7948 100644 --- a/Jamfile +++ b/Jamfile @@ -1,86 +1,98 @@ -# $Id: Jamfile,v 1.33 2003/10/06 21:21:27 titer Exp $ +# $Id: Jamfile,v 1.86 2005/11/04 13:09:40 titer Exp $ # # This file is part of the HandBrake source code. -# Homepage: . +# Homepage: . # It may be used under the terms of the GNU General Public License. -HB_VERSION = 0.3 ; +SubDir TOP ; -# Compilers -C++ = g++ ; -LINK = g++ ; +# libhb + contrib libraries +HANDBRAKE_LIBS = libhb.a + contrib/lib/liba52.a contrib/lib/libavformat.a + contrib/lib/libavcodec.a contrib/lib/libavutil.a + contrib/lib/libdca.a contrib/lib/libdvdread.a + contrib/lib/libmp4v2.a contrib/lib/libfaac.a + contrib/lib/libmp3lame.a contrib/lib/libmpeg2.a + contrib/lib/libvorbis.a contrib/lib/libvorbisenc.a + contrib/lib/libogg.a contrib/lib/libsamplerate.a + contrib/lib/libx264.a contrib/lib/libxvidcore.a + contrib/lib/libmkv.a contrib/lib/libswscale.a + contrib/lib/libtheora.a contrib/lib/libfaad.a ; -# Flags -C++FLAGS = $(CPPFLAGS) ; -C++FLAGS += -g -Wall -Werror ; -C++FLAGS += -DVERSION=\\\"$(HB_VERSION)\\\" -DSYS_$(OS) ; -LINKFLAGS = $(LDFLAGS) ; -HDRS = core ; - -# Optims -C++FLAGS += -funroll-loops ; -OPTIM = -O3 ; - -# Libs -LINKLIBS = -ldvdplay -ldvdread -ldvdcss -lmpeg2 -lavcodec -la52 -lmp3lame ; - -# OS specific -if $(OS) = BEOS +if $(OS) = UNKNOWN { - C++FLAGS += -Wno-multichar ; - LINKLIBS += -lbe ; + OS = CYGWIN ; } -else if $(OS) = LINUX + +if $(OS) = CYGWIN { - LINKLIBS += -lpthread ; + HANDBRAKE_LIBS = $(HANDBRAKE_LIBS) contrib/lib/libbz2.a contrib/lib/libz.a ; } -else if $(OS) = MACOSX + +if $(CSS) = 1 { - # needed to clean HandBrake.app - RM = rm -rf ; + HANDBRAKE_LIBS = $(HANDBRAKE_LIBS) contrib/lib/libdvdcss.a ; } -# Do not remove temporary object files -# There MUST be a cleaner way to do this -actions quietly updated piecemeal together RmTemps +# Interfaces +CLI_BIN = HandBrakeCLI ; +CLI_SRC = test/test.c + test/parsecsv.c ; +BEOS_BIN = HandBrake ; +BEOS_SRC = beos/HBApp.cpp beos/MainWindow.cpp beos/ScanWindow.cpp + beos/PicWindow.cpp beos/Stepper.cpp beos/QueueWindow.cpp ; +WX_BIN = wxHB ; +WX_SRC = wx/hbWizard.cpp wx/wxHB.cpp ; +UI_BIN = $(CLI_BIN) $(BEOS_BIN) $(WX_BIN) ; +UI_SRC = $(CLI_SRC) $(BEOS_SRC) $(WX_SRC) ; + +# CLI app +# Don't build the CLI from here if MACOSX, let xcode build it :) +if $(OS) != MACOSX { + Main $(CLI_BIN) : $(CLI_SRC) ; } -# Build HandBrake.app using ProjectBuilder -rule OSXApp +if $(OS) = BEOS { - Clean clean : $(1) ; - BuildOSXApp $(1) ; -} + Main HandBrake : $(BEOS_SRC) ; -actions BuildOSXApp + BeOSPackage HandBrake-$(HB_VERSION)-BeOS.zip : HandBrake ; + HB_PACKAGES += HandBrake-$(HB_VERSION)-BeOS.zip ; +} +if $(OS) = MACOSX { - $(RM) HandBrake.app ; - ( cd macosx && pbxbuild ) && mv macosx/build/HandBrake.app . ; - $(RM) macosx/build ; + OSX_SRC = macosx/main.mm macosx/Controller.h macosx/Controller.mm + macosx/PictureController.h macosx/PictureController.mm + macosx/HBQueueController.h macosx/HBQueueController.mm + macosx/HBAdvancedController.h macosx/HBAdvancedController.m + macosx/HBImageAndTextCell.h macosx/HBImageAndTextCell.m + macosx/HBPreferencesController.h macosx/HBPreferencesController.m + macosx/HBPresets.h macosx/HBPresets.m + macosx/English.lproj/InfoPlist.strings ; + + OSXApp HandBrake.app : $(OSX_SRC) $(HANDBRAKE_LIBS) ; + + # Package + OSXPackage HandBrake-$(HB_VERSION)-OSX.zip : HandBrake.app ; + HB_PACKAGES += HandBrake-$(HB_VERSION)-OSX.zip ; } - -Library core/libhb : core/Ac3Decoder.cpp core/AviMuxer.cpp - core/Common.cpp core/DVDReader.cpp core/Fifo.cpp - core/Manager.cpp core/Mp3Encoder.cpp - core/Mpeg2Decoder.cpp core/Mpeg4Encoder.cpp - core/MpegDemux.cpp core/Resizer.cpp - core/Scanner.cpp core/Thread.cpp ; - -LinkLibraries HBTest : core/libhb.a ; -Main HBTest : test/Test.cpp ; - -if $(OS) = BEOS +if $(OS) = LINUX { - LinkLibraries HandBrake : core/libhb.a ; - Main HandBrake : beos/HandBrake.cpp beos/MainWindow.cpp - beos/PictureWin.cpp ; + # WX UI outdated + #SystemLibraries $(WX_BIN) : -lpthread `wx-config --libs` ; + #ObjectC++Flags $(WX_SRC) : `wx-config --cflags` ; + #Main $(WX_BIN) : $(WX_SRC) ; } -if $(OS) = MACOSX +if $(OS) != MACOSX { - OSXApp HandBrake.app ; - Depends HandBrake.app : core/libhb.a ; - Depends all : HandBrake.app ; + ObjectHdrs $(UI_SRC) : $(TOP)/libhb ; + LinkLibraries $(UI_BIN) : $(HANDBRAKE_LIBS) ; } +# Packages +NotFile package ; +Depends package : $(HB_PACKAGES) ; +SubInclude TOP contrib ; +SubInclude TOP libhb ;