Update to pixman 0.10, with one small fix to the sse2 test in configure.ac.
This commit is contained in:
parent
edd5ee518b
commit
ba51a4b66c
1184
lib/pixman/ChangeLog
1184
lib/pixman/ChangeLog
File diff suppressed because it is too large
Load Diff
@ -4,3 +4,124 @@ pkgconfigdir=$(libdir)/pkgconfig
|
||||
pkgconfig_DATA=pixman-1.pc
|
||||
|
||||
$(pkgconfig_DATA): pixman-1.pc.in
|
||||
|
||||
snapshot:
|
||||
distdir="$(distdir)-`date '+%Y%m%d'`"; \
|
||||
test -d "$(srcdir)/.git" && distdir=$$distdir-`cd "$(srcdir)" && git-rev-parse HEAD | cut -c 1-6`; \
|
||||
$(MAKE) $(AM_MAKEFLAGS) distdir="$$distdir" dist
|
||||
|
||||
USERNAME=$$USER
|
||||
RELEASE_OR_SNAPSHOT = $$(if test "x$(CAIRO_VERSION_MINOR)" = "x$$(echo "$(CAIRO_VERSION_MINOR)/2*2" | bc)" ; then echo release; else echo snapshot; fi)
|
||||
RELEASE_CAIRO_HOST = $(USERNAME)@cairographics.org
|
||||
RELEASE_CAIRO_DIR = /srv/cairo.freedesktop.org/www/releases
|
||||
RELEASE_CAIRO_URL = http://cairographics.org/releases
|
||||
RELEASE_XORG_URL = http://xorg.freedesktop.org/archive/individual/lib
|
||||
RELEASE_XORG_HOST = $(USERNAME)@xorg.freedesktop.org
|
||||
RELEASE_XORG_DIR = /srv/xorg.freedesktop.org/archive/individual/lib
|
||||
RELEASE_ANNOUNCE_LIST = cairo-announce@cairographics.org, xorg-announce@lists.freedesktop.org
|
||||
|
||||
tar_gz = $(PACKAGE)-$(VERSION).tar.gz
|
||||
tar_bz2 = $(PACKAGE)-$(VERSION).tar.bz2
|
||||
|
||||
sha1_tgz = $(tar_gz).sha1
|
||||
md5_tgz = $(tar_gz).md5
|
||||
|
||||
sha1_tbz2 = $(tar_bz2).sha1
|
||||
md5_tbz2 = $(tar_bz2).md5
|
||||
|
||||
gpg_file = $(sha1_tgz).asc
|
||||
|
||||
$(sha1_tgz): $(tar_gz)
|
||||
sha1sum $^ > $@
|
||||
|
||||
$(md5_tgz): $(tar_gz)
|
||||
md5sum $^ > $@
|
||||
|
||||
$(sha1_tbz2): $(tar_bz2)
|
||||
sha1sum $^ > $@
|
||||
|
||||
$(md5_tbz2): $(tar_bz2)
|
||||
md5sum $^ > $@
|
||||
|
||||
$(gpg_file): $(sha1_tgz)
|
||||
@echo "Please enter your GPG password to sign the checksum."
|
||||
gpg --armor --sign $^
|
||||
|
||||
release-verify-newer:
|
||||
@echo -n "Checking that no $(VERSION) release already exists at $(RELEASE_XORG_HOST)..."
|
||||
@ssh $(RELEASE_XORG_HOST) test ! -e $(RELEASE_XORG_DIR)/$(tar_gz) \
|
||||
|| (echo "Ouch." && echo "Found: $(RELEASE_XORG_HOST):$(RELEASE_XORG_DIR)/$(tar_gz)" \
|
||||
&& echo "Refusing to try to generate a new release of the same name." \
|
||||
&& false)
|
||||
@ssh $(RELEASE_CAIRO_HOST) test ! -e $(RELEASE_CAIRO_DIR)/$(tar_gz) \
|
||||
|| (echo "Ouch." && echo "Found: $(RELEASE_CAIRO_HOST):$(RELEASE_CAIRO_DIR)/$(tar_gz)" \
|
||||
&& echo "Refusing to try to generate a new release of the same name." \
|
||||
&& false)
|
||||
@echo "Good."
|
||||
|
||||
release-remove-old:
|
||||
$(RM) $(tar_gz) $(tar_bz2) $(sha1_tgz) $(gpg_file)
|
||||
|
||||
ensure-prev:
|
||||
@if [[ "$(PREV)" == "" ]]; then \
|
||||
echo "" && \
|
||||
echo "You must set the PREV variable on the make command line to" && \
|
||||
echo "the git tag of the last release." && \
|
||||
echo "" && \
|
||||
echo "For example:" && \
|
||||
echo " make PREV=pixman-0.7.3" && \
|
||||
echo "" && \
|
||||
false; \
|
||||
fi
|
||||
|
||||
release-check: ensure-prev release-verify-newer release-remove-old distcheck
|
||||
|
||||
release-upload: release-check $(tar_gz) $(tar_bz2) $(sha1_tgz) $(gpg_file)
|
||||
mkdir -p releases
|
||||
scp $(tar_gz) $(sha1_tgz) $(gpg_file) $(RELEASE_CAIRO_HOST):$(RELEASE_CAIRO_DIR)
|
||||
scp $(tar_gz) $(tar_bz2) $(RELEASE_XORG_HOST):$(RELEASE_XORG_DIR)
|
||||
ssh $(RELEASE_CAIRO_HOST) "rm -f $(RELEASE_CAIRO_DIR)/LATEST-$(PACKAGE)-[0-9]* && ln -s $(tar_gz) $(RELEASE_CAIRO_DIR)/LATEST-$(PACKAGE)-$(VERSION)"
|
||||
git-tag -s -m "$(PACKAGE) $(VERSION) release" $(PACKAGE)-$(VERSION)
|
||||
|
||||
release-publish-message: $(sha1_tgz) $(md5_tgz) $(sha1_tbz2) $(md5_tbz2) ensure-prev
|
||||
@echo "Please follow the instructions in RELEASING to push stuff out and"
|
||||
@echo "send out the announcement mails. Here is the excerpt you need:"
|
||||
@echo ""
|
||||
@echo "Lists: $(RELEASE_ANNOUNCE_LIST)"
|
||||
@echo "Subject: [ANNOUNCE] $(PACKAGE) release $(VERSION) now available"
|
||||
@echo "============================== CUT HERE =============================="
|
||||
@echo "A new $(PACKAGE) release $(VERSION) is now available"
|
||||
@echo ""
|
||||
@echo "tar.gz:"
|
||||
@echo " $(RELEASE_CAIRO_URL)/$(tar_gz)"
|
||||
@echo " $(RELEASE_XORG_URL)/$(tar_gz)"
|
||||
@echo ""
|
||||
@echo "tar.bz2:"
|
||||
@echo " $(RELEASE_XORG_URL)/$(tar_bz2)"
|
||||
@echo ""
|
||||
@echo "Hashes:"
|
||||
@echo -n " MD5: "
|
||||
@cat $(md5_tgz)
|
||||
@echo -n " MD5: "
|
||||
@cat $(md5_tbz2)
|
||||
@echo -n " SHA1: "
|
||||
@cat $(sha1_tgz)
|
||||
@echo -n " SHA1: "
|
||||
@cat $(sha1_tbz2)
|
||||
@echo ""
|
||||
@echo "GPG signature:"
|
||||
@echo " $(RELEASE_CAIRO_URL)/$(gpg_file)"
|
||||
@echo " (signed by `getent passwd "$$USER" | cut -d: -f 5 | cut -d, -f 1`)"
|
||||
@echo ""
|
||||
@echo "Git:"
|
||||
@echo " git://git.freedesktop.org/git/pixman"
|
||||
@echo " tag: $(PACKAGE)-$(VERSION)"
|
||||
@echo ""
|
||||
@echo "Log:"
|
||||
@git-log --no-merges "$(PACKAGE)-$(PREV)".."$(PACKAGE)-$(VERSION)" | git shortlog | awk '{ printf "\t"; print ; }' | cut -b0-80
|
||||
@echo "============================== CUT HERE =============================="
|
||||
@echo ""
|
||||
|
||||
release-publish: release-upload release-publish-message
|
||||
|
||||
.PHONY: release-upload release-publish release-publish-message
|
||||
|
@ -1,5 +1,5 @@
|
||||
# $OpenBSD: Makefile.bsd-wrapper,v 1.4 2007/12/10 21:30:21 matthieu Exp $
|
||||
# $OpenBSD: Makefile.bsd-wrapper,v 1.5 2008/04/08 19:00:25 matthieu Exp $
|
||||
|
||||
SHARED_LIBS= pixman-1 10.0
|
||||
SHARED_LIBS= pixman-1 11.0
|
||||
|
||||
.include <bsd.xorg.mk>
|
||||
|
@ -138,13 +138,19 @@ PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PIXMAN_MAJOR = @PIXMAN_MAJOR@
|
||||
PIXMAN_VERSION_MAJOR = @PIXMAN_VERSION_MAJOR@
|
||||
PIXMAN_VERSION_MICRO = @PIXMAN_VERSION_MICRO@
|
||||
PIXMAN_VERSION_MINOR = @PIXMAN_VERSION_MINOR@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
RANLIB = @RANLIB@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
SSE_CFLAGS = @SSE_CFLAGS@
|
||||
STRIP = @STRIP@
|
||||
USE_MMX_FALSE = @USE_MMX_FALSE@
|
||||
USE_MMX_TRUE = @USE_MMX_TRUE@
|
||||
USE_SSE2_FALSE = @USE_SSE2_FALSE@
|
||||
USE_SSE2_TRUE = @USE_SSE2_TRUE@
|
||||
USE_SSE_FALSE = @USE_SSE_FALSE@
|
||||
USE_SSE_TRUE = @USE_SSE_TRUE@
|
||||
VERSION = @VERSION@
|
||||
@ -154,6 +160,7 @@ ac_ct_CXX = @ac_ct_CXX@
|
||||
ac_ct_F77 = @ac_ct_F77@
|
||||
ac_ct_RANLIB = @ac_ct_RANLIB@
|
||||
ac_ct_STRIP = @ac_ct_STRIP@
|
||||
ac_pt_PKG_CONFIG = @ac_pt_PKG_CONFIG@
|
||||
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
|
||||
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
||||
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
|
||||
@ -194,6 +201,22 @@ target_alias = @target_alias@
|
||||
SUBDIRS = pixman test
|
||||
pkgconfigdir = $(libdir)/pkgconfig
|
||||
pkgconfig_DATA = pixman-1.pc
|
||||
USERNAME = $$USER
|
||||
RELEASE_OR_SNAPSHOT = $$(if test "x$(CAIRO_VERSION_MINOR)" = "x$$(echo "$(CAIRO_VERSION_MINOR)/2*2" | bc)" ; then echo release; else echo snapshot; fi)
|
||||
RELEASE_CAIRO_HOST = $(USERNAME)@cairographics.org
|
||||
RELEASE_CAIRO_DIR = /srv/cairo.freedesktop.org/www/releases
|
||||
RELEASE_CAIRO_URL = http://cairographics.org/releases
|
||||
RELEASE_XORG_URL = http://xorg.freedesktop.org/archive/individual/lib
|
||||
RELEASE_XORG_HOST = $(USERNAME)@xorg.freedesktop.org
|
||||
RELEASE_XORG_DIR = /srv/xorg.freedesktop.org/archive/individual/lib
|
||||
RELEASE_ANNOUNCE_LIST = cairo-announce@cairographics.org, xorg-announce@lists.freedesktop.org
|
||||
tar_gz = $(PACKAGE)-$(VERSION).tar.gz
|
||||
tar_bz2 = $(PACKAGE)-$(VERSION).tar.bz2
|
||||
sha1_tgz = $(tar_gz).sha1
|
||||
md5_tgz = $(tar_gz).md5
|
||||
sha1_tbz2 = $(tar_bz2).sha1
|
||||
md5_tbz2 = $(tar_bz2).md5
|
||||
gpg_file = $(sha1_tgz).asc
|
||||
all: config.h
|
||||
$(MAKE) $(AM_MAKEFLAGS) all-recursive
|
||||
|
||||
@ -413,7 +436,7 @@ distclean-tags:
|
||||
distdir: $(DISTFILES)
|
||||
$(am__remove_distdir)
|
||||
mkdir $(distdir)
|
||||
$(mkdir_p) $(distdir)/.
|
||||
$(mkdir_p) $(distdir)/. $(distdir)/pixman
|
||||
@srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`; \
|
||||
topsrcdirstrip=`echo "$(top_srcdir)" | sed 's|.|.|g'`; \
|
||||
list='$(DISTFILES)'; for file in $$list; do \
|
||||
@ -655,6 +678,106 @@ uninstall-info: uninstall-info-recursive
|
||||
|
||||
|
||||
$(pkgconfig_DATA): pixman-1.pc.in
|
||||
|
||||
snapshot:
|
||||
distdir="$(distdir)-`date '+%Y%m%d'`"; \
|
||||
test -d "$(srcdir)/.git" && distdir=$$distdir-`cd "$(srcdir)" && git-rev-parse HEAD | cut -c 1-6`; \
|
||||
$(MAKE) $(AM_MAKEFLAGS) distdir="$$distdir" dist
|
||||
|
||||
$(sha1_tgz): $(tar_gz)
|
||||
sha1sum $^ > $@
|
||||
|
||||
$(md5_tgz): $(tar_gz)
|
||||
md5sum $^ > $@
|
||||
|
||||
$(sha1_tbz2): $(tar_bz2)
|
||||
sha1sum $^ > $@
|
||||
|
||||
$(md5_tbz2): $(tar_bz2)
|
||||
md5sum $^ > $@
|
||||
|
||||
$(gpg_file): $(sha1_tgz)
|
||||
@echo "Please enter your GPG password to sign the checksum."
|
||||
gpg --armor --sign $^
|
||||
|
||||
release-verify-newer:
|
||||
@echo -n "Checking that no $(VERSION) release already exists at $(RELEASE_XORG_HOST)..."
|
||||
@ssh $(RELEASE_XORG_HOST) test ! -e $(RELEASE_XORG_DIR)/$(tar_gz) \
|
||||
|| (echo "Ouch." && echo "Found: $(RELEASE_XORG_HOST):$(RELEASE_XORG_DIR)/$(tar_gz)" \
|
||||
&& echo "Refusing to try to generate a new release of the same name." \
|
||||
&& false)
|
||||
@ssh $(RELEASE_CAIRO_HOST) test ! -e $(RELEASE_CAIRO_DIR)/$(tar_gz) \
|
||||
|| (echo "Ouch." && echo "Found: $(RELEASE_CAIRO_HOST):$(RELEASE_CAIRO_DIR)/$(tar_gz)" \
|
||||
&& echo "Refusing to try to generate a new release of the same name." \
|
||||
&& false)
|
||||
@echo "Good."
|
||||
|
||||
release-remove-old:
|
||||
$(RM) $(tar_gz) $(tar_bz2) $(sha1_tgz) $(gpg_file)
|
||||
|
||||
ensure-prev:
|
||||
@if [[ "$(PREV)" == "" ]]; then \
|
||||
echo "" && \
|
||||
echo "You must set the PREV variable on the make command line to" && \
|
||||
echo "the git tag of the last release." && \
|
||||
echo "" && \
|
||||
echo "For example:" && \
|
||||
echo " make PREV=pixman-0.7.3" && \
|
||||
echo "" && \
|
||||
false; \
|
||||
fi
|
||||
|
||||
release-check: ensure-prev release-verify-newer release-remove-old distcheck
|
||||
|
||||
release-upload: release-check $(tar_gz) $(tar_bz2) $(sha1_tgz) $(gpg_file)
|
||||
mkdir -p releases
|
||||
scp $(tar_gz) $(sha1_tgz) $(gpg_file) $(RELEASE_CAIRO_HOST):$(RELEASE_CAIRO_DIR)
|
||||
scp $(tar_gz) $(tar_bz2) $(RELEASE_XORG_HOST):$(RELEASE_XORG_DIR)
|
||||
ssh $(RELEASE_CAIRO_HOST) "rm -f $(RELEASE_CAIRO_DIR)/LATEST-$(PACKAGE)-[0-9]* && ln -s $(tar_gz) $(RELEASE_CAIRO_DIR)/LATEST-$(PACKAGE)-$(VERSION)"
|
||||
git-tag -s -m "$(PACKAGE) $(VERSION) release" $(PACKAGE)-$(VERSION)
|
||||
|
||||
release-publish-message: $(sha1_tgz) $(md5_tgz) $(sha1_tbz2) $(md5_tbz2) ensure-prev
|
||||
@echo "Please follow the instructions in RELEASING to push stuff out and"
|
||||
@echo "send out the announcement mails. Here is the excerpt you need:"
|
||||
@echo ""
|
||||
@echo "Lists: $(RELEASE_ANNOUNCE_LIST)"
|
||||
@echo "Subject: [ANNOUNCE] $(PACKAGE) release $(VERSION) now available"
|
||||
@echo "============================== CUT HERE =============================="
|
||||
@echo "A new $(PACKAGE) release $(VERSION) is now available"
|
||||
@echo ""
|
||||
@echo "tar.gz:"
|
||||
@echo " $(RELEASE_CAIRO_URL)/$(tar_gz)"
|
||||
@echo " $(RELEASE_XORG_URL)/$(tar_gz)"
|
||||
@echo ""
|
||||
@echo "tar.bz2:"
|
||||
@echo " $(RELEASE_XORG_URL)/$(tar_bz2)"
|
||||
@echo ""
|
||||
@echo "Hashes:"
|
||||
@echo -n " MD5: "
|
||||
@cat $(md5_tgz)
|
||||
@echo -n " MD5: "
|
||||
@cat $(md5_tbz2)
|
||||
@echo -n " SHA1: "
|
||||
@cat $(sha1_tgz)
|
||||
@echo -n " SHA1: "
|
||||
@cat $(sha1_tbz2)
|
||||
@echo ""
|
||||
@echo "GPG signature:"
|
||||
@echo " $(RELEASE_CAIRO_URL)/$(gpg_file)"
|
||||
@echo " (signed by `getent passwd "$$USER" | cut -d: -f 5 | cut -d, -f 1`)"
|
||||
@echo ""
|
||||
@echo "Git:"
|
||||
@echo " git://git.freedesktop.org/git/pixman"
|
||||
@echo " tag: $(PACKAGE)-$(VERSION)"
|
||||
@echo ""
|
||||
@echo "Log:"
|
||||
@git-log --no-merges "$(PACKAGE)-$(PREV)".."$(PACKAGE)-$(VERSION)" | git shortlog | awk '{ printf "\t"; print ; }' | cut -b0-80
|
||||
@echo "============================== CUT HERE =============================="
|
||||
@echo ""
|
||||
|
||||
release-publish: release-upload release-publish-message
|
||||
|
||||
.PHONY: release-upload release-publish release-publish-message
|
||||
# Tell versions [3.59,3.63) of GNU make to not export all variables.
|
||||
# Otherwise a system limit (for SysV at least) may be exceeded.
|
||||
.NOEXPORT:
|
||||
|
@ -1,3 +1,43 @@
|
||||
- Update the RLEASING file
|
||||
|
||||
- Things to keep in mind if breaking ABI:
|
||||
|
||||
- There should be a guard #ifndef I_AM_EITHER_CAIRO_OR_THE_X_SERVER
|
||||
|
||||
- X server will require 16.16 essentially forever. Can we get
|
||||
the required precision by simply adding offset_x/y to the
|
||||
relevant rendering API?
|
||||
|
||||
- pixman_image_set_indexed() should copy its argument, and X
|
||||
should be ported over to use a pixman_image as the
|
||||
representation of a Picture, rather than creating one on each
|
||||
operation.
|
||||
|
||||
- We should get rid of pixman_set_static_pointers()
|
||||
|
||||
- We should get rid of the various trapezoid helper functions().
|
||||
(They only exist because they are theoretically available to
|
||||
drivers).
|
||||
|
||||
- Regions should become 32 bit
|
||||
|
||||
- There should only be one trap rasterization API.
|
||||
|
||||
- The PIXMAN_g8/c8/etc formats should use the A channel
|
||||
to indicate the actual depth. That way PIXMAN_x4c4 and PIXMAN_c8
|
||||
won't collide.
|
||||
|
||||
- Make pixman_region_point_in() survive a NULL box, then fix up
|
||||
pixman-compose.c
|
||||
|
||||
- Test suite
|
||||
|
||||
- Add a general way of dealing with architecture specific
|
||||
fast-paths. The current idea is to have each operation that can
|
||||
be optimized is called through a function pointer that is
|
||||
initially set to an initialization function that is responsible for
|
||||
setting the function pointer to the appropriate fast-path.
|
||||
|
||||
- Go through things marked FIXME
|
||||
|
||||
- Add calls to prepare and finish access where necessary. grep for
|
||||
@ -22,21 +62,23 @@
|
||||
IC_SHIFT to 5 for all machines.
|
||||
|
||||
- Consider whether calling regions region16 is really such a great
|
||||
idea Vlad wants 32 bit regions for Cairo. This will break X server
|
||||
idea. Vlad wants 32 bit regions for Cairo. This will break X server
|
||||
ABI, but should otherwise be mostly harmless, though a
|
||||
pixman_region_get_boxes16() may be useful.
|
||||
|
||||
- Make source clipping optional.
|
||||
- done: source clipping happens through an indirection.
|
||||
still needs to make the indirection settable. (And call it
|
||||
from X)
|
||||
|
||||
- Consider optimizing the 8/16 bit solid fills in pixman-util.c by
|
||||
storing more than one value at a time.
|
||||
|
||||
- Add an image cache to prevent excessive malloc/free. Note that pixman
|
||||
needs to be thread safe when used from cairo.
|
||||
|
||||
- Moving to 24.8 coordinates. This is tricky because X is still
|
||||
defined as 16.16 and will be basically forever. It's possible we
|
||||
could do this by adding extra offset_x/y parameters to the
|
||||
trapezoid calls. The X server could then just call the API with
|
||||
(0, 0). Cairo would have to make sure that the delta *within* a
|
||||
batch of trapezoids does not exceed 16 bit.
|
||||
|
||||
- Review the pixman_format_code_t enum to make sure it will support
|
||||
future formats. Some formats we will probably need:
|
||||
|
||||
@ -78,11 +120,26 @@
|
||||
It may make sense to have a PIXMAN_TYPE_YUV, and then use the
|
||||
channel bits to specify the exact subtype.
|
||||
|
||||
Another possibility is to add
|
||||
|
||||
PIXMAN_TYPE_ARGB_W
|
||||
PIXMAN_TYPE_ARGB_WW
|
||||
|
||||
where the channel widths would get 16 and 32 added to them,
|
||||
respectively.
|
||||
|
||||
What about color spaces such a linear vs. srGB etc.?
|
||||
|
||||
|
||||
done:
|
||||
|
||||
- Get rid of the switch-of-doom; replace it with a big table
|
||||
describing the various fast paths.
|
||||
|
||||
- Make source clipping optional.
|
||||
- done: source clipping happens through an indirection.
|
||||
still needs to make the indirection settable. (And call it
|
||||
from X)
|
||||
|
||||
- Run cairo test suite; fix bugs
|
||||
- one bug in source-scale-clip
|
||||
|
||||
|
158
lib/pixman/aclocal.m4
vendored
158
lib/pixman/aclocal.m4
vendored
@ -6396,6 +6396,164 @@ SED=$lt_cv_path_SED
|
||||
AC_MSG_RESULT([$SED])
|
||||
])
|
||||
|
||||
# pkg.m4 - Macros to locate and utilise pkg-config. -*- Autoconf -*-
|
||||
#
|
||||
# Copyright © 2004 Scott James Remnant <scott@netsplit.com>.
|
||||
#
|
||||
# This program is free software; you can redistribute it and/or modify
|
||||
# it under the terms of the GNU General Public License as published by
|
||||
# the Free Software Foundation; either version 2 of the License, or
|
||||
# (at your option) any later version.
|
||||
#
|
||||
# This program is distributed in the hope that it will be useful, but
|
||||
# WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
|
||||
# General Public License for more details.
|
||||
#
|
||||
# You should have received a copy of the GNU General Public License
|
||||
# along with this program; if not, write to the Free Software
|
||||
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA 02111-1307, USA.
|
||||
#
|
||||
# As a special exception to the GNU General Public License, if you
|
||||
# distribute this file as part of a program that contains a
|
||||
# configuration script generated by Autoconf, you may include it under
|
||||
# the same distribution terms that you use for the rest of that program.
|
||||
|
||||
# PKG_PROG_PKG_CONFIG([MIN-VERSION])
|
||||
# ----------------------------------
|
||||
AC_DEFUN([PKG_PROG_PKG_CONFIG],
|
||||
[m4_pattern_forbid([^_?PKG_[A-Z_]+$])
|
||||
m4_pattern_allow([^PKG_CONFIG(_PATH)?$])
|
||||
AC_ARG_VAR([PKG_CONFIG], [path to pkg-config utility])dnl
|
||||
if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
|
||||
AC_PATH_TOOL([PKG_CONFIG], [pkg-config])
|
||||
fi
|
||||
if test -n "$PKG_CONFIG"; then
|
||||
_pkg_min_version=m4_default([$1], [0.9.0])
|
||||
AC_MSG_CHECKING([pkg-config is at least version $_pkg_min_version])
|
||||
if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
|
||||
AC_MSG_RESULT([yes])
|
||||
else
|
||||
AC_MSG_RESULT([no])
|
||||
PKG_CONFIG=""
|
||||
fi
|
||||
|
||||
fi[]dnl
|
||||
])# PKG_PROG_PKG_CONFIG
|
||||
|
||||
# PKG_CHECK_EXISTS(MODULES, [ACTION-IF-FOUND], [ACTION-IF-NOT-FOUND])
|
||||
#
|
||||
# Check to see whether a particular set of modules exists. Similar
|
||||
# to PKG_CHECK_MODULES(), but does not set variables or print errors.
|
||||
#
|
||||
#
|
||||
# Similar to PKG_CHECK_MODULES, make sure that the first instance of
|
||||
# this or PKG_CHECK_MODULES is called, or make sure to call
|
||||
# PKG_CHECK_EXISTS manually
|
||||
# --------------------------------------------------------------
|
||||
AC_DEFUN([PKG_CHECK_EXISTS],
|
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
|
||||
if test -n "$PKG_CONFIG" && \
|
||||
AC_RUN_LOG([$PKG_CONFIG --exists --print-errors "$1"]); then
|
||||
m4_ifval([$2], [$2], [:])
|
||||
m4_ifvaln([$3], [else
|
||||
$3])dnl
|
||||
fi])
|
||||
|
||||
|
||||
# _PKG_CONFIG([VARIABLE], [COMMAND], [MODULES])
|
||||
# ---------------------------------------------
|
||||
m4_define([_PKG_CONFIG],
|
||||
[if test -n "$PKG_CONFIG"; then
|
||||
if test -n "$$1"; then
|
||||
pkg_cv_[]$1="$$1"
|
||||
else
|
||||
PKG_CHECK_EXISTS([$3],
|
||||
[pkg_cv_[]$1=`$PKG_CONFIG --[]$2 "$3" 2>/dev/null`],
|
||||
[pkg_failed=yes])
|
||||
fi
|
||||
else
|
||||
pkg_failed=untried
|
||||
fi[]dnl
|
||||
])# _PKG_CONFIG
|
||||
|
||||
# _PKG_SHORT_ERRORS_SUPPORTED
|
||||
# -----------------------------
|
||||
AC_DEFUN([_PKG_SHORT_ERRORS_SUPPORTED],
|
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])
|
||||
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
|
||||
_pkg_short_errors_supported=yes
|
||||
else
|
||||
_pkg_short_errors_supported=no
|
||||
fi[]dnl
|
||||
])# _PKG_SHORT_ERRORS_SUPPORTED
|
||||
|
||||
|
||||
# PKG_CHECK_MODULES(VARIABLE-PREFIX, MODULES, [ACTION-IF-FOUND],
|
||||
# [ACTION-IF-NOT-FOUND])
|
||||
#
|
||||
#
|
||||
# Note that if there is a possibility the first call to
|
||||
# PKG_CHECK_MODULES might not happen, you should be sure to include an
|
||||
# explicit call to PKG_PROG_PKG_CONFIG in your configure.ac
|
||||
#
|
||||
#
|
||||
# --------------------------------------------------------------
|
||||
AC_DEFUN([PKG_CHECK_MODULES],
|
||||
[AC_REQUIRE([PKG_PROG_PKG_CONFIG])dnl
|
||||
AC_ARG_VAR([$1][_CFLAGS], [C compiler flags for $1, overriding pkg-config])dnl
|
||||
AC_ARG_VAR([$1][_LIBS], [linker flags for $1, overriding pkg-config])dnl
|
||||
|
||||
pkg_failed=no
|
||||
AC_MSG_CHECKING([for $1])
|
||||
|
||||
_PKG_CONFIG([$1][_CFLAGS], [cflags], [$2])
|
||||
_PKG_CONFIG([$1][_LIBS], [libs], [$2])
|
||||
|
||||
m4_define([_PKG_TEXT], [Alternatively, you may set the environment variables $1[]_CFLAGS
|
||||
and $1[]_LIBS to avoid the need to call pkg-config.
|
||||
See the pkg-config man page for more details.])
|
||||
|
||||
if test $pkg_failed = yes; then
|
||||
_PKG_SHORT_ERRORS_SUPPORTED
|
||||
if test $_pkg_short_errors_supported = yes; then
|
||||
$1[]_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "$2"`
|
||||
else
|
||||
$1[]_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "$2"`
|
||||
fi
|
||||
# Put the nasty error message in config.log where it belongs
|
||||
echo "$$1[]_PKG_ERRORS" >&AS_MESSAGE_LOG_FD
|
||||
|
||||
ifelse([$4], , [AC_MSG_ERROR(dnl
|
||||
[Package requirements ($2) were not met:
|
||||
|
||||
$$1_PKG_ERRORS
|
||||
|
||||
Consider adjusting the PKG_CONFIG_PATH environment variable if you
|
||||
installed software in a non-standard prefix.
|
||||
|
||||
_PKG_TEXT
|
||||
])],
|
||||
[AC_MSG_RESULT([no])
|
||||
$4])
|
||||
elif test $pkg_failed = untried; then
|
||||
ifelse([$4], , [AC_MSG_FAILURE(dnl
|
||||
[The pkg-config script could not be found or is too old. Make sure it
|
||||
is in your PATH or set the PKG_CONFIG environment variable to the full
|
||||
path to pkg-config.
|
||||
|
||||
_PKG_TEXT
|
||||
|
||||
To get pkg-config, see <http://www.freedesktop.org/software/pkgconfig>.])],
|
||||
[$4])
|
||||
else
|
||||
$1[]_CFLAGS=$pkg_cv_[]$1[]_CFLAGS
|
||||
$1[]_LIBS=$pkg_cv_[]$1[]_LIBS
|
||||
AC_MSG_RESULT([yes])
|
||||
ifelse([$3], , :, [$3])
|
||||
fi[]dnl
|
||||
])# PKG_CHECK_MODULES
|
||||
|
||||
# Copyright (C) 2002, 2003, 2005 Free Software Foundation, Inc.
|
||||
#
|
||||
# This file is free software; the Free Software Foundation
|
||||
|
@ -60,6 +60,9 @@
|
||||
/* use SSE compiler intrinsics */
|
||||
#undef USE_SSE
|
||||
|
||||
/* use SSE compiler intrinsics */
|
||||
#undef USE_SSE2
|
||||
|
||||
/* Version number of package */
|
||||
#undef VERSION
|
||||
|
||||
|
416
lib/pixman/configure
vendored
416
lib/pixman/configure
vendored
@ -1,6 +1,6 @@
|
||||
#! /bin/sh
|
||||
# Guess values for system-dependent variables and create Makefiles.
|
||||
# Generated by GNU Autoconf 2.59 for pixman 0.9.6.
|
||||
# Generated by GNU Autoconf 2.59 for pixman 0.10.0.
|
||||
#
|
||||
# Report bugs to <"sandmann@daimi.au.dk">.
|
||||
#
|
||||
@ -423,8 +423,8 @@ SHELL=${CONFIG_SHELL-/bin/sh}
|
||||
# Identity of this package.
|
||||
PACKAGE_NAME='pixman'
|
||||
PACKAGE_TARNAME='pixman'
|
||||
PACKAGE_VERSION='0.9.6'
|
||||
PACKAGE_STRING='pixman 0.9.6'
|
||||
PACKAGE_VERSION='0.10.0'
|
||||
PACKAGE_STRING='pixman 0.10.0'
|
||||
PACKAGE_BUGREPORT='"sandmann@daimi.au.dk"'
|
||||
|
||||
# Factoring default headers for most tests.
|
||||
@ -464,7 +464,7 @@ ac_includes_default="\
|
||||
# include <unistd.h>
|
||||
#endif"
|
||||
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE build build_cpu build_vendor build_os host host_cpu host_vendor host_os EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CPP CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL PIXMAN_MAJOR LT_VERSION_INFO USE_MMX_TRUE USE_MMX_FALSE USE_SSE_TRUE USE_SSE_FALSE MMX_CFLAGS HAVE_GTK_TRUE HAVE_GTK_FALSE GTK_CFLAGS GTK_LIBS DEP_CFLAGS DEP_LIBS LIBOBJS LTLIBOBJS'
|
||||
ac_subst_vars='SHELL PATH_SEPARATOR PACKAGE_NAME PACKAGE_TARNAME PACKAGE_VERSION PACKAGE_STRING PACKAGE_BUGREPORT exec_prefix prefix program_transform_name bindir sbindir libexecdir datadir sysconfdir sharedstatedir localstatedir libdir includedir oldincludedir infodir mandir build_alias host_alias target_alias DEFS ECHO_C ECHO_N ECHO_T LIBS INSTALL_PROGRAM INSTALL_SCRIPT INSTALL_DATA CYGPATH_W PACKAGE VERSION ACLOCAL AUTOCONF AUTOMAKE AUTOHEADER MAKEINFO install_sh STRIP ac_ct_STRIP INSTALL_STRIP_PROGRAM mkdir_p AWK SET_MAKE am__leading_dot AMTAR am__tar am__untar CC CFLAGS LDFLAGS CPPFLAGS ac_ct_CC EXEEXT OBJEXT DEPDIR am__include am__quote AMDEP_TRUE AMDEP_FALSE AMDEPBACKSLASH CCDEPMODE am__fastdepCC_TRUE am__fastdepCC_FALSE build build_cpu build_vendor build_os host host_cpu host_vendor host_os EGREP LN_S ECHO AR ac_ct_AR RANLIB ac_ct_RANLIB CPP CXX CXXFLAGS ac_ct_CXX CXXDEPMODE am__fastdepCXX_TRUE am__fastdepCXX_FALSE CXXCPP F77 FFLAGS ac_ct_F77 LIBTOOL PIXMAN_VERSION_MAJOR PIXMAN_VERSION_MINOR PIXMAN_VERSION_MICRO LT_VERSION_INFO USE_MMX_TRUE USE_MMX_FALSE USE_SSE_TRUE USE_SSE_FALSE USE_SSE2_TRUE USE_SSE2_FALSE MMX_CFLAGS SSE_CFLAGS PKG_CONFIG ac_pt_PKG_CONFIG GTK_CFLAGS GTK_LIBS HAVE_GTK_TRUE HAVE_GTK_FALSE DEP_CFLAGS DEP_LIBS LIBOBJS LTLIBOBJS'
|
||||
ac_subst_files=''
|
||||
|
||||
# Initialize some variables set by options.
|
||||
@ -945,6 +945,18 @@ ac_env_FFLAGS_set=${FFLAGS+set}
|
||||
ac_env_FFLAGS_value=$FFLAGS
|
||||
ac_cv_env_FFLAGS_set=${FFLAGS+set}
|
||||
ac_cv_env_FFLAGS_value=$FFLAGS
|
||||
ac_env_PKG_CONFIG_set=${PKG_CONFIG+set}
|
||||
ac_env_PKG_CONFIG_value=$PKG_CONFIG
|
||||
ac_cv_env_PKG_CONFIG_set=${PKG_CONFIG+set}
|
||||
ac_cv_env_PKG_CONFIG_value=$PKG_CONFIG
|
||||
ac_env_GTK_CFLAGS_set=${GTK_CFLAGS+set}
|
||||
ac_env_GTK_CFLAGS_value=$GTK_CFLAGS
|
||||
ac_cv_env_GTK_CFLAGS_set=${GTK_CFLAGS+set}
|
||||
ac_cv_env_GTK_CFLAGS_value=$GTK_CFLAGS
|
||||
ac_env_GTK_LIBS_set=${GTK_LIBS+set}
|
||||
ac_env_GTK_LIBS_value=$GTK_LIBS
|
||||
ac_cv_env_GTK_LIBS_set=${GTK_LIBS+set}
|
||||
ac_cv_env_GTK_LIBS_value=$GTK_LIBS
|
||||
|
||||
#
|
||||
# Report the --help message.
|
||||
@ -953,7 +965,7 @@ if test "$ac_init_help" = "long"; then
|
||||
# Omit some internal or obsolete options to make the list less imposing.
|
||||
# This message is too long to be a string in the A/UX 3.1 sh.
|
||||
cat <<_ACEOF
|
||||
\`configure' configures pixman 0.9.6 to adapt to many kinds of systems.
|
||||
\`configure' configures pixman 0.10.0 to adapt to many kinds of systems.
|
||||
|
||||
Usage: $0 [OPTION]... [VAR=VALUE]...
|
||||
|
||||
@ -1019,7 +1031,7 @@ fi
|
||||
|
||||
if test -n "$ac_init_help"; then
|
||||
case $ac_init_help in
|
||||
short | recursive ) echo "Configuration of pixman 0.9.6:";;
|
||||
short | recursive ) echo "Configuration of pixman 0.10.0:";;
|
||||
esac
|
||||
cat <<\_ACEOF
|
||||
|
||||
@ -1058,6 +1070,9 @@ Some influential environment variables:
|
||||
CXXCPP C++ preprocessor
|
||||
F77 Fortran 77 compiler command
|
||||
FFLAGS Fortran 77 compiler flags
|
||||
PKG_CONFIG path to pkg-config utility
|
||||
GTK_CFLAGS C compiler flags for GTK, overriding pkg-config
|
||||
GTK_LIBS linker flags for GTK, overriding pkg-config
|
||||
|
||||
Use these variables to override the choices made by `configure' or to help
|
||||
it to find libraries and programs with nonstandard names/locations.
|
||||
@ -1158,7 +1173,7 @@ fi
|
||||
test -n "$ac_init_help" && exit 0
|
||||
if $ac_init_version; then
|
||||
cat <<\_ACEOF
|
||||
pixman configure 0.9.6
|
||||
pixman configure 0.10.0
|
||||
generated by GNU Autoconf 2.59
|
||||
|
||||
Copyright (C) 2003 Free Software Foundation, Inc.
|
||||
@ -1172,7 +1187,7 @@ cat >&5 <<_ACEOF
|
||||
This file contains any messages produced by compilers while
|
||||
running configure, to aid debugging if configure makes a mistake.
|
||||
|
||||
It was created by pixman $as_me 0.9.6, which was
|
||||
It was created by pixman $as_me 0.10.0, which was
|
||||
generated by GNU Autoconf 2.59. Invocation command line was
|
||||
|
||||
$ $0 $@
|
||||
@ -1770,7 +1785,7 @@ fi
|
||||
|
||||
# Define the identity of the package.
|
||||
PACKAGE='pixman'
|
||||
VERSION='0.9.6'
|
||||
VERSION='0.10.0'
|
||||
|
||||
|
||||
cat >>confdefs.h <<_ACEOF
|
||||
@ -3628,7 +3643,7 @@ ia64-*-hpux*)
|
||||
;;
|
||||
*-*-irix6*)
|
||||
# Find out which ABI we are using.
|
||||
echo '#line 3631 "configure"' > conftest.$ac_ext
|
||||
echo '#line 3646 "configure"' > conftest.$ac_ext
|
||||
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
|
||||
(eval $ac_compile) 2>&5
|
||||
ac_status=$?
|
||||
@ -5227,7 +5242,7 @@ fi
|
||||
|
||||
|
||||
# Provide some information about the compiler.
|
||||
echo "$as_me:5230:" \
|
||||
echo "$as_me:5245:" \
|
||||
"checking for Fortran 77 compiler version" >&5
|
||||
ac_compiler=`set X $ac_compile; echo $2`
|
||||
{ (eval echo "$as_me:$LINENO: \"$ac_compiler --version </dev/null >&5\"") >&5
|
||||
@ -6290,11 +6305,11 @@ else
|
||||
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
|
||||
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
|
||||
-e 's:$: $lt_compiler_flag:'`
|
||||
(eval echo "\"\$as_me:6293: $lt_compile\"" >&5)
|
||||
(eval echo "\"\$as_me:6308: $lt_compile\"" >&5)
|
||||
(eval "$lt_compile" 2>conftest.err)
|
||||
ac_status=$?
|
||||
cat conftest.err >&5
|
||||
echo "$as_me:6297: \$? = $ac_status" >&5
|
||||
echo "$as_me:6312: \$? = $ac_status" >&5
|
||||
if (exit $ac_status) && test -s "$ac_outfile"; then
|
||||
# The compiler can only warn and ignore the option if not recognized
|
||||
# So say no if there are warnings other than the usual output.
|
||||
@ -6558,11 +6573,11 @@ else
|
||||
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
|
||||
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
|
||||
-e 's:$: $lt_compiler_flag:'`
|
||||
(eval echo "\"\$as_me:6561: $lt_compile\"" >&5)
|
||||
(eval echo "\"\$as_me:6576: $lt_compile\"" >&5)
|
||||
(eval "$lt_compile" 2>conftest.err)
|
||||
ac_status=$?
|
||||
cat conftest.err >&5
|
||||
echo "$as_me:6565: \$? = $ac_status" >&5
|
||||
echo "$as_me:6580: \$? = $ac_status" >&5
|
||||
if (exit $ac_status) && test -s "$ac_outfile"; then
|
||||
# The compiler can only warn and ignore the option if not recognized
|
||||
# So say no if there are warnings other than the usual output.
|
||||
@ -6662,11 +6677,11 @@ else
|
||||
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
|
||||
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
|
||||
-e 's:$: $lt_compiler_flag:'`
|
||||
(eval echo "\"\$as_me:6665: $lt_compile\"" >&5)
|
||||
(eval echo "\"\$as_me:6680: $lt_compile\"" >&5)
|
||||
(eval "$lt_compile" 2>out/conftest.err)
|
||||
ac_status=$?
|
||||
cat out/conftest.err >&5
|
||||
echo "$as_me:6669: \$? = $ac_status" >&5
|
||||
echo "$as_me:6684: \$? = $ac_status" >&5
|
||||
if (exit $ac_status) && test -s out/conftest2.$ac_objext
|
||||
then
|
||||
# The compiler can only warn and ignore the option if not recognized
|
||||
@ -9011,7 +9026,7 @@ else
|
||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||
lt_status=$lt_dlunknown
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 9014 "configure"
|
||||
#line 9029 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#if HAVE_DLFCN_H
|
||||
@ -9111,7 +9126,7 @@ else
|
||||
lt_dlunknown=0; lt_dlno_uscore=1; lt_dlneed_uscore=2
|
||||
lt_status=$lt_dlunknown
|
||||
cat > conftest.$ac_ext <<EOF
|
||||
#line 9114 "configure"
|
||||
#line 9129 "configure"
|
||||
#include "confdefs.h"
|
||||
|
||||
#if HAVE_DLFCN_H
|
||||
@ -11455,11 +11470,11 @@ else
|
||||
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
|
||||
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
|
||||
-e 's:$: $lt_compiler_flag:'`
|
||||
(eval echo "\"\$as_me:11458: $lt_compile\"" >&5)
|
||||
(eval echo "\"\$as_me:11473: $lt_compile\"" >&5)
|
||||
(eval "$lt_compile" 2>conftest.err)
|
||||
ac_status=$?
|
||||
cat conftest.err >&5
|
||||
echo "$as_me:11462: \$? = $ac_status" >&5
|
||||
echo "$as_me:11477: \$? = $ac_status" >&5
|
||||
if (exit $ac_status) && test -s "$ac_outfile"; then
|
||||
# The compiler can only warn and ignore the option if not recognized
|
||||
# So say no if there are warnings other than the usual output.
|
||||
@ -11559,11 +11574,11 @@ else
|
||||
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
|
||||
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
|
||||
-e 's:$: $lt_compiler_flag:'`
|
||||
(eval echo "\"\$as_me:11562: $lt_compile\"" >&5)
|
||||
(eval echo "\"\$as_me:11577: $lt_compile\"" >&5)
|
||||
(eval "$lt_compile" 2>out/conftest.err)
|
||||
ac_status=$?
|
||||
cat out/conftest.err >&5
|
||||
echo "$as_me:11566: \$? = $ac_status" >&5
|
||||
echo "$as_me:11581: \$? = $ac_status" >&5
|
||||
if (exit $ac_status) && test -s out/conftest2.$ac_objext
|
||||
then
|
||||
# The compiler can only warn and ignore the option if not recognized
|
||||
@ -13129,11 +13144,11 @@ else
|
||||
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
|
||||
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
|
||||
-e 's:$: $lt_compiler_flag:'`
|
||||
(eval echo "\"\$as_me:13132: $lt_compile\"" >&5)
|
||||
(eval echo "\"\$as_me:13147: $lt_compile\"" >&5)
|
||||
(eval "$lt_compile" 2>conftest.err)
|
||||
ac_status=$?
|
||||
cat conftest.err >&5
|
||||
echo "$as_me:13136: \$? = $ac_status" >&5
|
||||
echo "$as_me:13151: \$? = $ac_status" >&5
|
||||
if (exit $ac_status) && test -s "$ac_outfile"; then
|
||||
# The compiler can only warn and ignore the option if not recognized
|
||||
# So say no if there are warnings other than the usual output.
|
||||
@ -13233,11 +13248,11 @@ else
|
||||
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
|
||||
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
|
||||
-e 's:$: $lt_compiler_flag:'`
|
||||
(eval echo "\"\$as_me:13236: $lt_compile\"" >&5)
|
||||
(eval echo "\"\$as_me:13251: $lt_compile\"" >&5)
|
||||
(eval "$lt_compile" 2>out/conftest.err)
|
||||
ac_status=$?
|
||||
cat out/conftest.err >&5
|
||||
echo "$as_me:13240: \$? = $ac_status" >&5
|
||||
echo "$as_me:13255: \$? = $ac_status" >&5
|
||||
if (exit $ac_status) && test -s out/conftest2.$ac_objext
|
||||
then
|
||||
# The compiler can only warn and ignore the option if not recognized
|
||||
@ -15440,11 +15455,11 @@ else
|
||||
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
|
||||
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
|
||||
-e 's:$: $lt_compiler_flag:'`
|
||||
(eval echo "\"\$as_me:15443: $lt_compile\"" >&5)
|
||||
(eval echo "\"\$as_me:15458: $lt_compile\"" >&5)
|
||||
(eval "$lt_compile" 2>conftest.err)
|
||||
ac_status=$?
|
||||
cat conftest.err >&5
|
||||
echo "$as_me:15447: \$? = $ac_status" >&5
|
||||
echo "$as_me:15462: \$? = $ac_status" >&5
|
||||
if (exit $ac_status) && test -s "$ac_outfile"; then
|
||||
# The compiler can only warn and ignore the option if not recognized
|
||||
# So say no if there are warnings other than the usual output.
|
||||
@ -15708,11 +15723,11 @@ else
|
||||
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
|
||||
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
|
||||
-e 's:$: $lt_compiler_flag:'`
|
||||
(eval echo "\"\$as_me:15711: $lt_compile\"" >&5)
|
||||
(eval echo "\"\$as_me:15726: $lt_compile\"" >&5)
|
||||
(eval "$lt_compile" 2>conftest.err)
|
||||
ac_status=$?
|
||||
cat conftest.err >&5
|
||||
echo "$as_me:15715: \$? = $ac_status" >&5
|
||||
echo "$as_me:15730: \$? = $ac_status" >&5
|
||||
if (exit $ac_status) && test -s "$ac_outfile"; then
|
||||
# The compiler can only warn and ignore the option if not recognized
|
||||
# So say no if there are warnings other than the usual output.
|
||||
@ -15812,11 +15827,11 @@ else
|
||||
-e 's:.*FLAGS}\{0,1\} :&$lt_compiler_flag :; t' \
|
||||
-e 's: [^ ]*conftest\.: $lt_compiler_flag&:; t' \
|
||||
-e 's:$: $lt_compiler_flag:'`
|
||||
(eval echo "\"\$as_me:15815: $lt_compile\"" >&5)
|
||||
(eval echo "\"\$as_me:15830: $lt_compile\"" >&5)
|
||||
(eval "$lt_compile" 2>out/conftest.err)
|
||||
ac_status=$?
|
||||
cat out/conftest.err >&5
|
||||
echo "$as_me:15819: \$? = $ac_status" >&5
|
||||
echo "$as_me:15834: \$? = $ac_status" >&5
|
||||
if (exit $ac_status) && test -s out/conftest2.$ac_objext
|
||||
then
|
||||
# The compiler can only warn and ignore the option if not recognized
|
||||
@ -18826,9 +18841,13 @@ esac
|
||||
|
||||
|
||||
|
||||
LT_VERSION_INFO="9:6:9"
|
||||
LT_VERSION_INFO="10:0:10"
|
||||
|
||||
PIXMAN_MAJOR=0
|
||||
PIXMAN_VERSION_MAJOR=0
|
||||
|
||||
PIXMAN_VERSION_MINOR=10
|
||||
|
||||
PIXMAN_VERSION_MICRO=0
|
||||
|
||||
|
||||
|
||||
@ -18842,6 +18861,55 @@ if test "x$GCC" = "xyes"; then
|
||||
*) CFLAGS="$CFLAGS -Wall" ;;
|
||||
esac fi
|
||||
|
||||
have_gcc4=no
|
||||
echo "$as_me:$LINENO: checking for -fvisibility" >&5
|
||||
echo $ECHO_N "checking for -fvisibility... $ECHO_C" >&6
|
||||
cat >conftest.$ac_ext <<_ACEOF
|
||||
|
||||
#if defined(__GNUC__) && (__GNUC__ >= 4)
|
||||
#else
|
||||
#error Need GCC 4.0 for visibility
|
||||
#endif
|
||||
int main () { return 0; }
|
||||
|
||||
_ACEOF
|
||||
rm -f conftest.$ac_objext
|
||||
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
|
||||
(eval $ac_compile) 2>conftest.er1
|
||||
ac_status=$?
|
||||
grep -v '^ *+' conftest.er1 >conftest.err
|
||||
rm -f conftest.er1
|
||||
cat conftest.err >&5
|
||||
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); } &&
|
||||
{ ac_try='test -z "$ac_c_werror_flag"
|
||||
|| test ! -s conftest.err'
|
||||
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
|
||||
(eval $ac_try) 2>&5
|
||||
ac_status=$?
|
||||
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); }; } &&
|
||||
{ ac_try='test -s conftest.$ac_objext'
|
||||
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
|
||||
(eval $ac_try) 2>&5
|
||||
ac_status=$?
|
||||
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); }; }; then
|
||||
have_gcc4=yes
|
||||
else
|
||||
echo "$as_me: failed program was:" >&5
|
||||
sed 's/^/| /' conftest.$ac_ext >&5
|
||||
|
||||
fi
|
||||
rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||
|
||||
if test "x$have_gcc4" = "xyes"; then
|
||||
CFLAGS="$CFLAGS -fvisibility=hidden"
|
||||
fi
|
||||
echo "$as_me:$LINENO: result: $have_gcc4" >&5
|
||||
echo "${ECHO_T}$have_gcc4" >&6
|
||||
|
||||
|
||||
MMX_CFLAGS="-mmmx -Winline --param inline-unit-growth=10000 --param large-function-growth=10000"
|
||||
|
||||
have_mmx_intrinsics=no
|
||||
@ -18990,8 +19058,255 @@ fi
|
||||
|
||||
|
||||
|
||||
#PKG_CHECK_MODULES(GTK, [gtk+-2.0], [HAVE_GTK=yes], [HAVE_GTK=no])
|
||||
HAVE_GTK=no
|
||||
SSE_CFLAGS="-mmmx -msse2 -Winline --param inline-unit-growth=10000 --param large-function-growth=10000"
|
||||
|
||||
have_sse2_intrinsics=no
|
||||
echo "$as_me:$LINENO: checking whether to use SSE2 intrinsics" >&5
|
||||
echo $ECHO_N "checking whether to use SSE2 intrinsics... $ECHO_C" >&6
|
||||
xserver_save_CFLAGS=$CFLAGS
|
||||
CFLAGS="$CFLAGS -msse2 $SSE_CFLAGS"
|
||||
|
||||
cat >conftest.$ac_ext <<_ACEOF
|
||||
|
||||
#include <mmintrin.h>
|
||||
#include <xmmintrin.h>
|
||||
int main () {
|
||||
__m128i a, b, c;
|
||||
c = _mm_xor_si128 (a, b);
|
||||
return 0;
|
||||
}
|
||||
_ACEOF
|
||||
rm -f conftest.$ac_objext
|
||||
if { (eval echo "$as_me:$LINENO: \"$ac_compile\"") >&5
|
||||
(eval $ac_compile) 2>conftest.er1
|
||||
ac_status=$?
|
||||
grep -v '^ *+' conftest.er1 >conftest.err
|
||||
rm -f conftest.er1
|
||||
cat conftest.err >&5
|
||||
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); } &&
|
||||
{ ac_try='test -z "$ac_c_werror_flag"
|
||||
|| test ! -s conftest.err'
|
||||
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
|
||||
(eval $ac_try) 2>&5
|
||||
ac_status=$?
|
||||
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); }; } &&
|
||||
{ ac_try='test -s conftest.$ac_objext'
|
||||
{ (eval echo "$as_me:$LINENO: \"$ac_try\"") >&5
|
||||
(eval $ac_try) 2>&5
|
||||
ac_status=$?
|
||||
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); }; }; then
|
||||
have_sse2_intrinsics=yes
|
||||
else
|
||||
echo "$as_me: failed program was:" >&5
|
||||
sed 's/^/| /' conftest.$ac_ext >&5
|
||||
|
||||
fi
|
||||
rm -f conftest.err conftest.$ac_objext conftest.$ac_ext
|
||||
CFLAGS=$xserver_save_CFLAGS
|
||||
echo "$as_me:$LINENO: result: $have_sse2_intrinsics" >&5
|
||||
echo "${ECHO_T}$have_sse2_intrinsics" >&6
|
||||
|
||||
if test $have_sse2_intrinsics = yes ; then
|
||||
|
||||
cat >>confdefs.h <<\_ACEOF
|
||||
#define USE_SSE2 1
|
||||
_ACEOF
|
||||
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if test $have_sse2_intrinsics = yes; then
|
||||
USE_SSE2_TRUE=
|
||||
USE_SSE2_FALSE='#'
|
||||
else
|
||||
USE_SSE2_TRUE='#'
|
||||
USE_SSE2_FALSE=
|
||||
fi
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
if test "x$ac_cv_env_PKG_CONFIG_set" != "xset"; then
|
||||
if test -n "$ac_tool_prefix"; then
|
||||
# Extract the first word of "${ac_tool_prefix}pkg-config", so it can be a program name with args.
|
||||
set dummy ${ac_tool_prefix}pkg-config; ac_word=$2
|
||||
echo "$as_me:$LINENO: checking for $ac_word" >&5
|
||||
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
|
||||
if test "${ac_cv_path_PKG_CONFIG+set}" = set; then
|
||||
echo $ECHO_N "(cached) $ECHO_C" >&6
|
||||
else
|
||||
case $PKG_CONFIG in
|
||||
[\\/]* | ?:[\\/]*)
|
||||
ac_cv_path_PKG_CONFIG="$PKG_CONFIG" # Let the user override the test with a path.
|
||||
;;
|
||||
*)
|
||||
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||||
for as_dir in $PATH
|
||||
do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
ac_cv_path_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
|
||||
echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
PKG_CONFIG=$ac_cv_path_PKG_CONFIG
|
||||
|
||||
if test -n "$PKG_CONFIG"; then
|
||||
echo "$as_me:$LINENO: result: $PKG_CONFIG" >&5
|
||||
echo "${ECHO_T}$PKG_CONFIG" >&6
|
||||
else
|
||||
echo "$as_me:$LINENO: result: no" >&5
|
||||
echo "${ECHO_T}no" >&6
|
||||
fi
|
||||
|
||||
fi
|
||||
if test -z "$ac_cv_path_PKG_CONFIG"; then
|
||||
ac_pt_PKG_CONFIG=$PKG_CONFIG
|
||||
# Extract the first word of "pkg-config", so it can be a program name with args.
|
||||
set dummy pkg-config; ac_word=$2
|
||||
echo "$as_me:$LINENO: checking for $ac_word" >&5
|
||||
echo $ECHO_N "checking for $ac_word... $ECHO_C" >&6
|
||||
if test "${ac_cv_path_ac_pt_PKG_CONFIG+set}" = set; then
|
||||
echo $ECHO_N "(cached) $ECHO_C" >&6
|
||||
else
|
||||
case $ac_pt_PKG_CONFIG in
|
||||
[\\/]* | ?:[\\/]*)
|
||||
ac_cv_path_ac_pt_PKG_CONFIG="$ac_pt_PKG_CONFIG" # Let the user override the test with a path.
|
||||
;;
|
||||
*)
|
||||
as_save_IFS=$IFS; IFS=$PATH_SEPARATOR
|
||||
for as_dir in $PATH
|
||||
do
|
||||
IFS=$as_save_IFS
|
||||
test -z "$as_dir" && as_dir=.
|
||||
for ac_exec_ext in '' $ac_executable_extensions; do
|
||||
if $as_executable_p "$as_dir/$ac_word$ac_exec_ext"; then
|
||||
ac_cv_path_ac_pt_PKG_CONFIG="$as_dir/$ac_word$ac_exec_ext"
|
||||
echo "$as_me:$LINENO: found $as_dir/$ac_word$ac_exec_ext" >&5
|
||||
break 2
|
||||
fi
|
||||
done
|
||||
done
|
||||
|
||||
;;
|
||||
esac
|
||||
fi
|
||||
ac_pt_PKG_CONFIG=$ac_cv_path_ac_pt_PKG_CONFIG
|
||||
|
||||
if test -n "$ac_pt_PKG_CONFIG"; then
|
||||
echo "$as_me:$LINENO: result: $ac_pt_PKG_CONFIG" >&5
|
||||
echo "${ECHO_T}$ac_pt_PKG_CONFIG" >&6
|
||||
else
|
||||
echo "$as_me:$LINENO: result: no" >&5
|
||||
echo "${ECHO_T}no" >&6
|
||||
fi
|
||||
|
||||
PKG_CONFIG=$ac_pt_PKG_CONFIG
|
||||
else
|
||||
PKG_CONFIG="$ac_cv_path_PKG_CONFIG"
|
||||
fi
|
||||
|
||||
fi
|
||||
if test -n "$PKG_CONFIG"; then
|
||||
_pkg_min_version=0.9.0
|
||||
echo "$as_me:$LINENO: checking pkg-config is at least version $_pkg_min_version" >&5
|
||||
echo $ECHO_N "checking pkg-config is at least version $_pkg_min_version... $ECHO_C" >&6
|
||||
if $PKG_CONFIG --atleast-pkgconfig-version $_pkg_min_version; then
|
||||
echo "$as_me:$LINENO: result: yes" >&5
|
||||
echo "${ECHO_T}yes" >&6
|
||||
else
|
||||
echo "$as_me:$LINENO: result: no" >&5
|
||||
echo "${ECHO_T}no" >&6
|
||||
PKG_CONFIG=""
|
||||
fi
|
||||
|
||||
fi
|
||||
|
||||
pkg_failed=no
|
||||
echo "$as_me:$LINENO: checking for GTK" >&5
|
||||
echo $ECHO_N "checking for GTK... $ECHO_C" >&6
|
||||
|
||||
if test -n "$PKG_CONFIG"; then
|
||||
if test -n "$GTK_CFLAGS"; then
|
||||
pkg_cv_GTK_CFLAGS="$GTK_CFLAGS"
|
||||
else
|
||||
if test -n "$PKG_CONFIG" && \
|
||||
{ (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0\"") >&5
|
||||
($PKG_CONFIG --exists --print-errors "gtk+-2.0") 2>&5
|
||||
ac_status=$?
|
||||
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); }; then
|
||||
pkg_cv_GTK_CFLAGS=`$PKG_CONFIG --cflags "gtk+-2.0" 2>/dev/null`
|
||||
else
|
||||
pkg_failed=yes
|
||||
fi
|
||||
fi
|
||||
else
|
||||
pkg_failed=untried
|
||||
fi
|
||||
if test -n "$PKG_CONFIG"; then
|
||||
if test -n "$GTK_LIBS"; then
|
||||
pkg_cv_GTK_LIBS="$GTK_LIBS"
|
||||
else
|
||||
if test -n "$PKG_CONFIG" && \
|
||||
{ (echo "$as_me:$LINENO: \$PKG_CONFIG --exists --print-errors \"gtk+-2.0\"") >&5
|
||||
($PKG_CONFIG --exists --print-errors "gtk+-2.0") 2>&5
|
||||
ac_status=$?
|
||||
echo "$as_me:$LINENO: \$? = $ac_status" >&5
|
||||
(exit $ac_status); }; then
|
||||
pkg_cv_GTK_LIBS=`$PKG_CONFIG --libs "gtk+-2.0" 2>/dev/null`
|
||||
else
|
||||
pkg_failed=yes
|
||||
fi
|
||||
fi
|
||||
else
|
||||
pkg_failed=untried
|
||||
fi
|
||||
|
||||
|
||||
|
||||
if test $pkg_failed = yes; then
|
||||
|
||||
if $PKG_CONFIG --atleast-pkgconfig-version 0.20; then
|
||||
_pkg_short_errors_supported=yes
|
||||
else
|
||||
_pkg_short_errors_supported=no
|
||||
fi
|
||||
if test $_pkg_short_errors_supported = yes; then
|
||||
GTK_PKG_ERRORS=`$PKG_CONFIG --short-errors --errors-to-stdout --print-errors "gtk+-2.0"`
|
||||
else
|
||||
GTK_PKG_ERRORS=`$PKG_CONFIG --errors-to-stdout --print-errors "gtk+-2.0"`
|
||||
fi
|
||||
# Put the nasty error message in config.log where it belongs
|
||||
echo "$GTK_PKG_ERRORS" >&5
|
||||
|
||||
echo "$as_me:$LINENO: result: no" >&5
|
||||
echo "${ECHO_T}no" >&6
|
||||
HAVE_GTK=no
|
||||
elif test $pkg_failed = untried; then
|
||||
HAVE_GTK=no
|
||||
else
|
||||
GTK_CFLAGS=$pkg_cv_GTK_CFLAGS
|
||||
GTK_LIBS=$pkg_cv_GTK_LIBS
|
||||
echo "$as_me:$LINENO: result: yes" >&5
|
||||
echo "${ECHO_T}yes" >&6
|
||||
HAVE_GTK=yes
|
||||
fi
|
||||
|
||||
|
||||
if test "x$HAVE_GTK" = xyes; then
|
||||
@ -19008,7 +19323,7 @@ fi
|
||||
|
||||
|
||||
|
||||
ac_config_files="$ac_config_files pixman-1.pc Makefile pixman/Makefile test/Makefile"
|
||||
ac_config_files="$ac_config_files pixman-1.pc Makefile pixman/Makefile pixman/pixman-version.h test/Makefile"
|
||||
cat >confcache <<\_ACEOF
|
||||
# This file is a shell script that caches the results of configure
|
||||
# tests run on this system so they can be shared between configure
|
||||
@ -19135,6 +19450,13 @@ echo "$as_me: error: conditional \"USE_SSE\" was never defined.
|
||||
Usually this means the macro was only invoked conditionally." >&2;}
|
||||
{ (exit 1); exit 1; }; }
|
||||
fi
|
||||
if test -z "${USE_SSE2_TRUE}" && test -z "${USE_SSE2_FALSE}"; then
|
||||
{ { echo "$as_me:$LINENO: error: conditional \"USE_SSE2\" was never defined.
|
||||
Usually this means the macro was only invoked conditionally." >&5
|
||||
echo "$as_me: error: conditional \"USE_SSE2\" was never defined.
|
||||
Usually this means the macro was only invoked conditionally." >&2;}
|
||||
{ (exit 1); exit 1; }; }
|
||||
fi
|
||||
if test -z "${HAVE_GTK_TRUE}" && test -z "${HAVE_GTK_FALSE}"; then
|
||||
{ { echo "$as_me:$LINENO: error: conditional \"HAVE_GTK\" was never defined.
|
||||
Usually this means the macro was only invoked conditionally." >&5
|
||||
@ -19413,7 +19735,7 @@ _ASBOX
|
||||
} >&5
|
||||
cat >&5 <<_CSEOF
|
||||
|
||||
This file was extended by pixman $as_me 0.9.6, which was
|
||||
This file was extended by pixman $as_me 0.10.0, which was
|
||||
generated by GNU Autoconf 2.59. Invocation command line was
|
||||
|
||||
CONFIG_FILES = $CONFIG_FILES
|
||||
@ -19476,7 +19798,7 @@ _ACEOF
|
||||
|
||||
cat >>$CONFIG_STATUS <<_ACEOF
|
||||
ac_cs_version="\\
|
||||
pixman config.status 0.9.6
|
||||
pixman config.status 0.10.0
|
||||
configured by $0, generated by GNU Autoconf 2.59,
|
||||
with options \\"`echo "$ac_configure_args" | sed 's/[\\""\`\$]/\\\\&/g'`\\"
|
||||
|
||||
@ -19589,6 +19911,7 @@ do
|
||||
"pixman-1.pc" ) CONFIG_FILES="$CONFIG_FILES pixman-1.pc" ;;
|
||||
"Makefile" ) CONFIG_FILES="$CONFIG_FILES Makefile" ;;
|
||||
"pixman/Makefile" ) CONFIG_FILES="$CONFIG_FILES pixman/Makefile" ;;
|
||||
"pixman/pixman-version.h" ) CONFIG_FILES="$CONFIG_FILES pixman/pixman-version.h" ;;
|
||||
"test/Makefile" ) CONFIG_FILES="$CONFIG_FILES test/Makefile" ;;
|
||||
"depfiles" ) CONFIG_COMMANDS="$CONFIG_COMMANDS depfiles" ;;
|
||||
"config.h" ) CONFIG_HEADERS="$CONFIG_HEADERS config.h" ;;
|
||||
@ -19742,17 +20065,24 @@ s,@F77@,$F77,;t t
|
||||
s,@FFLAGS@,$FFLAGS,;t t
|
||||
s,@ac_ct_F77@,$ac_ct_F77,;t t
|
||||
s,@LIBTOOL@,$LIBTOOL,;t t
|
||||
s,@PIXMAN_MAJOR@,$PIXMAN_MAJOR,;t t
|
||||
s,@PIXMAN_VERSION_MAJOR@,$PIXMAN_VERSION_MAJOR,;t t
|
||||
s,@PIXMAN_VERSION_MINOR@,$PIXMAN_VERSION_MINOR,;t t
|
||||
s,@PIXMAN_VERSION_MICRO@,$PIXMAN_VERSION_MICRO,;t t
|
||||
s,@LT_VERSION_INFO@,$LT_VERSION_INFO,;t t
|
||||
s,@USE_MMX_TRUE@,$USE_MMX_TRUE,;t t
|
||||
s,@USE_MMX_FALSE@,$USE_MMX_FALSE,;t t
|
||||
s,@USE_SSE_TRUE@,$USE_SSE_TRUE,;t t
|
||||
s,@USE_SSE_FALSE@,$USE_SSE_FALSE,;t t
|
||||
s,@USE_SSE2_TRUE@,$USE_SSE2_TRUE,;t t
|
||||
s,@USE_SSE2_FALSE@,$USE_SSE2_FALSE,;t t
|
||||
s,@MMX_CFLAGS@,$MMX_CFLAGS,;t t
|
||||
s,@HAVE_GTK_TRUE@,$HAVE_GTK_TRUE,;t t
|
||||
s,@HAVE_GTK_FALSE@,$HAVE_GTK_FALSE,;t t
|
||||
s,@SSE_CFLAGS@,$SSE_CFLAGS,;t t
|
||||
s,@PKG_CONFIG@,$PKG_CONFIG,;t t
|
||||
s,@ac_pt_PKG_CONFIG@,$ac_pt_PKG_CONFIG,;t t
|
||||
s,@GTK_CFLAGS@,$GTK_CFLAGS,;t t
|
||||
s,@GTK_LIBS@,$GTK_LIBS,;t t
|
||||
s,@HAVE_GTK_TRUE@,$HAVE_GTK_TRUE,;t t
|
||||
s,@HAVE_GTK_FALSE@,$HAVE_GTK_FALSE,;t t
|
||||
s,@DEP_CFLAGS@,$DEP_CFLAGS,;t t
|
||||
s,@DEP_LIBS@,$DEP_LIBS,;t t
|
||||
s,@LIBOBJS@,$LIBOBJS,;t t
|
||||
|
@ -24,25 +24,40 @@ AC_PREREQ([2.57])
|
||||
|
||||
# Pixman versioning scheme
|
||||
#
|
||||
# - If the changes don't affect API or ABI, then increment pixman_micro
|
||||
# - If API is added, then increment PIXMAN_MINOR, and set MICRO to 0
|
||||
# - The git version must at all times have an odd MICRO version
|
||||
# number.
|
||||
#
|
||||
# - If you break ABI, then
|
||||
# - In the first development release where you break ABI, find all instances of
|
||||
# "pixman-n" and change it to pixman-(n+1)
|
||||
# - If you add API, increment the MICRO version to the next largest
|
||||
# odd number.
|
||||
#
|
||||
# - If you release a version that contains new API, then increment
|
||||
# MINOR and set MICRO to 0.
|
||||
#
|
||||
# - If you release a new version that does not contain new API, then
|
||||
# increment MICRO to the next even number.
|
||||
#
|
||||
# - After doing a release, increment MICRO again to make the version
|
||||
# number in git odd.
|
||||
#
|
||||
# - If you break the ABI, then
|
||||
#
|
||||
# - increment MAJOR
|
||||
#
|
||||
# - In the first development release where you break ABI, find
|
||||
# all instances of "pixman-n" and change them to pixman-(n+1)
|
||||
#
|
||||
# This needs to be done at least in
|
||||
# configure.ac
|
||||
# all Makefile.am's
|
||||
# pixman-n.pc.in
|
||||
#
|
||||
# This ensures that binary incompatible versions can be installed in parallel.
|
||||
# See http://www106.pair.com/rhp/parallel.html for more information
|
||||
#
|
||||
# This ensures that binary incompatible versions can be installed
|
||||
# in parallel. See http://www106.pair.com/rhp/parallel.html for
|
||||
# more information
|
||||
|
||||
m4_define([pixman_major], 0)
|
||||
m4_define([pixman_minor], 9)
|
||||
m4_define([pixman_micro], 6)
|
||||
m4_define([pixman_minor], 10)
|
||||
m4_define([pixman_micro], 0)
|
||||
|
||||
m4_define([pixman_version],[pixman_major.pixman_minor.pixman_micro])
|
||||
|
||||
@ -68,8 +83,12 @@ m4_define([lt_age], [pixman_minor])
|
||||
|
||||
LT_VERSION_INFO="lt_current:lt_revision:lt_age"
|
||||
|
||||
PIXMAN_MAJOR=pixman_major
|
||||
AC_SUBST(PIXMAN_MAJOR)
|
||||
PIXMAN_VERSION_MAJOR=pixman_major()
|
||||
AC_SUBST(PIXMAN_VERSION_MAJOR)
|
||||
PIXMAN_VERSION_MINOR=pixman_minor()
|
||||
AC_SUBST(PIXMAN_VERSION_MINOR)
|
||||
PIXMAN_VERSION_MICRO=pixman_micro()
|
||||
AC_SUBST(PIXMAN_VERSION_MICRO)
|
||||
|
||||
AC_SUBST(LT_VERSION_INFO)
|
||||
|
||||
@ -83,6 +102,24 @@ if test "x$GCC" = "xyes"; then
|
||||
*) CFLAGS="$CFLAGS -Wall" ;;
|
||||
esac fi changequote([,])dnl
|
||||
|
||||
dnl =========================================================================
|
||||
dnl -fvisibility stuff
|
||||
|
||||
have_gcc4=no
|
||||
AC_MSG_CHECKING(for -fvisibility)
|
||||
AC_COMPILE_IFELSE([
|
||||
#if defined(__GNUC__) && (__GNUC__ >= 4)
|
||||
#else
|
||||
#error Need GCC 4.0 for visibility
|
||||
#endif
|
||||
int main () { return 0; }
|
||||
], have_gcc4=yes)
|
||||
|
||||
if test "x$have_gcc4" = "xyes"; then
|
||||
CFLAGS="$CFLAGS -fvisibility=hidden"
|
||||
fi
|
||||
AC_MSG_RESULT($have_gcc4)
|
||||
|
||||
dnl ===========================================================================
|
||||
dnl Check for MMX
|
||||
|
||||
@ -147,11 +184,39 @@ fi
|
||||
|
||||
AM_CONDITIONAL(USE_SSE, test $have_sse_intrinsics = yes)
|
||||
|
||||
|
||||
dnl ===========================================================================
|
||||
dnl Check for SSE2
|
||||
|
||||
SSE_CFLAGS="-mmmx -msse2 -Winline --param inline-unit-growth=10000 --param large-function-growth=10000"
|
||||
|
||||
have_sse2_intrinsics=no
|
||||
AC_MSG_CHECKING(whether to use SSE2 intrinsics)
|
||||
xserver_save_CFLAGS=$CFLAGS
|
||||
CFLAGS="$CFLAGS -msse2 $SSE_CFLAGS"
|
||||
|
||||
AC_COMPILE_IFELSE([
|
||||
#include <mmintrin.h>
|
||||
#include <xmmintrin.h>
|
||||
int main () {
|
||||
__m128i a, b, c;
|
||||
c = _mm_xor_si128 (a, b);
|
||||
return 0;
|
||||
}], have_sse2_intrinsics=yes)
|
||||
CFLAGS=$xserver_save_CFLAGS
|
||||
AC_MSG_RESULT($have_sse2_intrinsics)
|
||||
|
||||
if test $have_sse2_intrinsics = yes ; then
|
||||
AC_DEFINE(USE_SSE2, 1, [use SSE compiler intrinsics])
|
||||
fi
|
||||
|
||||
AM_CONDITIONAL(USE_SSE2, test $have_sse2_intrinsics = yes)
|
||||
|
||||
dnl ========================================================
|
||||
AC_SUBST(MMX_CFLAGS)
|
||||
AC_SUBST(SSE_CFLAGS)
|
||||
|
||||
#PKG_CHECK_MODULES(GTK, [gtk+-2.0], [HAVE_GTK=yes], [HAVE_GTK=no])
|
||||
HAVE_GTK=no
|
||||
PKG_CHECK_MODULES(GTK, [gtk+-2.0], [HAVE_GTK=yes], [HAVE_GTK=no])
|
||||
AM_CONDITIONAL(HAVE_GTK, [test "x$HAVE_GTK" = xyes])
|
||||
|
||||
AC_SUBST(GTK_CFLAGS)
|
||||
@ -162,4 +227,5 @@ AC_SUBST(DEP_LIBS)
|
||||
AC_OUTPUT([pixman-1.pc
|
||||
Makefile
|
||||
pixman/Makefile
|
||||
pixman/pixman-version.h
|
||||
test/Makefile])
|
||||
|
@ -2,27 +2,36 @@ lib_LTLIBRARIES = libpixman-1.la
|
||||
libpixman_1_la_LDFLAGS = -version-info $(LT_VERSION_INFO)
|
||||
libpixman_1_la_LIBADD = @DEP_LIBS@ -lm
|
||||
libpixman_1_la_SOURCES = \
|
||||
pixman.h \
|
||||
pixman-region.c \
|
||||
pixman-private.h \
|
||||
pixman-image.c \
|
||||
pixman-compose.c \
|
||||
pixman.h \
|
||||
pixman-access.c \
|
||||
pixman-access-accessors.c \
|
||||
pixman-region.c \
|
||||
pixman-private.h \
|
||||
pixman-image.c \
|
||||
pixman-combine.c \
|
||||
pixman-compose.c \
|
||||
pixman-compose-accessors.c \
|
||||
pixman-pict.c \
|
||||
pixman-utils.c \
|
||||
pixman-edge.c \
|
||||
pixman-pict.c \
|
||||
pixman-source.c \
|
||||
pixman-transformed.c \
|
||||
pixman-transformed-accessors.c \
|
||||
pixman-utils.c \
|
||||
pixman-edge.c \
|
||||
pixman-edge-accessors.c \
|
||||
pixman-edge-imp.h \
|
||||
pixman-trap.c \
|
||||
pixman-compute-region.c \
|
||||
pixman-edge-imp.h \
|
||||
pixman-trap.c \
|
||||
pixman-compute-region.c \
|
||||
pixman-timer.c
|
||||
|
||||
libpixmanincludedir = $(includedir)/pixman-1/
|
||||
libpixmaninclude_HEADERS = pixman.h
|
||||
libpixmaninclude_HEADERS = pixman.h pixman-version.h
|
||||
noinst_LTLIBRARIES =
|
||||
|
||||
EXTRA_DIST = Makefile.win32
|
||||
|
||||
# mmx code
|
||||
if USE_MMX
|
||||
noinst_LTLIBRARIES = libpixman-mmx.la
|
||||
noinst_LTLIBRARIES += libpixman-mmx.la
|
||||
libpixman_mmx_la_SOURCES = \
|
||||
pixman-mmx.c \
|
||||
pixman-mmx.h
|
||||
@ -30,3 +39,16 @@ libpixman_mmx_la_CFLAGS = $(DEP_CFLAGS) $(MMX_CFLAGS)
|
||||
libpixman_mmx_la_LIBADD = $(DEP_LIBS)
|
||||
libpixman_1_la_LIBADD += libpixman-mmx.la
|
||||
endif
|
||||
|
||||
|
||||
# sse2 code
|
||||
if USE_SSE2
|
||||
noinst_LTLIBRARIES += libpixman-sse.la
|
||||
libpixman_sse_la_SOURCES = \
|
||||
pixman-sse.c \
|
||||
pixman-sse.h
|
||||
libpixman_sse_la_CFLAGS = $(DEP_CFLAGS) $(SSE_CFLAGS)
|
||||
libpixman_sse_la_LIBADD = $(DEP_LIBS)
|
||||
libpixman_1_la_LIBADD += libpixman-sse.la
|
||||
endif
|
||||
|
||||
|
@ -37,17 +37,24 @@ PRE_UNINSTALL = :
|
||||
POST_UNINSTALL = :
|
||||
build_triplet = @build@
|
||||
host_triplet = @host@
|
||||
|
||||
# mmx code
|
||||
@USE_MMX_TRUE@am__append_1 = libpixman-mmx.la
|
||||
@USE_MMX_TRUE@am__append_2 = libpixman-mmx.la
|
||||
|
||||
# sse2 code
|
||||
@USE_SSE2_TRUE@am__append_3 = libpixman-sse.la
|
||||
@USE_SSE2_TRUE@am__append_4 = libpixman-sse.la
|
||||
subdir = pixman
|
||||
DIST_COMMON = $(libpixmaninclude_HEADERS) $(srcdir)/Makefile.am \
|
||||
$(srcdir)/Makefile.in
|
||||
$(srcdir)/Makefile.in $(srcdir)/pixman-version.h.in
|
||||
ACLOCAL_M4 = $(top_srcdir)/aclocal.m4
|
||||
am__aclocal_m4_deps = $(top_srcdir)/configure.ac
|
||||
am__configure_deps = $(am__aclocal_m4_deps) $(CONFIGURE_DEPENDENCIES) \
|
||||
$(ACLOCAL_M4)
|
||||
mkinstalldirs = $(SHELL) $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
CONFIG_CLEAN_FILES = pixman-version.h
|
||||
am__vpath_adj_setup = srcdirstrip=`echo "$(srcdir)" | sed 's|.|.|g'`;
|
||||
am__vpath_adj = case $$p in \
|
||||
$(srcdir)/*) f=`echo "$$p" | sed "s|^$$srcdirstrip/||"`;; \
|
||||
@ -59,19 +66,30 @@ am__installdirs = "$(DESTDIR)$(libdir)" \
|
||||
libLTLIBRARIES_INSTALL = $(INSTALL)
|
||||
LTLIBRARIES = $(lib_LTLIBRARIES) $(noinst_LTLIBRARIES)
|
||||
@USE_MMX_TRUE@am__DEPENDENCIES_1 = libpixman-mmx.la
|
||||
libpixman_1_la_DEPENDENCIES = $(am__DEPENDENCIES_1)
|
||||
am_libpixman_1_la_OBJECTS = pixman-region.lo pixman-image.lo \
|
||||
pixman-compose.lo pixman-compose-accessors.lo pixman-pict.lo \
|
||||
@USE_SSE2_TRUE@am__DEPENDENCIES_2 = libpixman-sse.la
|
||||
libpixman_1_la_DEPENDENCIES = $(am__DEPENDENCIES_1) \
|
||||
$(am__DEPENDENCIES_2)
|
||||
am_libpixman_1_la_OBJECTS = pixman-access.lo \
|
||||
pixman-access-accessors.lo pixman-region.lo pixman-image.lo \
|
||||
pixman-combine.lo pixman-compose.lo \
|
||||
pixman-compose-accessors.lo pixman-pict.lo pixman-source.lo \
|
||||
pixman-transformed.lo pixman-transformed-accessors.lo \
|
||||
pixman-utils.lo pixman-edge.lo pixman-edge-accessors.lo \
|
||||
pixman-trap.lo pixman-compute-region.lo pixman-timer.lo
|
||||
libpixman_1_la_OBJECTS = $(am_libpixman_1_la_OBJECTS)
|
||||
am__DEPENDENCIES_2 =
|
||||
@USE_MMX_TRUE@libpixman_mmx_la_DEPENDENCIES = $(am__DEPENDENCIES_2)
|
||||
am__DEPENDENCIES_3 =
|
||||
@USE_MMX_TRUE@libpixman_mmx_la_DEPENDENCIES = $(am__DEPENDENCIES_3)
|
||||
am__libpixman_mmx_la_SOURCES_DIST = pixman-mmx.c pixman-mmx.h
|
||||
@USE_MMX_TRUE@am_libpixman_mmx_la_OBJECTS = \
|
||||
@USE_MMX_TRUE@ libpixman_mmx_la-pixman-mmx.lo
|
||||
libpixman_mmx_la_OBJECTS = $(am_libpixman_mmx_la_OBJECTS)
|
||||
@USE_MMX_TRUE@am_libpixman_mmx_la_rpath =
|
||||
@USE_SSE2_TRUE@libpixman_sse_la_DEPENDENCIES = $(am__DEPENDENCIES_3)
|
||||
am__libpixman_sse_la_SOURCES_DIST = pixman-sse.c pixman-sse.h
|
||||
@USE_SSE2_TRUE@am_libpixman_sse_la_OBJECTS = \
|
||||
@USE_SSE2_TRUE@ libpixman_sse_la-pixman-sse.lo
|
||||
libpixman_sse_la_OBJECTS = $(am_libpixman_sse_la_OBJECTS)
|
||||
@USE_SSE2_TRUE@am_libpixman_sse_la_rpath =
|
||||
DEFAULT_INCLUDES = -I. -I$(srcdir) -I$(top_builddir)
|
||||
depcomp = $(SHELL) $(top_srcdir)/depcomp
|
||||
am__depfiles_maybe = depfiles
|
||||
@ -83,9 +101,11 @@ LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
|
||||
CCLD = $(CC)
|
||||
LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||
$(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||
SOURCES = $(libpixman_1_la_SOURCES) $(libpixman_mmx_la_SOURCES)
|
||||
SOURCES = $(libpixman_1_la_SOURCES) $(libpixman_mmx_la_SOURCES) \
|
||||
$(libpixman_sse_la_SOURCES)
|
||||
DIST_SOURCES = $(libpixman_1_la_SOURCES) \
|
||||
$(am__libpixman_mmx_la_SOURCES_DIST)
|
||||
$(am__libpixman_mmx_la_SOURCES_DIST) \
|
||||
$(am__libpixman_sse_la_SOURCES_DIST)
|
||||
libpixmanincludeHEADERS_INSTALL = $(INSTALL_HEADER)
|
||||
HEADERS = $(libpixmaninclude_HEADERS)
|
||||
ETAGS = etags
|
||||
@ -147,13 +167,19 @@ PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PIXMAN_MAJOR = @PIXMAN_MAJOR@
|
||||
PIXMAN_VERSION_MAJOR = @PIXMAN_VERSION_MAJOR@
|
||||
PIXMAN_VERSION_MICRO = @PIXMAN_VERSION_MICRO@
|
||||
PIXMAN_VERSION_MINOR = @PIXMAN_VERSION_MINOR@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
RANLIB = @RANLIB@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
SSE_CFLAGS = @SSE_CFLAGS@
|
||||
STRIP = @STRIP@
|
||||
USE_MMX_FALSE = @USE_MMX_FALSE@
|
||||
USE_MMX_TRUE = @USE_MMX_TRUE@
|
||||
USE_SSE2_FALSE = @USE_SSE2_FALSE@
|
||||
USE_SSE2_TRUE = @USE_SSE2_TRUE@
|
||||
USE_SSE_FALSE = @USE_SSE_FALSE@
|
||||
USE_SSE_TRUE = @USE_SSE_TRUE@
|
||||
VERSION = @VERSION@
|
||||
@ -163,6 +189,7 @@ ac_ct_CXX = @ac_ct_CXX@
|
||||
ac_ct_F77 = @ac_ct_F77@
|
||||
ac_ct_RANLIB = @ac_ct_RANLIB@
|
||||
ac_ct_STRIP = @ac_ct_STRIP@
|
||||
ac_pt_PKG_CONFIG = @ac_pt_PKG_CONFIG@
|
||||
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
|
||||
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
||||
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
|
||||
@ -202,34 +229,45 @@ sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
lib_LTLIBRARIES = libpixman-1.la
|
||||
libpixman_1_la_LDFLAGS = -version-info $(LT_VERSION_INFO)
|
||||
libpixman_1_la_LIBADD = @DEP_LIBS@ -lm $(am__append_1)
|
||||
libpixman_1_la_LIBADD = @DEP_LIBS@ -lm $(am__append_2) $(am__append_4)
|
||||
libpixman_1_la_SOURCES = \
|
||||
pixman.h \
|
||||
pixman-region.c \
|
||||
pixman-private.h \
|
||||
pixman-image.c \
|
||||
pixman-compose.c \
|
||||
pixman.h \
|
||||
pixman-access.c \
|
||||
pixman-access-accessors.c \
|
||||
pixman-region.c \
|
||||
pixman-private.h \
|
||||
pixman-image.c \
|
||||
pixman-combine.c \
|
||||
pixman-compose.c \
|
||||
pixman-compose-accessors.c \
|
||||
pixman-pict.c \
|
||||
pixman-utils.c \
|
||||
pixman-edge.c \
|
||||
pixman-pict.c \
|
||||
pixman-source.c \
|
||||
pixman-transformed.c \
|
||||
pixman-transformed-accessors.c \
|
||||
pixman-utils.c \
|
||||
pixman-edge.c \
|
||||
pixman-edge-accessors.c \
|
||||
pixman-edge-imp.h \
|
||||
pixman-trap.c \
|
||||
pixman-compute-region.c \
|
||||
pixman-edge-imp.h \
|
||||
pixman-trap.c \
|
||||
pixman-compute-region.c \
|
||||
pixman-timer.c
|
||||
|
||||
libpixmanincludedir = $(includedir)/pixman-1/
|
||||
libpixmaninclude_HEADERS = pixman.h
|
||||
|
||||
# mmx code
|
||||
@USE_MMX_TRUE@noinst_LTLIBRARIES = libpixman-mmx.la
|
||||
libpixmaninclude_HEADERS = pixman.h pixman-version.h
|
||||
noinst_LTLIBRARIES = $(am__append_1) $(am__append_3)
|
||||
EXTRA_DIST = Makefile.win32
|
||||
@USE_MMX_TRUE@libpixman_mmx_la_SOURCES = \
|
||||
@USE_MMX_TRUE@ pixman-mmx.c \
|
||||
@USE_MMX_TRUE@ pixman-mmx.h
|
||||
|
||||
@USE_MMX_TRUE@libpixman_mmx_la_CFLAGS = $(DEP_CFLAGS) $(MMX_CFLAGS)
|
||||
@USE_MMX_TRUE@libpixman_mmx_la_LIBADD = $(DEP_LIBS)
|
||||
@USE_SSE2_TRUE@libpixman_sse_la_SOURCES = \
|
||||
@USE_SSE2_TRUE@ pixman-sse.c \
|
||||
@USE_SSE2_TRUE@ pixman-sse.h
|
||||
|
||||
@USE_SSE2_TRUE@libpixman_sse_la_CFLAGS = $(DEP_CFLAGS) $(SSE_CFLAGS)
|
||||
@USE_SSE2_TRUE@libpixman_sse_la_LIBADD = $(DEP_LIBS)
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
@ -263,6 +301,8 @@ $(top_srcdir)/configure: $(am__configure_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
$(ACLOCAL_M4): $(am__aclocal_m4_deps)
|
||||
cd $(top_builddir) && $(MAKE) $(AM_MAKEFLAGS) am--refresh
|
||||
pixman-version.h: $(top_builddir)/config.status $(srcdir)/pixman-version.h.in
|
||||
cd $(top_builddir) && $(SHELL) ./config.status $(subdir)/$@
|
||||
install-libLTLIBRARIES: $(lib_LTLIBRARIES)
|
||||
@$(NORMAL_INSTALL)
|
||||
test -z "$(libdir)" || $(mkdir_p) "$(DESTDIR)$(libdir)"
|
||||
@ -303,6 +343,8 @@ libpixman-1.la: $(libpixman_1_la_OBJECTS) $(libpixman_1_la_DEPENDENCIES)
|
||||
$(LINK) -rpath $(libdir) $(libpixman_1_la_LDFLAGS) $(libpixman_1_la_OBJECTS) $(libpixman_1_la_LIBADD) $(LIBS)
|
||||
libpixman-mmx.la: $(libpixman_mmx_la_OBJECTS) $(libpixman_mmx_la_DEPENDENCIES)
|
||||
$(LINK) $(am_libpixman_mmx_la_rpath) $(libpixman_mmx_la_LDFLAGS) $(libpixman_mmx_la_OBJECTS) $(libpixman_mmx_la_LIBADD) $(LIBS)
|
||||
libpixman-sse.la: $(libpixman_sse_la_OBJECTS) $(libpixman_sse_la_DEPENDENCIES)
|
||||
$(LINK) $(am_libpixman_sse_la_rpath) $(libpixman_sse_la_LDFLAGS) $(libpixman_sse_la_OBJECTS) $(libpixman_sse_la_LIBADD) $(LIBS)
|
||||
|
||||
mostlyclean-compile:
|
||||
-rm -f *.$(OBJEXT)
|
||||
@ -311,6 +353,10 @@ distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libpixman_mmx_la-pixman-mmx.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/libpixman_sse_la-pixman-sse.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixman-access-accessors.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixman-access.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixman-combine.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixman-compose-accessors.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixman-compose.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixman-compute-region.Plo@am__quote@
|
||||
@ -319,7 +365,10 @@ distclean-compile:
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixman-image.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixman-pict.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixman-region.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixman-source.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixman-timer.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixman-transformed-accessors.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixman-transformed.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixman-trap.Plo@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/pixman-utils.Plo@am__quote@
|
||||
|
||||
@ -351,6 +400,13 @@ libpixman_mmx_la-pixman-mmx.lo: pixman-mmx.c
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libpixman_mmx_la_CFLAGS) $(CFLAGS) -c -o libpixman_mmx_la-pixman-mmx.lo `test -f 'pixman-mmx.c' || echo '$(srcdir)/'`pixman-mmx.c
|
||||
|
||||
libpixman_sse_la-pixman-sse.lo: pixman-sse.c
|
||||
@am__fastdepCC_TRUE@ if $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libpixman_sse_la_CFLAGS) $(CFLAGS) -MT libpixman_sse_la-pixman-sse.lo -MD -MP -MF "$(DEPDIR)/libpixman_sse_la-pixman-sse.Tpo" -c -o libpixman_sse_la-pixman-sse.lo `test -f 'pixman-sse.c' || echo '$(srcdir)/'`pixman-sse.c; \
|
||||
@am__fastdepCC_TRUE@ then mv -f "$(DEPDIR)/libpixman_sse_la-pixman-sse.Tpo" "$(DEPDIR)/libpixman_sse_la-pixman-sse.Plo"; else rm -f "$(DEPDIR)/libpixman_sse_la-pixman-sse.Tpo"; exit 1; fi
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ source='pixman-sse.c' object='libpixman_sse_la-pixman-sse.lo' libtool=yes @AMDEPBACKSLASH@
|
||||
@AMDEP_TRUE@@am__fastdepCC_FALSE@ DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
|
||||
@am__fastdepCC_FALSE@ $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) $(DEFAULT_INCLUDES) $(INCLUDES) $(AM_CPPFLAGS) $(CPPFLAGS) $(libpixman_sse_la_CFLAGS) $(CFLAGS) -c -o libpixman_sse_la-pixman-sse.lo `test -f 'pixman-sse.c' || echo '$(srcdir)/'`pixman-sse.c
|
||||
|
||||
mostlyclean-libtool:
|
||||
-rm -f *.lo
|
||||
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -1,6 +1,4 @@
|
||||
/*
|
||||
* $Id: pixman-edge-imp.h,v 1.1.1.1 2007/10/03 20:48:59 matthieu Exp $
|
||||
*
|
||||
* Copyright © 2004 Keith Packard
|
||||
*
|
||||
* Permission to use, copy, modify, distribute, and sell this software and its
|
||||
@ -35,34 +33,49 @@ rasterizeEdges (pixman_image_t *image,
|
||||
pixman_fixed_t y = t;
|
||||
uint32_t *line;
|
||||
uint32_t *buf = (image)->bits.bits;
|
||||
int32_t stride = (image)->bits.rowstride;
|
||||
int32_t width = (image)->bits.width;
|
||||
|
||||
int stride = (image)->bits.rowstride;
|
||||
int width = (image)->bits.width;
|
||||
|
||||
line = buf + pixman_fixed_to_int (y) * stride;
|
||||
|
||||
|
||||
for (;;)
|
||||
{
|
||||
pixman_fixed_t lx;
|
||||
pixman_fixed_t rx;
|
||||
int lxi;
|
||||
int rxi;
|
||||
|
||||
/* clip X */
|
||||
|
||||
lx = l->x;
|
||||
rx = r->x;
|
||||
#if N_BITS == 1
|
||||
/* For the non-antialiased case, round the coordinates up, in effect
|
||||
* sampling the center of the pixel. (The AA case does a similar
|
||||
* adjustment in RenderSamplesX) */
|
||||
lx += X_FRAC_FIRST(1);
|
||||
rx += X_FRAC_FIRST(1);
|
||||
#endif
|
||||
/* clip X */
|
||||
if (lx < 0)
|
||||
lx = 0;
|
||||
rx = r->x;
|
||||
if (pixman_fixed_to_int (rx) >= width)
|
||||
#if N_BITS == 1
|
||||
rx = pixman_int_to_fixed (width);
|
||||
|
||||
#else
|
||||
/* Use the last pixel of the scanline, covered 100%.
|
||||
* We can't use the first pixel following the scanline,
|
||||
* because accessing it could result in a buffer overrun.
|
||||
*/
|
||||
rx = pixman_int_to_fixed (width) - 1;
|
||||
#endif
|
||||
|
||||
/* Skip empty (or backwards) sections */
|
||||
if (rx > lx)
|
||||
{
|
||||
|
||||
|
||||
/* Find pixel bounds for span */
|
||||
lxi = pixman_fixed_to_int (lx);
|
||||
rxi = pixman_fixed_to_int (rx);
|
||||
|
||||
|
||||
#if N_BITS == 1
|
||||
{
|
||||
uint32_t *a = line;
|
||||
@ -71,30 +84,30 @@ rasterizeEdges (pixman_image_t *image,
|
||||
int nmiddle;
|
||||
int width = rxi - lxi;
|
||||
int x = lxi;
|
||||
|
||||
|
||||
a += x >> FB_SHIFT;
|
||||
x &= FB_MASK;
|
||||
|
||||
|
||||
FbMaskBits (x, width, startmask, nmiddle, endmask);
|
||||
if (startmask) {
|
||||
WRITE(a, READ(a) | startmask);
|
||||
WRITE(image, a, READ(image, a) | startmask);
|
||||
a++;
|
||||
}
|
||||
while (nmiddle--)
|
||||
WRITE(a++, FB_ALLONES);
|
||||
WRITE(image, a++, FB_ALLONES);
|
||||
if (endmask)
|
||||
WRITE(a, READ(a) | endmask);
|
||||
WRITE(image, a, READ(image, a) | endmask);
|
||||
}
|
||||
#else
|
||||
{
|
||||
DefineAlpha(line,lxi);
|
||||
int lxs;
|
||||
int rxs;
|
||||
|
||||
|
||||
/* Sample coverage for edge pixels */
|
||||
lxs = RenderSamplesX (lx, N_BITS);
|
||||
rxs = RenderSamplesX (rx, N_BITS);
|
||||
|
||||
|
||||
/* Add coverage across row */
|
||||
if (lxi == rxi)
|
||||
{
|
||||
@ -103,7 +116,7 @@ rasterizeEdges (pixman_image_t *image,
|
||||
else
|
||||
{
|
||||
int xi;
|
||||
|
||||
|
||||
AddAlpha (N_X_FRAC(N_BITS) - lxs);
|
||||
StepAlpha;
|
||||
for (xi = lxi + 1; xi < rxi; xi++)
|
||||
@ -111,20 +124,15 @@ rasterizeEdges (pixman_image_t *image,
|
||||
AddAlpha (N_X_FRAC(N_BITS));
|
||||
StepAlpha;
|
||||
}
|
||||
/* Do not add in a 0 alpha here. This check is necessary
|
||||
* to avoid a buffer overrun when rx is exactly on a pixel
|
||||
* boundary.
|
||||
*/
|
||||
if (rxs != 0)
|
||||
AddAlpha (rxs);
|
||||
AddAlpha (rxs);
|
||||
}
|
||||
}
|
||||
#endif
|
||||
}
|
||||
|
||||
|
||||
if (y == b)
|
||||
break;
|
||||
|
||||
|
||||
#if N_BITS > 1
|
||||
if (pixman_fixed_frac (y) != Y_FRAC_LAST(N_BITS))
|
||||
{
|
||||
|
@ -1,6 +1,4 @@
|
||||
/*
|
||||
* $Id: pixman-edge.c,v 1.1.1.2 2007/12/10 21:10:23 matthieu Exp $
|
||||
*
|
||||
* Copyright © 2004 Keith Packard
|
||||
*
|
||||
* Permission to use, copy, modify, distribute, and sell this software and its
|
||||
@ -27,7 +25,7 @@
|
||||
#endif
|
||||
|
||||
#include <string.h>
|
||||
#include "pixman.h"
|
||||
|
||||
#include "pixman-private.h"
|
||||
|
||||
#ifdef PIXMAN_FB_ACCESSORS
|
||||
@ -58,10 +56,10 @@
|
||||
|
||||
#define StepAlpha ((__ap += __ao), (__ao ^= 1))
|
||||
|
||||
#define AddAlpha(a) { \
|
||||
uint8_t __o = READ(__ap); \
|
||||
uint8_t __a = (a) + Get4(__o, __ao); \
|
||||
WRITE(__ap, Put4 (__o, __ao, __a | (0 - ((__a) >> 4)))); \
|
||||
#define AddAlpha(a) { \
|
||||
uint8_t __o = READ(image, __ap); \
|
||||
uint8_t __a = (a) + Get4(__o, __ao); \
|
||||
WRITE(image, __ap, Put4 (__o, __ao, __a | (0 - ((__a) >> 4)))); \
|
||||
}
|
||||
|
||||
#include "pixman-edge-imp.h"
|
||||
@ -104,7 +102,7 @@ clip255 (int x)
|
||||
\
|
||||
while (i__--) \
|
||||
{ \
|
||||
WRITE((buf__), clip255 (READ((buf__)) + (val__))); \
|
||||
WRITE(image, (buf__), clip255 (READ(image, (buf__)) + (val__))); \
|
||||
(buf__)++; \
|
||||
} \
|
||||
} while (0)
|
||||
@ -131,51 +129,55 @@ fbRasterizeEdges8 (pixman_image_t *image,
|
||||
uint32_t *line;
|
||||
int fill_start = -1, fill_end = -1;
|
||||
int fill_size = 0;
|
||||
uint32_t *buf = (image)->bits.bits;
|
||||
int32_t stride = (image)->bits.rowstride;
|
||||
int32_t width = (image)->bits.width;
|
||||
|
||||
uint32_t *buf = (image)->bits.bits;
|
||||
int stride = (image)->bits.rowstride;
|
||||
int width = (image)->bits.width;
|
||||
|
||||
line = buf + pixman_fixed_to_int (y) * stride;
|
||||
|
||||
|
||||
for (;;)
|
||||
{
|
||||
uint8_t *ap = (uint8_t *) line;
|
||||
pixman_fixed_t lx, rx;
|
||||
int lxi, rxi;
|
||||
|
||||
|
||||
/* clip X */
|
||||
lx = l->x;
|
||||
if (lx < 0)
|
||||
lx = 0;
|
||||
rx = r->x;
|
||||
if (pixman_fixed_to_int (rx) >= width)
|
||||
rx = pixman_int_to_fixed (width);
|
||||
|
||||
/* Use the last pixel of the scanline, covered 100%.
|
||||
* We can't use the first pixel following the scanline,
|
||||
* because accessing it could result in a buffer overrun.
|
||||
*/
|
||||
rx = pixman_int_to_fixed (width) - 1;
|
||||
|
||||
/* Skip empty (or backwards) sections */
|
||||
if (rx > lx)
|
||||
{
|
||||
int lxs, rxs;
|
||||
|
||||
|
||||
/* Find pixel bounds for span. */
|
||||
lxi = pixman_fixed_to_int (lx);
|
||||
rxi = pixman_fixed_to_int (rx);
|
||||
|
||||
|
||||
/* Sample coverage for edge pixels */
|
||||
lxs = RenderSamplesX (lx, 8);
|
||||
rxs = RenderSamplesX (rx, 8);
|
||||
|
||||
|
||||
/* Add coverage across row */
|
||||
if (lxi == rxi)
|
||||
{
|
||||
WRITE(ap +lxi, clip255 (READ(ap + lxi) + rxs - lxs));
|
||||
WRITE(image, ap +lxi, clip255 (READ(image, ap + lxi) + rxs - lxs));
|
||||
}
|
||||
else
|
||||
{
|
||||
WRITE(ap + lxi, clip255 (READ(ap + lxi) + N_X_FRAC(8) - lxs));
|
||||
|
||||
WRITE(image, ap + lxi, clip255 (READ(image, ap + lxi) + N_X_FRAC(8) - lxs));
|
||||
|
||||
/* Move forward so that lxi/rxi is the pixel span */
|
||||
lxi++;
|
||||
|
||||
|
||||
/* Don't bother trying to optimize the fill unless
|
||||
* the span is longer than 4 pixels. */
|
||||
if (rxi - lxi > 4)
|
||||
@ -213,7 +215,7 @@ fbRasterizeEdges8 (pixman_image_t *image,
|
||||
add_saturate_8 (ap + lxi, N_X_FRAC(8),
|
||||
fill_start - lxi);
|
||||
}
|
||||
|
||||
|
||||
/* Update fill_end */
|
||||
if (rxi < fill_end)
|
||||
{
|
||||
@ -236,21 +238,17 @@ fbRasterizeEdges8 (pixman_image_t *image,
|
||||
{
|
||||
add_saturate_8 (ap + lxi, N_X_FRAC(8), rxi - lxi);
|
||||
}
|
||||
|
||||
/* Do not add in a 0 alpha here. This check is
|
||||
* necessary to avoid a buffer overrun, (when rx
|
||||
* is exactly on a pixel boundary). */
|
||||
if (rxs)
|
||||
WRITE(ap + rxi, clip255 (READ(ap + rxi) + rxs));
|
||||
|
||||
WRITE(image, ap + rxi, clip255 (READ(image, ap + rxi) + rxs));
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
if (y == b) {
|
||||
/* We're done, make sure we clean up any remaining fill. */
|
||||
if (fill_start != fill_end) {
|
||||
if (fill_size == N_Y_FRAC(8))
|
||||
{
|
||||
MEMSET_WRAPPED (ap + fill_start, 0xff, fill_end - fill_start);
|
||||
MEMSET_WRAPPED (image, ap + fill_start, 0xff, fill_end - fill_start);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -260,7 +258,7 @@ fbRasterizeEdges8 (pixman_image_t *image,
|
||||
}
|
||||
break;
|
||||
}
|
||||
|
||||
|
||||
if (pixman_fixed_frac (y) != Y_FRAC_LAST(8))
|
||||
{
|
||||
RenderEdgeStepSmall (l);
|
||||
@ -276,7 +274,7 @@ fbRasterizeEdges8 (pixman_image_t *image,
|
||||
{
|
||||
if (fill_size == N_Y_FRAC(8))
|
||||
{
|
||||
MEMSET_WRAPPED (ap + fill_start, 0xff, fill_end - fill_start);
|
||||
MEMSET_WRAPPED (image, ap + fill_start, 0xff, fill_end - fill_start);
|
||||
}
|
||||
else
|
||||
{
|
||||
|
@ -28,7 +28,6 @@
|
||||
#include <stdio.h>
|
||||
#include <string.h>
|
||||
|
||||
#include "pixman.h"
|
||||
#include "pixman-private.h"
|
||||
|
||||
static void
|
||||
@ -51,7 +50,7 @@ init_gradient (gradient_t *gradient,
|
||||
return FALSE;
|
||||
|
||||
memcpy (gradient->stops, stops, n_stops * sizeof (pixman_gradient_stop_t));
|
||||
|
||||
|
||||
gradient->n_stops = n_stops;
|
||||
|
||||
gradient->stop_range = 0xffff;
|
||||
@ -75,7 +74,7 @@ static pixman_image_t *
|
||||
allocate_image (void)
|
||||
{
|
||||
pixman_image_t *image = malloc (sizeof (pixman_image_t));
|
||||
|
||||
|
||||
if (image)
|
||||
{
|
||||
image_common_t *common = &image->common;
|
||||
@ -134,7 +133,7 @@ pixman_image_unref (pixman_image_t *image)
|
||||
if (image->type == BITS && image->bits.indexed)
|
||||
free (image->bits.indexed);
|
||||
#endif
|
||||
|
||||
|
||||
#if 0
|
||||
memset (image, 0xaa, sizeof (pixman_image_t));
|
||||
#endif
|
||||
@ -144,10 +143,10 @@ pixman_image_unref (pixman_image_t *image)
|
||||
free (image->gradient.stops);
|
||||
}
|
||||
|
||||
|
||||
|
||||
if (image->type == BITS && image->bits.free_me)
|
||||
free (image->bits.free_me);
|
||||
|
||||
|
||||
free (image);
|
||||
|
||||
return TRUE;
|
||||
@ -163,9 +162,9 @@ pixman_image_create_solid_fill (pixman_color_t *color)
|
||||
pixman_image_t *img = allocate_image();
|
||||
if (!img)
|
||||
return NULL;
|
||||
|
||||
|
||||
init_source_image (&img->solid.common);
|
||||
|
||||
|
||||
img->type = SOLID;
|
||||
img->solid.color = color_to_uint32 (color);
|
||||
|
||||
@ -182,14 +181,14 @@ pixman_image_create_linear_gradient (pixman_point_fixed_t *p1,
|
||||
linear_gradient_t *linear;
|
||||
|
||||
return_val_if_fail (n_stops >= 2, NULL);
|
||||
|
||||
|
||||
image = allocate_image();
|
||||
|
||||
|
||||
if (!image)
|
||||
return NULL;
|
||||
|
||||
linear = &image->linear;
|
||||
|
||||
|
||||
if (!init_gradient (&linear->common, stops, n_stops))
|
||||
{
|
||||
free (image);
|
||||
@ -217,7 +216,7 @@ pixman_image_create_radial_gradient (pixman_point_fixed_t *inner,
|
||||
radial_gradient_t *radial;
|
||||
|
||||
return_val_if_fail (n_stops >= 2, NULL);
|
||||
|
||||
|
||||
image = allocate_image();
|
||||
|
||||
if (!image)
|
||||
@ -232,7 +231,7 @@ pixman_image_create_radial_gradient (pixman_point_fixed_t *inner,
|
||||
}
|
||||
|
||||
image->type = RADIAL;
|
||||
|
||||
|
||||
radial->c1.x = inner->x;
|
||||
radial->c1.y = inner->y;
|
||||
radial->c1.radius = inner_radius;
|
||||
@ -245,7 +244,7 @@ pixman_image_create_radial_gradient (pixman_point_fixed_t *inner,
|
||||
radial->A = (radial->cdx * radial->cdx
|
||||
+ radial->cdy * radial->cdy
|
||||
- radial->dr * radial->dr);
|
||||
|
||||
|
||||
return image;
|
||||
}
|
||||
|
||||
@ -262,7 +261,7 @@ pixman_image_create_conical_gradient (pixman_point_fixed_t *center,
|
||||
return NULL;
|
||||
|
||||
conical = &image->conical;
|
||||
|
||||
|
||||
if (!init_gradient (&conical->common, stops, n_stops))
|
||||
{
|
||||
free (image);
|
||||
@ -323,11 +322,11 @@ static void
|
||||
reset_clip_region (pixman_image_t *image)
|
||||
{
|
||||
pixman_region_fini (&image->common.clip_region);
|
||||
|
||||
|
||||
if (image->type == BITS)
|
||||
{
|
||||
pixman_region_init_rect (&image->common.clip_region, 0, 0,
|
||||
image->bits.width, image->bits.height);
|
||||
image->bits.width, image->bits.height);
|
||||
}
|
||||
else
|
||||
{
|
||||
@ -345,10 +344,10 @@ pixman_image_create_bits (pixman_format_code_t format,
|
||||
pixman_image_t *image;
|
||||
uint32_t *free_me = NULL;
|
||||
|
||||
/* must be a whole number of uint32_t's
|
||||
/* must be a whole number of uint32_t's
|
||||
*/
|
||||
return_val_if_fail (bits == NULL ||
|
||||
(rowstride_bytes % sizeof (uint32_t)) == 0, NULL);
|
||||
(rowstride_bytes % sizeof (uint32_t)) == 0, NULL);
|
||||
|
||||
if (!bits && width && height)
|
||||
{
|
||||
@ -356,7 +355,7 @@ pixman_image_create_bits (pixman_format_code_t format,
|
||||
if (!bits)
|
||||
return NULL;
|
||||
}
|
||||
|
||||
|
||||
image = allocate_image();
|
||||
|
||||
if (!image) {
|
||||
@ -371,8 +370,8 @@ pixman_image_create_bits (pixman_format_code_t format,
|
||||
image->bits.height = height;
|
||||
image->bits.bits = bits;
|
||||
image->bits.free_me = free_me;
|
||||
|
||||
image->bits.rowstride = rowstride_bytes / sizeof (uint32_t); /* we store it in number
|
||||
|
||||
image->bits.rowstride = rowstride_bytes / (int) sizeof (uint32_t); /* we store it in number
|
||||
* of uint32_t's
|
||||
*/
|
||||
image->bits.indexed = NULL;
|
||||
@ -398,7 +397,7 @@ pixman_image_set_clip_region (pixman_image_t *image,
|
||||
else
|
||||
{
|
||||
reset_clip_region (image);
|
||||
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
@ -423,7 +422,7 @@ pixman_image_set_transform (pixman_image_t *image,
|
||||
{ 0, 0, pixman_fixed_1 }
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
image_common_t *common = (image_common_t *)image;
|
||||
|
||||
if (common->transform == transform)
|
||||
@ -435,7 +434,7 @@ pixman_image_set_transform (pixman_image_t *image,
|
||||
common->transform = NULL;
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
if (common->transform == NULL)
|
||||
common->transform = malloc (sizeof (pixman_transform_t));
|
||||
if (common->transform == NULL)
|
||||
@ -453,7 +452,7 @@ pixman_image_set_repeat (pixman_image_t *image,
|
||||
image->common.repeat = repeat;
|
||||
}
|
||||
|
||||
pixman_bool_t
|
||||
pixman_bool_t
|
||||
pixman_image_set_filter (pixman_image_t *image,
|
||||
pixman_filter_t filter,
|
||||
const pixman_fixed_t *params,
|
||||
@ -477,7 +476,7 @@ pixman_image_set_filter (pixman_image_t *image,
|
||||
}
|
||||
|
||||
common->filter = filter;
|
||||
|
||||
|
||||
if (common->filter_params)
|
||||
free (common->filter_params);
|
||||
|
||||
@ -518,7 +517,7 @@ pixman_image_set_alpha_map (pixman_image_t *image,
|
||||
int16_t y)
|
||||
{
|
||||
image_common_t *common = (image_common_t *)image;
|
||||
|
||||
|
||||
return_if_fail (!alpha_map || alpha_map->type == BITS);
|
||||
|
||||
if (common->alpha_map != (bits_image_t *)alpha_map)
|
||||
@ -586,7 +585,7 @@ int
|
||||
pixman_image_get_stride (pixman_image_t *image)
|
||||
{
|
||||
if (image->type == BITS)
|
||||
return image->bits.rowstride * sizeof (uint32_t);
|
||||
return image->bits.rowstride * (int) sizeof (uint32_t);
|
||||
|
||||
return 0;
|
||||
}
|
||||
@ -617,7 +616,7 @@ color_to_pixel (pixman_color_t *color,
|
||||
{
|
||||
return FALSE;
|
||||
}
|
||||
|
||||
|
||||
if (PIXMAN_FORMAT_TYPE (format) == PIXMAN_TYPE_ABGR)
|
||||
{
|
||||
c = ((c & 0xff000000) >> 0) |
|
||||
@ -636,7 +635,7 @@ color_to_pixel (pixman_color_t *color,
|
||||
printf ("color: %x %x %x %x\n", color->alpha, color->red, color->green, color->blue);
|
||||
printf ("pixel: %x\n", c);
|
||||
#endif
|
||||
|
||||
|
||||
*pixel = c;
|
||||
return TRUE;
|
||||
}
|
||||
@ -651,7 +650,7 @@ pixman_image_fill_rectangles (pixman_op_t op,
|
||||
pixman_image_t *solid;
|
||||
pixman_color_t c;
|
||||
int i;
|
||||
|
||||
|
||||
if (color->alpha == 0xffff)
|
||||
{
|
||||
if (op == PIXMAN_OP_OVER)
|
||||
@ -666,14 +665,14 @@ pixman_image_fill_rectangles (pixman_op_t op,
|
||||
c.alpha = 0;
|
||||
|
||||
color = &c;
|
||||
|
||||
|
||||
op = PIXMAN_OP_SRC;
|
||||
}
|
||||
|
||||
if (op == PIXMAN_OP_SRC)
|
||||
{
|
||||
uint32_t pixel;
|
||||
|
||||
|
||||
if (color_to_pixel (color, &pixel, dest->bits.format))
|
||||
{
|
||||
for (i = 0; i < n_rects; ++i)
|
||||
@ -681,7 +680,7 @@ pixman_image_fill_rectangles (pixman_op_t op,
|
||||
pixman_region16_t fill_region;
|
||||
int n_boxes, j;
|
||||
pixman_box16_t *boxes;
|
||||
|
||||
|
||||
pixman_region_init_rect (&fill_region, rects[i].x, rects[i].y, rects[i].width, rects[i].height);
|
||||
pixman_region_intersect (&fill_region, &fill_region, &dest->common.clip_region);
|
||||
|
||||
@ -699,7 +698,7 @@ pixman_image_fill_rectangles (pixman_op_t op,
|
||||
return TRUE;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
solid = pixman_image_create_solid_fill (color);
|
||||
if (!solid)
|
||||
return FALSE;
|
||||
@ -707,13 +706,13 @@ pixman_image_fill_rectangles (pixman_op_t op,
|
||||
for (i = 0; i < n_rects; ++i)
|
||||
{
|
||||
const pixman_rectangle16_t *rect = &(rects[i]);
|
||||
|
||||
|
||||
pixman_image_composite (op, solid, NULL, dest,
|
||||
0, 0, 0, 0,
|
||||
rect->x, rect->y,
|
||||
rect->width, rect->height);
|
||||
}
|
||||
|
||||
|
||||
pixman_image_unref (solid);
|
||||
|
||||
return TRUE;
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -26,6 +26,9 @@
|
||||
*
|
||||
* Based on work by Owen Taylor
|
||||
*/
|
||||
#ifndef _PIXMAN_MMX_H_
|
||||
#define _PIXMAN_MMX_H_
|
||||
|
||||
#ifdef HAVE_DIX_CONFIG_H
|
||||
#include <dix-config.h>
|
||||
#endif
|
||||
@ -313,3 +316,5 @@ fbCompositeOver_x888x8x8888mmx (pixman_op_t op,
|
||||
uint16_t height);
|
||||
|
||||
#endif /* USE_MMX */
|
||||
|
||||
#endif /* _PIXMAN_MMX_H_ */
|
||||
|
File diff suppressed because it is too large
Load Diff
@ -27,6 +27,7 @@
|
||||
# define BITMAP_BIT_ORDER LSBFirst
|
||||
#endif
|
||||
|
||||
#undef DEBUG
|
||||
#define DEBUG 0
|
||||
|
||||
#if defined (__GNUC__)
|
||||
@ -39,16 +40,25 @@
|
||||
|
||||
#ifndef INT16_MIN
|
||||
# define INT16_MIN (-32767-1)
|
||||
#endif
|
||||
|
||||
#ifndef INT16_MAX
|
||||
# define INT16_MAX (32767)
|
||||
#endif
|
||||
|
||||
#ifndef INT32_MIN
|
||||
# define INT32_MIN (-2147483647-1)
|
||||
#endif
|
||||
|
||||
#ifndef INT32_MAX
|
||||
# define INT32_MAX (2147483647)
|
||||
#endif
|
||||
|
||||
#ifndef UINT32_MIN
|
||||
# define UINT32_MIN (0)
|
||||
#endif
|
||||
|
||||
#ifndef UINT32_MAX
|
||||
# define UINT32_MAX (4294967295U)
|
||||
#endif
|
||||
|
||||
@ -65,7 +75,7 @@
|
||||
#define FB_HALFUNIT (1 << (FB_SHIFT-1))
|
||||
#define FB_MASK (FB_UNIT - 1)
|
||||
#define FB_ALLONES ((uint32_t) -1)
|
||||
|
||||
|
||||
/* Memory allocation helpers */
|
||||
void *pixman_malloc_ab (unsigned int n, unsigned int b);
|
||||
void *pixman_malloc_abc (unsigned int a, unsigned int b, unsigned int c);
|
||||
@ -136,6 +146,12 @@ typedef struct point point_t;
|
||||
typedef FASTCALL void (*CombineMaskU) (uint32_t *src, const uint32_t *mask, int width);
|
||||
typedef FASTCALL void (*CombineFuncU) (uint32_t *dest, const uint32_t *src, int width);
|
||||
typedef FASTCALL void (*CombineFuncC) (uint32_t *dest, uint32_t *src, uint32_t *mask, int width);
|
||||
typedef FASTCALL void (*fetchProc)(bits_image_t *pict, int x, int y, int width,
|
||||
uint32_t *buffer);
|
||||
typedef FASTCALL uint32_t (*fetchPixelProc)(bits_image_t *pict, int offset, int line);
|
||||
typedef FASTCALL void (*storeProc)(pixman_image_t *, uint32_t *bits,
|
||||
const uint32_t *values, int x, int width,
|
||||
const pixman_indexed_t *);
|
||||
|
||||
typedef struct _FbComposeData {
|
||||
uint8_t op;
|
||||
@ -165,6 +181,32 @@ void pixman_composite_rect_general_accessors (const FbComposeData *data,
|
||||
void pixman_composite_rect_general (const FbComposeData *data,
|
||||
uint32_t *scanline_buffer);
|
||||
|
||||
fetchProc pixman_fetchProcForPicture (bits_image_t *);
|
||||
fetchPixelProc pixman_fetchPixelProcForPicture (bits_image_t *);
|
||||
storeProc pixman_storeProcForPicture (bits_image_t *);
|
||||
fetchProc pixman_fetchProcForPicture_accessors (bits_image_t *);
|
||||
fetchPixelProc pixman_fetchPixelProcForPicture_accessors (bits_image_t *);
|
||||
storeProc pixman_storeProcForPicture_accessors (bits_image_t *);
|
||||
|
||||
void pixmanFetchSourcePict(source_image_t *, int x, int y, int width,
|
||||
uint32_t *buffer, uint32_t *mask, uint32_t maskBits);
|
||||
|
||||
void fbFetchTransformed(bits_image_t *, int x, int y, int width,
|
||||
uint32_t *buffer, uint32_t *mask, uint32_t maskBits);
|
||||
void fbStoreExternalAlpha(bits_image_t *, int x, int y, int width,
|
||||
uint32_t *buffer);
|
||||
void fbFetchExternalAlpha(bits_image_t *, int x, int y, int width,
|
||||
uint32_t *buffer, uint32_t *mask, uint32_t maskBits);
|
||||
|
||||
void fbFetchTransformed_accessors(bits_image_t *, int x, int y, int width,
|
||||
uint32_t *buffer, uint32_t *mask,
|
||||
uint32_t maskBits);
|
||||
void fbStoreExternalAlpha_accessors(bits_image_t *, int x, int y, int width,
|
||||
uint32_t *buffer);
|
||||
void fbFetchExternalAlpha_accessors(bits_image_t *, int x, int y, int width,
|
||||
uint32_t *buffer, uint32_t *mask,
|
||||
uint32_t maskBits);
|
||||
|
||||
/* end */
|
||||
|
||||
typedef enum
|
||||
@ -221,7 +263,7 @@ struct solid_fill
|
||||
source_image_t common;
|
||||
uint32_t color; /* FIXME: shouldn't this be a pixman_color_t? */
|
||||
};
|
||||
|
||||
|
||||
struct gradient
|
||||
{
|
||||
source_image_t common;
|
||||
@ -263,7 +305,7 @@ struct conical_gradient
|
||||
gradient_t common;
|
||||
pixman_point_fixed_t center;
|
||||
pixman_fixed_t angle;
|
||||
};
|
||||
};
|
||||
|
||||
struct bits_image
|
||||
{
|
||||
@ -289,6 +331,11 @@ union pixman_image
|
||||
solid_fill_t solid;
|
||||
};
|
||||
|
||||
|
||||
extern CombineFuncU pixman_fbCombineFuncU[];
|
||||
extern CombineFuncC pixman_fbCombineFuncC[];
|
||||
FASTCALL void pixman_fbCombineMaskU (uint32_t *src, const uint32_t *mask, int width);
|
||||
|
||||
#define LOG2_BITMAP_PAD 5
|
||||
#define FB_STIP_SHIFT LOG2_BITMAP_PAD
|
||||
#define FB_STIP_UNIT (1 << FB_STIP_SHIFT)
|
||||
@ -331,23 +378,23 @@ union pixman_image
|
||||
}
|
||||
|
||||
#if IMAGE_BYTE_ORDER == MSBFirst
|
||||
#define Fetch24(a) ((unsigned long) (a) & 1 ? \
|
||||
((READ(a) << 16) | READ((uint16_t *) ((a)+1))) : \
|
||||
((READ((uint16_t *) (a)) << 8) | READ((a)+2)))
|
||||
#define Store24(a,v) ((unsigned long) (a) & 1 ? \
|
||||
(WRITE(a, (uint8_t) ((v) >> 16)), \
|
||||
WRITE((uint16_t *) ((a)+1), (uint16_t) (v))) : \
|
||||
(WRITE((uint16_t *) (a), (uint16_t) ((v) >> 8)), \
|
||||
WRITE((a)+2, (uint8_t) (v))))
|
||||
#define Fetch24(img, a) ((unsigned long) (a) & 1 ? \
|
||||
((READ(img, a) << 16) | READ(img, (uint16_t *) ((a)+1))) : \
|
||||
((READ(img, (uint16_t *) (a)) << 8) | READ(img, (a)+2)))
|
||||
#define Store24(img,a,v) ((unsigned long) (a) & 1 ? \
|
||||
(WRITE(img, a, (uint8_t) ((v) >> 16)), \
|
||||
WRITE(img, (uint16_t *) ((a)+1), (uint16_t) (v))) : \
|
||||
(WRITE(img, (uint16_t *) (a), (uint16_t) ((v) >> 8)), \
|
||||
WRITE(img, (a)+2, (uint8_t) (v))))
|
||||
#else
|
||||
#define Fetch24(a) ((unsigned long) (a) & 1 ? \
|
||||
(READ(a) | (READ((uint16_t *) ((a)+1)) << 8)) : \
|
||||
(READ((uint16_t *) (a)) | (READ((a)+2) << 16)))
|
||||
#define Store24(a,v) ((unsigned long) (a) & 1 ? \
|
||||
(WRITE(a, (uint8_t) (v)), \
|
||||
WRITE((uint16_t *) ((a)+1), (uint16_t) ((v) >> 8))) : \
|
||||
(WRITE((uint16_t *) (a), (uint16_t) (v)), \
|
||||
WRITE((a)+2, (uint8_t) ((v) >> 16))))
|
||||
#define Fetch24(img,a) ((unsigned long) (a) & 1 ? \
|
||||
(READ(img, a) | (READ(img, (uint16_t *) ((a)+1)) << 8)) : \
|
||||
(READ(img, (uint16_t *) (a)) | (READ(img, (a)+2) << 16)))
|
||||
#define Store24(img,a,v) ((unsigned long) (a) & 1 ? \
|
||||
(WRITE(img, a, (uint8_t) (v)), \
|
||||
WRITE(img, (uint16_t *) ((a)+1), (uint16_t) ((v) >> 8))) : \
|
||||
(WRITE(img, (uint16_t *) (a), (uint16_t) (v)), \
|
||||
WRITE(img, (a)+2, (uint8_t) ((v) >> 16))))
|
||||
#endif
|
||||
|
||||
#define Alpha(x) ((x) >> 24)
|
||||
@ -590,6 +637,8 @@ union pixman_image
|
||||
#define DIV(a,b) ((((a) < 0) == ((b) < 0)) ? (a) / (b) : \
|
||||
((a) - (b) + 1 - (((b) < 0) << 1)) / (b))
|
||||
|
||||
#define CLIP(a,b,c) ((a) < (b) ? (b) : ((a) > (c) ? (c) : (a)))
|
||||
|
||||
#if 0
|
||||
/* FIXME: the MOD macro above is equivalent, but faster I think */
|
||||
#define mod(a,b) ((b) == 1 ? 0 : (a) >= 0 ? (a) % (b) : (b) - (-a) % (b))
|
||||
@ -636,43 +685,38 @@ union pixman_image
|
||||
|
||||
#ifdef PIXMAN_FB_ACCESSORS
|
||||
|
||||
#define READ(ptr) \
|
||||
(image->common.read_func ((ptr), sizeof(*(ptr))))
|
||||
#define WRITE(ptr,val) \
|
||||
(image->common.write_func ((ptr), (val), sizeof (*(ptr))))
|
||||
#define READ(img, ptr) \
|
||||
((img)->common.read_func ((ptr), sizeof(*(ptr))))
|
||||
#define WRITE(img, ptr,val) \
|
||||
((img)->common.write_func ((ptr), (val), sizeof (*(ptr))))
|
||||
|
||||
#define MEMCPY_WRAPPED(dst, src, size) \
|
||||
#define MEMCPY_WRAPPED(img, dst, src, size) \
|
||||
do { \
|
||||
size_t _i; \
|
||||
uint8_t *_dst = (uint8_t*)(dst), *_src = (uint8_t*)(src); \
|
||||
for(_i = 0; _i < size; _i++) { \
|
||||
WRITE(_dst +_i, READ(_src + _i)); \
|
||||
WRITE((img), _dst +_i, READ((img), _src + _i)); \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
#define MEMSET_WRAPPED(dst, val, size) \
|
||||
|
||||
#define MEMSET_WRAPPED(img, dst, val, size) \
|
||||
do { \
|
||||
size_t _i; \
|
||||
uint8_t *_dst = (uint8_t*)(dst); \
|
||||
for(_i = 0; _i < (size_t) size; _i++) { \
|
||||
WRITE(_dst +_i, (val)); \
|
||||
for(_i = 0; _i < (size_t) size; _i++) { \
|
||||
WRITE((img), _dst +_i, (val)); \
|
||||
} \
|
||||
} while (0)
|
||||
|
||||
/* FIXME */
|
||||
#define fbPrepareAccess(x)
|
||||
#define fbFinishAccess(x)
|
||||
|
||||
#else
|
||||
|
||||
#define READ(ptr) (*(ptr))
|
||||
#define WRITE(ptr, val) (*(ptr) = (val))
|
||||
#define MEMCPY_WRAPPED(dst, src, size) \
|
||||
#define READ(img, ptr) (*(ptr))
|
||||
#define WRITE(img, ptr, val) (*(ptr) = (val))
|
||||
#define MEMCPY_WRAPPED(img, dst, src, size) \
|
||||
memcpy(dst, src, size)
|
||||
#define MEMSET_WRAPPED(dst, val, size) \
|
||||
#define MEMSET_WRAPPED(img, dst, val, size) \
|
||||
memset(dst, val, size)
|
||||
#define fbPrepareAccess(x)
|
||||
#define fbFinishAccess(x)
|
||||
|
||||
#endif
|
||||
|
||||
#define fbComposeGetSolid(img, res, fmt) \
|
||||
@ -692,21 +736,21 @@ union pixman_image
|
||||
switch (PIXMAN_FORMAT_BPP((img)->bits.format)) \
|
||||
{ \
|
||||
case 32: \
|
||||
(res) = READ((uint32_t *)bits__); \
|
||||
(res) = READ(img, (uint32_t *)bits__); \
|
||||
break; \
|
||||
case 24: \
|
||||
(res) = Fetch24 ((uint8_t *) bits__); \
|
||||
(res) = Fetch24(img, (uint8_t *) bits__); \
|
||||
break; \
|
||||
case 16: \
|
||||
(res) = READ((uint16_t *) bits__); \
|
||||
(res) = READ(img, (uint16_t *) bits__); \
|
||||
(res) = cvt0565to0888(res); \
|
||||
break; \
|
||||
case 8: \
|
||||
(res) = READ((uint8_t *) bits__); \
|
||||
(res) = READ(img, (uint8_t *) bits__); \
|
||||
(res) = (res) << 24; \
|
||||
break; \
|
||||
case 1: \
|
||||
(res) = READ((uint32_t *) bits__); \
|
||||
(res) = READ(img, (uint32_t *) bits__); \
|
||||
(res) = FbLeftStipBits((res),1) ? 0xff000000 : 0x00000000; \
|
||||
break; \
|
||||
default: \
|
||||
@ -736,7 +780,7 @@ union pixman_image
|
||||
__bits__ = pict->bits.bits; \
|
||||
__stride__ = pict->bits.rowstride; \
|
||||
__bpp__ = PIXMAN_FORMAT_BPP(pict->bits.format); \
|
||||
(out_stride) = __stride__ * sizeof (uint32_t) / sizeof (type); \
|
||||
(out_stride) = __stride__ * (int) sizeof (uint32_t) / (int) sizeof (type); \
|
||||
(line) = ((type *) __bits__) + \
|
||||
(out_stride) * (y) + (mul) * (x); \
|
||||
} while (0)
|
||||
@ -748,7 +792,7 @@ union pixman_image
|
||||
|
||||
#define MAX_ALPHA(n) ((1 << (n)) - 1)
|
||||
#define N_Y_FRAC(n) ((n) == 1 ? 1 : (1 << ((n)/2)) - 1)
|
||||
#define N_X_FRAC(n) ((1 << ((n)/2)) + 1)
|
||||
#define N_X_FRAC(n) ((n) == 1 ? 1 : (1 << ((n)/2)) + 1)
|
||||
|
||||
#define STEP_Y_SMALL(n) (pixman_fixed_1 / N_Y_FRAC(n))
|
||||
#define STEP_Y_BIG(n) (pixman_fixed_1 - (N_Y_FRAC(n) - 1) * STEP_Y_SMALL(n))
|
||||
@ -838,7 +882,7 @@ void pixman_timer_register (PixmanTimer *timer);
|
||||
\
|
||||
timer##tname.n_times++; \
|
||||
begin##tname = OIL_STAMP();
|
||||
|
||||
|
||||
#define TIMER_END(tname) \
|
||||
timer##tname.total += OIL_STAMP() - begin##tname; \
|
||||
}
|
||||
|
@ -55,7 +55,6 @@ SOFTWARE.
|
||||
#include <stdio.h>
|
||||
|
||||
#include "pixman-private.h"
|
||||
#include "pixman.h"
|
||||
|
||||
typedef struct pixman_region16_point {
|
||||
int x, y;
|
||||
|
@ -1,6 +1,4 @@
|
||||
/*
|
||||
* $Id: pixman-trap.c,v 1.1.1.2 2007/12/10 21:10:22 matthieu Exp $
|
||||
*
|
||||
* Copyright © 2004 Keith Packard
|
||||
*
|
||||
* Permission to use, copy, modify, distribute, and sell this software and its
|
||||
@ -51,7 +49,7 @@ pixman_add_traps (pixman_image_t * image,
|
||||
height = image->bits.height;
|
||||
bpp = PIXMAN_FORMAT_BPP (image->bits.format);
|
||||
|
||||
x_off_fixed = pixman_int_to_fixed(y_off);
|
||||
x_off_fixed = pixman_int_to_fixed(x_off);
|
||||
y_off_fixed = pixman_int_to_fixed(y_off);
|
||||
|
||||
while (ntrap--)
|
||||
@ -85,8 +83,6 @@ pixman_add_traps (pixman_image_t * image,
|
||||
}
|
||||
traps++;
|
||||
}
|
||||
|
||||
fbFinishAccess (pPicture->pDrawable);
|
||||
}
|
||||
|
||||
static void
|
||||
|
@ -15,7 +15,7 @@
|
||||
* IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS, IN NO EVENT SHALL SuSE
|
||||
* BE LIABLE FOR ANY SPECIAL, INDIRECT OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES
|
||||
* WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION
|
||||
* OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
|
||||
* OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN
|
||||
* CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE.
|
||||
*
|
||||
* Author: Keith Packard, SuSE, Inc.
|
||||
@ -26,7 +26,7 @@
|
||||
#endif
|
||||
|
||||
#include <stdlib.h>
|
||||
#include "pixman.h"
|
||||
|
||||
#include "pixman-private.h"
|
||||
#include "pixman-mmx.h"
|
||||
|
||||
@ -54,10 +54,10 @@ pixman_transform_point_3d (pixman_transform_t *transform,
|
||||
|
||||
result.vector[j] = (pixman_fixed_48_16_t) v;
|
||||
}
|
||||
|
||||
|
||||
if (!result.vector[2])
|
||||
return FALSE;
|
||||
|
||||
|
||||
*vector = result;
|
||||
return TRUE;
|
||||
}
|
||||
@ -93,7 +93,7 @@ pixman_fill8 (uint32_t *bits,
|
||||
int height,
|
||||
uint32_t xor)
|
||||
{
|
||||
int byte_stride = stride * sizeof (uint32_t);
|
||||
int byte_stride = stride * (int) sizeof (uint32_t);
|
||||
uint8_t *dst = (uint8_t *) bits;
|
||||
uint8_t v = xor & 0xff;
|
||||
int i;
|
||||
@ -118,7 +118,7 @@ pixman_fill16 (uint32_t *bits,
|
||||
int height,
|
||||
uint32_t xor)
|
||||
{
|
||||
int short_stride = (stride * sizeof (uint32_t)) / sizeof (uint16_t);
|
||||
int short_stride = (stride * (int) sizeof (uint32_t)) / (int) sizeof (uint16_t);
|
||||
uint16_t *dst = (uint16_t *)bits;
|
||||
uint16_t v = xor & 0xffff;
|
||||
int i;
|
||||
@ -144,9 +144,9 @@ pixman_fill32 (uint32_t *bits,
|
||||
uint32_t xor)
|
||||
{
|
||||
int i;
|
||||
|
||||
|
||||
bits = bits + y * stride + x;
|
||||
|
||||
|
||||
while (height--)
|
||||
{
|
||||
for (i = 0; i < width; ++i)
|
||||
@ -170,7 +170,7 @@ pixman_fill (uint32_t *bits,
|
||||
printf ("filling: %d %d %d %d (stride: %d, bpp: %d) pixel: %x\n",
|
||||
x, y, width, height, stride, bpp, xor);
|
||||
#endif
|
||||
|
||||
|
||||
#ifdef USE_MMX
|
||||
if (!pixman_have_mmx() || !pixman_fill_mmx (bits, stride, bpp, x, y, width, height, xor))
|
||||
#endif
|
||||
@ -180,11 +180,11 @@ pixman_fill (uint32_t *bits,
|
||||
case 8:
|
||||
pixman_fill8 (bits, stride, x, y, width, height, xor);
|
||||
break;
|
||||
|
||||
|
||||
case 16:
|
||||
pixman_fill16 (bits, stride, x, y, width, height, xor);
|
||||
break;
|
||||
|
||||
|
||||
case 32:
|
||||
pixman_fill32 (bits, stride, x, y, width, height, xor);
|
||||
break;
|
||||
@ -194,10 +194,10 @@ pixman_fill (uint32_t *bits,
|
||||
break;
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
return TRUE;
|
||||
}
|
||||
|
||||
|
||||
|
||||
/*
|
||||
* Compute the smallest value no less than y which is on a
|
||||
@ -209,7 +209,7 @@ pixman_sample_ceil_y (pixman_fixed_t y, int n)
|
||||
{
|
||||
pixman_fixed_t f = pixman_fixed_frac(y);
|
||||
pixman_fixed_t i = pixman_fixed_floor(y);
|
||||
|
||||
|
||||
f = ((f + Y_FRAC_FIRST(n)) / STEP_Y_SMALL(n)) * STEP_Y_SMALL(n) + Y_FRAC_FIRST(n);
|
||||
if (f > Y_FRAC_LAST(n))
|
||||
{
|
||||
@ -230,7 +230,7 @@ pixman_sample_floor_y (pixman_fixed_t y, int n)
|
||||
{
|
||||
pixman_fixed_t f = pixman_fixed_frac(y);
|
||||
pixman_fixed_t i = pixman_fixed_floor (y);
|
||||
|
||||
|
||||
f = _div(f - Y_FRAC_FIRST(n), STEP_Y_SMALL(n)) * STEP_Y_SMALL(n) + Y_FRAC_FIRST(n);
|
||||
if (f < Y_FRAC_FIRST(n))
|
||||
{
|
||||
@ -249,9 +249,9 @@ pixman_edge_step (pixman_edge_t *e, int n)
|
||||
pixman_fixed_48_16_t ne;
|
||||
|
||||
e->x += n * e->stepx;
|
||||
|
||||
|
||||
ne = e->e + n * (pixman_fixed_48_16_t) e->dx;
|
||||
|
||||
|
||||
if (n >= 0)
|
||||
{
|
||||
if (ne > 0)
|
||||
@ -281,7 +281,7 @@ _pixman_edge_tMultiInit (pixman_edge_t *e, int n, pixman_fixed_t *stepx_p, pixma
|
||||
{
|
||||
pixman_fixed_t stepx;
|
||||
pixman_fixed_48_16_t ne;
|
||||
|
||||
|
||||
ne = n * (pixman_fixed_48_16_t) e->dx;
|
||||
stepx = n * e->stepx;
|
||||
if (ne > 0)
|
||||
@ -331,7 +331,7 @@ pixman_edge_init (pixman_edge_t *e,
|
||||
e->dx = -dx % dy;
|
||||
e->e = 0;
|
||||
}
|
||||
|
||||
|
||||
_pixman_edge_tMultiInit (e, STEP_Y_SMALL(n), &e->stepx_small, &e->dx_small);
|
||||
_pixman_edge_tMultiInit (e, STEP_Y_BIG(n), &e->stepx_big, &e->dx_big);
|
||||
}
|
||||
@ -407,3 +407,183 @@ pixman_malloc_abc (unsigned int a,
|
||||
else
|
||||
return malloc (a * b * c);
|
||||
}
|
||||
|
||||
|
||||
/**
|
||||
* pixman_version:
|
||||
*
|
||||
* Returns the version of the pixman library encoded in a single
|
||||
* integer as per %PIXMAN_VERSION_ENCODE. The encoding ensures that
|
||||
* later versions compare greater than earlier versions.
|
||||
*
|
||||
* A run-time comparison to check that pixman's version is greater than
|
||||
* or equal to version X.Y.Z could be performed as follows:
|
||||
*
|
||||
* <informalexample><programlisting>
|
||||
* if (pixman_version() >= PIXMAN_VERSION_ENCODE(X,Y,Z)) {...}
|
||||
* </programlisting></informalexample>
|
||||
*
|
||||
* See also pixman_version_string() as well as the compile-time
|
||||
* equivalents %PIXMAN_VERSION and %PIXMAN_VERSION_STRING.
|
||||
*
|
||||
* Return value: the encoded version.
|
||||
**/
|
||||
int
|
||||
pixman_version (void)
|
||||
{
|
||||
return PIXMAN_VERSION;
|
||||
}
|
||||
|
||||
/**
|
||||
* pixman_version_string:
|
||||
*
|
||||
* Returns the version of the pixman library as a human-readable string
|
||||
* of the form "X.Y.Z".
|
||||
*
|
||||
* See also pixman_version() as well as the compile-time equivalents
|
||||
* %PIXMAN_VERSION_STRING and %PIXMAN_VERSION.
|
||||
*
|
||||
* Return value: a string containing the version.
|
||||
**/
|
||||
const char*
|
||||
pixman_version_string (void)
|
||||
{
|
||||
return PIXMAN_VERSION_STRING;
|
||||
}
|
||||
|
||||
/**
|
||||
* pixman_format_supported_destination:
|
||||
* @format: A pixman_format_code_t format
|
||||
*
|
||||
* Return value: whether the provided format code is a supported
|
||||
* format for a pixman surface used as a destination in
|
||||
* rendering.
|
||||
*
|
||||
* Currently, all pixman_format_code_t values are supported
|
||||
* except for the YUV formats.
|
||||
**/
|
||||
pixman_bool_t
|
||||
pixman_format_supported_destination (pixman_format_code_t format)
|
||||
{
|
||||
switch (format) {
|
||||
/* 32 bpp formats */
|
||||
case PIXMAN_a8r8g8b8:
|
||||
case PIXMAN_x8r8g8b8:
|
||||
case PIXMAN_a8b8g8r8:
|
||||
case PIXMAN_x8b8g8r8:
|
||||
case PIXMAN_r8g8b8:
|
||||
case PIXMAN_b8g8r8:
|
||||
case PIXMAN_r5g6b5:
|
||||
case PIXMAN_b5g6r5:
|
||||
/* 16 bpp formats */
|
||||
case PIXMAN_a1r5g5b5:
|
||||
case PIXMAN_x1r5g5b5:
|
||||
case PIXMAN_a1b5g5r5:
|
||||
case PIXMAN_x1b5g5r5:
|
||||
case PIXMAN_a4r4g4b4:
|
||||
case PIXMAN_x4r4g4b4:
|
||||
case PIXMAN_a4b4g4r4:
|
||||
case PIXMAN_x4b4g4r4:
|
||||
/* 8bpp formats */
|
||||
case PIXMAN_a8:
|
||||
case PIXMAN_r3g3b2:
|
||||
case PIXMAN_b2g3r3:
|
||||
case PIXMAN_a2r2g2b2:
|
||||
case PIXMAN_a2b2g2r2:
|
||||
case PIXMAN_c8:
|
||||
case PIXMAN_g8:
|
||||
case PIXMAN_x4a4:
|
||||
/* Collides with PIXMAN_c8
|
||||
case PIXMAN_x4c4:
|
||||
*/
|
||||
/* Collides with PIXMAN_g8
|
||||
case PIXMAN_x4g4:
|
||||
*/
|
||||
/* 4bpp formats */
|
||||
case PIXMAN_a4:
|
||||
case PIXMAN_r1g2b1:
|
||||
case PIXMAN_b1g2r1:
|
||||
case PIXMAN_a1r1g1b1:
|
||||
case PIXMAN_a1b1g1r1:
|
||||
case PIXMAN_c4:
|
||||
case PIXMAN_g4:
|
||||
/* 1bpp formats */
|
||||
case PIXMAN_a1:
|
||||
case PIXMAN_g1:
|
||||
return TRUE;
|
||||
|
||||
/* YUV formats */
|
||||
case PIXMAN_yuy2:
|
||||
case PIXMAN_yv12:
|
||||
default:
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
||||
/**
|
||||
* pixman_format_supported_source:
|
||||
* @format: A pixman_format_code_t format
|
||||
*
|
||||
* Return value: whether the provided format code is a supported
|
||||
* format for a pixman surface used as a source in
|
||||
* rendering.
|
||||
*
|
||||
* Currently, all pixman_format_code_t values are supported.
|
||||
**/
|
||||
pixman_bool_t
|
||||
pixman_format_supported_source (pixman_format_code_t format)
|
||||
{
|
||||
switch (format) {
|
||||
/* 32 bpp formats */
|
||||
case PIXMAN_a8r8g8b8:
|
||||
case PIXMAN_x8r8g8b8:
|
||||
case PIXMAN_a8b8g8r8:
|
||||
case PIXMAN_x8b8g8r8:
|
||||
case PIXMAN_r8g8b8:
|
||||
case PIXMAN_b8g8r8:
|
||||
case PIXMAN_r5g6b5:
|
||||
case PIXMAN_b5g6r5:
|
||||
/* 16 bpp formats */
|
||||
case PIXMAN_a1r5g5b5:
|
||||
case PIXMAN_x1r5g5b5:
|
||||
case PIXMAN_a1b5g5r5:
|
||||
case PIXMAN_x1b5g5r5:
|
||||
case PIXMAN_a4r4g4b4:
|
||||
case PIXMAN_x4r4g4b4:
|
||||
case PIXMAN_a4b4g4r4:
|
||||
case PIXMAN_x4b4g4r4:
|
||||
/* 8bpp formats */
|
||||
case PIXMAN_a8:
|
||||
case PIXMAN_r3g3b2:
|
||||
case PIXMAN_b2g3r3:
|
||||
case PIXMAN_a2r2g2b2:
|
||||
case PIXMAN_a2b2g2r2:
|
||||
case PIXMAN_c8:
|
||||
case PIXMAN_g8:
|
||||
case PIXMAN_x4a4:
|
||||
/* Collides with PIXMAN_c8
|
||||
case PIXMAN_x4c4:
|
||||
*/
|
||||
/* Collides with PIXMAN_g8
|
||||
case PIXMAN_x4g4:
|
||||
*/
|
||||
/* 4bpp formats */
|
||||
case PIXMAN_a4:
|
||||
case PIXMAN_r1g2b1:
|
||||
case PIXMAN_b1g2r1:
|
||||
case PIXMAN_a1r1g1b1:
|
||||
case PIXMAN_a1b1g1r1:
|
||||
case PIXMAN_c4:
|
||||
case PIXMAN_g4:
|
||||
/* 1bpp formats */
|
||||
case PIXMAN_a1:
|
||||
case PIXMAN_g1:
|
||||
/* YUV formats */
|
||||
case PIXMAN_yuy2:
|
||||
case PIXMAN_yv12:
|
||||
return TRUE;
|
||||
|
||||
default:
|
||||
return FALSE;
|
||||
}
|
||||
}
|
||||
|
@ -69,6 +69,8 @@ SOFTWARE.
|
||||
#ifndef PIXMAN_H__
|
||||
#define PIXMAN_H__
|
||||
|
||||
#include <pixman-version.h>
|
||||
|
||||
/*
|
||||
* Standard integers
|
||||
*/
|
||||
@ -90,6 +92,13 @@ typedef unsigned __int64 uint64_t;
|
||||
# include <stdint.h>
|
||||
#endif
|
||||
|
||||
/* GCC visibility */
|
||||
#if defined(__GNUC__) && __GNUC__ >= 4
|
||||
#define PIXMAN_EXPORT __attribute__ ((visibility("default")))
|
||||
#else
|
||||
#define PIXMAN_EXPORT
|
||||
#endif
|
||||
|
||||
/*
|
||||
* Boolean
|
||||
*/
|
||||
@ -158,6 +167,7 @@ struct pixman_transform
|
||||
pixman_fixed_t matrix[3][3];
|
||||
};
|
||||
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_transform_point_3d (pixman_transform_t *transform,
|
||||
pixman_vector_t *vector);
|
||||
|
||||
@ -221,7 +231,9 @@ typedef enum
|
||||
PIXMAN_OP_CONJOINT_OUT_REVERSE = 0x28,
|
||||
PIXMAN_OP_CONJOINT_ATOP = 0x29,
|
||||
PIXMAN_OP_CONJOINT_ATOP_REVERSE = 0x2a,
|
||||
PIXMAN_OP_CONJOINT_XOR = 0x2b
|
||||
PIXMAN_OP_CONJOINT_XOR = 0x2b,
|
||||
|
||||
PIXMAN_OP_NONE
|
||||
} pixman_op_t;
|
||||
|
||||
/*
|
||||
@ -262,65 +274,94 @@ typedef enum
|
||||
PIXMAN_REGION_PART
|
||||
} pixman_region_overlap_t;
|
||||
|
||||
PIXMAN_EXPORT
|
||||
int pixman_version (void);
|
||||
|
||||
PIXMAN_EXPORT
|
||||
const char* pixman_version_string (void);
|
||||
|
||||
/* This function exists only to make it possible to preserve the X ABI - it should
|
||||
* go away at first opportunity.
|
||||
*/
|
||||
PIXMAN_EXPORT
|
||||
void pixman_region_set_static_pointers (pixman_box16_t *empty_box,
|
||||
pixman_region16_data_t *empty_data,
|
||||
pixman_region16_data_t *broken_data);
|
||||
|
||||
/* creation/destruction */
|
||||
PIXMAN_EXPORT
|
||||
void pixman_region_init (pixman_region16_t *region);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_region_init_rect (pixman_region16_t *region,
|
||||
int x,
|
||||
int y,
|
||||
unsigned int width,
|
||||
unsigned int height);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_region_init_with_extents (pixman_region16_t *region,
|
||||
pixman_box16_t *extents);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_region_fini (pixman_region16_t *region);
|
||||
|
||||
/* manipulation */
|
||||
PIXMAN_EXPORT
|
||||
void pixman_region_translate (pixman_region16_t *region,
|
||||
int x,
|
||||
int y);
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_region_copy (pixman_region16_t *dest,
|
||||
pixman_region16_t *source);
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_region_intersect (pixman_region16_t *newReg,
|
||||
pixman_region16_t *reg1,
|
||||
pixman_region16_t *reg2);
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_region_union (pixman_region16_t *newReg,
|
||||
pixman_region16_t *reg1,
|
||||
pixman_region16_t *reg2);
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_region_union_rect (pixman_region16_t *dest,
|
||||
pixman_region16_t *source,
|
||||
int x,
|
||||
int y,
|
||||
unsigned int width,
|
||||
unsigned int height);
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_region_subtract (pixman_region16_t *regD,
|
||||
pixman_region16_t *regM,
|
||||
pixman_region16_t *regS);
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_region_inverse (pixman_region16_t *newReg,
|
||||
pixman_region16_t *reg1,
|
||||
pixman_box16_t *invRect);
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_region_contains_point (pixman_region16_t *region,
|
||||
int x, int y, pixman_box16_t *box);
|
||||
PIXMAN_EXPORT
|
||||
pixman_region_overlap_t pixman_region_contains_rectangle (pixman_region16_t *pixman_region16_t,
|
||||
pixman_box16_t *prect);
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_region_not_empty (pixman_region16_t *region);
|
||||
PIXMAN_EXPORT
|
||||
pixman_box16_t * pixman_region_extents (pixman_region16_t *region);
|
||||
PIXMAN_EXPORT
|
||||
int pixman_region_n_rects (pixman_region16_t *region);
|
||||
PIXMAN_EXPORT
|
||||
pixman_box16_t * pixman_region_rectangles (pixman_region16_t *region,
|
||||
int *n_rects);
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_region_equal (pixman_region16_t *region1,
|
||||
pixman_region16_t *region2);
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_region_selfcheck (pixman_region16_t *region);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_region_reset (pixman_region16_t *region, pixman_box16_t *box);
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_region_init_rects (pixman_region16_t *region,
|
||||
pixman_box16_t *boxes, int count);
|
||||
|
||||
/* Copy / Fill */
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_blt (uint32_t *src_bits,
|
||||
uint32_t *dst_bits,
|
||||
int src_stride,
|
||||
@ -330,6 +371,7 @@ pixman_bool_t pixman_blt (uint32_t *src_bits,
|
||||
int src_x, int src_y,
|
||||
int dst_x, int dst_y,
|
||||
int width, int height);
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_fill (uint32_t *bits,
|
||||
int stride,
|
||||
int bpp,
|
||||
@ -337,7 +379,7 @@ pixman_bool_t pixman_fill (uint32_t *bits,
|
||||
int y,
|
||||
int width,
|
||||
int height,
|
||||
uint32_t xor);
|
||||
uint32_t _xor);
|
||||
/*
|
||||
* Images
|
||||
*/
|
||||
@ -397,6 +439,8 @@ struct pixman_indexed
|
||||
#define PIXMAN_TYPE_ABGR 3
|
||||
#define PIXMAN_TYPE_COLOR 4
|
||||
#define PIXMAN_TYPE_GRAY 5
|
||||
#define PIXMAN_TYPE_YUY2 6
|
||||
#define PIXMAN_TYPE_YV12 7
|
||||
|
||||
#define PIXMAN_FORMAT_COLOR(f) (PIXMAN_FORMAT_TYPE(f) & 2)
|
||||
|
||||
@ -452,25 +496,41 @@ typedef enum {
|
||||
/* 1bpp formats */
|
||||
PIXMAN_a1 = PIXMAN_FORMAT(1,PIXMAN_TYPE_A,1,0,0,0),
|
||||
|
||||
PIXMAN_g1 = PIXMAN_FORMAT(1,PIXMAN_TYPE_GRAY,0,0,0,0)
|
||||
PIXMAN_g1 = PIXMAN_FORMAT(1,PIXMAN_TYPE_GRAY,0,0,0,0),
|
||||
|
||||
/* YUV formats */
|
||||
PIXMAN_yuy2 = PIXMAN_FORMAT(16,PIXMAN_TYPE_YUY2,0,0,0,0),
|
||||
PIXMAN_yv12 = PIXMAN_FORMAT(12,PIXMAN_TYPE_YV12,0,0,0,0),
|
||||
} pixman_format_code_t;
|
||||
|
||||
/* Querying supported format values. */
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_format_supported_destination (pixman_format_code_t format);
|
||||
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_format_supported_source (pixman_format_code_t format);
|
||||
|
||||
/* Constructors */
|
||||
PIXMAN_EXPORT
|
||||
pixman_image_t *pixman_image_create_solid_fill (pixman_color_t *color);
|
||||
PIXMAN_EXPORT
|
||||
pixman_image_t *pixman_image_create_linear_gradient (pixman_point_fixed_t *p1,
|
||||
pixman_point_fixed_t *p2,
|
||||
const pixman_gradient_stop_t *stops,
|
||||
int n_stops);
|
||||
PIXMAN_EXPORT
|
||||
pixman_image_t *pixman_image_create_radial_gradient (pixman_point_fixed_t *inner,
|
||||
pixman_point_fixed_t *outer,
|
||||
pixman_fixed_t inner_radius,
|
||||
pixman_fixed_t outer_radius,
|
||||
const pixman_gradient_stop_t *stops,
|
||||
int n_stops);
|
||||
PIXMAN_EXPORT
|
||||
pixman_image_t *pixman_image_create_conical_gradient (pixman_point_fixed_t *center,
|
||||
pixman_fixed_t angle,
|
||||
const pixman_gradient_stop_t *stops,
|
||||
int n_stops);
|
||||
PIXMAN_EXPORT
|
||||
pixman_image_t *pixman_image_create_bits (pixman_format_code_t format,
|
||||
int width,
|
||||
int height,
|
||||
@ -478,44 +538,63 @@ pixman_image_t *pixman_image_create_bits (pixman_format_code_t
|
||||
int rowstride_bytes);
|
||||
|
||||
/* Destructor */
|
||||
PIXMAN_EXPORT
|
||||
pixman_image_t *pixman_image_ref (pixman_image_t *image);
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_image_unref (pixman_image_t *image);
|
||||
|
||||
|
||||
/* Set properties */
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_image_set_clip_region (pixman_image_t *image,
|
||||
pixman_region16_t *region);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_image_set_has_client_clip (pixman_image_t *image,
|
||||
pixman_bool_t clien_clip);
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_image_set_transform (pixman_image_t *image,
|
||||
const pixman_transform_t *transform);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_image_set_repeat (pixman_image_t *image,
|
||||
pixman_repeat_t repeat);
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_image_set_filter (pixman_image_t *image,
|
||||
pixman_filter_t filter,
|
||||
const pixman_fixed_t *filter_params,
|
||||
int n_filter_params);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_image_set_filter_params (pixman_image_t *image,
|
||||
pixman_fixed_t *params,
|
||||
int n_params);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_image_set_source_clipping (pixman_image_t *image,
|
||||
pixman_bool_t source_clipping);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_image_set_alpha_map (pixman_image_t *image,
|
||||
pixman_image_t *alpha_map,
|
||||
int16_t x,
|
||||
int16_t y);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_image_set_component_alpha (pixman_image_t *image,
|
||||
pixman_bool_t component_alpha);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_image_set_accessors (pixman_image_t *image,
|
||||
pixman_read_memory_func_t read_func,
|
||||
pixman_write_memory_func_t write_func);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_image_set_indexed (pixman_image_t *image,
|
||||
const pixman_indexed_t *indexed);
|
||||
PIXMAN_EXPORT
|
||||
uint32_t *pixman_image_get_data (pixman_image_t *image);
|
||||
PIXMAN_EXPORT
|
||||
int pixman_image_get_width (pixman_image_t *image);
|
||||
PIXMAN_EXPORT
|
||||
int pixman_image_get_height (pixman_image_t *image);
|
||||
PIXMAN_EXPORT
|
||||
int pixman_image_get_stride (pixman_image_t *image);
|
||||
PIXMAN_EXPORT
|
||||
int pixman_image_get_depth (pixman_image_t *image);
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_image_fill_rectangles (pixman_op_t op,
|
||||
pixman_image_t *image,
|
||||
pixman_color_t *color,
|
||||
@ -523,6 +602,7 @@ pixman_bool_t pixman_image_fill_rectangles (pixman_op_t op,
|
||||
const pixman_rectangle16_t *rects);
|
||||
|
||||
/* Composite */
|
||||
PIXMAN_EXPORT
|
||||
pixman_bool_t pixman_compute_composite_region (pixman_region16_t * pRegion,
|
||||
pixman_image_t * pSrc,
|
||||
pixman_image_t * pMask,
|
||||
@ -535,6 +615,7 @@ pixman_bool_t pixman_compute_composite_region (pixman_region16_t * pRegion,
|
||||
int16_t yDst,
|
||||
uint16_t width,
|
||||
uint16_t height);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_image_composite (pixman_op_t op,
|
||||
pixman_image_t *src,
|
||||
pixman_image_t *mask,
|
||||
@ -599,12 +680,16 @@ struct pixman_trap
|
||||
pixman_span_fix_t top, bot;
|
||||
};
|
||||
|
||||
PIXMAN_EXPORT
|
||||
pixman_fixed_t pixman_sample_ceil_y (pixman_fixed_t y,
|
||||
int bpp);
|
||||
PIXMAN_EXPORT
|
||||
pixman_fixed_t pixman_sample_floor_y (pixman_fixed_t y,
|
||||
int bpp);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_edge_step (pixman_edge_t *e,
|
||||
int n);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_edge_init (pixman_edge_t *e,
|
||||
int bpp,
|
||||
pixman_fixed_t y_start,
|
||||
@ -612,31 +697,35 @@ void pixman_edge_init (pixman_edge_t *e,
|
||||
pixman_fixed_t y_top,
|
||||
pixman_fixed_t x_bot,
|
||||
pixman_fixed_t y_bot);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_line_fixed_edge_init (pixman_edge_t *e,
|
||||
int bpp,
|
||||
pixman_fixed_t y,
|
||||
const pixman_line_fixed_t *line,
|
||||
int x_off,
|
||||
int y_off);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_rasterize_edges (pixman_image_t *image,
|
||||
pixman_edge_t *l,
|
||||
pixman_edge_t *r,
|
||||
pixman_fixed_t t,
|
||||
pixman_fixed_t b);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_add_traps (pixman_image_t *image,
|
||||
int16_t x_off,
|
||||
int16_t y_off,
|
||||
int ntrap,
|
||||
pixman_trap_t *traps);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_add_trapezoids (pixman_image_t *image,
|
||||
int16_t x_off,
|
||||
int y_off,
|
||||
int ntraps,
|
||||
const pixman_trapezoid_t *traps);
|
||||
PIXMAN_EXPORT
|
||||
void pixman_rasterize_trapezoid (pixman_image_t *image,
|
||||
const pixman_trapezoid_t *trap,
|
||||
int x_off,
|
||||
int y_off);
|
||||
|
||||
|
||||
#endif /* PIXMAN_H__ */
|
||||
|
@ -1,7 +1,8 @@
|
||||
if HAVE_GTK
|
||||
TESTPROGRAMS = \
|
||||
composite-test \
|
||||
gradient-test
|
||||
gradient-test \
|
||||
fetch-test
|
||||
|
||||
noinst_PROGRAMS = $(TESTPROGRAMS)
|
||||
|
||||
@ -9,5 +10,6 @@ INCLUDES = -I$(top_srcdir)/pixman $(GTK_CFLAGS)
|
||||
|
||||
composite_test_LDADD = $(top_builddir)/pixman/libpixman-1.la $(GTK_LIBS)
|
||||
gradient_test_LDADD = $(top_builddir)/pixman/libpixman-1.la $(GTK_LIBS)
|
||||
fetch_test_LDADD = $(top_builddir)/pixman/libpixman-1.la
|
||||
|
||||
endif
|
||||
endif
|
||||
|
@ -47,7 +47,7 @@ mkinstalldirs = $(SHELL) $(install_sh) -d
|
||||
CONFIG_HEADER = $(top_builddir)/config.h
|
||||
CONFIG_CLEAN_FILES =
|
||||
@HAVE_GTK_TRUE@am__EXEEXT_1 = composite-test$(EXEEXT) \
|
||||
@HAVE_GTK_TRUE@ gradient-test$(EXEEXT)
|
||||
@HAVE_GTK_TRUE@ gradient-test$(EXEEXT) fetch-test$(EXEEXT)
|
||||
PROGRAMS = $(noinst_PROGRAMS)
|
||||
composite_test_SOURCES = composite-test.c
|
||||
composite_test_OBJECTS = composite-test.$(OBJEXT)
|
||||
@ -55,6 +55,10 @@ am__DEPENDENCIES_1 =
|
||||
@HAVE_GTK_TRUE@composite_test_DEPENDENCIES = \
|
||||
@HAVE_GTK_TRUE@ $(top_builddir)/pixman/libpixman-1.la \
|
||||
@HAVE_GTK_TRUE@ $(am__DEPENDENCIES_1)
|
||||
fetch_test_SOURCES = fetch-test.c
|
||||
fetch_test_OBJECTS = fetch-test.$(OBJEXT)
|
||||
@HAVE_GTK_TRUE@fetch_test_DEPENDENCIES = \
|
||||
@HAVE_GTK_TRUE@ $(top_builddir)/pixman/libpixman-1.la
|
||||
gradient_test_SOURCES = gradient-test.c
|
||||
gradient_test_OBJECTS = gradient-test.$(OBJEXT)
|
||||
@HAVE_GTK_TRUE@gradient_test_DEPENDENCIES = \
|
||||
@ -71,8 +75,8 @@ LTCOMPILE = $(LIBTOOL) --tag=CC --mode=compile $(CC) $(DEFS) \
|
||||
CCLD = $(CC)
|
||||
LINK = $(LIBTOOL) --tag=CC --mode=link $(CCLD) $(AM_CFLAGS) $(CFLAGS) \
|
||||
$(AM_LDFLAGS) $(LDFLAGS) -o $@
|
||||
SOURCES = composite-test.c gradient-test.c
|
||||
DIST_SOURCES = composite-test.c gradient-test.c
|
||||
SOURCES = composite-test.c fetch-test.c gradient-test.c
|
||||
DIST_SOURCES = composite-test.c fetch-test.c gradient-test.c
|
||||
ETAGS = etags
|
||||
CTAGS = ctags
|
||||
DISTFILES = $(DIST_COMMON) $(DIST_SOURCES) $(TEXINFOS) $(EXTRA_DIST)
|
||||
@ -132,13 +136,19 @@ PACKAGE_STRING = @PACKAGE_STRING@
|
||||
PACKAGE_TARNAME = @PACKAGE_TARNAME@
|
||||
PACKAGE_VERSION = @PACKAGE_VERSION@
|
||||
PATH_SEPARATOR = @PATH_SEPARATOR@
|
||||
PIXMAN_MAJOR = @PIXMAN_MAJOR@
|
||||
PIXMAN_VERSION_MAJOR = @PIXMAN_VERSION_MAJOR@
|
||||
PIXMAN_VERSION_MICRO = @PIXMAN_VERSION_MICRO@
|
||||
PIXMAN_VERSION_MINOR = @PIXMAN_VERSION_MINOR@
|
||||
PKG_CONFIG = @PKG_CONFIG@
|
||||
RANLIB = @RANLIB@
|
||||
SET_MAKE = @SET_MAKE@
|
||||
SHELL = @SHELL@
|
||||
SSE_CFLAGS = @SSE_CFLAGS@
|
||||
STRIP = @STRIP@
|
||||
USE_MMX_FALSE = @USE_MMX_FALSE@
|
||||
USE_MMX_TRUE = @USE_MMX_TRUE@
|
||||
USE_SSE2_FALSE = @USE_SSE2_FALSE@
|
||||
USE_SSE2_TRUE = @USE_SSE2_TRUE@
|
||||
USE_SSE_FALSE = @USE_SSE_FALSE@
|
||||
USE_SSE_TRUE = @USE_SSE_TRUE@
|
||||
VERSION = @VERSION@
|
||||
@ -148,6 +158,7 @@ ac_ct_CXX = @ac_ct_CXX@
|
||||
ac_ct_F77 = @ac_ct_F77@
|
||||
ac_ct_RANLIB = @ac_ct_RANLIB@
|
||||
ac_ct_STRIP = @ac_ct_STRIP@
|
||||
ac_pt_PKG_CONFIG = @ac_pt_PKG_CONFIG@
|
||||
am__fastdepCC_FALSE = @am__fastdepCC_FALSE@
|
||||
am__fastdepCC_TRUE = @am__fastdepCC_TRUE@
|
||||
am__fastdepCXX_FALSE = @am__fastdepCXX_FALSE@
|
||||
@ -187,11 +198,13 @@ sysconfdir = @sysconfdir@
|
||||
target_alias = @target_alias@
|
||||
@HAVE_GTK_TRUE@TESTPROGRAMS = \
|
||||
@HAVE_GTK_TRUE@ composite-test \
|
||||
@HAVE_GTK_TRUE@ gradient-test
|
||||
@HAVE_GTK_TRUE@ gradient-test \
|
||||
@HAVE_GTK_TRUE@ fetch-test
|
||||
|
||||
@HAVE_GTK_TRUE@INCLUDES = -I$(top_srcdir)/pixman $(GTK_CFLAGS)
|
||||
@HAVE_GTK_TRUE@composite_test_LDADD = $(top_builddir)/pixman/libpixman-1.la $(GTK_LIBS)
|
||||
@HAVE_GTK_TRUE@gradient_test_LDADD = $(top_builddir)/pixman/libpixman-1.la $(GTK_LIBS)
|
||||
@HAVE_GTK_TRUE@fetch_test_LDADD = $(top_builddir)/pixman/libpixman-1.la
|
||||
all: all-am
|
||||
|
||||
.SUFFIXES:
|
||||
@ -235,6 +248,9 @@ clean-noinstPROGRAMS:
|
||||
composite-test$(EXEEXT): $(composite_test_OBJECTS) $(composite_test_DEPENDENCIES)
|
||||
@rm -f composite-test$(EXEEXT)
|
||||
$(LINK) $(composite_test_LDFLAGS) $(composite_test_OBJECTS) $(composite_test_LDADD) $(LIBS)
|
||||
fetch-test$(EXEEXT): $(fetch_test_OBJECTS) $(fetch_test_DEPENDENCIES)
|
||||
@rm -f fetch-test$(EXEEXT)
|
||||
$(LINK) $(fetch_test_LDFLAGS) $(fetch_test_OBJECTS) $(fetch_test_LDADD) $(LIBS)
|
||||
gradient-test$(EXEEXT): $(gradient_test_OBJECTS) $(gradient_test_DEPENDENCIES)
|
||||
@rm -f gradient-test$(EXEEXT)
|
||||
$(LINK) $(gradient_test_LDFLAGS) $(gradient_test_OBJECTS) $(gradient_test_LDADD) $(LIBS)
|
||||
@ -246,6 +262,7 @@ distclean-compile:
|
||||
-rm -f *.tab.c
|
||||
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/composite-test.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/fetch-test.Po@am__quote@
|
||||
@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/gradient-test.Po@am__quote@
|
||||
|
||||
.c.o:
|
||||
|
Loading…
Reference in New Issue
Block a user