# $Id: Jamfile,v 1.1 2004/06/03 19:27:06 fenrir Exp $ # # Compilers CC = gcc ; AS = nasm ; # Flags # To profile: -fprofile-arcs # Once done : -fbranch-probabilities CCFLAGS = -g -Wall -W ; # Globals defines DEFINES = DEBUG __X264__ ARCH_$(OSPLAT) SYS_$(OS) ; # Optims OPTIM = -O3 -funroll-loops ; # Headers rep HDRS = . common common/i386 decoder encoder ; SOURCES_C = common/mc.c common/predict.c common/pixel.c common/macroblock.c common/frame.c common/dct.c common/cpu.c common/cabac.c common/common.c common/mdate.c common/csp.c encoder/analyse.c encoder/me.c encoder/ratecontrol.c encoder/set.c encoder/macroblock.c encoder/cabac.c encoder/cavlc.c encoder/encoder.c encoder/eval.c ; SOURCES_X86 = common/i386/cpu-a.asm ; SOURCES_MMX = common/i386/mc-c.c common/i386/dct-c.c common/i386/predict.c common/i386/dct-a.asm common/i386/pixel-a.asm common/i386/mc-a.asm ; SOURCES_ALTIVEC = common/ppc/mc.c common/ppc/pixel.c ; # libx264 SOURCES_X264 = $(SOURCES_C) ; if $(OSPLAT) = X86 { DEFINES += HAVE_MMXEXT HAVE_SSE2 ; SOURCES_X264 += $(SOURCES_MMX) ; SOURCES_X264 += $(SOURCES_X86) ; ASFLAGS = -f elf ; if $(OS) != BEOS { DEFINES += HAVE_STDINT_H ; } if $(OS) != FREEBSD { DEFINES += HAVE_MALLOC_H ; } # Don't ask NOARUPDATE = false ; } if $(OSPLAT) = PPC { DEFINES += HAVE_STDINT_H ; SOURCES_X264 += $(SOURCES_ALTIVEC) ; OPTIM += -falign-loops=16 ; if $(OS) = MACOSX { CCFLAGS += -faltivec ; } if $(OS) = LINUX { CCFLAGS += -maltivec -mabi=altivec ; } } Library libx264 : $(SOURCES_X264) ; # x264 if $(OS) != BEOS { LINKLIBS += -lm ; } LinkLibraries x264 : libx264.a ; Main x264 : x264.c ; # checkasm LinkLibraries checkasm : libx264.a ; Main checkasm : testing/checkasm.c ; # XXX Do not remove *.o files actions quietly updated piecemeal together RmTemps { }