From ba63f109eee66c5318f56946a666fd270af9bb62 Mon Sep 17 00:00:00 2001 From: Philippe Houdoin Date: Wed, 15 Apr 2009 18:44:38 +0000 Subject: [PATCH] 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 --- .../plugins/avcodec/libavcodec/x86/Jamfile | 71 +++++++++++++++++++ 1 file changed, 71 insertions(+) create mode 100644 src/add-ons/media/plugins/avcodec/libavcodec/x86/Jamfile diff --git a/src/add-ons/media/plugins/avcodec/libavcodec/x86/Jamfile b/src/add-ons/media/plugins/avcodec/libavcodec/x86/Jamfile new file mode 100644 index 0000000000..35a31e08f7 --- /dev/null +++ b/src/add-ons/media/plugins/avcodec/libavcodec/x86/Jamfile @@ -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 +; +