Commit message:

- Fix build on recent versions of gcc [1]
- Add support for jpeg-mmx [2]

PR:		74045 [1]
		69832 [2]
Submitted by:	maintainer [1]
Approved by:	adamw (mentor)
This commit is contained in:
Michael Johnson 2004-11-17 22:11:44 +00:00
parent 19c4c0ec97
commit 0f4cc5dfdf
Notes: svn2git 2021-03-31 03:12:20 +00:00
svn path=/head/; revision=121835
4 changed files with 60 additions and 0 deletions

View file

@ -107,6 +107,14 @@ WITH_LZO= yes
WITH_DIVX5= yes
.endif
.if exists(${LOCALBASE}/lib/libjpeg-mmx.so)
WITH_JPEGMMX= yes
.endif
.if defined(WITH_JPEGMMX)
WITH_NASM= yes
.endif
.if defined(WITH_LIBTHEORA)
LIB_DEPENDS+= theora.0:${PORTSDIR}/graphics/libtheora
.else
@ -121,6 +129,14 @@ CONFIGURE_ARGS+= --with-magick-mods=no
PLIST_SUB+= WITH_IMAGEMAGICK="@comment "
.endif
.if defined(WITH_JPEGMMX)
LIB_DEPENDS+= jpeg-mmx.62:${PORTSDIR}/graphics/jpeg-mmx
PLIST_SUB+= WITH_JPEGMMX=""
.else
PLIST_SUB+= WITH_JPEGMMX="@comment "
.endif
.if defined(WITH_NASM)
BUILD_DEPENDS+= ${LOCALBASE}/bin/nasm:${PORTSDIR}/devel/nasm
ONLY_FOR_ARCHS= i386
@ -250,6 +266,10 @@ pre-everything::
@${ECHO_MSG}
@${ECHO_MSG} "You can enable extra optimizations by defining WITH_OPTIMIZED_CFLAGS."
.endif
.if !defined(WITH_JPEGMMX)
@${ECHO_MSG}
@${ECHO_MSG} "You can enable JPEG with MMX by defining WITH_JPEGMMX."
.endif
.if !defined(WITH_LIBTHEORA)
@${ECHO_MSG}
@${ECHO_MSG} "You can enable Libtheora by defining WITH_LIBTHEORA."

View file

@ -0,0 +1,13 @@
--- ffmpeg/libavcodec/i386/dsputil_mmx.c.orig Wed Nov 17 17:30:15 2004
+++ ffmpeg/libavcodec/i386/dsputil_mmx.c Wed Nov 17 17:30:33 2004
@@ -31,8 +31,8 @@
static const uint64_t mm_wone __attribute__ ((aligned(8))) = 0x0001000100010001ULL;
static const uint64_t mm_wtwo __attribute__ ((aligned(8))) = 0x0002000200020002ULL;
-static const uint64_t ff_pw_20 __attribute__ ((aligned(8))) = 0x0014001400140014ULL;
-static const uint64_t ff_pw_3 __attribute__ ((aligned(8))) = 0x0003000300030003ULL;
+static const uint64_t ff_pw_20 __attribute__ ((aligned(8), used)) = 0x0014001400140014ULL;
+static const uint64_t ff_pw_3 __attribute__ ((aligned(8), used)) = 0x0003000300030003ULL;
static const uint64_t ff_pw_16 __attribute__ ((aligned(8))) = 0x0010001000100010ULL;
static const uint64_t ff_pw_15 __attribute__ ((aligned(8))) = 0x000F000F000F000FULL;

View file

@ -0,0 +1,12 @@
--- ffmpeg/libavcodec/i386/motion_est_mmx.c.orig Wed Nov 17 17:31:38 2004
+++ ffmpeg/libavcodec/i386/motion_est_mmx.c Wed Nov 17 17:31:47 2004
@@ -26,7 +26,7 @@
0x0002000200020002ULL,
};
-static __attribute__ ((aligned(8), unused)) uint64_t bone= 0x0101010101010101LL;
+static __attribute__ ((aligned(8), used)) uint64_t bone= 0x0101010101010101LL;
static inline void sad8_mmx(uint8_t *blk1, uint8_t *blk2, int stride, int h)
{

View file

@ -0,0 +1,15 @@
--- ffmpeg/libavcodec/i386/simple_idct_mmx.c.orig Wed Nov 17 17:32:21 2004
+++ ffmpeg/libavcodec/i386/simple_idct_mmx.c Wed Nov 17 17:32:37 2004
@@ -45,8 +45,8 @@
#define ROW_SHIFT 11
#define COL_SHIFT 20 // 6
-static const uint64_t __attribute__((aligned(8))) wm1010= 0xFFFF0000FFFF0000ULL;
-static const uint64_t __attribute__((aligned(8))) d40000= 0x0000000000040000ULL;
+static const uint64_t __attribute__((aligned(8), used)) wm1010= 0xFFFF0000FFFF0000ULL;
+static const uint64_t __attribute__((aligned(8), used)) d40000= 0x0000000000040000ULL;
static const int16_t __attribute__((aligned(8))) coeffs[]= {
1<<(ROW_SHIFT-1), 0, 1<<(ROW_SHIFT-1), 0,