First step to build arch-specific libavcodec_$(TARGET_ARCH).a, in order

to support more than just x86. Not yet SubInclude'd, though.



git-svn-id: file:///srv/svn/repos/haiku/haiku/trunk@30179 a95241bf-73f2-0310-859d-f6bbb57e9c96
This commit is contained in:
Philippe Houdoin 2009-04-15 18:44:38 +00:00
parent 5f71b06ed7
commit ba63f109ee
1 changed files with 71 additions and 0 deletions

View File

@ -0,0 +1,71 @@
SubDir HAIKU_TOP src add-ons media plugins avcodec libavcodec x86 ;
SubDirHdrs [ FDirName $(SUBDIR) .. ] ;
SubDirHdrs [ FDirName $(SUBDIR) ../.. ] ;
SubDirHdrs [ FDirName $(SUBDIR) ../../libavutil ] ;
SubDirHdrs [ FDirName $(SUBDIR) ../../libswscale ] ;
# filter warnings we don't want here
TARGET_WARNING_CCFLAGS = [ FFilter $(TARGET_WARNING_CCFLAGS)
: -Wall -Wmissing-prototypes -Wsign-compare -Wpointer-arith ] ;
if $(HAIKU_GCC_VERSION[1]) >= 3 {
SubDirCcFlags -fomit-frame-pointer -fno-pic ;
} else {
SubDirCcFlags -fomit-frame-pointer -DPIC ;
}
local defines ;
defines = HAVE_AV_CONFIG_H=1 ;
if $(TARGET_ARCH) = x86 {
defines += ARCH_X86=1 ARCH_X86_32=1 ARCH_PPC=0 ARCH_SPARC=0 ;
defines += HAVE_AMD3DNOW=0 HAVE_AMD3DNOWEXT=0 ;
defines += HAVE_MMX=1 HAVE_MMX2=1 HAVE_SSE=0 HAVE_SSE3=1 ;
defines += HAVE_ALTIVEC=0 ;
defines += HAVE_VIS=0 ;
} else if $(TARGET_ARCH) = ppc {
defines += ARCH_X86=0 ARCH_X86_32=0 ARCH_PPC=1 ARCH_SPARC=0 ;
defines += HAVE_AMD3DNOW=0 HAVE_AMD3DNOWEXT=0 ;
defines += HAVE_MMX=0 HAVE_MMX2=0 HAVE_SSE=0 HAVE_SSE3=0 ;
defines += HAVE_ALTIVEC=1 ;
defines += HAVE_VIS=0 ;
} else if $(TARGET_ARCH) = sparc {
defines += ARCH_X86=0 ARCH_X86_32=0 ARCH_PPC=0 ARCH_SPARC=1 ;
defines += HAVE_AMD3DNOW=0 HAVE_AMD3DNOWEXT=0 ;
defines += HAVE_MMX=0 HAVE_MMX2=0 HAVE_SSE=0 HAVE_SSE3=0 ;
defines += HAVE_ALTIVEC=0 ;
defines += HAVE_VIS=1 ;
}
defines = [ FDefines $(defines) ] ;
SubDirCcFlags $(defines) ;
SubDirC++Flags $(defines) ;
StaticLibrary libavcodec_x86.a :
cpuid.c
cavsdsp_mmx.c
idct_mmx.c
idct_mmx_xvid.c
idct_sse2_xvid.c
dsputil_mmx.c
# dsputilenc_mmx.c
fft_3dn.c
fft_3dn2.c
fft_sse.c
h264_idct_sse2.nasm
h264_deblock_sse2.nasm
fft_mmx.nasm
dsputil_yasm.nasm
simple_idct_mmx.c
motion_est_mmx.c
mpegvideo_mmx.c
rv40dsp_mmx.c
vc1dsp_mmx.c
vp3dsp_mmx.c
vp3dsp_sse2.c
vp6dsp_mmx.c
vp6dsp_sse2.c
fdct_mmx.c
;