OSDN Git Service

HandBrake 0.4
[handbrake-jp/handbrake-jp-git.git] / Jamfile
1 # $Id: Jamfile,v 1.38 2003/10/13 23:46:41 titer Exp $
2 #
3 # This file is part of the HandBrake source code.
4 # Homepage: <http://beos.titer.org/handbrake/>.
5 # It may be used under the terms of the GNU General Public License.
6
7 HB_VERSION = 0.4 ;
8
9 # Compilers
10 C++  = g++ ;
11 LINK = g++ ;
12
13 # Flags
14 C++FLAGS  = $(CPPFLAGS) ;
15 C++FLAGS += -g -Wall -Werror ;
16 C++FLAGS += -DVERSION=\\\"$(HB_VERSION)\\\" -DSYS_$(OS) ;
17 LINKFLAGS = $(LDFLAGS) ;
18 HDRS      = core ;
19
20 # Optims
21 C++FLAGS += -funroll-loops ;
22 OPTIM     = -O3 ;
23
24 # Libs
25 LINKLIBS = -ldvdplay -ldvdread -ldvdcss -lmpeg2 -lavcodec -la52 -lmp3lame ;
26
27 # OS specific
28 if $(OS) = BEOS
29 {
30     C++FLAGS += -Wno-multichar ;
31     LINKLIBS += -lbe -ltracker ;
32 }
33 else if $(OS) = LINUX
34 {
35     LINKLIBS += -lpthread ;
36 }
37 else if $(OS) = MACOSX
38 {
39     # needed to clean HandBrake.app
40     RM = rm -rf ;
41 }
42
43 # Do not remove temporary object files
44 # There MUST be a cleaner way to do this
45 actions quietly updated piecemeal together RmTemps
46 {
47 }
48
49 # Build HandBrake.app using ProjectBuilder
50 rule OSXApp
51 {
52     Clean clean : $(1) ;
53     BuildOSXApp $(1) ;
54 }
55
56 actions BuildOSXApp
57 {
58     $(RM) HandBrake.app ;
59     ( cd macosx && pbxbuild ) && mv macosx/build/HandBrake.app . ;
60     $(RM) macosx/build ;
61 }
62
63 Library core/libhb : core/Ac3Decoder.cpp core/AviMuxer.cpp
64                      core/Common.cpp core/DVDReader.cpp core/Fifo.cpp
65                      core/Manager.cpp core/Mp3Encoder.cpp
66                      core/Mpeg2Decoder.cpp core/Mpeg4Encoder.cpp
67                      core/MpegDemux.cpp core/Resizer.cpp
68                      core/Scanner.cpp core/Thread.cpp core/Worker.cpp ;
69
70 LinkLibraries HBTest : core/libhb.a ;
71 Main HBTest : test/Test.cpp ;
72
73 if $(OS) = BEOS
74 {
75     LinkLibraries HandBrake : core/libhb.a ;
76     Main HandBrake : beos/HandBrake.cpp beos/MainWindow.cpp
77                      beos/PictureWin.cpp beos/ScanView.cpp
78                      beos/RipView.cpp ;
79 }
80
81 if $(OS) = MACOSX
82 {
83     OSXApp HandBrake.app ;
84     Depends HandBrake.app : core/libhb.a ;
85     Depends all : HandBrake.app ;
86 }
87