--- /usr/portage/media-video/mjpegtools/mjpegtools-1.6.2-r3.ebuild 2005-03-15 21:05:47.000000000 +0100 +++ mjpegtools-1.6.2-r3.ebuild 2005-03-25 20:32:52.096933352 +0100 @@ -4,17 +4,19 @@ inherit flag-o-matic gcc eutils +M4V="1" + DESCRIPTION="Tools for MJPEG video" HOMEPAGE="http://mjpeg.sourceforge.net/" -SRC_URI="mirror://sourceforge/mjpeg/${P}.tar.gz" +SRC_URI="mirror://sourceforge/mjpeg/${P}.tar.gz + mirror://gentoo/${PN}-m4-${M4V}.tar.bz2" LICENSE="as-is" SLOT="1" KEYWORDS="x86 ppc amd64 ~sparc ppc64" -IUSE="gtk avi dv quicktime sdl X yv12 3dnow mmx sse" +IUSE="gtk avi dv quicktime sdl X yv12 3dnow mmx sse v4l dga" -DEPEND="media-libs/jpeg - >=sys-apps/sed-4 +RDEPEND="media-libs/jpeg x86? ( media-libs/libmovtar mmx? ( >=media-libs/jpeg-mmx-1.1.2-r1 dev-lang/nasm ) @@ -22,23 +24,24 @@ sse? ( dev-lang/nasm ) ) gtk? ( =x11-libs/gtk+-1.2* - =dev-libs/glib-1.2* ) + =dev-libs/glib-1.2* ) avi? ( >=media-video/avifile-0.7.38 ) dv? ( >=media-libs/libdv-0.99 ) quicktime? ( virtual/quicktime ) sdl? ( >=media-libs/libsdl-1.2.7-r3 ) X? ( virtual/x11 )" +DEPEND="${RDEPEND} + >=sys-apps/sed-4 + sys-devel/autoconf + =sys-devel/automake-1.5*" + src_unpack() { unpack ${A} ; cd ${S} - cp -rf ${S}{,.orig} + epatch ${FILESDIR}/${PV}-configure.patch epatch ${FILESDIR}/${P}-fPIC.patch epatch ${FILESDIR}/${P}-gcc34.patch - epatch ${FILESDIR}/${P}-dv.patch - - # remove checks for gtk in configure in - use gtk || epatch ${FILESDIR}/${P}-nogtk.patch if use ppc; then # Fix an error in the detection of the altivec-support @@ -46,14 +49,12 @@ epatch "${FILESDIR}/altivec-fix-${PV}.patch" sed -i 's:-O3::' configure.in #Worst workaround ever... - sed -i \ - -e "s/const vector signed short /vector signed short /g" \ - ${S}/utils/altivec/fdct_idct.c + sed -i -e "s/const vector signed short /vector signed short /g" \ + ${S}/utils/altivec/fdct_idct.c fi - aclocal libtoolize --copy --force - autoreconf || die + ACLOCAL="aclocal -I ${WORKDIR}/m4" autoreconf || die use X || epatch "${FILESDIR}/no-x11-lib-2.patch" } @@ -61,25 +62,15 @@ src_compile() { local myconf - [ $(gcc-major-version) -eq 3 ] && [ "${ARCH}" == "x86" ] && append-flags -mno-sse2 - - myconf="${myconf} $(use_with X x)" - myconf="${myconf} $(use_with quicktime)" - myconf="${myconf} $(use_enable x86 cmov-extensions)" - - # Fix for Via C3-1, see #30345 - grep -q cmov /proc/cpuinfo || myconf="${myconf} --enable-cmov-extension=no" - - if use dv; then - myconf="${myconf} --with-dv=/usr" - myconf="${myconf} $(use_with yv12 dv-yv12)" - else - myconf="${myconf} --without-dv --without-dv-yv12" - if use yv12; then + if use yv12; then + if use dv; then + myconf="${myconf} --with-dv-yv12" + else ewarn "yv12 support is only possible when \"dv\" is in your USE flags." fi fi + # This could be changed to allow building on g/fbsd in the future. if use x86; then if use mmx || use 3dnow || use sse; then myconf="${myconf} --enable-simd-accel" @@ -88,18 +79,35 @@ if use mmx; then myconf="${myconf} --with-jpeg-mmx=/usr/include/jpeg-mmx" fi + + # Fix for Via C3-1, see #30345 + if grep -q cmov /proc/cpuinfo; then + myconf="${myconf} --enable-cmov-extension" + else + myconf="${myconf} --disable-cmov-extension" + fi + + [[ $(gcc-major-version) -eq 3 ]] && append-flags -mno-sse2 fi - econf ${myconf} || die - - if has_pie ; then - pie_magic="`test_flag -fno-pic` `test_flag -nopie`" - for i in `find "${S}" -name "Makefile"` ; do - sed -e "s:CC = gcc:CC = gcc ${pie_magic}:g" \ - -e "s:CXX = gcc:CXX = g++ ${pie_magic}:g" \ - -e "s:CXXCPP = gcc -E:CXX = g++ -E ${pie_magic}:g" \ - -i "${i}" || die "sed failed" - done + econf \ + $(use_with X x) \ + $(use_enable dga xfree-ext) \ + $(use_with quicktime) \ + $(use_with v4l) \ + $(use_with gtk) \ + $(use_with sdl) \ + $(use_with dv dv /usr) \ + ${myconf} || die + + if has_pie; then + pie_magic="$(test_flag -fno-pic) $(test_flag -nopie)" + + find "${S}" -name Makefile | xargs sed -i \ + -e "s:CC = gcc:CC = gcc ${pie_magic}:g" \ + -e "s:CXX = gcc:CXX = g++ ${pie_magic}:g" \ + -e "s:CXXCPP = gcc -E:CXX = g++ -E ${pie_magic}:g" \ + || die "sed failed" fi emake CFLAGS="${CFLAGS}" CXXFLAGS="${CXXFLAGS}" -j1 || die "compile problem"