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