OSDN Git Service

BuildSystem: initial _skeleton_ asm support for libhb.
[handbrake-jp/handbrake-jp-git.git] / libhb / module.defs
1 $(eval $(call import.MODULE.defs,LIBHB,libhb,A52DEC BZIP2 FAAC FAAD2 FFMPEG LAME LIBDCA LIBDVDREAD LIBMKV LIBMP4V2 LIBOGG LIBSAMPLERATE LIBTHEORA LIBVORBIS MPEG2DEC X264 XVIDCORE ZLIB LIBHB TEST DOC))
2 $(eval $(call import.GCC,LIBHB))
3
4 LIBHB.src/   = $(SRC/)libhb/
5 LIBHB.build/ = $(BUILD/)libhb/
6
7 LIBHB.m4.in  = $(wildcard $(LIBHB.src/)*.m4)
8 LIBHB.m4.out = $(patsubst $(LIBHB.src/)%.m4,$(LIBHB.build/)%,$(LIBHB.m4.in))
9
10 LIBHB.c   = $(wildcard $(LIBHB.src/)*.c)
11 LIBHB.c.o = $(patsubst $(SRC/)%.c,$(BUILD/)%.o,$(LIBHB.c))
12 LIBHB.d   = $(LIBHB.m4.out) $(LIBHB.h.out) \
13     $(foreach n, \
14     A52DEC BZIP2 FAAC FAAD2 FFMPEG LAME LIBDCA LIBDVDREAD LIBMKV LIBMP4V2 LIBOGG \
15     LIBSAMPLERATE LIBTHEORA LIBVORBIS MPEG2DEC X264 XVIDCORE ZLIB, \
16     $($n.INSTALL.target) )
17
18 LIBHB.h.in  = $(wildcard $(LIBHB.src/)*.h)
19 LIBHB.h.out = $(patsubst $(SRC/)%,$(BUILD/)%,$(LIBHB.h.in))
20
21 ###############################################################################
22
23 LIBHB.a = $(LIBHB.build/)$(call TARGET.archive,hb)
24
25 ###############################################################################
26
27 LIBHB.out += $(LIBHB.m4.out)
28 LIBHB.out += $(LIBHB.c.o)
29 LIBHB.out += $(LIBHB.h.out)
30 LIBHB.out += $(LIBHB.a)
31
32 ###############################################################################
33
34 LIBHB.GCC.D += __LIBHB__ USE_PTHREAD
35 LIBHB.GCC.I += $(LIBHB.build/) $(CONTRIB.build/)include
36
37 ifeq ($(BUILD.system),cygwin)
38     LIBHB.GCC.D += SYS_CYGWIN
39 else ifeq ($(BUILD.system),darwin)
40     LIBHB.GCC.D += SYS_DARWIN
41 else ifeq ($(BUILD.system),linux)
42     LIBHB.GCC.D += SYS_LINUX _LARGEFILE_SOURCE _FILE_OFFSET_BITS=64
43 else
44     LIBHB.platform.D = SYS_UNKNOWN
45 endif
46
47 ## required for <libdvdread/*.h>
48 ifneq (,$(filter $(BUILD.arch),ppc ppc64))
49         LIBHB.GCC.D += WORDS_BIGENDIAN
50 endif
51
52 ###############################################################################
53
54 ## when defined this gives us the subdir name, or flavor of asm implementation
55 ifneq (disabled,$(FEATURE.asm))
56
57 LIBHB.yasm.src/   = $(LIBHB.src/)$(FEATURE.asm)/
58 LIBHB.yasm.build/ = $(LIBHB.build/)$(FEATURE.asm)/
59 LIBHB.yasm.asm    = $(LIBHB.yasm.src/)deinterlace-a.asm
60 LIBHB.yasm.o      = $(LIBHB.yasm.asm:$(LIBHB.yasm.src/)%.asm=$(LIBHB.yasm.build/)%.o)
61 LIBHB.yasm.d      = $(wildcard $(LIBHB.yasmsrc/)*.h)
62
63 LIBHB.YASM.I     = $(LIBHB.yasm.src/)
64 LIBHB.YASM.ASM_O = $(strip $(YASM.exe) \
65     -f $(LIBHB.YASM.f) \
66     -m $(LIBHB.YASM.m) \
67     $(LIBHB.YASM.D:%=-D%) \
68     $(LIBHB.YASM.I:%=-I%) \
69     -o $(1) $(2))
70
71 LIBHB.out += $(LIBHB.yasm.o)
72
73 endif
74
75 ###############################################################################
76
77 BUILD.out += $(LIBHB.out)