-# $Id: Jamfile,v 1.39 2004/02/18 17:21:00 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: <http://handbrake.m0k.org/>.
SubDir TOP ;
-HB_PACKAGES = ;
+# 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/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 ;
+
+if $(OS) = UNKNOWN
+{
+ OS = CYGWIN ;
+}
+
+if $(OS) != CYGWIN
+{
+ HANDBRAKE_LIBS = $(HANDBRAKE_LIBS) contrib/lib/libdvdcss.a ;
+}
+
+# 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
-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 ;
+# Don't build the CLI from here if MACOSX, let xcode build it :)
+if $(OS) != MACOSX
+{
+ Main $(CLI_BIN) : $(CLI_SRC) ;
+}
-# BeOS
if $(OS) = BEOS
{
- 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) ;
-}
+ Main HandBrake : $(BEOS_SRC) ;
-# OS X
+ BeOSPackage HandBrake-$(HB_VERSION)-BeOS.zip : HandBrake ;
+ HB_PACKAGES += HandBrake-$(HB_VERSION)-BeOS.zip ;
+}
if $(OS) = MACOSX
{
- # 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 ;
+ OSX_SRC = macosx/main.mm macosx/Controller.h macosx/Controller.mm
+ macosx/ScanController.h macosx/ScanController.mm
+ macosx/PictureController.h macosx/PictureController.mm
+ macosx/PictureGLView.h macosx/PictureGLView.mm
+ macosx/QueueController.h macosx/QueueController.mm
+ macosx/PrefsController.h macosx/PrefsController.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 ;
+
+ OSXApp HandBrake.app : $(OSX_SRC) $(HANDBRAKE_LIBS) ;
# Package
- OSXPackage HandBrake-$(HB_VERSION)-OSX.zip ;
- Depends HandBrake-$(HB_VERSION)-OSX.zip : HandBrake.app ;
+ OSXPackage HandBrake-$(HB_VERSION)-OSX.zip : HandBrake.app ;
HB_PACKAGES += HandBrake-$(HB_VERSION)-OSX.zip ;
}
-
-# GTK2
if $(OS) = LINUX
{
- 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) ;
+ # 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
+{
+ ObjectHdrs $(UI_SRC) : $(TOP)/libhb ;
+ LinkLibraries $(UI_BIN) : $(HANDBRAKE_LIBS) ;
+}
# Packages
NotFile package ;
Depends package : $(HB_PACKAGES) ;
SubInclude TOP contrib ;
-SubInclude TOP core ;
-
+SubInclude TOP libhb ;