Refer to transitions in the presence-or-lack-thereof of progressive flags on MPEG...
[HandBrake.git] / libhb / Makefile
blob255cf21cdebc915a140f67dc1d3d800cd45ba916
1 include ../Makefile.config
3 SYSTEM = $(shell uname -s)
5 ifeq ($(findstring CYGWIN_NT,$(SYSTEM)),CYGWIN_NT)
6 SYSDEF=-DSYS_CYGWIN
7 endif
9 ifeq ($(SYSTEM),FreeBSD)
10 SYSDEF = -DSYS_FREEBSD
11 LDFLAGS += -pthread -lm
12 endif
14 ifeq ($(SYSTEM),NetBSD)
15 SYSDEF = -DSYS_NETBSD
16 LDFLAGS += -lpthread -lm
17 endif
19 ifeq ($(SYSTEM),Linux)
20 SYSDEF = -DSYS_LINUX $(HB_DEFPPC) -D_LARGEFILE_SOURCE -D_FILE_OFFSET_BITS=64
21 LDFLAGS += -lpthread -lm -ldl
22 endif
24 SRCS = common.c hb.c ports.c scan.c work.c decmpeg2.c encavcodec.c \
25 update.c demuxmpeg.c fifo.c render.c reader.c muxcommon.c stream.c \
26 muxmp4.c sync.c decsub.c deca52.c decdca.c encfaac.c declpcm.c encx264.c \
27 decavcodec.c encxvid.c muxmkv.c muxavi.c enclame.c muxogm.c encvorbis.c \
28 dvd.c ipodutil.cpp deblock.c deinterlace.c denoise.c detelecine.c lang.c
29 OTMP = $(SRCS:%.c=%.o)
30 OBJS = $(OTMP:%.cpp=%.o)
32 ifeq ($(findstring CYGWIN_NT,$(SYSTEM)),CYGWIN_NT)
33 CONTRIBS = ../contrib/lib/liba52.a ../contrib/lib/libavformat.a \
34 ../contrib/lib/libavcodec.a ../contrib/lib/libavutil.a \
35 ../contrib/lib/libdca.a ../contrib/lib/libdvdread.a \
36 ../contrib/lib/libfaac.a ../contrib/lib/libmp3lame.a \
37 ../contrib/lib/libmpeg2.a ../contrib/lib/libmpeg2convert.a \
38 ../contrib/lib/libvorbis.a ../contrib/lib/libvorbisenc.a \
39 ../contrib/lib/libvorbisfile.a ../contrib/lib/libogg.a \
40 ../contrib/lib/libsamplerate.a ../contrib/lib/libx264.a \
41 ../contrib/lib/libxvidcore.a ../contrib/lib/libmp4v2.a \
42 ../contrib/lib/libmkv.a ../contrib/lib/libswscale.a
43 else
44 CONTRIBS = ../contrib/lib/liba52.a ../contrib/lib/libavformat.a \
45 ../contrib/lib/libavcodec.a ../contrib/lib/libavutil.a \
46 ../contrib/lib/libdca.a ../contrib/lib/libdvdread.a \
47 ../contrib/lib/libdvdcss.a ../contrib/lib/libfaac.a \
48 ../contrib/lib/libmp3lame.a ../contrib/lib/libmpeg2.a \
49 ../contrib/lib/libmpeg2convert.a ../contrib/lib/libvorbis.a \
50 ../contrib/lib/libvorbisenc.a ../contrib/lib/libvorbisfile.a \
51 ../contrib/lib/libogg.a ../contrib/lib/libsamplerate.a \
52 ../contrib/lib/libx264.a ../contrib/lib/libxvidcore.a \
53 ../contrib/lib/libmp4v2.a ../contrib/lib/libmkv.a \
54 ../contrib/lib/libswscale.a
55 endif
57 CFLAGS += -I../contrib/include -D__LIBHB__ -DUSE_PTHREAD -DHB_VERSION=\"$(HB_VERSION)\" -DHB_BUILD=$(HB_BUILD) $(SYSDEF)
59 CXXFLAGS += -I../contrib/include -D__LIBHB__ -DUSE_PTHREAD -DHB_VERSION=\"$(HB_VERSION)\" -DHB_BUILD=$(HB_BUILD) $(SYSDEF)
61 ifeq ($(findstring CYGWIN_NT,$(SYSTEM)),CYGWIN_NT)
62 all: libhb.a libhb.dll
63 else
64 all: libhb.a libhb.so
66 endif
68 libhb.a: $(OBJS)
69 @echo "Library $@"
70 @ar ru $@ $(OBJS)
71 @ranlib $@
73 libhb.so: $(OBJS)
74 @echo "Shared library $@"
75 @g++ -o $@ $(OBJS) $(CONTRIBS) -shared $(CFLAGS) || \
76 ( echo "Compile line for $@ was:"; echo $$CMD; false )
78 libhb.dll: $(OBJS)
79 @echo "Shared library $@"
80 @g++ -o $@ $(OBJS) $(CONTRIBS) -shared $(CFLAGS) || \
81 ( echo "Compile line for $@ was:"; echo $$CMD; false )
83 %.o: %.c
84 @echo "Cc $@"
85 echo $(CC) $(CFLAGS)
86 @CMD="$(CC) $(CFLAGS) -o $@ -c $<"; $$CMD || \
87 ( echo "Compile line for $@ was:"; echo $$CMD; false )
89 %.o: %.cpp
90 @echo "Cc $@"
91 @CMD="$(CC) $(CFLAGS) -o $@ -c $<"; $$CMD || \
92 ( echo "Compile line for $@ was:"; echo $$CMD; false )
95 clean:
96 @echo "Clean libhb.a"
97 @$(RM) libhb.*
98 @echo "Clean libhb.so"
99 @$(RM) libhb.so
100 @echo "Clean $(OBJS)"
101 @$(RM) $(OBJS)
103 .depend: $(SRCS)
104 @echo "Checking dependencies..."
105 @$(RM) .depend
106 @$(foreach SRC, $(SRCS), $(CC) -MM $(SRC) $(CFLAGS) >> .depend;)
108 -include .depend