1 # $NetBSD: Makefile,v 1.22 2013/05/02 21:40:57 skrll Exp $ 2 3 NOLINT= 1 # defined 4 5 .include <bsd.own.mk> 6 7 LIB= pixman-1 8 9 DIST= ${X11SRCDIR.pixman}/pixman 10 .PATH: ${DIST} 11 12 SRCS= \ 13 pixman.c \ 14 pixman-access.c \ 15 pixman-access-accessors.c \ 16 pixman-bits-image.c \ 17 pixman-combine32.c \ 18 pixman-combine-float.c \ 19 pixman-conical-gradient.c \ 20 pixman-x86.c \ 21 pixman-mips.c \ 22 pixman-arm.c \ 23 pixman-ppc.c \ 24 pixman-edge.c \ 25 pixman-edge-accessors.c \ 26 pixman-fast-path.c \ 27 pixman-glyph.c \ 28 pixman-general.c \ 29 pixman-gradient-walker.c \ 30 pixman-image.c \ 31 pixman-implementation.c \ 32 pixman-linear-gradient.c \ 33 pixman-matrix.c \ 34 pixman-noop.c \ 35 pixman-radial-gradient.c \ 36 pixman-region16.c \ 37 pixman-region32.c \ 38 pixman-solid-fill.c \ 39 pixman-timer.c \ 40 pixman-trap.c \ 41 pixman-utils.c 42 43 # XXX 44 45 .if ${MACHINE_ARCH} == "i386" 46 # SSE2 does not work, for unknown reasons 47 SRCS+= pixman-mmx.c 48 COPTS.pixman-mmx.c= -mmmx -fvisibility=hidden 49 MKDEPFLAGS+= -mmmx -fvisibility=hidden 50 .elif ${MACHINE_ARCH} == "x86_64" 51 SRCS+= pixman-sse2.c 52 COPTS.pixman-sse2.c= -msse2 -fvisibility=hidden 53 CPPFLAGS+= -DUSE_SSE2 54 .endif 55 56 .if ${MACHINE_ARCH} == "powerpc" 57 SRCS+= pixman-vmx.c 58 COPTS.pixman-vmx.c= -maltivec 59 CPPFLAGS+= -DUSE_VMX 60 MKDEPFLAGS+= -maltivec 61 .endif 62 63 .if ${MACHINE_ARCH} == "earm" || ${MACHINE_ARCH} == "earmhf" 64 # ARM SIMD 65 SRCS+= pixman-arm-simd.c \ 66 pixman-arm-simd-asm.S 67 CPPFLAGS+= -DUSE_ARM_SIMD 68 # ARM NEON 69 SRCS+= pixman-arm-neon.c \ 70 pixman-arm-neon-asm.S \ 71 pixman-arm-neon-asm-bilinear.S 72 CPPFLAGS+= -DUSE_ARM_NEON 73 # ARM iwMMX 74 #SRCS+= pixman-mmx.c 75 #COPTS.pixman-mmx.c= -mcpu=iwmmxt 76 #CPPFLAGS+= -DUSE_ARM_IWMMXT 77 .endif 78 79 .if ${MACHINE} == "evbmips" 80 # Loongson MMI 81 SRCS+= pixman-mmx.c 82 CPPFLAGS+= -DUSE_LOONGSON_MMI 83 # SIMD instructions use floatpoint registers so we need to enable their use 84 COPTS.pixman-mmx.c= -march=loongson2f -mhard-float 85 .endif 86 87 INCS= pixman.h pixman-version.h 88 INCSDIR=${X11INCDIR}/pixman-1 89 90 CPPFLAGS+= -DHAVE_CONFIG_H \ 91 -I${X11SRCDIR.pixman}/../include \ 92 -I${X11SRCDIR.pixman}/../combine \ 93 -I${X11SRCDIR.pixman}/pixman 94 95 # With pixman 0.28.3, HAVE_PTHREAD_SETSPECIFIC is much faster than TLS 96 CPPFLAGS+= -DHAVE_PTHREAD_SETSPECIFIC 97 #CPPFLAGS+= -DTLS=__thread 98 99 LIBDPLIBS= m ${.CURDIR}/../../../../../lib/libm 100 101 PKGCONFIG= pixman-1 102 PKGDIST= pixman 103 104 .include <bsd.x11.mk> 105 .include <bsd.lib.mk> 106