Provide patches to make it build on amd64.

This commit is contained in:
Emanuel Haupt 2010-09-28 10:49:27 +00:00
parent ac053c9ed0
commit 51eb8386ab
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=262020
3 changed files with 61 additions and 1 deletions

View file

@ -20,11 +20,12 @@ LIB_DEPENDS+= samplerate.1:${PORTSDIR}/audio/libsamplerate
USE_AUTOTOOLS= libtool:22
USE_BZIP2= yes
MAKE_JOBS_SAFE= yes
WRKSRC= ${WRKDIR}/${PORTNAME}
ONLY_FOR_ARCHS= i386 powerpc
ONLY_FOR_ARCHS= i386 amd64 powerpc
.include <bsd.port.pre.mk>

View file

@ -0,0 +1,48 @@
--- ./src/cputest.c.orig 2005-02-28 01:26:01.000000000 +0100
+++ ./src/cputest.c 2010-09-28 11:21:52.000000000 +0200
@@ -31,18 +31,33 @@
{
#ifdef ARCH_X86
int rval;
+#ifdef __x86_64__
+ int64_t eax, ebx, ecx, edx;
+#else
int eax, ebx, ecx, edx;
+#endif
char vendor[13] = "UnknownVndr";
__asm__ __volatile__ (
/* See if CPUID instruction is supported ... */
/* ... Get copies of EFLAGS into eax and ecx */
- "pushf\n\t"
#ifdef __x86_64__
+ "pushf\n\t"
+ "pop %0\n\t"
+ "mov %0, %1\n\t"
+
+ /* ... Toggle the ID bit in one copy and store */
+ /* to the EFLAGS reg */
+ "xor $0x200000, %0\n\t"
+ "push %0\n\t"
+ "popf\n\t"
+
+ /* ... Get the (hopefully modified) EFLAGS */
+ "pushf\n\t"
"pop %0\n\t"
#else
+ "pushf\n\t"
"popl %0\n\t"
-#endif
"movl %0, %1\n\t"
/* ... Toggle the ID bit in one copy and store */
@@ -53,9 +68,6 @@
/* ... Get the (hopefully modified) EFLAGS */
"pushf\n\t"
-#ifdef __x86_64__
- "pop %0\n\t"
-#else
"popl %0\n\t"
#endif
: "=a" (eax), "=c" (ecx)

View file

@ -0,0 +1,11 @@
--- ./src/filter.h.orig 2010-09-28 11:22:11.000000000 +0200
+++ ./src/filter.h 2010-09-28 11:22:33.000000000 +0200
@@ -20,6 +20,8 @@
#ifdef ARCH_X86
int16 coeffs_i16[NCOEFFS] __attribute__ ((aligned (8)));
+ #elif __x86_64__
+ int16 coeffs_i16[NCOEFFS] __attribute__ ((aligned (8)));
#elif ARCH_POWERPC
int16 coeffs_i16[NCOEFFS] __attribute__ ((aligned (16)));
#endif