X-Git-Url: http://git.osdn.jp/view?a=blobdiff_plain;f=Jamfile;h=410b9e6f754b5dc601b975d7b60b0ae0fc91bb34;hb=6e499d70fd7147fec222062679e24550a4881892;hp=471473592b88955d54c87d6239f5bd416f9d9d1c;hpb=956508fd3e16d69d650deacd35f6742b57137726;p=handbrake-jp%2Fhandbrake-jp-git.git diff --git a/Jamfile b/Jamfile index 47147359..410b9e6f 100644 --- a/Jamfile +++ b/Jamfile @@ -1,87 +1,113 @@ -# $Id: Jamfile,v 1.41 2003/10/16 13:46:32 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.4.1 ; +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 ; -# 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 -ltracker ; + OS = CYGWIN ; } -else if $(OS) = LINUX -{ - LINKLIBS += -lpthread ; -} -else if $(OS) = MACOSX + +if $(OS) != CYGWIN { - # 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/PictureGLView.h macosx/PictureGLView.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/English.lproj/InfoPlist.strings + macosx/English.lproj/MainMenu.nib/classes.nib + macosx/English.lproj/MainMenu.nib/info.nib + macosx/English.lproj/MainMenu.nib/keyedobjects.nib + macosx/ExpressController.h macosx/ExpressController.m + macosx/English.lproj/Express.nib/classes.nib + macosx/English.lproj/Express.nib/info.nib + macosx/English.lproj/Express.nib/keyedobjects.nib + macosx/English.lproj/PictureSettings.nib/classes.nib + macosx/English.lproj/PictureSettings.nib/info.nib + macosx/English.lproj/PictureSettings.nib/keyedobjects.nib + macosx/English.lproj/AdvancedView.nib/classes.nib + macosx/English.lproj/AdvancedView.nib/info.nib + macosx/English.lproj/AdvancedView.nib/keyedobjects.nib + macosx/English.lproj/Queue.nib + macosx/English.lproj/Queue.nib/classes.nib + macosx/English.lproj/Queue.nib/info.nib + macosx/English.lproj/Queue.nib/keyedobjects.nib + macosx/English.lproj/Preferences.nib + macosx/English.lproj/Preferences.nib/classes.nib + macosx/English.lproj/Preferences.nib/info.nib + macosx/English.lproj/Preferences.nib/keyedobjects.nib ; + + 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 core/Worker.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 beos/ScanView.cpp - beos/RipView.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 ;