Uncategorised
- Details
- Written by Pham Ngoc Hai
I just saw the new version of fileZilla (3.0.9) at my work place. Got this ebuild (3.0.9.2) in about a minute when I got home.
Here it comes:
[code]# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
WX_GTK_VER="2.8"
inherit eutils multilib autotools wxwidgets
MY_PV=${PV/_/-}
MY_P="FileZilla_${MY_PV}"
DESCRIPTION="FTP client with lots of useful features and an intuitive interface"
HOMEPAGE="http://filezilla-project.org/"
SRC_URI="mirror://sourceforge/${PN}/${MY_P}_src.tar.bz2"
RESTRICT="mirror"
LICENSE="GPL-2"
SLOT="0"
KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~sparc ~x86"
IUSE="unicode"
RDEPEND=">=x11-libs/wxGTK-2.8.4
>=net-libs/gnutls-1.6.1
net-dns/libidn
>=sys-devel/libtool-1.4"
DEPEND="${RDEPEND}
>=sys-devel/gettext-0.11"
S="${WORKDIR}"/${PN}-${MY_PV}
pkg_setup() {
if use unicode; then
need-wxwidgets "unicode"
else
need-wxwidgets "gtk2"
fi
}
src_compile() {
WXRC="/usr/bin/wxrc-2.8" \
econf --with-wx-config="${WX_CONFIG}" \
|| die "econf failed"
emake || die "emake failed"
}
src_install() {
emake DESTDIR="${D}" install || die "emake install failed"
doicon src/interface/resources/FileZilla.ico || die "doicon failed"
make_desktop_entry ${PN} "FileZilla" FileZilla.ico
dodoc AUTHORS ChangeLog NEWS
}[/code]
- Details
- Written by Pham Ngoc Hai
xine-lib has moved to mercurial, here comes the new ebuild
The ebuild name is still xine-lib-9999.ebuild. Enjoy.
[code]# Copyright 1999-2008 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: /var/cvsroot/gentoo-x86/media-libs/xine-lib/xine-lib-9999.ebuild,v 1.9 2008/02/19 16:48:41 PHAM Ngoc Hai Exp $
EAPI=1
inherit eutils flag-o-matic toolchain-funcs libtool mercurial
EHG_REPO_URI="http://hg.debian.org/hg/xine-lib/xine-lib"
#ECVS_SERVER="xine.cvs.sourceforge.net:/cvsroot/xine"
#ECVS_MODULE="xine-lib"
#ECVS_TOP_DIR="${DISTDIR}/cvs-src/${PN}"
#S=${WORKDIR}/${ECVS_MODULE}
DESCRIPTION="Core libraries for Xine movie player"
HOMEPAGE="http://xine.sourceforge.net"
LICENSE="GPL-2"
SLOT="1"
KEYWORDS="alpha amd64 ~arm hppa ia64 ppc ppc64 sparc x86 ~x86-fbsd"
IUSE="-aalib -libcaca -arts esd win32codecs nls +dvd +X directfb +vorbis +alsa
gnome sdl speex +theora ipv6 altivec opengl aac -fbcon +xv xvmc
-samba dxr3 vidix mng -flac -oss +v4l xinerama vcd +a52 +mad -imagemagick +dts
-debug +modplug -gtk pulseaudio -mmap -truetype wavpack +musepack +xcb -jack
-real"
RDEPEND="X? ( x11-libs/libXext
x11-libs/libX11 )
xv? ( x11-libs/libXv )
xvmc? ( x11-libs/libXvMC )
xinerama? ( x11-libs/libXinerama )
win32codecs? ( >=media-libs/win32codecs-0.50 )
esd? ( media-sound/esound )
dvd? ( >=media-libs/libdvdcss-1.2.7 )
arts? ( kde-base/arts )
alsa? ( media-libs/alsa-lib )
aalib? ( media-libs/aalib )
directfb? ( >=dev-libs/DirectFB-0.9.9 )
gnome? ( >=gnome-base/gnome-vfs-2.0 )
flac? ( >=media-libs/flac-1.1.2 )
sdl? ( >=media-libs/libsdl-1.1.5 )
dxr3? ( >=media-libs/libfame-0.9.0 )
vorbis? ( media-libs/libogg media-libs/libvorbis )
theora? ( media-libs/libogg media-libs/libvorbis >=media-libs/libtheora-1.0_alpha6 )
speex? ( media-libs/libogg media-libs/libvorbis media-libs/speex )
libcaca? ( >=media-libs/libcaca-0.99_beta1 )
samba? ( net-fs/samba )
mng? ( media-libs/libmng )
vcd? ( media-video/vcdimager )
a52? ( >=media-libs/a52dec-0.7.4-r5 )
mad? ( media-libs/libmad )
imagemagick? ( media-gfx/imagemagick )
dts? ( media-libs/libdca )
>=media-video/ffmpeg-0.4.9_p20070129
modplug? ( media-libs/libmodplug )
nls? ( virtual/libintl )
gtk? ( =x11-libs/gtk+-2* )
pulseaudio? ( media-sound/pulseaudio )
truetype? ( =media-libs/freetype-2* media-libs/fontconfig )
virtual/libiconv
wavpack? ( >=media-sound/wavpack-4.31 )
musepack? ( media-libs/libmpcdec )
xcb? ( >=x11-libs/libxcb-1.0 )
jack? ( >=media-sound/jack-audio-connection-kit-0.100 )
real? (
x86? ( media-libs/win32codecs )
x86-fbsd? ( media-libs/win32codecs )
amd64? ( media-libs/amd64codecs ) )"
DEPEND="${RDEPEND}
X? ( x11-libs/libXt
x11-proto/xproto
x11-proto/videoproto
x11-proto/xf86vidmodeproto
xinerama? ( x11-proto/xineramaproto ) )
v4l? ( virtual/os-headers )
dev-util/pkgconfig
sys-devel/libtool
nls? ( sys-devel/gettext )"
S=${WORKDIR}/${PN}
src_compile() {
#prevent quicktime crashing
cd ${S}
./autogen.sh
append-flags -frename-registers -ffunction-sections
# Specific workarounds for too-few-registers arch...
if [[ $(tc-arch) == "x86" ]]; then
filter-flags -fforce-addr
filter-flags -momit-leaf-frame-pointer # break on gcc 3.4/4.x
filter-flags -fno-omit-frame-pointer #breaks per bug #149704
is-flag -O? || append-flags -O2
fi
local myconf
# enable/disable appropiate optimizations on sparc
[[ "${PROFILE_ARCH}" == "sparc64" ]] && myconf="${myconf} --enable-vis"
[[ "${PROFILE_ARCH}" == "sparc" ]] && myconf="${myconf} --disable-vis"
# The default CFLAGS (-O) is the only thing working on hppa.
use hppa && unset CFLAGS
# Too many file names are the same (xine_decoder.c), change the builddir
# So that the relative path is used to identify them.
mkdir "${WORKDIR}/build"
#elibtoolize
ECONF_SOURCE="${S}" econf \
$(use_enable gnome gnomevfs) \
$(use_enable nls) \
$(use_enable ipv6) \
$(use_enable samba) \
$(use_enable altivec) \
$(use_enable v4l) \
\
$(use_enable mng) \
$(use_with imagemagick) \
$(use_enable gtk gdkpixbuf) \
\
$(use_enable aac faad) \
$(use_with flac libflac) \
$(use_with vorbis) \
$(use_with speex) \
$(use_with theora) \
$(use_with wavpack) \
$(use_enable modplug) \
$(use_enable a52 a52dec) --with-external-a52dec \
$(use_enable mad) --with-external-libmad \
$(use_enable dts) --with-external-libdts \
$(use_enable musepack) --with-external-libmpcdec \
\
$(use_with X x) \
$(use_enable xinerama) \
$(use_enable vidix) \
$(use_enable dxr3) \
$(use_enable directfb) \
$(use_enable fbcon fb) \
$(use_enable opengl) \
$(use_enable aalib) \
$(use_with libcaca caca) \
$(use_with sdl) \
$(use_enable xvmc) \
$(use_with xcb) \
\
$(use_enable oss) \
$(use_with alsa) \
$(use_with arts) \
$(use_with esd esound) \
$(use_with pulseaudio) \
$(use_with jack) \
\
$(use_enable vcd) --without-internal-vcdlibs \
\
$(use_enable win32codecs w32dll) \
$(use_enable real real-codecs) \
\
$(use_enable mmap) \
$(use_with truetype freetype) $(use_with truetype fontconfig) \
\
$(use_enable debug) \
--enable-asf \
--with-external-ffmpeg \
--disable-optimizations \
--disable-syncfb \
${myconf} \
--with-xv-path=/usr/$(get_libdir) \
--with-w32-path=/usr/$(ABI=x86 get_libdir)/win32 \
--with-real-codecs-path=/usr/$(get_libdir)/codecs \
--enable-fast-install \
--disable-dependency-tracking || die "econf failed."
emake || die "emake failed."
}
src_install() {
emake DESTDIR="${D}" \
docdir="/usr/share/doc/${PF}" htmldir="/usr/share/doc/${PF}/html" \
install || die "emake install failed."
}[/code]
- Details
- Written by Pham Ngoc Hai
This ebuild comes with the hotfix as well, if you want to use it please consider using my overlay instead since it also contains rc init script and config files (from Thilo Bangert overlay).
[code]# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
inherit java-utils-2 java-pkg-2 java-ant-2
MY_P=${P/_/}
S=${WORKDIR}/${MY_P}
DESCRIPTION="Open Source Flash Server written in Java"
HOMEPAGE="http://osflash.org/red5"
#SRC_URI="http://red5.fr/release/${PV}/tar/${PN}-${PV}.tar.gz"
SRC_URI="http://red5.nl/installer/red5-0.7.0.tar.gz"
LICENSE="LGPL-2.1"
SLOT="1"
KEYWORDS="~amd64 ~x86"
IUSE="doc examples source"
DEPEND=">=virtual/jdk-1.5
>=dev-java/ant-core-1.5"
RDEPEND=">=virtual/jdk-1.5"
RED5_HOME=/opt/red5
pkg_setup() {
enewgroup red5
enewuser red5 -1 -1 ${RED5_HOME} red5
}
src_compile() {
echo >> build.properties
echo "java.target_version=$(java-pkg_get-vm-version)" >> build.properties
mkdir ${WORKDIR}/ivycache
echo "ivy.default.ivy.user.dir=${WORKDIR}/ivycache" >> build.properties
cp ${FILESDIR}/ivysettings.xml ./
eant
rm red5.jar
if has_version ">=virtual/jdk-1.6"; then
wget http://red5.googlecode.com/svn/trunk/snapshots/070hotfix.zip \
|| die "Cannot download hotfix"
unzip 070hotfix.zip
rm 070hotfix.zip
else
wget http://red5.googlecode.com/svn/trunk/snapshots/070hotfix_java5.zip \
|| die "Cannot download hotfix"
unzip 070hotfix_java5.zip
rm 070hotfix_java5.zip
fi
wget http://red5.googlecode.com/svn/trunk/repository/jetty/jetty-6.1.8.jar \
http://red5.googlecode.com/svn/trunk/repository/jetty/jetty-util-6.1.8.jar \
http://red5.googlecode.com/svn/trunk/repository/jetty/jetty-xbean-6.1.8.jar \
|| die "Cannot download hotfix"
rm lib/jetty-6.1.7.jar lib/jetty-util-6.1.7.jar lib/jetty-xbean-6.1.7.jar
mv jetty-6.1.8.jar jetty-util-6.1.8.jar jetty-xbean-6.1.8.jar lib/
}
src_install() {
newinitd "${FILESDIR}"/red5.initd red5
newconfd "${FILESDIR}"/red5.confd red5
doenvd "${FILESDIR}"/21red5
if ! use source ; then
rm -rf test
rm -rf bin
rm -rf src
rm -rf swf
rm -f build.xml
rm -f build.properties
rm -f Makefile
fi
if use doc ; then
dodoc doc/*
fi
rm -rf doc
keepdir /var/lib/red5-webapps
fowners red5:red5 /var/lib/red5-webapps/
if use examples ; then
insopts -m0644
insinto /var/lib/red5-webapps
doins -r dist/webapps/*
fowners -R red5:red5 /var/lib/red5-webapps/
fi
dosym /var/lib/red5-webapps ${RED5_HOME}/webapps
insinto /var/lib/red5-webapps
doins webapps/red5-default.xml
fowners red5:red5 /var/lib/red5-webapps/red5-default.xml
rm -rf webapps
rm -rf dumps
rm -rf bin
rm -rf dist
rm -rf *.bat
cp -rp * "${D}/${RED5_HOME}"
fowners -R red5:red5 ${RED5_HOME}
fperms 0750 ${RED5_HOME}/red5.sh
}[/code]
- Details
- Written by Pham Ngoc Hai
New ebuild for vhba-1.0.0 module with scsi_cmnd patch applied:
[code]# Copyright 1999-2007 Gentoo Foundation
# Distributed under the terms of the GNU General Public License v2
# $Header: $
inherit linux-info linux-mod eutils
DESCRIPTION="VHBA module provides Virtual (SCSI) Host Bus Adapter \
for the cdemu suite"
HOMEPAGE="http://cdemu.org"
SRC_URI="mirror://sourceforge/cdemu/vhba-module-${PV}.tar.bz2"
LICENSE="GPL-V2"
SLOT="0"
KEYWORDS="~amd64 ~x86 ~hppa ~ppc"
IUSE=""
DEPEND=">=virtual/linux-sources-2.6.19"
RDEPEND=""
S="${WORKDIR}/vhba-module-${PV}"
MODULE_NAMES="vhba(block:${S})"
BUILD_TARGETS="clean modules"
pkg_setup() {
CONFIG_CHECK="~BLK_DEV_SR ~CHR_DEV_SG"
check_extra_config
BUILD_PARAMS="KERNELDIR=${KV_DIR}"
linux-mod_pkg_setup
}
src_unpack() {
unpack ${A}
cd ${S}
einfo "Patching Makefile"
epatch "${FILESDIR}"/makefile.patch || die "Failed to patch Makefile"
if kernel_is 2 6 24 ; then
einfo "Patching scatterlist"
epatch "${FILESDIR}"/scatterlist.patch || die "Failed to patch scatterlist"
fi
if kernel_is 2 6 25 ; then
einfo "Patching scatterlist"
epatch "${FILESDIR}"/scatterlist.patch || die "Failed to patch scatterlist"
einfo "Patching scsi_cmnd"
epatch "${FILESDIR}"/scsicmnd.patch || die "Failed to patch scsicmnd"
fi
}
src_compile() {
linux-mod_src_compile || die "Error: building module failed!"
}
src_install() {
KV_OBJ="ko"
linux-mod_src_install || die "Error: installing module failed!"
UDEV_RULES="/etc/udev/rules.d/70-vhba.rules"
einfo "Generating UDEV-rules ..."
mkdir -p "${D}"/${UDEV_RULES%/*}
echo -e "# do not edit this file, it will be overwritten on update\n#" \
> "${D}"/${UDEV_RULES}
echo -e "KERNEL==\"vhba_ctl\", NAME=\"%k\", MODE=\"0660\", OWNER=\"root\",GROUP=\"cdemu\"" >> "${D}"/${UDEV_RULES}
}
pkg_postinst() {
einfo "Generating cdemu group ..."
enewgroup cdemu
elog "Don't forget to add yourself to the cdemu group "
elog "if you want to be able to use virtual cdemu devices."
linux-mod_pkg_postinst
}
pkg_postrm() {
linux-mod_pkg_postrm
}[/code]
This ebuild is also available in my gentoo overlay
- Details
- Written by Pham Ngoc Hai
This patch will make vhba module 1.0 compile with kernel 2.6.25
It fixes the following errors:
[code]/setup/work/cdemu-1.0/vhba-module-org/vhba.c:490: error: ‘struct scsi_cmnd’ has no member named ‘request_bufflen’
/setup/work/cdemu-1.0/vhba-module-org/vhba.c:491: error: ‘struct scsi_cmnd’ has no member named ‘request_bufflen’
/setup/work/cdemu-1.0/vhba-module-org/vhba.c:496: error: ‘struct scsi_cmnd’ has no member named ‘use_sg’
/setup/work/cdemu-1.0/vhba-module-org/vhba.c:500: error: ‘struct scsi_cmnd’ has no member named ‘request_buffer’[/code]
Click here to download it
Here comes the patch:
[code]--- vhba-module-org/vhba.c 2008-03-03 19:31:06.000000000 +0100
+++ vhba-module-1.0.0/vhba.c 2008-03-03 20:04:30.000000000 +0100
@@ -425,11 +425,11 @@
ssize_t ret;
scmd_dbg(cmd, "request %lu, cdb 0x%x, bufflen %d, use_sg %d\n",
- cmd->serial_number, cmd->cmnd[0], cmd->request_bufflen, cmd->use_sg);
+ cmd->serial_number, cmd->cmnd[0], cmd->sdb.length, cmd->sdb.table.nents);
ret = sizeof(vreq);
if (DATA_TO_DEVICE(cmd->sc_data_direction))
- ret += cmd->request_bufflen;
+ ret += cmd->sdb.length;
if (ret > buf_len)
{
@@ -442,7 +442,7 @@
vreq.lun = cmd->device->lun;
memcpy(vreq.cdb, cmd->cmnd, MAX_COMMAND_SIZE);
vreq.cdb_len = cmd->cmd_len;
- vreq.data_len = cmd->request_bufflen;
+ vreq.data_len = cmd->sdb.length;
if (copy_to_user(buf, &vreq, sizeof(vreq)))
return -EFAULT;
@@ -452,7 +452,7 @@
buf += sizeof(vreq);
/* XXX use_sg? */
- if (copy_to_user(buf, cmd->request_buffer, vreq.data_len))
+ if (copy_to_user(buf, cmd->sdb.table.sgl, vreq.data_len))
return -EFAULT;
}
@@ -464,7 +464,7 @@
ssize_t ret = 0;
scmd_dbg(cmd, "response %lu, status %x, data len %d, use_sg %d\n",
- cmd->serial_number, res->status, res->data_len, cmd->use_sg);
+ cmd->serial_number, res->status, res->data_len, cmd->sdb.table.nents);
if (res->status)
{
@@ -481,23 +481,23 @@
ret += res->data_len;
}
- else if (DATA_FROM_DEVICE(cmd->sc_data_direction) && cmd->request_bufflen)
+ else if (DATA_FROM_DEVICE(cmd->sc_data_direction) && cmd->sdb.length)
{
size_t to_read;
- if (res->data_len > cmd->request_bufflen)
+ if (res->data_len > cmd->sdb.length)
{
- scmd_warn(cmd, "truncate data (%d < %d)\n", cmd->request_bufflen, res->data_len);
- res->data_len = cmd->request_bufflen;
+ scmd_warn(cmd, "truncate data (%d < %d)\n", cmd->sdb.length, res->data_len);
+ res->data_len = cmd->sdb.length;
}
to_read = res->data_len;
- if (cmd->use_sg)
+ if (cmd->sdb.table.nents)
{
unsigned char buf_stack[64];
unsigned char *kaddr, *uaddr, *kbuf;
- struct scatterlist *sg = cmd->request_buffer;
+ struct scatterlist *sg = cmd->sdb.table.sgl;
int i;
uaddr = (unsigned char *) buf;
@@ -507,7 +507,7 @@
else
kbuf = buf_stack;
- for (i = 0; i < cmd->use_sg; i++)
+ for (i = 0; i < cmd->sdb.table.nents; i++)
{
size_t len = (sg[i].length < to_read) ? sg[i].length : to_read;
@@ -534,13 +534,13 @@
}
else
{
- if (copy_from_user(cmd->request_buffer, buf, res->data_len))
+ if (copy_from_user(cmd->sdb.table.sgl, buf, res->data_len))
return -EFAULT;
to_read -= res->data_len;
}
- cmd->resid = to_read;
+ cmd->sdb.resid = to_read;
ret += res->data_len - to_read;
}[/code]
Page 6 of 11