Bug 133175 - [patch] x11/pixman: enable SSE2 support autodetection
Summary: [patch] x11/pixman: enable SSE2 support autodetection
Status: Closed FIXED
Alias: None
Product: Ports & Packages
Classification: Unclassified
Component: Individual Port(s) (show other bugs)
Version: Latest
Hardware: Any Any
: Normal Affects Only Me
Assignee: freebsd-x11 (Nobody)
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2009-03-29 07:40 UTC by swell.k
Modified: 2009-09-19 21:30 UTC (History)
0 users

See Also:


Attachments
pixman-remove-workaround.diff (495 bytes, patch)
2009-03-29 07:40 UTC, swell.k
no flags Details | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description swell.k 2009-03-29 07:40:00 UTC
As a result of ports/116551 SSE support was unconditionally disabled in
pixman-0.9.5. There is no way to enable it other than changing Makefile.

Since that PR pixman library grew support of autodetecting MMX and SSE2
separately.

Fix: Unless autodetection goes wrong for someone remove that workaround.
Comment 1 Edwin Groothuis freebsd_committer freebsd_triage 2009-03-29 07:40:13 UTC
Responsible Changed
From-To: freebsd-ports-bugs->freebsd-x11

Over to maintainer (via the GNATS Auto Assign Tool)
Comment 2 bf 2009-03-29 09:23:07 UTC
Have you thought about the consequences for those architectures,
like i386, that include machines with _and_ without these
features?

Right now, we don't distinguish between binary packages with
and without SIMD in Ports, so many ports have such switches
disabled, because binary packages built on one machine should
be usable on another with the same architecture and OS version.

Changes of this kind could break binary packages built,
for example, by the FreeBSD package-building cluster, when used
on older machines.  You may be able to enable _some_ SIMD
support on architectures for which _every_ machine
supports the SIMD instructions in question, but _only_
on those architectures.  Otherwise you need to make bigger
changes to the Ports infrastructure.  And in fact, some of
these checks should be updated to disable SSE2, SSE3, etc.
by default.

Regards,
           b.
Comment 3 swell.k 2009-03-29 10:28:50 UTC
bf <bf2006a@yahoo.com> writes:

> Changes of this kind could break binary packages built,
> for example, by the FreeBSD package-building cluster, when used
> on older machines.

Oops, forgot about packages. How about this patch

--- pixman-add-simd-option.diff begins here ---
Index: x11/pixman/Makefile
===================================================================
RCS file: /home/csup/ports/x11/pixman/Makefile,v
retrieving revision 1.9
diff -u -p -r1.9 Makefile
--- x11/pixman/Makefile	13 Feb 2009 06:39:40 -0000	1.9
+++ x11/pixman/Makefile	29 Mar 2009 09:08:38 -0000
@@ -17,8 +17,21 @@ USE_AUTOTOOLS=	libtool:15
 USE_PERL5_BUILD=yes
 USE_GNOME=	ltverhack:9
 
+OPTIONS=	SIMD "Enable autodection of SIMD features (MMX, SSE2, VMX)" off
+
+.include <bsd.port.pre.mk>
+
+.if defined(WITHOUT_SIMD)
+CONFIGURE_ARGS=	--disable-vmx --disable-arm-simd
+
+.if ${ARCH:Namd64}
+CONFIGURE_ARGS+=	--disable-mmx --disable-sse2
+.endif
+
+.endif
+
 post-patch:
 	@${REINPLACE_CMD} -e 's|gtk+-2\.0|disable-gtk|g' \
-		-e 's|-msse||' ${WRKSRC}/configure
+		${WRKSRC}/configure
 
-.include <bsd.port.mk>
+.include <bsd.port.post.mk>
--- pixman-add-simd-option.diff ends here ---
Comment 4 dfilter service freebsd_committer freebsd_triage 2009-09-19 21:25:09 UTC
rnoland     2009-09-19 20:25:01 UTC

  FreeBSD ports repository

  Modified files:
    x11/pixman           Makefile distinfo 
  Log:
  Update to 0.16.0
  
  - Incorporate patch from PR #133175, which adds optional mmx/sse2 detection
  
  Feature safe:   yes
  PR:             133175
  Submitted by:   Anonymous <swell.k@gmail.com>
  
  Revision  Changes    Path
  1.13      +16 -3     ports/x11/pixman/Makefile
  1.9       +3 -3      ports/x11/pixman/distinfo
_______________________________________________
cvs-all@freebsd.org mailing list
http://lists.freebsd.org/mailman/listinfo/cvs-all
To unsubscribe, send any mail to "cvs-all-unsubscribe@freebsd.org"
Comment 5 Robert Noland freebsd_committer freebsd_triage 2009-09-19 21:25:45 UTC
State Changed
From-To: open->closed

Committed. Thanks!