parent
fe30bd4244
commit
cffbd9ec6d
@ -1,6 +1,6 @@
|
||||
DIST rarlinux-4.0.1.tar.gz 860102 RMD160 efbdc06750b03a1a288c325e155a064c079b43e0 SHA1 9113bb010c1fd3300bcb990b79efa8d5a956f4c3 SHA256 fe11f48385091b0bfc2d9a8151ac2160ef07748730a47fb0512885bd882e719b
|
||||
DIST rarlinux-4.1.0.tar.gz 915027 RMD160 51716353d20c5e81de8bff7e3ad7683039e73ccd SHA1 e4e46520458d3e5f507c270d1ace47a54bc71488 SHA256 6bbbee7ffad0b545a2a677d590d5c6db666739b133e1b25f4eab92256623f479
|
||||
DIST rarlinux-4.1.1.tar.gz 915307 RMD160 a0aa14bc85996ca242ce6a48c7d244b4b171ecb6 SHA1 4e5c8c7d5b610ce48a97729683688008c310e57e SHA256 71959aff9fa79e67eaab56e4241666d612236bbd4389cb39088d969524df36a9
|
||||
DIST rarlinux-x64-4.0.1.tar.gz 894579 RMD160 154f55f3a84714ac5dfc76072bd464d1832ee9e4 SHA1 737ddf2e9945006fd317144ba621625fae0eb774 SHA256 452b32e5bbb872e59ea67daadd5be1ac9ab35bf2298823928ae60ba224cb2120
|
||||
DIST rarlinux-x64-4.1.0.tar.gz 952728 RMD160 588c91afb2e2bea7c924546ce77a21f05327075b SHA1 6b8cf69127f18189eec8390730d264ef30e24d2d SHA256 a94da95aea0d723b28b3cc0af4329e0ad4f0044f3cd5ed75cb04e8767e890da7
|
||||
DIST rarlinux-x64-4.1.1.tar.gz 952748 RMD160 c81ff0fe9f1d001db61a0b8f92357b0b529b3953 SHA1 6ed70fe08e04bc2e381eb43be8905bc70f0582b2 SHA256 cb11930ebdfbd283d2075807b757f8125e2d41f29d8ed65942363fb3c0caa290
|
||||
DIST winrar-x64-401.exe 1569316 RMD160 94f83d8eb2d8e504c723a24ec1d85ff0e3f019df SHA1 4679f735c743177dc94604d27b665e9a5aca5c20 SHA256 d21297ee40e91e72c2028f7ab0e7e5b922ffb6738b66aaad3bccbc0b8036c685
|
||||
DIST winrar-x64-410.exe 1637578 RMD160 9226b0ebd5f9f29c2d863cfce7e0b1d6c6cfb75f SHA1 eaaf620603f2c1330f935185746ceb834ce9b4a3 SHA256 56f6436c69243acc7ced536811efa02471498317e9228a62e263640da1372ef1
|
||||
DIST winrar-x64-411.exe 1639789 RMD160 8d136c5fde4b559b769e955018fe6f77d5cc6624 SHA1 f6290dcda790a6eae9d9793d8c6c17afe5e68a2c SHA256 822717b5b6f858ee0d00157e0b79368d88f6822684008ceaaac4a89b755f2e5f
|
||||
|
@ -1,6 +1,6 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-arch/rar/rar-4.1.0.ebuild,v 1.1 2012/01/27 06:33:11 jdhore Exp $
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-arch/rar/rar-4.1.1.ebuild,v 1.1 2012/03/04 18:26:14 jdhore Exp $
|
||||
EAPI=4
|
||||
|
||||
DESCRIPTION="RAR compressor/uncompressor"
|
@ -1,8 +1,10 @@
|
||||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE pkgmetadata SYSTEM "http://www.gentoo.org/dtd/metadata.dtd">
|
||||
<pkgmetadata>
|
||||
<herd>tools-portage</herd>
|
||||
<maintainer>
|
||||
<email>maintainer-needed@gentoo.org</email>
|
||||
<email>dolsen@gentoo.org</email>
|
||||
<name>Brian Dolbec</name>
|
||||
</maintainer>
|
||||
</pkgmetadata>
|
||||
|
||||
|
@ -1,2 +1 @@
|
||||
DIST colorschemes-20110506.tar.bz2 414166 RMD160 de24da4bb60f2f47639dc7947c81c677cb096b4b SHA1 bd1ba265459542b8d63ecf44f7a4172fbe9dad77 SHA256 1092f03dad968efe4c2f88fc6a1d8a8c6d09614a26c430e8a2c1b3c9edb6556c
|
||||
DIST colorschemes-20111107.tar.bz2 429747 RMD160 84b36d181146da232c436e0fb9939140a427e152 SHA1 3d39fceb5e3ae2363c5e484f9cf8b9b759b9728b SHA256 873d74eb2a8a996c39dead8cad362fe1f6ed83808aac56265a4300771898ccde
|
||||
|
@ -1,31 +0,0 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-vim/colorschemes/colorschemes-20110506-r1.ebuild,v 1.2 2011/10/18 21:07:30 jer Exp $
|
||||
|
||||
EAPI="4"
|
||||
|
||||
inherit vim-plugin eutils
|
||||
|
||||
DESCRIPTION="vim plugin: a collection of color schemes from vim.org"
|
||||
HOMEPAGE="http://www.vim.org/"
|
||||
SRC_URI="mirror://gentoo/${P}.tar.bz2"
|
||||
|
||||
LICENSE="vim GPL-2 public-domain as-is"
|
||||
KEYWORDS="alpha amd64 hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-macos"
|
||||
IUSE=""
|
||||
|
||||
VIM_PLUGIN_HELPTEXT=\
|
||||
"This plugin provides a collection of color schemes for vim. To switch
|
||||
color schemes, use :colorscheme schemename (tab completion is available
|
||||
for scheme names). To automatically set a scheme at startup, please see
|
||||
:help vimrc."
|
||||
|
||||
src_prepare() {
|
||||
EPATCH_SOURCE="${S}/patches" \
|
||||
EPATCH_SUFFIX="patch" \
|
||||
EPATCH_FORCE="yes" \
|
||||
epatch
|
||||
rm -rf patches/
|
||||
|
||||
edos2unix colors/*
|
||||
}
|
@ -1,2 +1 @@
|
||||
DIST gtk-syntax-20091024.tar.bz2 147739 RMD160 728d57b0ed6bb05b62d05d3635a0cf1f0f4a0b48 SHA1 8e40f8101530095c4700f2da50da08aa089254ed SHA256 9d0dfad109aba37fbac2fabb6443eb0322d3c8bed483c766bc2f2059219f4d3b
|
||||
DIST gtk-syntax-20110214.tar.bz2 195881 RMD160 e9cdae3cc7a3ea56bfba2bd012fdd499a2793dc7 SHA1 2278350ffde6ac2ba22fb2cfdcd81af5d494fb49 SHA256 b629337bbc246407b99ccdcf13c6d49524cb521b07a4a1c1caede7faef673260
|
||||
|
@ -1,11 +0,0 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-vim/gtk-syntax/gtk-syntax-20091024.ebuild,v 1.7 2011/01/07 22:25:45 ranger Exp $
|
||||
|
||||
inherit vim-plugin
|
||||
|
||||
DESCRIPTION="vim plugin: Syntax highlighting for GLib, Gtk+, Xlib, Gimp, Gnome, and more"
|
||||
HOMEPAGE="http://www.vim.org/scripts/script.php?script_id=1000"
|
||||
LICENSE="as-is"
|
||||
KEYWORDS="alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 sh sparc x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x86-solaris"
|
||||
IUSE=""
|
@ -1,2 +1 @@
|
||||
DIST selinux-syntax-20040707.tar.bz2 1331 RMD160 26c3e1c751ca947c6eb53ee2ae64c04d52dfc389 SHA1 0b1623eb3b28a87c4ba2d1607c1222c7111311db SHA256 8d82ca8a9da8f4d1752f3a365184930beebc5340381431ea5ad5c0241bed927f
|
||||
DIST selinux-syntax-20041225.tar.bz2 1411 RMD160 9650cb5135f93fde1906a4ca8f8927b3ab108b89 SHA1 0ec16298f728c174639ab97bf0d5f5c2d7b39cf1 SHA256 5d2cab687bb48a479b22fc4dfd2576f2d5f55f4d5ed1b9c380e5c004a232ef41
|
||||
|
@ -1,15 +0,0 @@
|
||||
# Copyright 1999-2010 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-vim/selinux-syntax/selinux-syntax-20040707.ebuild,v 1.14 2010/10/07 03:49:57 leio Exp $
|
||||
|
||||
inherit vim-plugin
|
||||
|
||||
DESCRIPTION="vim plugin: SELinux type enforcement policy syntax"
|
||||
HOMEPAGE="http://www.cip.ifi.lmu.de/~bleher/selinux/"
|
||||
LICENSE="vim"
|
||||
KEYWORDS="alpha amd64 ia64 ~mips ppc ppc64 sparc x86"
|
||||
IUSE=""
|
||||
|
||||
VIM_PLUGIN_HELPTEXT=\
|
||||
"This plugin provides syntax highlighting for SELinux type enforcement
|
||||
policy (*.te) files."
|
@ -1,3 +1 @@
|
||||
DIST wikipedia-syntax-20050212.tar.bz2 3130 RMD160 246b81c6ec7b9216c58630d27636661b4c81b559 SHA1 af28f1708e22956dc4fceb9faa8b77f96b3d5969 SHA256 f06fe648c27f855b73b8a811421fa8618a0dc8d061af1365cc8d20b3ceddb530
|
||||
DIST wikipedia-syntax-20071103.tar.bz2 3196 RMD160 160795f8445d328149385507e597a9173029d0f4 SHA1 c31f178912586b4625dba410b73db356b3740833 SHA256 f46c2e39821854c042a30cc5bcfd89387adfe25aeb21973bc4604275db4dbe1b
|
||||
DIST wikipedia-syntax-20101113.tar.bz2 3463 RMD160 134d37e20c0f860e9badd94e742b860aff1f2f6e SHA1 7c6808b710188c5105e97d8cbbc070437660b1d8 SHA256 7b8d87d1875725eb766bd6f33710e63c3ca9e79ec7a3d95437ee08b8ca97b4bd
|
||||
|
@ -1,16 +0,0 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-vim/wikipedia-syntax/wikipedia-syntax-20050212.ebuild,v 1.15 2011/12/11 17:13:12 armin76 Exp $
|
||||
|
||||
inherit vim-plugin
|
||||
|
||||
DESCRIPTION="vim plugin: Wikipedia syntax highlighting"
|
||||
HOMEPAGE="http://en.wikipedia.org/wiki/Wikipedia:Text_editor_support#Vim"
|
||||
LICENSE="as-is"
|
||||
KEYWORDS="amd64 ~hppa ~mips ppc ppc64 x86"
|
||||
IUSE=""
|
||||
|
||||
VIM_PLUGIN_HELPTEXT=\
|
||||
"This plugin provides syntax highlighting for Wikipedia article
|
||||
files. Detection is by filename (*.wiki)."
|
||||
VIM_PLUGIN_MESSAGES="filetype"
|
@ -1,16 +0,0 @@
|
||||
# Copyright 1999-2011 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/app-vim/wikipedia-syntax/wikipedia-syntax-20071103.ebuild,v 1.2 2011/12/11 17:13:12 armin76 Exp $
|
||||
|
||||
inherit vim-plugin
|
||||
|
||||
DESCRIPTION="vim plugin: Wikipedia syntax highlighting"
|
||||
HOMEPAGE="http://en.wikipedia.org/wiki/Wikipedia:Text_editor_support#Vim"
|
||||
LICENSE="as-is"
|
||||
KEYWORDS="~amd64 ~hppa ~mips ~ppc ~ppc64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
VIM_PLUGIN_HELPTEXT=\
|
||||
"This plugin provides syntax highlighting for Wikipedia article
|
||||
files. Detection is by filename (*.wiki)."
|
||||
VIM_PLUGIN_MESSAGES="filetype"
|
@ -1 +1,2 @@
|
||||
DIST lua-5.1.4.tar.gz 216679 RMD160 c867c8364295d3e4fb4e4d8ebb27fa2b2312cdef SHA1 2b11c8e60306efb7f0734b747588f57995493db7 SHA256 b038e225eaf2a5b57c9bcc35cd13aa8c6c8288ef493d52970c9545074098af3a
|
||||
DIST lua-5.2.0.tar.gz 246377 RMD160 6153bddd57493490b72e700cc99135432bf653f0 SHA1 08f84c355cdd646f617f09cebea48bd832415829 SHA256 cabe379465aa8e388988073d59b69e76ba0025429d2c1da80821a252cdf6be0d
|
||||
|
@ -0,0 +1,5 @@
|
||||
top_buildir=.
|
||||
|
||||
AC_INIT(src/luaconf.h)
|
||||
AC_PROG_LIBTOOL
|
||||
AC_OUTPUT()
|
@ -0,0 +1,60 @@
|
||||
--- lua-5.1.1.orig/Makefile 2006-06-02 12:53:38.000000000 +0200
|
||||
+++ lua-5.1.1/Makefile 2006-11-16 02:16:53.000000000 +0100
|
||||
@@ -127,3 +127,18 @@
|
||||
.PHONY: all $(PLATS) clean install local none dummy echo pecho lecho newer
|
||||
|
||||
# (end of Makefile)
|
||||
+
|
||||
+# Use libtool for binary installs, etc.
|
||||
+
|
||||
+export V
|
||||
+export LIBTOOL = ../libtool --quiet --tag=CC
|
||||
+# See libtool manual about how to set this
|
||||
+
|
||||
+gentoo_clean:
|
||||
+ cd src; $(MAKE) $@
|
||||
+
|
||||
+gentoo_install:
|
||||
+ mkdir -p $(INSTALL_BIN) $(INSTALL_INC) $(INSTALL_LIB)
|
||||
+ cd src; $(LIBTOOL) --mode=install $(INSTALL_EXEC) lua luac $(INSTALL_BIN)
|
||||
+ cd src; $(INSTALL_DATA) $(TO_INC) $(INSTALL_INC)
|
||||
+ cd src; $(LIBTOOL) --mode=install $(INSTALL_DATA) liblua.la $(INSTALL_LIB)
|
||||
--- lua-5.1.1.orig/src/Makefile 2006-03-22 01:41:49.000000000 +0100
|
||||
+++ lua-5.1.1/src/Makefile 2006-11-16 02:10:27.000000000 +0100
|
||||
@@ -54,1 +54,1 @@
|
||||
-$(LUA_T): $(LUA_O) $(LUA_A)
|
||||
+origin$(LUA_T): $(LUA_O) $(LUA_A)
|
||||
@@ -57,1 +57,1 @@
|
||||
-$(LUAC_T): $(LUAC_O) $(LUA_A)
|
||||
+origin$(LUAC_T): $(LUAC_O) $(LUA_A)
|
||||
@@ -185,3 +185,30 @@
|
||||
lzio.o: lzio.c lua.h luaconf.h llimits.h lmem.h lstate.h lobject.h ltm.h \
|
||||
lzio.h
|
||||
|
||||
+
|
||||
+export LIBTOOL = ../libtool --quiet --tag=CC
|
||||
+export LIB_VERSION = 6:1:1
|
||||
+
|
||||
+# The following rules use libtool for compiling and linking in order to
|
||||
+# provide shared library support.
|
||||
+
|
||||
+LIB_NAME = liblua.la
|
||||
+LIB_OBJS = $(CORE_O:.o=.lo) $(LIB_O:.o=.lo)
|
||||
+
|
||||
+%.lo %.o: %.c
|
||||
+ $(LIBTOOL) --mode=compile $(CC) -c $(CPPFLAGS) $(CFLAGS) -o $@ $<
|
||||
+
|
||||
+$(LIB_NAME): $(LIB_OBJS)
|
||||
+ $(LIBTOOL) --mode=link $(CC) -version-info $(LIB_VERSION) \
|
||||
+ -rpath $(RPATH) $(LDFLAGS) -o $(LIB_NAME) $(LIB_OBJS) $(LIB_LIBS)
|
||||
+
|
||||
+$(LUA_T): $(LUA_O:.o=.lo) $(LIB_NAME)
|
||||
+ $(LIBTOOL) --mode=link $(CC) -export-dynamic $(LDFLAGS) -o $@ $(LUA_O:.o=.lo) $(LIB_NAME) $(LUA_LIBS)
|
||||
+
|
||||
+$(LUAC_T): $(LUAC_O:.o=.lo) $(LIB_NAME)
|
||||
+ $(LIBTOOL) --mode=link $(CC) -static $(LDFLAGS) -o $@ $(LUAC_O:.o=.lo) $(LIB_NAME)
|
||||
+
|
||||
+gentoo_clean:
|
||||
+ $(LIBTOOL) --mode=clean $(RM) $(ALL_O:.o=.lo) $(LIB_NAME) lua luac
|
||||
+
|
||||
+gentoo_all: $(LIB_NAME) $(LUA_T) $(LUAC_T)
|
@ -0,0 +1,31 @@
|
||||
# lua.pc -- pkg-config data for Lua
|
||||
|
||||
# vars from install Makefile
|
||||
|
||||
# grep '^V=' ../Makefile
|
||||
V= 5.1
|
||||
# grep '^R=' ../Makefile
|
||||
R= 5.1.4
|
||||
|
||||
# grep '^INSTALL_.*=' ../Makefile | sed 's/INSTALL_TOP/prefix/'
|
||||
prefix= /usr
|
||||
INSTALL_BIN= ${prefix}/bin
|
||||
INSTALL_INC= ${prefix}/include
|
||||
INSTALL_LIB= ${prefix}/,lib,
|
||||
INSTALL_MAN= ${prefix}/man/man1
|
||||
INSTALL_LMOD= ${prefix}/share/lua/${V}
|
||||
INSTALL_CMOD= ${prefix}/,lib,/lua/${V}
|
||||
|
||||
# canonical vars
|
||||
exec_prefix=${prefix}
|
||||
libdir=${exec_prefix}/,lib,
|
||||
includedir=${prefix}/include
|
||||
|
||||
Name: Lua
|
||||
Description: An Extensible Extension Language
|
||||
Version: ${R}
|
||||
Requires:
|
||||
Libs: -L${libdir} -llua -lm
|
||||
Cflags: -I${includedir}
|
||||
|
||||
# (end of lua.pc)
|
@ -0,0 +1,106 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-lang/lua/lua-5.2.0.ebuild,v 1.1 2012/03/04 22:58:29 mabi Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
inherit eutils autotools multilib portability toolchain-funcs versionator
|
||||
|
||||
DESCRIPTION="A powerful light-weight programming language designed for extending applications"
|
||||
HOMEPAGE="http://www.lua.org/"
|
||||
SRC_URI="http://www.lua.org/ftp/${P}.tar.gz"
|
||||
|
||||
LICENSE="MIT"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd"
|
||||
IUSE="+deprecated emacs readline static"
|
||||
|
||||
RDEPEND="readline? ( sys-libs/readline )"
|
||||
DEPEND="${RDEPEND}
|
||||
sys-devel/libtool"
|
||||
PDEPEND="emacs? ( app-emacs/lua-mode )"
|
||||
|
||||
src_prepare() {
|
||||
local PATCH_PV=$(get_version_component_range 1-2)
|
||||
|
||||
epatch "${FILESDIR}"/${PN}-${PATCH_PV}-make.patch
|
||||
|
||||
sed -i \
|
||||
-e 's:\(LUA_ROOT\s*\).*:\1"/usr/":' \
|
||||
-e "s:\(LUA_CDIR\s*LUA_ROOT \"\)lib:\1$(get_libdir):" \
|
||||
src/luaconf.h \
|
||||
|| die "failed patching luaconf.h"
|
||||
|
||||
# correct lua versioning
|
||||
sed -i -e 's/\(LIB_VERSION = \)6:1:1/\17:0:2/' src/Makefile
|
||||
|
||||
sed -i -e 's:\(/README\)\("\):\1.gz\2:g' doc/readme.html
|
||||
|
||||
if ! use readline ; then
|
||||
sed -i -e '/#define LUA_USE_READLINE/d' src/luaconf.h
|
||||
fi
|
||||
|
||||
# Using dynamic linked lua is not recommended for performance
|
||||
# reasons. http://article.gmane.org/gmane.comp.lang.lua.general/18519
|
||||
# Mainly, this is of concern if your arch is poor with GPRs, like x86
|
||||
# Note that this only affects the interpreter binary (named lua), not the lua
|
||||
# compiler (built statically) nor the lua libraries (both shared and static
|
||||
# are installed)
|
||||
if use static ; then
|
||||
sed -i -e 's:\(-export-dynamic\):-static \1:' src/Makefile
|
||||
fi
|
||||
|
||||
# upstream does not use libtool, but we do (see bug #336167)
|
||||
cp "${FILESDIR}/configure.in" "${S}"
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
tc-export CC
|
||||
myflags=
|
||||
# what to link to liblua
|
||||
liblibs="-lm"
|
||||
liblibs="${liblibs} $(dlopen_lib)"
|
||||
|
||||
# what to link to the executables
|
||||
mylibs=
|
||||
if use readline; then
|
||||
mylibs="-lreadline"
|
||||
fi
|
||||
|
||||
cd src
|
||||
|
||||
local legacy=""
|
||||
use deprecated && legacy="-DLUA_COMPAT_ALL"
|
||||
|
||||
emake CC="${CC}" CFLAGS="-DLUA_USE_LINUX ${legacy} ${CFLAGS}" \
|
||||
RPATH="${EPREFIX}/usr/$(get_libdir)/" \
|
||||
LUA_LIBS="${mylibs}" \
|
||||
LIB_LIBS="${liblibs}" \
|
||||
V=${PV} \
|
||||
gentoo_all || die "emake failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
local PATCH_PV=$(get_version_component_range 1-2)
|
||||
|
||||
emake INSTALL_TOP="${ED}/usr" INSTALL_LIB="${ED}/usr/$(get_libdir)" \
|
||||
V=${PV} gentoo_install \
|
||||
|| die "emake install gentoo_install failed"
|
||||
|
||||
dodoc README
|
||||
dohtml doc/*.html doc/*.png doc/*.css doc/*.gif
|
||||
|
||||
doman doc/lua.1 doc/luac.1
|
||||
|
||||
# We want packages to find our things...
|
||||
cp "${FILESDIR}/lua.pc" "${WORKDIR}"
|
||||
sed -i \
|
||||
-e "s:^V=.*:V= ${PATCH_PV}:" \
|
||||
-e "s:^R=.*:R= ${PV}:" \
|
||||
-e "s:/,lib,:/$(get_libdir):g" \
|
||||
"${WORKDIR}/lua.pc"
|
||||
|
||||
insinto "/usr/$(get_libdir)/pkgconfig"
|
||||
doins "${WORKDIR}/lua.pc"
|
||||
}
|
@ -1,2 +1,2 @@
|
||||
DIST libexplain-0.50.D001.tar.gz 4484874 RMD160 80f90e363f12e0f9aaa04f4cd7639b478dc1c057 SHA1 dcf3a7a92370195810b96ae033f08b6e5794cf99 SHA256 7ffbf63ed820becdc26ed43f9299978f80a1edf617768b37cbdf99c80b57aaa6
|
||||
DIST libexplain-0.51.D001.tar.gz 4485218 RMD160 059f4fbe520ed9bacdf5098dcbef006c33759e1d SHA1 e8e1fd2b7a607fa823d6b13285c406e4e1197041 SHA256 2f49e8bc6c4b11c7d603e1d5b041fdf99712becc8cc67be475fe60272566681c
|
||||
DIST libexplain-0.52.D001.tar.gz 4486074 RMD160 7c360d0d76b323db7a20d831494c07ccfaa51f3e SHA1 151ae8c7cc80d70ff99af965970a46c4918f14e1 SHA256 8f26d19e0bf476081ea246505d434db55955ed829a38d08dc29a05631c00faee
|
||||
|
@ -0,0 +1,25 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-perl/Contextual-Return/Contextual-Return-0.4.2.ebuild,v 1.1 2012/03/04 17:59:32 tove Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
MODULE_AUTHOR=DCONWAY
|
||||
MODULE_VERSION=0.004002
|
||||
inherit perl-module
|
||||
|
||||
DESCRIPTION="Create context-senstive return values"
|
||||
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND="
|
||||
dev-perl/Want
|
||||
virtual/perl-version
|
||||
"
|
||||
DEPEND="${RDEPEND}
|
||||
virtual/perl-Module-Build
|
||||
"
|
||||
|
||||
SRC_TEST=do
|
@ -1,3 +1,4 @@
|
||||
DIST Contextual-Return-0.003001.tar.gz 36420 RMD160 1e6c74eef3210c4f189f64ed0650592c4616b149 SHA1 9aeb497d6005f5edbb2acd8896841f93b0395086 SHA256 62494cf2a1ce0f1c34c6a62f95b9f0aca086364e690d5f4fd9a02e6fc6d25e4d
|
||||
DIST Contextual-Return-0.003002.tar.gz 36853 RMD160 b12813031c788a3ad58e963b7f2d8244b985d480 SHA1 d21fc742fdf0c16fdf66c331a70897864ef5d573 SHA256 02df51336bffc43764e3bfeba82215b9797e3496180e7744c103d77c1c3746a3
|
||||
DIST Contextual-Return-0.004001.tar.gz 38204 RMD160 e0620b8c6c848e178f82feb409d7c701b72252bd SHA1 906d4e8255de070ba56d095aa7e6e4dcfc36824c SHA256 543d1db186cfafbc06cc695c4bfa8adfb0a06de5a62de49b0b3f63ab17d95fad
|
||||
DIST Contextual-Return-0.004002.tar.gz 38267 RMD160 7758256ba90e46745b6271b2c7075b3f1c5a5cd1 SHA1 720607060283da5f551e89bc3ba0340a2b97b8c2 SHA256 d2fdb8819d13ba98e4d7fbf7f1cd7ff5b1075b9afe8d87a6bcd589dcefa6d889
|
||||
|
@ -1,4 +1,5 @@
|
||||
DIST QScintilla-gpl-2.4.5.tar.gz 2372380 RMD160 d96cf05c879f314ee828ec6a1609bd1864692bd6 SHA1 2401c2214ba0377ad61855c0fac6f6c7c95801d6 SHA256 cd73960e3c93e84b013cd5ec350f4a2810e3b95d9506083acf3608f7ccf43c09
|
||||
DIST QScintilla-gpl-2.4.6.tar.gz 2442792 RMD160 b48880e3e0fa0d285f04bf7ceb509f509d684929 SHA1 0527feedf74186a02ca0757d71be0c790149f674 SHA256 ad4dcc34922358aab8b0ce643e38e12188b41d00a87513ebfd2d6186c5824eab
|
||||
DIST QScintilla-gpl-2.5.1.tar.gz 2638790 RMD160 4cd5eaf87d831fa77212494e19624308dbd00900 SHA1 ff8eb7c49c949109abc434650f4b8215757574bd SHA256 982a3ea9cd42cd2bad65cd88c2cbf47c55397983ab11a7101215bca466ff9ac4
|
||||
DIST QScintilla-gpl-2.6.1.tar.gz 2657005 RMD160 f3e3eeb0ffb30f0a388309d46874983ff0ef8e3d SHA1 c68dbeaafb4f5dbe0d8200ae907cced0c7762e19 SHA256 34b7052b820dfedd4af897d6865d94e81a7aeb7f037f70f5516e9b0ea88afb63
|
||||
DIST QScintilla-gpl-2.6.tar.gz 2655263 RMD160 5a04e13b2642d5611b15e4a1e49a3021f5dc25f3 SHA1 f55dfc6804b2140a5c3e69bd85eb64caa1a5c2ce SHA256 21bc3c0b970935c5d45ea2493e629ea3740b0290be43fed37bb389c94aaa1f41
|
||||
|
@ -0,0 +1,54 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-python/qscintilla-python/qscintilla-python-2.6.1.ebuild,v 1.1 2012/03/04 17:29:14 hwoarang Exp $
|
||||
|
||||
EAPI="3"
|
||||
PYTHON_EXPORT_PHASE_FUNCTIONS="1"
|
||||
SUPPORT_PYTHON_ABIS="1"
|
||||
RESTRICT_PYTHON_ABIS="*-jython 2.7-pypy-*"
|
||||
|
||||
inherit eutils python toolchain-funcs
|
||||
|
||||
MY_P="QScintilla-gpl-${PV/_pre/-snapshot-}"
|
||||
|
||||
DESCRIPTION="Python bindings for Qscintilla"
|
||||
HOMEPAGE="http://www.riverbankcomputing.co.uk/software/qscintilla/intro"
|
||||
SRC_URI="http://www.riverbankcomputing.co.uk/static/Downloads/QScintilla2/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="|| ( GPL-2 GPL-3 )"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~ia64 ~ppc ~ppc64 ~sparc ~x86 ~x86-fbsd"
|
||||
IUSE="debug"
|
||||
|
||||
DEPEND=">=dev-python/sip-4.10
|
||||
>=dev-python/PyQt4-4.7[X]
|
||||
~x11-libs/qscintilla-${PV}"
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
S="${WORKDIR}/${MY_P}/Python"
|
||||
|
||||
src_prepare() {
|
||||
epatch "${FILESDIR}/${PN}-2.5.1-disable_stripping.patch"
|
||||
|
||||
python_copy_sources
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
configuration() {
|
||||
local myconf=("$(PYTHON)"
|
||||
configure.py
|
||||
-p 4
|
||||
--destdir="${EPREFIX}$(python_get_sitedir)/PyQt4"
|
||||
$(use debug && echo --debug))
|
||||
echo "${myconf[@]}"
|
||||
"${myconf[@]}"
|
||||
}
|
||||
python_execute_function -s configuration
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
building() {
|
||||
emake CC="$(tc-getCC)" CXX="$(tc-getCXX)" LINK="$(tc-getCXX)"
|
||||
}
|
||||
python_execute_function -s building
|
||||
}
|
@ -1,3 +1,4 @@
|
||||
DIST fossil-src-20101111133638.tar.gz 2063609 RMD160 14db9067fef56c57efd60e416a50c28bb0274708 SHA1 bec59879965e456100c84365ddc8fc83cd64b3c1 SHA256 bbd6115e901e963aad2d160935de656d9f302b0abef1297066da23f069aec89e
|
||||
DIST fossil-src-20110301190432.tar.gz 2245573 RMD160 2da55edda4de5f439d0c93b22ad021caf1ac8b32 SHA1 4332f6369332e118633c9a7f896b5cd3fd275217 SHA256 68dc9bffdc607f95882eb1a59ba94553aafc3c994d547386d430f6ecb1636cb7
|
||||
DIST fossil-src-20111021125253.tar.gz 2590036 RMD160 7838fc424a3649d32f30ae1dd2c6156926ca79ce SHA1 8f9ddf7be3c7cbe84a3f1d6ffb1374dc8efbc9a1 SHA256 636f201f236178ce9a3a9987ed43b0ce849021b2ae872ad71c5ee5780e9fe554
|
||||
DIST fossil-src-20111213135356.tar.gz 2765234 RMD160 ed75d0f95f605e2dbcaf905c0119fefd8e41428d SHA1 90428156178939dbfb74aaa7d01da2caa80d0f24 SHA256 c98556cd1fa6abc2e02aa38de1af425fa9ff09247e72f631c9ff6c239c46e71d
|
||||
|
@ -0,0 +1,40 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/dev-vcs/fossil/fossil-20111213135356.ebuild,v 1.1 2012/03/04 20:29:37 titanofold Exp $
|
||||
|
||||
EAPI="4"
|
||||
|
||||
MY_P="${PN}-src-${PV}"
|
||||
|
||||
DESCRIPTION="Simple, high-reliability, distributed software configuration management"
|
||||
HOMEPAGE="http://www.fossil-scm.org/"
|
||||
SRC_URI="http://www.fossil-scm.org/download/${MY_P}.tar.gz"
|
||||
|
||||
LICENSE="BSD-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~x86"
|
||||
IUSE="sqlite +ssl tcl"
|
||||
|
||||
DEPEND="sys-libs/zlib
|
||||
ssl? ( dev-libs/openssl )
|
||||
sqlite? ( dev-db/sqlite:3 )
|
||||
tcl? ( dev-lang/tcl )
|
||||
"
|
||||
|
||||
RDEPEND="${DEPEND}"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
src_configure() {
|
||||
# --with-tcl: works
|
||||
# --without-tcl: dies
|
||||
local myconf='--with-openssl='
|
||||
use ssl && myconf+='auto' || myconf+='none'
|
||||
use sqlite && myconf+=' --disable-internal-sqlite'
|
||||
use tcl && myconf+=' --with-tcl'
|
||||
econf ${myconf}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
dobin fossil
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST book_1.01.pgn.gz 26070544 RMD160 29b62c5c1477746b25a09912d2f9e8e4e3f1898f SHA1 3ef3f1e2c52941d35610f3723a4c200575faaf2e SHA256 35df43a342c73e6624e8dbfed78d588c2085208168c3cd3300295e3c57981be0
|
||||
DIST book_1.02.pgn.gz 26265281 RMD160 a9e55b2937944de0c5c57a140ad6ebe9fc92c366 SHA1 9b54f699b919f7f93b97a829764554fa2b7da3a1 SHA256 deac77edb061a59249a19deb03da349cae051e52527a6cb5af808d9398d32d44
|
||||
|
@ -0,0 +1,30 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/games-board/gnuchess-book/gnuchess-book-1.02.ebuild,v 1.2 2012/03/04 18:21:53 sping Exp $
|
||||
|
||||
inherit games
|
||||
|
||||
DESCRIPTION="Opening book for gnuchess"
|
||||
HOMEPAGE="http://www.gnu.org/software/chess/chess.html"
|
||||
SRC_URI="mirror://gnu/chess/book_${PV}.pgn.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~x86"
|
||||
IUSE=""
|
||||
RESTRICT="userpriv" # bug #112898
|
||||
|
||||
DEPEND=">=games-board/gnuchess-6"
|
||||
|
||||
S=${WORKDIR}
|
||||
|
||||
src_compile() {
|
||||
"${GAMES_BINDIR}"/gnuchess --addbook=book_${PV}.pgn \
|
||||
|| die "generation failed"
|
||||
}
|
||||
|
||||
src_install() {
|
||||
insinto "${GAMES_DATADIR}/gnuchess"
|
||||
doins book.bin || die "doins failed"
|
||||
prepgamesdirs
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST gnuchess-5.08.tar.gz 279309 RMD160 39d51f49123ad6fd636594671df1e91593105a80 SHA1 4f61ae3c96715d28bf722d4075c696e2ba94c968 SHA256 c4e49e0dec210f5d131a02ff89588b482787cd702a08456791ba9100b4c6ffc0
|
||||
DIST gnuchess-6.0.2.tar.gz 547026 RMD160 d1b18f384a96bd6a71059803ac1b27ac7a44449d SHA1 a3455e7a523f11db542bdffe1c86c2530fb8d0c5 SHA256 821e24ce4fd6f25267b2c46f7eda83bb5009e6e0ee03c5acf45d7cfa9078a3f5
|
||||
|
@ -0,0 +1,32 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/games-board/gnuchess/gnuchess-6.0.2.ebuild,v 1.1 2012/03/04 18:16:27 sping Exp $
|
||||
|
||||
EAPI=2
|
||||
inherit flag-o-matic games
|
||||
|
||||
DESCRIPTION="Console based chess interface"
|
||||
HOMEPAGE="http://www.gnu.org/software/chess/chess.html"
|
||||
SRC_URI="mirror://gnu/chess/${P}.tar.gz"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~ppc ~ppc64 ~x86"
|
||||
LICENSE="GPL-3"
|
||||
SLOT="0"
|
||||
IUSE="readline"
|
||||
|
||||
DEPEND="readline? ( sys-libs/readline )"
|
||||
|
||||
src_configure() {
|
||||
strip-flags # bug #199097
|
||||
egamesconf \
|
||||
--disable-dependency-tracking \
|
||||
$(use_with readline)
|
||||
}
|
||||
|
||||
src_install () {
|
||||
emake DESTDIR="${D}" install || die "emake install failed"
|
||||
dodoc AUTHORS ChangeLog NEWS TODO README || die
|
||||
prepgamesdirs
|
||||
|
||||
mv "${D}"/usr/share/games/${PN}/{,small}book.bin || die
|
||||
}
|
@ -1,109 +0,0 @@
|
||||
|
||||
HylaFAX Facsimile Software
|
||||
|
||||
Copyright (c) 1990-1996 Sam Leffler
|
||||
Copyright (c) 1991-1996 Silicon Graphics, Inc.
|
||||
HylaFAX is a trademark of Silicon Graphics, Inc.
|
||||
|
||||
Permission to use, copy, modify, distribute, and sell this software and
|
||||
its documentation for any purpose is hereby granted without fee, provided
|
||||
that (i) the above copyright notices and this permission notice appear in
|
||||
all copies of the software and related documentation, and (ii) the names of
|
||||
Sam Leffler and Silicon Graphics may not be used in any advertising or
|
||||
publicity relating to the software without the specific, prior written
|
||||
permission of Sam Leffler and Silicon Graphics.
|
||||
|
||||
THE SOFTWARE IS PROVIDED "AS-IS" AND WITHOUT WARRANTY OF ANY KIND,
|
||||
EXPRESS, IMPLIED OR OTHERWISE, INCLUDING WITHOUT LIMITATION, ANY
|
||||
WARRANTY OF MERCHANTABILITY OR FITNESS FOR A PARTICULAR PURPOSE.
|
||||
|
||||
IN NO EVENT SHALL SAM LEFFLER OR SILICON GRAPHICS BE LIABLE FOR
|
||||
ANY SPECIAL, INCIDENTAL, INDIRECT OR CONSEQUENTIAL DAMAGES OF ANY KIND,
|
||||
OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS,
|
||||
WHETHER OR NOT ADVISED OF THE POSSIBILITY OF DAMAGE, AND ON ANY THEORY OF
|
||||
LIABILITY, ARISING OUT OF OR IN CONNECTION WITH THE USE OR PERFORMANCE
|
||||
OF THIS SOFTWARE.
|
||||
|
||||
|
||||
Acknowledgements
|
||||
----------------
|
||||
The regular expression support is based on Henry Spencer's POSIX 1003.2
|
||||
compliant regex package that has ``Copyright 1992, 1993, 1994 Henry
|
||||
Spencer. All rights reserved.'' Consult regex/COPYRIGHT for the full
|
||||
copyright notice associated with this software.
|
||||
|
||||
The code to read PCF fonts is distantly related to the X11R5 code
|
||||
that is ``Copyright 1990 Massachusetts Institute of Technology''; consult
|
||||
faxd/PCFFont.c++ for the full copyright notice.
|
||||
|
||||
The textfmt program is distantly related to the lptops program written
|
||||
by Nelson Beebe; there was no copyright notice on the version of the code
|
||||
that textfmt grew out of.
|
||||
|
||||
The config.guess and config.sub scripts are part of the GNU autoconf
|
||||
package and covered by the GNU Public License (GPL). Several ideas
|
||||
in the configure script are directly "borrowed" from autoconf (and I
|
||||
have tried to maintain as much compatibility as possible).
|
||||
|
||||
The PCF font etc/lutRS18.pcf included for use with tag lines is a
|
||||
compiled version of a LucidaTypewriter font that was contributed to X11
|
||||
by Bigelow & Holmes. Redistribution of this font requires inclusion of
|
||||
this copyright notice:
|
||||
|
||||
|
||||
NOTICE TO USER: The source code, including the glyphs or icons
|
||||
forming a par of the OPEN LOOK TM Graphic User Interface, on this
|
||||
tape and in these files is copyrighted under U.S. and international
|
||||
laws. Sun Microsystems, Inc. of Mountain View, California owns
|
||||
the copyright and has design patents pending on many of the icons.
|
||||
AT&T is the owner of the OPEN LOOK trademark associated with the
|
||||
materials on this tape. Users and possessors of this source code
|
||||
are hereby granted a nonexclusive, royalty-free copyright and
|
||||
design patent license to use this code in individual and
|
||||
commercial software. A royalty-free, nonexclusive trademark
|
||||
license to refer to the code and output as "OPEN LOOK" compatible
|
||||
is available from AT&T if, and only if, the appearance of the
|
||||
icons or glyphs is not changed in any manner except as absolutely
|
||||
necessary to accommodate the standard resolution of the screen or
|
||||
other output device, the code and output is not changed except as
|
||||
authorized herein, and the code and output is validated by AT&T.
|
||||
Bigelow & Holmes is the owner of the Lucida (R) trademark for the
|
||||
fonts and bit-mapped images associated with the materials on this
|
||||
tape. Users are granted a royalty-free, nonexclusive license to use
|
||||
the trademark only to identify the fonts and bit-mapped images if,
|
||||
and only if, the fonts and bit-mapped images are not modified in any
|
||||
way by the user.
|
||||
|
||||
|
||||
Any use of this source code must include, in the user documentation
|
||||
and internal comments to the code, notices to the end user as
|
||||
follows:
|
||||
|
||||
|
||||
(c) Copyright 1989 Sun Microsystems, Inc. Sun design patents
|
||||
pending in the U.S. and foreign countries. OPEN LOOK is a
|
||||
trademark of AT&T. Used by written permission of the owners.
|
||||
|
||||
|
||||
(c) Copyright Bigelow & Holmes 1986, 1985. Lucida is a registered
|
||||
trademark of Bigelow & Holmes. Permission to use the Lucida
|
||||
trademark is hereby granted only in association with the images
|
||||
and fonts described in this file.
|
||||
|
||||
|
||||
|
||||
SUN MICROSYSTEMS, INC., AT&T, AND BIGELOW & HOLMES
|
||||
MAKE NO REPRESENTATIONS ABOUT THE SUITABILITY OF
|
||||
THIS SOURCE CODE FOR ANY PURPOSE. IT IS PROVIDED "AS IS"
|
||||
WITHOUT EXPRESS OR IMPLIED WARRANTY OF ANY KIND.
|
||||
SUN MICROSYSTEMS, INC., AT&T AND BIGELOW & HOLMES,
|
||||
SEVERALLY AND INDIVIDUALLY, DISCLAIM ALL WARRANTIES
|
||||
WITH REGARD TO THIS SOURCE CODE, INCLUDING ALL IMPLIED
|
||||
WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A
|
||||
PARTICULAR PURPOSE. IN NO EVENT SHALL SUN MICROSYSTEMS,
|
||||
INC., AT&T OR BIGELOW & HOLMES BE LIABLE FOR ANY
|
||||
SPECIAL, INDIRECT, INCIDENTAL, OR CONSEQUENTIAL DAMAGES,
|
||||
OR ANY DAMAGES WHATSOEVER RESULTING FROM LOSS OF USE, DATA
|
||||
OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE
|
||||
OR OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION
|
||||
WITH THE USE OR PERFORMANCE OF THIS SOURCE CODE.
|
@ -1,205 +0,0 @@
|
||||
Sun Microsystems, Inc.
|
||||
Binary Code License Agreement
|
||||
|
||||
READ THE TERMS OF THIS AGREEMENT AND ANY PROVIDED
|
||||
SUPPLEMENTAL LICENSE TERMS (COLLECTIVELY "AGREEMENT")
|
||||
CAREFULLY BEFORE OPENING THE SOFTWARE MEDIA PACKAGE. BY
|
||||
OPENING THE SOFTWARE MEDIA PACKAGE, YOU AGREE TO THE TERMS
|
||||
OF THIS AGREEMENT. IF YOU ARE ACCESSING THE SOFTWARE
|
||||
ELECTRONICALLY, INDICATE YOUR ACCEPTANCE OF THESE TERMS BY
|
||||
SELECTING THE "ACCEPT" BUTTON AT THE END OF THIS
|
||||
AGREEMENT. IF YOU DO NOT AGREE TO ALL THESE TERMS,
|
||||
PROMPTLY RETURN THE UNUSED SOFTWARE TO YOUR PLACE OF
|
||||
PURCHASE FOR A REFUND OR, IF THE SOFTWARE IS ACCESSED
|
||||
ELECTRONICALLY, SELECT THE "DECLINE" BUTTON AT THE END OF
|
||||
THIS AGREEMENT.
|
||||
|
||||
1. LICENSE TO USE. Sun grants you a non-exclusive and
|
||||
non-transferable license for the internal use only of the
|
||||
accompanying software and documentation and any error
|
||||
corrections provided by Sun (collectively "Software"), by
|
||||
the number of users and the class of computer hardware for
|
||||
which the corresponding fee has been paid.
|
||||
|
||||
2. RESTRICTIONS. Software is confidential and
|
||||
copyrighted. Title to Software and all associated
|
||||
intellectual property rights is retained by Sun and/or its
|
||||
licensors. Except as specifically authorized in any
|
||||
Supplemental License Terms, you may not make copies of
|
||||
Software, other than a single copy of Software for archival
|
||||
purposes. Unless enforcement is prohibited by applicable
|
||||
law, you may not modify, decompile, or reverse engineer
|
||||
Software. You acknowledge that Software is not designed,
|
||||
licensed or intended for use in the design, construction,
|
||||
operation or maintenance of any nuclear facility. Sun
|
||||
disclaims any express or implied warranty of fitness for
|
||||
such uses. No right, title or interest in or to any
|
||||
trademark, service mark, logo or trade name of Sun or its
|
||||
licensors is granted under this Agreement.
|
||||
|
||||
3. LIMITED WARRANTY. Sun warrants to you that for a period
|
||||
of ninety (90) days from the date of purchase, as evidenced
|
||||
by a copy of the receipt, the media on which Software is
|
||||
furnished (if any) will be free of defects in materials and
|
||||
workmanship under normal use. Except for the foregoing,
|
||||
Software is provided "AS IS". Your exclusive remedy and
|
||||
Sun's entire liability under this limited warranty will be
|
||||
at Sun's option to replace Software media or refund the fee
|
||||
paid for Software.
|
||||
|
||||
4. DISCLAIMER OF WARRANTY. UNLESS SPECIFIED IN THIS
|
||||
AGREEMENT, ALL EXPRESS OR IMPLIED CONDITIONS,
|
||||
REPRESENTATIONS AND WARRANTIES, INCLUDING ANY IMPLIED
|
||||
WARRANTY OF MERCHANTABILITY, FITNESS FOR A PARTICULAR
|
||||
PURPOSE OR NON-INFRINGEMENT ARE DISCLAIMED, EXCEPT TO THE
|
||||
EXTENT THAT THESE DISCLAIMERS ARE HELD TO BE LEGALLY
|
||||
INVALID.
|
||||
|
||||
5. LIMITATION OF LIABILITY. TO THE EXTENT NOT PROHIBITED
|
||||
BY LAW, IN NO EVENT WILL SUN OR ITS LICENSORS BE LIABLE FOR
|
||||
ANY LOST REVENUE, PROFIT OR DATA, OR FOR SPECIAL, INDIRECT,
|
||||
CONSEQUENTIAL, INCIDENTAL OR PUNITIVE DAMAGES, HOWEVER
|
||||
CAUSED REGARDLESS OF THE THEORY OF LIABILITY, ARISING OUT
|
||||
OF OR RELATED TO THE USE OF OR INABILITY TO USE SOFTWARE,
|
||||
EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH
|
||||
DAMAGES. In no event will Sun's liability to you, whether
|
||||
in contract, tort (including negligence), or otherwise,
|
||||
exceed the amount paid by you for Software under this
|
||||
Agreement. The foregoing limitations will apply even if
|
||||
the above stated warranty fails of its essential purpose.
|
||||
|
||||
6. Termination. This Agreement is effective until
|
||||
terminated. You may terminate this Agreement at any time
|
||||
by destroying all copies of Software. This Agreement will
|
||||
terminate immediately without notice from Sun if you fail
|
||||
to comply with any provision of this Agreement. Upon
|
||||
Termination, you must destroy all copies of Software.
|
||||
|
||||
7. Export Regulations. All Software and technical data
|
||||
delivered under this Agreement are subject to US export
|
||||
control laws and may be subject to export or import
|
||||
regulations in other countries. You agree to comply
|
||||
strictly with all such laws and regulations and acknowledge
|
||||
that you have the responsibility to obtain such licenses to
|
||||
export, re-export, or import as may be required after
|
||||
delivery to you.
|
||||
|
||||
8. U.S. Government Restricted Rights. If Software is
|
||||
being acquired by or on behalf of the U.S. Government or by
|
||||
a U.S. Government prime contractor or subcontractor (at any
|
||||
tier), then the Government's rights in Software and
|
||||
accompanying documentation will be only as set forth in
|
||||
this Agreement; this is in accordance with 48 CFR 227.7201
|
||||
through 227.7202-4 (for Department of Defense (DOD)
|
||||
acquisitions) and with 48 CFR 2.101 and 12.212 (for non-DOD
|
||||
acquisitions).
|
||||
|
||||
9. Governing Law. Any action related to this Agreement
|
||||
will be governed by California law and controlling U.S.
|
||||
federal law. No choice of law rules of any jurisdiction
|
||||
will apply.
|
||||
|
||||
10. Severability. If any provision of this Agreement is
|
||||
held to be unenforceable, this Agreement will remain in
|
||||
effect with the provision omitted, unless omission would
|
||||
frustrate the intent of the parties, in which case this
|
||||
Agreement will immediately terminate.
|
||||
|
||||
11. Integration. This Agreement is the entire agreement
|
||||
between you and Sun relating to its subject matter. It
|
||||
supersedes all prior or contemporaneous oral or written
|
||||
communications, proposals, representations and warranties
|
||||
and prevails over any conflicting or additional terms of
|
||||
any quote, order, acknowledgment, or other communication
|
||||
between the parties relating to its subject matter during
|
||||
the term of this Agreement. No modification of this
|
||||
Agreement will be binding, unless in writing and signed by
|
||||
an authorized representative of each party.
|
||||
|
||||
Java(TM) 2, Enterprise Edition (J2EE),
|
||||
Version 1.3.x, Reference Implementation
|
||||
SUPPLEMENTAL LICENSE TERMS
|
||||
|
||||
These supplemental license terms ("Supplemental Terms") add
|
||||
to or modify the terms of the Binary Code License Agreement
|
||||
(collectively, the "Agreement"). Capitalized terms not
|
||||
defined in these Supplemental Terms shall have the same
|
||||
meanings ascribed to them in the Agreement. These
|
||||
Supplemental Terms shall supersede any inconsistent or
|
||||
conflicting terms in the Agreement, or in any license
|
||||
contained within the Software.
|
||||
|
||||
1. Software Internal Use and Development License Grant.
|
||||
Subject to the terms and conditions of this Agreement,
|
||||
including, but not limited to, Section 4 (Java Technology
|
||||
Restrictions) of these Supplemental Terms, Sun grants you a
|
||||
non-exclusive, non-transferable, limited license to
|
||||
reproduce internally and use internally the binary form of
|
||||
the Software, complete and unmodified, for the sole purpose
|
||||
of designing, developing and testing your Java applets and
|
||||
applications ("Programs"), provided that you do not
|
||||
redistribute the Software in whole or in part, either
|
||||
separately or included with any Programs.
|
||||
|
||||
2. Java Technology Restrictions. You may not modify the
|
||||
Java Platform Interface ("JPI", identified as classes
|
||||
contained within the "java" package or any subpackages of
|
||||
the "java" package), by creating additional classes within
|
||||
the JPI or otherwise causing the addition to or
|
||||
modification of the classes in the JPI. In the event that
|
||||
you create an additional class and associated API(s) which
|
||||
(i) extends the functionality of the Java Platform, and
|
||||
(ii) is exposed to third party software developers for the
|
||||
purpose of developing additional software which invokes
|
||||
such additional API, you must promptly publish broadly an
|
||||
accurate specification for such API for free use by all
|
||||
developers. You may not create, or authorize your licensees
|
||||
to create additional classes, interfaces, or subpackages
|
||||
that are in any way identified as "java", "javax", "sun" or
|
||||
similar convention as specified by Sun in any naming
|
||||
convention designation.
|
||||
|
||||
3. Verifier Restrictions. The Software contains application
|
||||
testing software components ("Verifier") for your
|
||||
convenience. However, you may not use the Sun tagline
|
||||
"J2EE(TM) Verified" or similar phrase designated by Sun to
|
||||
indicate a Program's satisfaction of the J2EE Application
|
||||
Verification Criteria ("Verification Tagline") based on the
|
||||
use of the Software or Verifier under this Agreement. To
|
||||
obtain the right to use a Verification Tagline, you must
|
||||
license the J2EE Application Verification Kit from Sun, pay
|
||||
applicable fees, and execute a separate trademark license
|
||||
for the Verification Tagline.
|
||||
|
||||
4. Java Runtime Availability. Refer to the appropriate
|
||||
version of the Java Runtime Environment binary code license
|
||||
(currently located at
|
||||
http://www.java.sun.com/jdk/index.html) for the
|
||||
availability of runtime code which may be distributed with
|
||||
Programs.
|
||||
|
||||
5. Trademarks and Logos. You acknowledge and agree as
|
||||
between you and Sun that Sun owns the SUN, SOLARIS, JAVA,
|
||||
JINI, FORTE, and iPLANET trademarks and all SUN, SOLARIS,
|
||||
JAVA, JINI, FORTE, and iPLANET-related trademarks, service
|
||||
marks, logos and other brand designations ("Sun Marks"),
|
||||
and you agree to comply with the Sun Trademark and Logo
|
||||
Usage Requirements currently located at
|
||||
http://www.sun.com/policies/trademarks. Any use you make of
|
||||
the Sun Marks inures to Sun's benefit.
|
||||
|
||||
6. Source Code. Software may contain source code that is
|
||||
provided solely for reference purposes pursuant to the
|
||||
terms of this Agreement. Source code may not be
|
||||
redistributed unless expressly provided for in this
|
||||
Agreement.
|
||||
|
||||
7. Termination for Infringement. Either party may
|
||||
terminate this Agreement immediately should any Software
|
||||
become, or in either party's opinion be likely to become,
|
||||
the subject of a claim of infringement of any intellectual
|
||||
property right.
|
||||
|
||||
For inquiries please contact: Sun Microsystems, Inc. 901
|
||||
San Antonio Road, Palo Alto, California 94303
|
||||
(LFI#109549/Form ID#011801)
|
@ -1,524 +0,0 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/mail-filter/dspam/dspam-3.8.0-r15.ebuild,v 1.9 2012/02/05 12:16:29 armin76 Exp $
|
||||
|
||||
EAPI="2"
|
||||
|
||||
inherit eutils autotools multilib
|
||||
|
||||
DESCRIPTION="A statistical-algorithmic hybrid anti-spam filter"
|
||||
HOMEPAGE="http://dspam.nuclearelephant.com/"
|
||||
SRC_URI="http://dspam.nuclearelephant.com/sources/${P}.tar.gz
|
||||
mirror://gentoo/${P}-patches-20091202.tar.gz
|
||||
http://dspam.nuclearelephant.com/sources/extras/dspam_sa_trainer.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="amd64 ~ppc x86"
|
||||
IUSE="clamav daemon ldap mysql postgres sqlite syslog \
|
||||
large-domain virtual-users user-homedirs \
|
||||
debug debug-bnr debug-verbose"
|
||||
|
||||
COMMON_DEPEND="clamav? ( >=app-antivirus/clamav-0.90.2 )
|
||||
ldap? ( >=net-nds/openldap-2.2 )
|
||||
mysql? ( virtual/mysql )
|
||||
sqlite? ( =dev-db/sqlite-3* )"
|
||||
DEPEND="${COMMON_DEPEND}
|
||||
postgres? ( >=dev-db/postgresql-base-8 )"
|
||||
RDEPEND="${COMMON_DEPEND}
|
||||
postgres? ( || ( dev-python/psycopg >=dev-db/postgresql-server-8 ) )
|
||||
sys-process/cronbase
|
||||
virtual/logger"
|
||||
|
||||
# some FHS-like structure
|
||||
DSPAM_HOMEDIR="/var/spool/dspam"
|
||||
DSPAM_CONFDIR="/etc/mail/dspam"
|
||||
DSPAM_LOGDIR="/var/log/dspam"
|
||||
DSPAM_MODE=2511
|
||||
|
||||
pkg_setup() {
|
||||
# Delete these lines some time after -r6 removal
|
||||
if has_version "<=mail-filter/dspam-3.8.0-r6" &&
|
||||
built_with_use "<=mail-filter/dspam-3.8.0-r6" sqlite &&
|
||||
grep -q "^StorageDriver.*libsqlite_drv.so" "${ROOT}${DSPAM_CONFDIR}"/dspam.conf; then
|
||||
eerror "Sqlite2 support has been removed. Please upgrade your database to sqlite3"
|
||||
eerror "and select libsqlite3_drv.so in dspam.conf before proceeding with update."
|
||||
die "sqlite-2 no longer supported"
|
||||
fi
|
||||
|
||||
local egid euid
|
||||
# Need a UID and GID >= 1000, for being able to use suexec in apache
|
||||
for euid in $(seq 1000 5000 ) ; do
|
||||
[[ -z $(egetent passwd ${euid}) ]] && break
|
||||
done
|
||||
for egid in $(seq 1000 5000 ) ; do
|
||||
[[ -z $(egetent group ${egid}) ]] && break
|
||||
done
|
||||
|
||||
enewgroup dspam ${egid}
|
||||
enewuser dspam ${euid} -1 "${DSPAM_HOMEDIR}" dspam,mail
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
EPATCH_SUFFIX="patch"
|
||||
epatch "${WORKDIR}"/patches
|
||||
|
||||
AT_M4DIR="${S}/m4"
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf=""
|
||||
|
||||
if use mysql || use postgres; then
|
||||
myconf="${myconf} $(use_enable virtual-users) --enable-preferences-extension"
|
||||
if use virtual-users; then
|
||||
myconf="${myconf} --disable-homedir"
|
||||
use user-homedirs && ewarn "user-homedirs support has been disabled (not compatible with --enable-virtual-users)"
|
||||
else
|
||||
myconf="${myconf} $(use_enable user-homedirs homedir)"
|
||||
fi
|
||||
else
|
||||
myconf="${myconf} --disable-virtual-users --disable-preferences-extension \
|
||||
$(use_enable user-homedirs homedir)"
|
||||
use virtual-users && ewarn "virtual-users support has been disabled (available only for mysql and postgres storage drivers)"
|
||||
fi
|
||||
|
||||
if ! use syslog; then
|
||||
myconf="${myconf} --with-logfile=${DSPAM_LOGDIR}/dspam.log"
|
||||
fi
|
||||
|
||||
local STORAGE="hash_drv"
|
||||
# select storage driver
|
||||
if use sqlite ; then
|
||||
STORAGE="${STORAGE},sqlite3_drv"
|
||||
fi
|
||||
if use mysql; then
|
||||
STORAGE="${STORAGE},mysql_drv"
|
||||
myconf="${myconf} --with-mysql-includes=/usr/include/mysql"
|
||||
myconf="${myconf} --with-mysql-libraries=/usr/$(get_libdir)/mysql"
|
||||
fi
|
||||
if use postgres ; then
|
||||
STORAGE="${STORAGE},pgsql_drv"
|
||||
myconf="${myconf} --with-pgsql-includes=/usr/include/postgresql"
|
||||
myconf="${myconf} --with-pgsql-libraries=/usr/$(get_libdir)"
|
||||
fi
|
||||
|
||||
econf --with-storage-driver=${STORAGE} \
|
||||
--with-dspam-home="${DSPAM_HOMEDIR}" \
|
||||
--sysconfdir="${DSPAM_CONFDIR}" \
|
||||
$(use_enable daemon) \
|
||||
$(use_enable ldap) \
|
||||
$(use_enable clamav) \
|
||||
$(use_enable large-domain large-scale) \
|
||||
$(use_enable !large-domain domain-scale) \
|
||||
$(use_enable syslog) \
|
||||
$(use_enable debug) \
|
||||
$(use_enable debug-bnr bnr-debug) \
|
||||
$(use_enable debug-verbose verbose-debug) \
|
||||
--enable-long-usernames \
|
||||
--with-dspam-group=dspam \
|
||||
--with-dspam-home-group=dspam \
|
||||
--with-dspam-mode=${DSPAM_MODE} \
|
||||
--with-logdir="${DSPAM_LOGDIR}" \
|
||||
${myconf} || die "econf failed"
|
||||
}
|
||||
|
||||
src_install () {
|
||||
diropts -m0770 -o dspam -g dspam
|
||||
dodir "${DSPAM_CONFDIR}"
|
||||
insinto "${DSPAM_CONFDIR}"
|
||||
insopts -m640 -o dspam -g dspam
|
||||
dosym /etc/mail/dspam /etc/dspam
|
||||
|
||||
# make install
|
||||
emake DESTDIR="${D}" install || die "emake install failed"
|
||||
|
||||
# necessary for dovecot-dspam
|
||||
insopts -m644
|
||||
insinto /usr/include/dspam && doins src/pref.h
|
||||
|
||||
diropts -m0755 -o dspam -g dspam
|
||||
dodir /var/run/dspam
|
||||
|
||||
# create logdir (used only when syslog support has been disabled or build with --enable-debug)
|
||||
if ! use syslog || use debug ; then
|
||||
diropts -m0770 -o dspam -g dspam
|
||||
dodir "${DSPAM_LOGDIR}"
|
||||
diropts -m0755
|
||||
insinto /etc/logrotate.d
|
||||
newins "${FILESDIR}/logrotate.dspam" dspam || die "failed to install logrotate.d file"
|
||||
fi
|
||||
|
||||
if use daemon; then
|
||||
# We use sockets for the daemon instead of tcp port 24
|
||||
sed -e 's:^#*\(ServerDomainSocketPath[\t ]\{1,\}\).*:\1\"/var/run/dspam/dspam.sock\":gI' \
|
||||
-e 's:^#*\(ServerPID[\t ]\{1,\}\).*:\1/var/run/dspam/dspam.pid:gI' \
|
||||
-e 's:^#*\(ClientHost[\t ]\{1,\}\)/.*:\1\"/var/run/dspam/dspam.sock\":gI' \
|
||||
-i "${D}/${DSPAM_CONFDIR}/dspam.conf"
|
||||
|
||||
newinitd "${FILESDIR}/dspam.rc" dspam || die "failed to install init script"
|
||||
|
||||
fowners root:dspam /usr/bin/dspamc &&
|
||||
fperms u=rx,g=xs,o=x /usr/bin/dspamc ||
|
||||
die "failed to alter dspamc owner:group or mode"
|
||||
fi
|
||||
|
||||
# database related configuration and scripts
|
||||
local PASSWORD="${RANDOM}${RANDOM}${RANDOM}${RANDOM}" DSPAM_DB_DATA=()
|
||||
if use sqlite; then
|
||||
insinto "${DSPAM_CONFDIR}"
|
||||
newins src/tools.sqlite_drv/purge-3.sql sqlite3_purge.sql || die "failed to install sqlite3_purge.sql script"
|
||||
fi
|
||||
if use mysql; then
|
||||
DSPAM_DB_DATA[0]="/var/run/mysqld/mysqld.sock"
|
||||
DSPAM_DB_DATA[1]=""
|
||||
DSPAM_DB_DATA[2]="dspam"
|
||||
DSPAM_DB_DATA[3]="${PASSWORD}"
|
||||
DSPAM_DB_DATA[4]="dspam"
|
||||
DSPAM_DB_DATA[5]="false"
|
||||
|
||||
# Activate mysql database configuration
|
||||
sed -e "s:^#*\(MySQLServer[\t ]\{1,\}\).*:\1${DSPAM_DB_DATA[0]}:gI" \
|
||||
-e "s:^#*\(MySQLPort[\t ]\{1,\}\).*:\1${DSPAM_DB_DATA[1]}:gI" \
|
||||
-e "s:^#*\(MySQLUser[\t ]\{1,\}\).*:\1${DSPAM_DB_DATA[2]}:gI" \
|
||||
-e "s:^#*\(MySQLPass[\t ]\{1,\}\).*:\1${DSPAM_DB_DATA[3]}:gI" \
|
||||
-e "s:^#*\(MySQLDb[\t ]\{1,\}\).*:\1${DSPAM_DB_DATA[4]}:gI" \
|
||||
-e "s:^#*\(MySQLCompress[\t ]\{1,\}\).*:\1${DSPAM_DB_DATA[5]}:gI" \
|
||||
-i "${D}/${DSPAM_CONFDIR}/dspam.conf"
|
||||
|
||||
insinto "${DSPAM_CONFDIR}"
|
||||
newins src/tools.mysql_drv/mysql_objects-space.sql mysql_objects-space.sql &&
|
||||
newins src/tools.mysql_drv/mysql_objects-speed.sql mysql_objects-speed.sql &&
|
||||
newins src/tools.mysql_drv/mysql_objects-4.1.sql mysql_objects-4.1.sql &&
|
||||
newins src/tools.mysql_drv/purge.sql mysql_purge.sql &&
|
||||
newins src/tools.mysql_drv/purge-4.1.sql mysql_purge-4.1.sql ||
|
||||
die "failed to install mysql*.sql scripts"
|
||||
if use virtual-users ; then
|
||||
newins src/tools.mysql_drv/virtual_users.sql mysql_virtual_users.sql &&
|
||||
newins src/tools.mysql_drv/virtual_user_aliases.sql mysql_virtual_user_aliases.sql ||
|
||||
die "failed to install mysql_virtual_user*.sql scripts"
|
||||
fi
|
||||
fi
|
||||
if use postgres ; then
|
||||
DSPAM_DB_DATA[0]="127.0.0.1"
|
||||
DSPAM_DB_DATA[1]="5432"
|
||||
DSPAM_DB_DATA[2]="dspam"
|
||||
DSPAM_DB_DATA[3]="${PASSWORD}"
|
||||
DSPAM_DB_DATA[4]="dspam"
|
||||
|
||||
# Activate pgsql database configuration
|
||||
sed -e "s:^#*\(PgSQLServer[\t ]\{1,\}\).*:\1${DSPAM_DB_DATA[0]}:gI" \
|
||||
-e "s:^#*\(PgSQLPort[\t ]\{1,\}\).*:\1${DSPAM_DB_DATA[1]}:gI" \
|
||||
-e "s:^#*\(PgSQLUser[\t ]\{1,\}\).*:\1${DSPAM_DB_DATA[2]}:gI" \
|
||||
-e "s:^#*\(PgSQLPass[\t ]\{1,\}\).*:\1${DSPAM_DB_DATA[3]}:gI" \
|
||||
-e "s:^#*\(PgSQLDb[\t ]\{1,\}\).*:\1${DSPAM_DB_DATA[4]}:gI" \
|
||||
-e "s:^#*\(PgSQLConnectionCache[\t ]*.\):\1:gI" \
|
||||
-i "${D}/${DSPAM_CONFDIR}"/dspam.conf
|
||||
|
||||
insinto "${DSPAM_CONFDIR}"
|
||||
newins src/tools.pgsql_drv/pgsql_objects.sql pgsql_objects.sql &&
|
||||
newins src/tools.pgsql_drv/purge.sql pgsql_purge.sql ||
|
||||
die "failed to install pgsql*.sql scripts"
|
||||
if use virtual-users ; then
|
||||
newins src/tools.pgsql_drv/virtual_users.sql pgsql_virtual_users.sql ||
|
||||
die "failed to install pgsql_virtual_users.sql scripts"
|
||||
fi
|
||||
|
||||
# Install psycopg scripts needed when postgresql is not installed
|
||||
exeinto "${DSPAM_CONFDIR}"
|
||||
doexe "${FILESDIR}"/pgsql_{createdb,purge}.py || die "failed to install psycopg scripts"
|
||||
fi
|
||||
|
||||
# Set default storage
|
||||
local DEFAULT_STORAGE
|
||||
if use sqlite ; then
|
||||
DEFAULT_STORAGE=sqlite3
|
||||
elif use mysql ; then
|
||||
DEFAULT_STORAGE=mysql
|
||||
elif use postgres ; then
|
||||
DEFAULT_STORAGE=pgsql
|
||||
fi
|
||||
if [[ -z "${DEFAULT_STORAGE}" ]]; then
|
||||
# When only one storage driver is compiled, it is linked statically with dspam
|
||||
# thus you should not set the StorageDriver at all
|
||||
# Also, hash_drv requires certain tokenizer and PValue (see bug #185718)
|
||||
sed -e "s:^\(StorageDriver[\t ].*\)$:#\1:" \
|
||||
-e "s:^Tokenizer .*$:Tokenizer sbph:" \
|
||||
-e "/^#PValue/d" \
|
||||
-e "s:^PValue .*$:PValue markov:" \
|
||||
-i "${D}/${DSPAM_CONFDIR}"/dspam.conf
|
||||
else
|
||||
# Set the storage driver and use purge configuration for SQL-based installations
|
||||
sed -e "s:^\(Purge.*\):###\1:g" \
|
||||
-e "s:^#\(Purge.*\):\1:g" \
|
||||
-e "s:^###\(Purge.*\):#\1:g" \
|
||||
-e "s:^\(StorageDriver[\t ].*\)libhash_drv.so:\1lib${DEFAULT_STORAGE}_drv.so:" \
|
||||
-i "${D}/${DSPAM_CONFDIR}"/dspam.conf
|
||||
fi
|
||||
|
||||
# installs the notification messages
|
||||
# -> The documentation is wrong! The files need to be in ./txt
|
||||
echo "Scanned and tagged as SPAM with DSPAM ${PV} by Your ISP.com">"${T}"/msgtag.spam
|
||||
echo "Scanned and tagged as non-SPAM with DSPAM ${PV} by Your ISP.com">"${T}"/msgtag.nonspam
|
||||
insinto "${DSPAM_CONFDIR}"/txt
|
||||
doins "${S}"/txt/*.txt
|
||||
doins "${T}"/msgtag.*
|
||||
|
||||
# Create the opt-in / opt-out directories
|
||||
diropts -m0770 -o dspam -g dspam
|
||||
dodir "${DSPAM_HOMEDIR}"
|
||||
keepdir "${DSPAM_HOMEDIR}"/opt-in
|
||||
keepdir "${DSPAM_HOMEDIR}"/opt-out
|
||||
diropts -m0755
|
||||
|
||||
# dspam cron job
|
||||
exeinto /etc/cron.daily
|
||||
newexe "${FILESDIR}/dspam.cron-r3" dspam.cron || die "failed to install cron script"
|
||||
|
||||
# documentation
|
||||
dodoc CHANGELOG README* RELEASE.NOTES UPGRADING
|
||||
docinto doc
|
||||
dodoc doc/*.txt
|
||||
docinto gentoo
|
||||
dodoc "${FILESDIR}"/README.{postfix,qmail}
|
||||
docinto sa_train
|
||||
dodoc "${WORKDIR}"/dspam_sa_trainer/*
|
||||
doman man/dspam*
|
||||
}
|
||||
|
||||
pkg_preinst() {
|
||||
# Delete these lines some time after -r6 removal
|
||||
if has_version "<=mail-filter/dspam-3.8.0-r6" ; then
|
||||
# Remove obsolete *.data files
|
||||
local f
|
||||
for f in "${ROOT}${DSPAM_CONFDIR}"/{mysql,pgsql}.data ; do
|
||||
f=${f/\/\//\/}
|
||||
if [[ -f "${f}" ]]; then
|
||||
rm "${f}" &&
|
||||
elog "Obsolete ${f} has been removed" ||
|
||||
eerror "Failed to remove ${f}"
|
||||
fi
|
||||
done
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
ewarn "The hash_drv storage backend has the following requirements:"
|
||||
ewarn " - PValue must be set to 'markov'; Do not use this pvalue with any other storage backend!"
|
||||
ewarn " - Tokenizer must be either 'sbph' or 'osb'"
|
||||
ewarn "See markov.txt for more info."
|
||||
|
||||
if use mysql || use postgres; then
|
||||
elog
|
||||
elog "To setup DSPAM to run out-of-the-box on your system with a MySQL"
|
||||
elog "or PostgreSQL database, run:"
|
||||
elog "emerge --config =${PF}"
|
||||
fi
|
||||
|
||||
if use daemon; then
|
||||
elog
|
||||
elog "If you want to run DSPAM in the new daemon mode remember"
|
||||
elog "to make the DSPAM daemon start during boot:"
|
||||
elog " rc-update add dspam default"
|
||||
elog
|
||||
elog "To use the DSPAM daemon mode, the used storage driver must be thread-safe."
|
||||
fi
|
||||
|
||||
elog
|
||||
elog "See http://dspamwiki.expass.de/Installation for more info"
|
||||
}
|
||||
|
||||
# Edits interactively one or more parameters from "${ROOT}${DSPAM_CONFDIR}/dspam.conf"
|
||||
# Usage: edit_dspam_params param_name1 [param_name2 ..]
|
||||
edit_dspam_params() {
|
||||
local PARAMETER OLD_VALUE VALUE
|
||||
for PARAMETER in $@ ; do
|
||||
OLD_VALUE=$(awk "BEGIN { IGNORECASE=1; } \$1==\"${PARAMETER}\" { print \$2; exit; }" "${ROOT}${DSPAM_CONFDIR}/dspam.conf")
|
||||
[[ $? == 0 ]] || return 1
|
||||
if [[ "${PARAMETER}" == *"Pass" ]]; then
|
||||
read -r -p "${PARAMETER} (default ${OLD_VALUE:-none}; enter random for generating a new random password): " VALUE
|
||||
[[ "${VALUE}" == "random" ]] && VALUE="${RANDOM}${RANDOM}${RANDOM}${RANDOM}"
|
||||
else
|
||||
read -r -p "${PARAMETER} (default ${OLD_VALUE:-none}): " VALUE
|
||||
fi
|
||||
|
||||
if [[ -z "${VALUE}" ]] ; then
|
||||
VALUE=${OLD_VALUE}
|
||||
else
|
||||
sed -e "s:^#*${PARAMETER}\([\t ].*\)\?\$:${PARAMETER} ${VALUE}:gI" \
|
||||
-i "${ROOT}${DSPAM_CONFDIR}/dspam.conf"
|
||||
[[ $? == 0 ]] || return 2
|
||||
fi
|
||||
eval $PARAMETER=\"${VALUE}\"
|
||||
done
|
||||
return 0
|
||||
}
|
||||
|
||||
# Selects the storage driver in "${ROOT}${DSPAM_CONFDIR}/dspam.conf"
|
||||
# usage: set_storage_driver { hash | sqlite3 | mysql | pgsql }
|
||||
set_storage_driver() {
|
||||
sed -e "s:^[#\t ]*\(StorageDriver[\t ].*\)lib[a-z1-9]\+_drv.so:\1lib${1}_drv.so:" \
|
||||
-i "${ROOT}${DSPAM_CONFDIR}"/dspam.conf &&
|
||||
einfo "Storage driver lib${1}_drv.so has been selected"
|
||||
}
|
||||
|
||||
pkg_config () {
|
||||
local AVAIL_BACKENDS=( hash )
|
||||
use sqlite && AVAIL_BACKENDS=( ${AVAIL_BACKENDS[*]} sqlite )
|
||||
use mysql && AVAIL_BACKENDS=( ${AVAIL_BACKENDS[*]} mysql )
|
||||
use postgres && AVAIL_BACKENDS=( ${AVAIL_BACKENDS[*]} postgres )
|
||||
local USE_BACKEND
|
||||
read -p "Which backend do you want to configure? (available backends are ${AVAIL_BACKENDS[*]}): " USE_BACKEND
|
||||
if [[ " ${AVAIL_BACKENDS[*]} " != *" ${USE_BACKEND} "* ]]; then
|
||||
eerror "The '${USE_BACKEND}' backend is not available."
|
||||
return 1
|
||||
fi
|
||||
|
||||
case "${USE_BACKEND}" in
|
||||
|
||||
hash)
|
||||
einfo "hash driver will automatically create the necessary databases"
|
||||
set_storage_driver hash
|
||||
;;
|
||||
|
||||
sqlite)
|
||||
einfo "sqlite driver will automatically create the necessary databases"
|
||||
set_storage_driver sqlite3
|
||||
;;
|
||||
|
||||
mysql)
|
||||
local MySQLServer MySQLPort MySQLUser MySQLPass MySQLDb MySQLCompress
|
||||
edit_dspam_params MySQLServer MySQLPort MySQLUser MySQLPass MySQLDb MySQLCompress || return $?
|
||||
if [[ -z "${MySQLServer}" || -z "${MySQLUser}" || -z "${MySQLPass}" || -z "${MySQLDb}" ]]; then
|
||||
eerror "Following parameters are required: MySQLServer MySQLUser MySQLPass MySQLDb"
|
||||
return 1
|
||||
fi
|
||||
|
||||
local MySQL_DB_Type MySQL_Virtuser_Type
|
||||
einfo " Please select what kind of database you like to create:"
|
||||
einfo " [0] Don't create the database, I will do it myself"
|
||||
einfo " [1] Database will be hosted on a mysql-4.1 server or above"
|
||||
einfo " [2] Space optimized database on a mysql-4.0 server or below"
|
||||
einfo " [3] Speed optimized database on a mysql-4.0 server or below"
|
||||
einfo
|
||||
while read -n 1 -s -p " Press 0, 1, 2 or 3 on the keyboard to select database " MySQL_DB_Type; do
|
||||
if [[ "${MySQL_DB_Type}" == "0" ]] ; then
|
||||
echo
|
||||
set_storage_driver mysql
|
||||
return 0
|
||||
fi
|
||||
[[ "${MySQL_DB_Type}" == "1" || "${MySQL_DB_Type}" == "2" || "${MySQL_DB_Type}" == "3" ]] && echo && break
|
||||
done
|
||||
if use virtual-users ; then
|
||||
einfo " Please select what kind of virtual_uids table you like to use:"
|
||||
einfo " [1] Virtual users added automatically (use it if this server is the primary MX)"
|
||||
einfo " [2] Virtual users added manually (use it if this server is a secondary MX)"
|
||||
einfo
|
||||
while read -n 1 -s -p " Press 1 or 2 on the keyboard to select table type " MySQL_Virtuser_Type; do
|
||||
[[ "${MySQL_Virtuser_Type}" == "1" || "${MySQL_Virtuser_Type}" == "2" ]] && echo && break
|
||||
done
|
||||
fi
|
||||
|
||||
local MYSQL_ROOT_USER
|
||||
read -r -p "Your administrative MySQL account (default root): " MYSQL_ROOT_USER
|
||||
if [[ -z "${MYSQL_ROOT_USER}" ]]; then
|
||||
MYSQL_ROOT_USER="root"
|
||||
fi
|
||||
einfo "When prompted for a password, please enter your MySQL ${MYSQL_ROOT_USER} password"
|
||||
|
||||
local MYSQL_CMD_LINE="/usr/bin/mysql -u ${MYSQL_ROOT_USER} -p"
|
||||
[[ "${MySQLServer}" != "/"* ]] && MYSQL_CMD_LINE="${MYSQL_CMD_LINE} -h ${MySQLServer}"
|
||||
[[ -n "${MySQLPort}" ]] && MYSQL_CMD_LINE="${MYSQL_CMD_LINE} -P ${MySQLPort}"
|
||||
{
|
||||
echo "CREATE DATABASE ${MySQLDb};"
|
||||
echo "USE ${MySQLDb};"
|
||||
case ${MySQL_DB_Type} in
|
||||
1) cat "${ROOT}${DSPAM_CONFDIR}"/mysql_objects-4.1.sql ;;
|
||||
2) cat "${ROOT}${DSPAM_CONFDIR}"/mysql_objects-space.sql ;;
|
||||
3) cat "${ROOT}${DSPAM_CONFDIR}"/mysql_objects-speed.sql ;;
|
||||
esac
|
||||
if use virtual-users ; then
|
||||
case ${MySQL_Virtuser_Type} in
|
||||
1) cat "${ROOT}${DSPAM_CONFDIR}"/mysql_virtual_users.sql ;;
|
||||
2) cat "${ROOT}${DSPAM_CONFDIR}"/mysql_virtual_user_aliases.sql ;;
|
||||
esac
|
||||
fi
|
||||
echo "GRANT SELECT,INSERT,UPDATE,DELETE ON ${MySQLDb}.* TO '${MySQLUser}'@'%' IDENTIFIED BY '${MySQLPass}';"
|
||||
echo "FLUSH PRIVILEGES;"
|
||||
} | ${MYSQL_CMD_LINE}
|
||||
[[ ${PIPESTATUS[1]} == 0 ]] || return ${PIPESTATUS[1]}
|
||||
|
||||
einfo "MySQL database created successfully"
|
||||
set_storage_driver mysql
|
||||
;;
|
||||
|
||||
postgres)
|
||||
local PgSQLServer PgSQLPort PgSQLUser PgSQLPass PgSQLDb
|
||||
edit_dspam_params PgSQLServer PgSQLPort PgSQLUser PgSQLPass PgSQLDb || return $?
|
||||
if [[ -z "${PgSQLServer}" || -z "${PgSQLUser}" || -z "${PgSQLPass}" || -z "${PgSQLDb}" ]]; then
|
||||
eerror "Following parameters are required: PgSQLServer PgSQLUser PgSQLPass PgSQLDb"
|
||||
return 1
|
||||
fi
|
||||
|
||||
local PgSQL_DB_Create
|
||||
einfo " Do you want PgSQL database be automatically created for you?"
|
||||
while read -n 1 -s -p " Press y or n " PgSQL_DB_Create; do
|
||||
if [[ "${PgSQL_DB_Create}" == "n" || "${PgSQL_DB_Create}" == "N" ]] ; then
|
||||
echo
|
||||
set_storage_driver pgsql
|
||||
return 0
|
||||
fi
|
||||
[[ "${PgSQL_DB_Create}" == "y" || "${PgSQL_DB_Create}" == "Y" ]] && echo && break
|
||||
done
|
||||
|
||||
local PGSQL_ROOT_USER
|
||||
read -r -p "Your administrative PgSQL account (default postgres): " PGSQL_ROOT_USER
|
||||
if [[ -z "${PGSQL_ROOT_USER}" ]]; then
|
||||
PGSQL_ROOT_USER="postgres"
|
||||
fi
|
||||
einfo "When prompted for a password, please enter your PgSQL ${PGSQL_ROOT_USER} password"
|
||||
|
||||
if [[ -x /usr/bin/psql ]]; then
|
||||
# Create database using psql
|
||||
local PGSQL_CMD_LINE="/usr/bin/psql -h ${PgSQLServer}"
|
||||
[[ -n "${PgSQLPort}" ]] && PGSQL_CMD_LINE="${PGSQL_CMD_LINE} -p ${PgSQLPort}"
|
||||
|
||||
{
|
||||
echo "\\set ON_ERROR_STOP = on;"
|
||||
echo "CREATE USER ${PgSQLUser} WITH PASSWORD '${PgSQLPass}' NOCREATEDB NOCREATEUSER;"
|
||||
echo "CREATE DATABASE ${PgSQLDb};"
|
||||
echo "GRANT ALL PRIVILEGES ON DATABASE ${PgSQLDb} TO ${PgSQLUser};"
|
||||
echo "GRANT ALL PRIVILEGES ON SCHEMA public TO ${PgSQLUser};"
|
||||
echo "UPDATE pg_database SET datdba=(SELECT usesysid FROM pg_shadow WHERE usename='${PgSQLUser}') WHERE datname='${PgSQLDb}';"
|
||||
echo "\\c ${PgSQLDb};"
|
||||
echo "CREATE FUNCTION plpgsql_call_handler() RETURNS language_handler AS '\$libdir/plpgsql', 'plpgsql_call_handler' LANGUAGE c;"
|
||||
echo "CREATE FUNCTION plpgsql_validator(oid) RETURNS void AS '\$libdir/plpgsql', 'plpgsql_validator' LANGUAGE c;"
|
||||
echo "CREATE TRUSTED PROCEDURAL LANGUAGE plpgsql HANDLER plpgsql_call_handler VALIDATOR plpgsql_validator;"
|
||||
} | ${PGSQL_CMD_LINE} -d template1 -U ${PGSQL_ROOT_USER}
|
||||
[[ ${PIPESTATUS[1]} == 0 ]] || return ${PIPESTATUS[1]}
|
||||
|
||||
{
|
||||
echo "\\set ON_ERROR_STOP = on;"
|
||||
cat "${ROOT}${DSPAM_CONFDIR}"/pgsql_objects.sql
|
||||
use virtual-users && cat "${ROOT}${DSPAM_CONFDIR}"/pgsql_virtual_users.sql
|
||||
} | PGUSER="${PgSQLUser}" PGPASSWORD="${PgSQLPass}" ${PGSQL_CMD_LINE} -d "${PgSQLDb}" -U ${PgSQLUser}
|
||||
[[ ${PIPESTATUS[1]} == 0 ]] || return ${PIPESTATUS[1]}
|
||||
else
|
||||
# Create database using psycopg script
|
||||
if use virtual-users ; then
|
||||
DSPAM_PgSQLPass="${PgSQLPass}" "${ROOT}${DSPAM_CONFDIR}"/pgsql_createdb.py "${PgSQLServer}" "${PgSQLPort}" "${PGSQL_ROOT_USER}" \
|
||||
"${PgSQLUser}" "${PgSQLDb}" "${ROOT}${DSPAM_CONFDIR}"/pgsql_objects.sql "${ROOT}${DSPAM_CONFDIR}"/pgsql_virtual_users.sql
|
||||
else
|
||||
DSPAM_PgSQLPass="${PgSQLPass}" "${ROOT}${DSPAM_CONFDIR}"/pgsql_createdb.py "${PgSQLServer}" "${PgSQLPort}" "${PGSQL_ROOT_USER}" \
|
||||
"${PgSQLUser}" "${PgSQLDb}" "${ROOT}${DSPAM_CONFDIR}"/pgsql_objects.sql
|
||||
fi
|
||||
[[ $? == 0 ]] || return $?
|
||||
fi
|
||||
|
||||
einfo "PgSQL database created successfully"
|
||||
set_storage_driver pgsql
|
||||
;;
|
||||
|
||||
esac
|
||||
}
|
@ -1,7 +0,0 @@
|
||||
Postfix will deliver to mailbox_transport as user 'nobody'.
|
||||
This is set by the option 'default_privs'.
|
||||
|
||||
Postfix is installed setuid root setgid dspam.
|
||||
Add 'nobody' to /etc/mail/dspam/trusted.users
|
||||
|
||||
mailbox_transport = /usr/bin/dspam --user %u --deliver=innocent --mode=teft --feature=chained,noise,whitelist
|
@ -1,69 +0,0 @@
|
||||
DSPAM for Gentoo qmail
|
||||
Author - $Author: st_lim $
|
||||
Version - $Id: README.qmail,v 1.1 2004/06/26 16:45:28 st_lim Exp $
|
||||
|
||||
These are some steps I took to use dspam with qmail. If you have a better
|
||||
method of using qmail with DSPAM, do send a message to me at
|
||||
<st_lim@gentoo.org> to share your ideas.
|
||||
|
||||
My set up includes:
|
||||
a. qmail
|
||||
b. qmail-scanner
|
||||
c. Mail-SpamAssassin
|
||||
d. f-prot (I'm not using it at the moment, coz mails do get stuck in the queue
|
||||
when I use f-prot)
|
||||
e. dspam (of course)
|
||||
|
||||
For setting up spamassassin, I think I shall not go into details with it. I
|
||||
think an excellent tutorial can be found at
|
||||
http://cmisip.home.insightbb.com/Qmail.htm.
|
||||
|
||||
So once you have spamassassin set up, you will want to use dspam without
|
||||
procmail. And since you have .qmail, here is what you do:
|
||||
|
||||
1. add your user and qmailq to /etc/mail/dspam/trusted.users
|
||||
$ cat /etc/mail/dspam/trusted.users
|
||||
apache
|
||||
nobody
|
||||
root
|
||||
qmailq
|
||||
alias
|
||||
st_lim
|
||||
spteo
|
||||
|
||||
2. type the following into your /home/<user>/.qmail file
|
||||
|
||||
| /usr/bin/dspam --user <user> --deliver=innocent --mode=teft --feature=chained,noise,whitelist
|
||||
[your normal delivery options]
|
||||
|
||||
3. When you get spam, you have either of 2 options:
|
||||
a. Run the dspam command on the mail via your email client:
|
||||
|
||||
==========================================================================================
|
||||
/usr/bin/dspam --user <user> --mode=teft --class=spam --source=error < [spam-mail]
|
||||
==========================================================================================
|
||||
|
||||
b. Or run the dspam command on a set of emails in a directory via a cron job,
|
||||
my suggested script is below:
|
||||
|
||||
==========================================================================================
|
||||
#!/bin/sh
|
||||
JUNK_DIR=/home/<user>/Maildir/Junk
|
||||
JUNK_MAILS=$JUNK_DIR/cur/[0-9]*
|
||||
|
||||
QMAIL_SPAMASSASSIN=/var/qmail/.spamassassin
|
||||
|
||||
sa-learn --spam $JUNK_MAILS
|
||||
for i in $JUNK_MAILS; do
|
||||
cat $i | /usr/bin/dspam --user qmailq --mode=teft --class=spam --source=error
|
||||
done
|
||||
cp $ROOT_SPAMASSASSIN/bayes* $QMAIL_SPAMASSASSIN
|
||||
chown -R qmailq:qmail $QMAIL_SPAMASSASSIN
|
||||
rm -rf $JUNK_MAILS
|
||||
==========================================================================================
|
||||
|
||||
If you have any problems with the abovementioned setup, pls share it via
|
||||
bugs.gentoo.org. I'll try to help you resolve the issues.
|
||||
|
||||
Regards
|
||||
Lim Swee Tat
|
@ -1,362 +0,0 @@
|
||||
#!/bin/sh
|
||||
# Copyright 1999-2007 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
#
|
||||
# Remove old signatures and unimportant tokens from the DSPAM database.
|
||||
# Purge old log entries in user logs.
|
||||
#
|
||||
|
||||
#
|
||||
# Parse optional command line parameters
|
||||
#
|
||||
for foo in $@
|
||||
do
|
||||
case "${foo}" in
|
||||
--logdays=*) LOGROTATE_AGE="${foo#--logdays=}";;
|
||||
--sigdays=*) SIGNATURE_AGE="${foo#--sigdays=}";;
|
||||
--without-sql-purge) USE_SQL_PURGE=false;;
|
||||
*)
|
||||
echo "usage: $0 [--logdays=no_of_days] [--sigdays=no_of_days] [--without-sql-purge]"
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
#
|
||||
# Parameters
|
||||
#
|
||||
[ -z "${LOGROTATE_AGE}" ] && LOGROTATE_AGE=30 # Delete log entries older than $LOGROTATE_AGE days
|
||||
[ -z "${SIGNATURE_AGE}" ] && SIGNATURE_AGE=30 # Delete signatures older than $SIGNATURE_AGE days
|
||||
[ -z "${USE_SQL_PURGE}" ] && USE_SQL_PURGE=true # Run sql purge scripts
|
||||
|
||||
#
|
||||
# Function to run dspam_clean
|
||||
#
|
||||
run_dspam_clean() {
|
||||
if [ ! -e "/usr/bin/dspam_clean" ]
|
||||
then
|
||||
echo "Can not run DSPAM clean application:"
|
||||
echo " /usr/bin/dspam_clean does not exist"
|
||||
return 1
|
||||
else
|
||||
/usr/bin/dspam_clean -s${SIGNATURE_AGE} -p${SIGNATURE_AGE} -u${SIGNATURE_AGE},${SIGNATURE_AGE},${SIGNATURE_AGE},${SIGNATURE_AGE} >/dev/null 2>&1
|
||||
return $?
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# Function to check if we have all needed tools
|
||||
#
|
||||
check_for_tools() {
|
||||
local myrc=0
|
||||
for foo in awk cut sed
|
||||
do
|
||||
if ! which ${foo} >/dev/null 2>&1
|
||||
then
|
||||
echo "Command ${foo} not found!"
|
||||
myrc=1
|
||||
fi
|
||||
done
|
||||
return ${myrc}
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# Function to read dspam.conf parameters
|
||||
#
|
||||
read_dspam_params() {
|
||||
local PARAMETER VALUE
|
||||
for PARAMETER in $@ ; do
|
||||
VALUE=$(awk "BEGIN { IGNORECASE=1; } \$1==\"${PARAMETER}\" { print \$2; exit; }" "${DSPAM_CONFIGDIR}/dspam.conf")
|
||||
[[ $? == 0 ]] || return 1
|
||||
eval ${PARAMETER}=\"${VALUE}\"
|
||||
done
|
||||
return 0
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# Function to clean DSPAM MySQL data
|
||||
#
|
||||
clean_mysql_drv() {
|
||||
#
|
||||
# MySQL
|
||||
#
|
||||
if ${USE_SQL_PURGE} && \
|
||||
read_dspam_params MySQLServer MySQLPort MySQLUser MySQLPass MySQLDb MySQLCompress && \
|
||||
[ -n "${MySQLServer}" -a -n "${MySQLUser}" -a -n "${MySQLDb}" ]
|
||||
then
|
||||
if [ ! -e "/usr/bin/mysql_config" ]
|
||||
then
|
||||
echo "Can not run MySQL purge script:"
|
||||
echo " /usr/bin/mysql_config does not exist"
|
||||
return 1
|
||||
fi
|
||||
DSPAM_MySQL_PURGE_SQL=
|
||||
DSPAM_MySQL_VER=$(/usr/bin/mysql_config --version | sed "s:[^0-9.]*::g")
|
||||
DSPAM_MySQL_MAJOR=$(echo "${DSPAM_MySQL_VER}" | cut -d. -f1)
|
||||
DSPAM_MySQL_MINOR=$(echo "${DSPAM_MySQL_VER}" | cut -d. -f2)
|
||||
DSPAM_MySQL_MICRO=$(echo "${DSPAM_MySQL_VER}" | cut -d. -f3)
|
||||
DSPAM_MySQL_INT=$(($DSPAM_MySQL_MAJOR * 65536 + $DSPAM_MySQL_MINOR * 256 + $DSPAM_MySQL_MICRO))
|
||||
|
||||
# For MySQL >= 4.1 use the new purge script
|
||||
if [ "${DSPAM_MySQL_INT}" -ge "262400" ]
|
||||
then
|
||||
if [ -f "${DSPAM_CONFIGDIR}/config/mysql_purge-4.1-optimized.sql" -o -f "${DSPAM_CONFIGDIR}/mysql_purge-4.1-optimized.sql" ]
|
||||
then
|
||||
# See: http://securitydot.net/txt/id/32/type/articles/
|
||||
[ -f "${DSPAM_CONFIGDIR}/config/mysql_purge-4.1-optimized.sql" ] && DSPAM_MySQL_PURGE_SQL="${DSPAM_CONFIGDIR}/config/mysql_purge-4.1-optimized.sql"
|
||||
[ -f "${DSPAM_CONFIGDIR}/mysql_purge-4.1-optimized.sql" ] && DSPAM_MySQL_PURGE_SQL="${DSPAM_CONFIGDIR}/mysql_purge-4.1-optimized.sql"
|
||||
else
|
||||
[ -f "${DSPAM_CONFIGDIR}/config/mysql_purge-4.1.sql" ] && DSPAM_MySQL_PURGE_SQL="${DSPAM_CONFIGDIR}/config/mysql_purge-4.1.sql"
|
||||
[ -f "${DSPAM_CONFIGDIR}/mysql_purge-4.1.sql" ] && DSPAM_MySQL_PURGE_SQL="${DSPAM_CONFIGDIR}/mysql_purge-4.1.sql"
|
||||
fi
|
||||
else
|
||||
[ -f "${DSPAM_CONFIGDIR}/config/mysql_purge.sql" ] && DSPAM_MySQL_PURGE_SQL="${DSPAM_CONFIGDIR}/config/mysql_purge.sql"
|
||||
[ -f "${DSPAM_CONFIGDIR}/mysql_purge.sql" ] && DSPAM_MySQL_PURGE_SQL="${DSPAM_CONFIGDIR}/mysql_purge.sql"
|
||||
fi
|
||||
|
||||
if [ -z "${DSPAM_MySQL_PURGE_SQL}" ]
|
||||
then
|
||||
echo "Can not run MySQL purge script:"
|
||||
echo " No mysql_purge SQL script found"
|
||||
return 1
|
||||
fi
|
||||
|
||||
if [ ! -e "/usr/bin/mysql" ]
|
||||
then
|
||||
echo "Can not run MySQL purge script:"
|
||||
echo " /usr/bin/mysql does not exist"
|
||||
return 1
|
||||
fi
|
||||
|
||||
# Construct mysql command line
|
||||
DSPAM_MySQL_CMD="/usr/bin/mysql --silent --user=${MySQLUser}"
|
||||
[ -S "${MySQLServer}" ] &&
|
||||
DSPAM_MySQL_CMD="${DSPAM_MySQL_CMD} --socket=${MySQLServer}" ||
|
||||
DSPAM_MySQL_CMD="${DSPAM_MySQL_CMD} --host=${MySQLServer}"
|
||||
[ -n "${MySQLPort}" ] &&
|
||||
DSPAM_MySQL_CMD="${DSPAM_MySQL_CMD} --port=${MySQLPort}"
|
||||
[ "${MySQLCompress}" == "true" ] &&
|
||||
DSPAM_MySQL_CMD="${DSPAM_MySQL_CMD} --compress"
|
||||
|
||||
# Run the MySQL purge script
|
||||
MYSQL_PWD="${MySQLPass}" ${DSPAM_MySQL_CMD} ${MySQLDb} < ${DSPAM_MySQL_PURGE_SQL} >/dev/null
|
||||
_RC=$?
|
||||
if [ ${_RC} != 0 ]
|
||||
then
|
||||
echo "MySQL purge script returned error code ${_RC}"
|
||||
fi
|
||||
|
||||
return 0
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# Function to clean DSPAM PostgreSQL data
|
||||
#
|
||||
clean_pgsql_drv() {
|
||||
#
|
||||
# PostgreSQL
|
||||
#
|
||||
if ${USE_SQL_PURGE} && \
|
||||
read_dspam_params PgSQLServer PgSQLPort PgSQLUser PgSQLPass PgSQLDb && \
|
||||
[ -n "${PgSQLServer}" -a -n "${PgSQLUser}" -a -n "${PgSQLDb}" ]
|
||||
then
|
||||
DSPAM_PgSQL_PURGE_SQL=""
|
||||
[ -f "${DSPAM_CONFIGDIR}/config/pgsql_purge.sql" ] && DSPAM_PgSQL_PURGE_SQL="${DSPAM_CONFIGDIR}/config/pgsql_purge.sql"
|
||||
[ -f "${DSPAM_CONFIGDIR}/pgsql_purge.sql" ] && DSPAM_PgSQL_PURGE_SQL="${DSPAM_CONFIGDIR}/pgsql_purge.sql"
|
||||
|
||||
if [ -z "${DSPAM_PgSQL_PURGE_SQL}" ]
|
||||
then
|
||||
echo "Can not run PostgreSQL purge script:"
|
||||
echo " No pgsql_purge SQL script found"
|
||||
return 1
|
||||
fi
|
||||
|
||||
if [ -e "/usr/bin/psql" ]
|
||||
then
|
||||
# Construct psql command line
|
||||
DSPAM_PgSQL_CMD="/usr/bin/psql -q -U ${PgSQLUser} -h ${PgSQLServer} -d ${PgSQLDb}"
|
||||
[ -n "${PgSQLPort}" ] &&
|
||||
DSPAM_PgSQL_CMD="${DSPAM_PgSQL_CMD} -p ${PgSQLPort}"
|
||||
|
||||
# Run the PostgreSQL purge script
|
||||
PGUSER="${PgSQLUser}" PGPASSWORD="${PgSQLPass}" ${DSPAM_PgSQL_CMD} -f "${DSPAM_PgSQL_PURGE_SQL}" >/dev/null
|
||||
else
|
||||
# Run the pgsql_purge.py script
|
||||
PGUSER="${PgSQLUser}" PGPASSWORD="${PgSQLPass}" "${DSPAM_CONFIGDIR}/pgsql_purge.py" "${PgSQLServer}" "${PgSQLPort}" "${PgSQLDb}" "${DSPAM_PgSQL_PURGE_SQL}"
|
||||
fi
|
||||
|
||||
_RC=$?
|
||||
if [ ${_RC} != 0 ]
|
||||
then
|
||||
echo "PostgreSQL purge script returned error code ${_RC}"
|
||||
fi
|
||||
|
||||
return 0
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# Function to clean DSPAM Hash data
|
||||
#
|
||||
clean_hash_drv() {
|
||||
#
|
||||
# Hash
|
||||
#
|
||||
if [ -d "${DSPAM_HOMEDIR}/data" ]
|
||||
then
|
||||
find ${DSPAM_HOMEDIR}/data/ -maxdepth 4 -mindepth 1 -type f -name "*.css" | while read name
|
||||
do
|
||||
/usr/bin/cssclean "${name}" 1>/dev/null 2>&1
|
||||
done
|
||||
find ${DSPAM_HOMEDIR}/data/ -maxdepth 4 -mindepth 1 -type d -name "*.sig" | while read name
|
||||
do
|
||||
find "${name}" -maxdepth 1 -mindepth 1 -type f -mtime +${SIGNATURE_AGE} -name "*.sig" -exec /bin/rm "{}" ";"
|
||||
done
|
||||
return 0
|
||||
else
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# Function to clean DSPAM SQLite3 data
|
||||
#
|
||||
clean_sqlite3_drv() {
|
||||
#
|
||||
# SQLite3
|
||||
#
|
||||
if ${USE_SQL_PURGE}
|
||||
then
|
||||
DSPAM_SQLite3_PURGE_SQL=""
|
||||
[ -f "${DSPAM_CONFIGDIR}/config/sqlite3_purge.sql" ] && DSPAM_SQLite3_PURGE_SQL="${DSPAM_CONFIGDIR}/config/sqlite3_purge.sql"
|
||||
[ -f "${DSPAM_CONFIGDIR}/sqlite3_purge.sql" ] && DSPAM_SQLite3_PURGE_SQL="${DSPAM_CONFIGDIR}/sqlite3_purge.sql"
|
||||
|
||||
if [ -z "${DSPAM_SQLite3_PURGE_SQL}" ]
|
||||
then
|
||||
echo "Can not run SQLite3 purge script:"
|
||||
echo " No sqlite_purge SQL script found"
|
||||
return 1
|
||||
fi
|
||||
|
||||
if [ ! -e "/usr/bin/sqlite3" ]
|
||||
then
|
||||
echo "Can not run SQLite3 purge script:"
|
||||
echo " /usr/bin/sqlite3 does not exist"
|
||||
return 1
|
||||
fi
|
||||
|
||||
# Run the SQLite3 purge script
|
||||
find "${DSPAM_HOMEDIR}" -name "*.sdb" -print | while read name
|
||||
do
|
||||
/usr/bin/sqlite3 "$name" < "${DSPAM_SQLite3_PURGE_SQL}" >/dev/null
|
||||
done 1>/dev/null 2>&1
|
||||
|
||||
return 0
|
||||
fi
|
||||
|
||||
}
|
||||
|
||||
|
||||
#
|
||||
# Acquire lock file and start processing
|
||||
#
|
||||
DSPAM_CRON_LOCKFILE="/var/run/$(basename $0 .sh).pid"
|
||||
if ( set -o noclobber; echo "$$" > "${DSPAM_CRON_LOCKFILE}") 2> /dev/null; then
|
||||
|
||||
trap 'rm -f "${DSPAM_CRON_LOCKFILE}"; exit $?' INT TERM EXIT
|
||||
|
||||
#
|
||||
# Check for needed tools
|
||||
#
|
||||
if ! check_for_tools
|
||||
then
|
||||
# We have not all needed tools installed. Run just the dspam_clean part.
|
||||
run_dspam_clean
|
||||
exit $?
|
||||
fi
|
||||
|
||||
#
|
||||
# Try to get DSPAM config directory
|
||||
#
|
||||
if [ -f /etc/mail/dspam/dspam.conf ]
|
||||
then
|
||||
DSPAM_CONFIGDIR="/etc/mail/dspam"
|
||||
else
|
||||
echo "Configuration directory not found!"
|
||||
exit 2
|
||||
fi
|
||||
|
||||
#
|
||||
# Try to get DSPAM data home directory
|
||||
#
|
||||
if read_dspam_params Home && [ -d "${Home}" ]
|
||||
then
|
||||
DSPAM_HOMEDIR=${Home}
|
||||
else
|
||||
# Something is wrong in dspam.conf! Check if /var/spool/dspam exists instead.
|
||||
if [ -d /var/spool/dspam ]
|
||||
then
|
||||
DSPAM_HOMEDIR="/var/spool/dspam"
|
||||
fi
|
||||
fi
|
||||
if [ ! -d "${DSPAM_HOMEDIR}" ]
|
||||
then
|
||||
echo "Home directory not found! Please fix your dspam.conf."
|
||||
exit 2
|
||||
fi
|
||||
|
||||
#
|
||||
# System and user log purging
|
||||
#
|
||||
dspam_logrotate -a ${LOGROTATE_AGE} -d "${DSPAM_HOMEDIR}" >/dev/null # 2>&1
|
||||
|
||||
if [ ! -e "/usr/bin/dspam" ]
|
||||
then
|
||||
echo "Can not run DSPAM application:"
|
||||
echo " /usr/bin/dspam does not exist"
|
||||
return 1
|
||||
fi
|
||||
|
||||
#
|
||||
# Process all available storage drivers
|
||||
#
|
||||
for foo in $(/usr/bin/dspam --version 2>&1 | sed -n "s:,: :g;s:^.*\-\-with\-storage\-driver=\([^\'\]*\).*:\1:gIp")
|
||||
do
|
||||
case "${foo}" in
|
||||
hash_drv)
|
||||
clean_hash_drv
|
||||
;;
|
||||
mysql_drv)
|
||||
clean_mysql_drv
|
||||
;;
|
||||
pgsql_drv)
|
||||
clean_pgsql_drv
|
||||
;;
|
||||
sqlite3_drv)
|
||||
clean_sqlite3_drv
|
||||
;;
|
||||
*)
|
||||
echo "Unknown storage ${foo} driver"
|
||||
;;
|
||||
esac
|
||||
done
|
||||
|
||||
#
|
||||
# Run the dspam_clean command
|
||||
#
|
||||
run_dspam_clean
|
||||
|
||||
|
||||
#
|
||||
# Release lock
|
||||
#
|
||||
/bin/rm -f "${DSPAM_CRON_LOCKFILE}"
|
||||
trap - INT TERM EXIT
|
||||
fi
|
@ -1,43 +0,0 @@
|
||||
#!/sbin/runscript
|
||||
# Copyright 1999-2005 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/mail-filter/dspam/files/dspam.rc,v 1.1 2005/03/21 00:10:30 st_lim Exp $
|
||||
|
||||
depend() {
|
||||
use logger
|
||||
need net
|
||||
before mta
|
||||
after pg_autovacuum postgresql mysql
|
||||
}
|
||||
|
||||
checkconfig() {
|
||||
if [ ! -f "/etc/mail/dspam/dspam.conf" ]
|
||||
then
|
||||
eerror "You need a DSPAM configuration in /etc/mail/dspam/dspam.conf"
|
||||
return 1
|
||||
fi
|
||||
if (! grep -q "^ServerPID" /etc/mail/dspam/dspam.conf); then
|
||||
eerror "ServerPID missing in DSPAM configuration /etc/mail/dspam/dspam.conf"
|
||||
return 1
|
||||
fi
|
||||
}
|
||||
|
||||
start() {
|
||||
checkconfig || return 1
|
||||
|
||||
ebegin "Starting DSPAM"
|
||||
start-stop-daemon --start --quiet --background \
|
||||
--exec /usr/bin/dspam -- --daemon
|
||||
eend ${?}
|
||||
}
|
||||
|
||||
stop() {
|
||||
checkconfig || return 1
|
||||
|
||||
local DSPAM_PID="$(grep "^ServerPID" /etc/mail/dspam/dspam.conf)"
|
||||
DSPAM_PID="${DSPAM_PID/ServerPID/}"
|
||||
|
||||
ebegin "Stopping DSPAM"
|
||||
start-stop-daemon --stop --quiet --pidfile ${DSPAM_PID}
|
||||
eend ${?}
|
||||
}
|
@ -1,6 +0,0 @@
|
||||
/var/log/dspam/sql.errors /var/log/dspam/dspam.log /var/log/dspam/dspam.debug /var/log/dspam/dspam.messages {
|
||||
weekly
|
||||
compress
|
||||
missingok
|
||||
copytruncate
|
||||
}
|
@ -1,115 +0,0 @@
|
||||
#!/bin/env python
|
||||
|
||||
import sys, os
|
||||
import psycopg2
|
||||
from psycopg2.extensions import ISOLATION_LEVEL_AUTOCOMMIT
|
||||
|
||||
adminuser = ''
|
||||
adminpass = ''
|
||||
|
||||
def inputStuff(title, default = None, empty = True):
|
||||
if default is not None:
|
||||
uinput = raw_input("%s [DEFAULT %s]: " %(title, default))
|
||||
else:
|
||||
uinput = raw_input("%s: " %(title))
|
||||
if default:
|
||||
if uinput == '':
|
||||
return default
|
||||
if uinput == '' and not empty:
|
||||
print "Error: Zero length input not allowed!"
|
||||
return inputStuff(title, default, empty)
|
||||
return uinput
|
||||
|
||||
def main():
|
||||
global adminuser
|
||||
if len(sys.argv) == 7:
|
||||
thiscript, serverhost, serverport, adminuser, dspamuser, dspamdb, createscript = sys.argv
|
||||
elif len(sys.argv) == 8:
|
||||
thiscript, serverhost, serverport, adminuser, dspamuser, dspamdb, createscript, vuserscript = sys.argv
|
||||
else:
|
||||
print "Usage: %s server_host server_port admin_user dspam_user dspam_dbname setup_DB_script [setup_virtual_user_script]" %(sys.argv[0])
|
||||
sys.exit(1)
|
||||
env = os.environ
|
||||
dspampass = env['DSPAM_PgSQLPass']
|
||||
con = connectasadmin(serverhost, serverport, 'template1')
|
||||
con.set_isolation_level(ISOLATION_LEVEL_AUTOCOMMIT) # CREATE DATABASE needs this
|
||||
cur = con.cursor()
|
||||
createDbAndUser(cur, dspamuser, dspampass, dspamdb)
|
||||
con.close()
|
||||
con = connectasadmin(serverhost, serverport, dspamdb)
|
||||
con.set_isolation_level(ISOLATION_LEVEL_AUTOCOMMIT) # CREATE LANGUAGE probably needs this
|
||||
cur = con.cursor()
|
||||
createLanguage(cur)
|
||||
con.close()
|
||||
executeScript(serverhost, serverport, dspamuser, dspampass, dspamdb, createscript)
|
||||
if len(sys.argv) == 8:
|
||||
executeScript(serverhost, serverport, dspamuser, dspampass, dspamdb, vuserscript)
|
||||
|
||||
def createDbAndUser(cur, dspamuser, dspampass, dspamdb):
|
||||
try:
|
||||
cur.execute("""CREATE USER %s WITH PASSWORD '%s' NOCREATEDB NOCREATEUSER;""" %(dspamuser, dspampass))
|
||||
cur.execute("""CREATE DATABASE %s;""" %(dspamdb))
|
||||
cur.execute("""GRANT ALL PRIVILEGES ON DATABASE %s TO %s;""" %(dspamdb, dspamuser))
|
||||
cur.execute("""GRANT ALL PRIVILEGES ON SCHEMA public TO %s;""" %(dspamuser))
|
||||
cur.execute("""UPDATE pg_database SET datdba=(SELECT usesysid FROM pg_shadow WHERE usename='%s') WHERE datname='%s';""" %(dspamuser, dspamdb))
|
||||
except Exception, e:
|
||||
print "ERROR:", e
|
||||
sys.exit(2)
|
||||
|
||||
def createLanguage(cur):
|
||||
try:
|
||||
cur.execute("CREATE FUNCTION plpgsql_call_handler() RETURNS language_handler AS '$libdir/plpgsql', 'plpgsql_call_handler' LANGUAGE c;")
|
||||
cur.execute("CREATE FUNCTION plpgsql_validator(oid) RETURNS void AS '$libdir/plpgsql', 'plpgsql_validator' LANGUAGE c;")
|
||||
cur.execute("CREATE TRUSTED PROCEDURAL LANGUAGE plpgsql HANDLER plpgsql_call_handler VALIDATOR plpgsql_validator;")
|
||||
except Exception, e:
|
||||
print "ERROR:", e
|
||||
sys.exit(2)
|
||||
|
||||
def executeScript(serverhost, serverport, dspamuser, dspampass, dspamdb, script):
|
||||
try:
|
||||
if len(serverport) > 0:
|
||||
con = psycopg2.connect(host=serverhost, port=int(serverport), database=dspamdb, user=dspamuser, password=dspampass)
|
||||
else:
|
||||
con = psycopg2.connect(host=serverhost, database=dspamdb, user=dspamuser, password=dspampass)
|
||||
con.set_isolation_level(ISOLATION_LEVEL_AUTOCOMMIT) # Needed for plpgsql
|
||||
cur = con.cursor()
|
||||
except Exception, e:
|
||||
print "ERROR: ",e
|
||||
sys.exit(3)
|
||||
try:
|
||||
f = open(script, 'r')
|
||||
script = f.read()
|
||||
f.close()
|
||||
except Exception, e:
|
||||
print "ERROR: ",e
|
||||
sys.exit(4)
|
||||
try:
|
||||
cur.execute(script)
|
||||
except Exception, e:
|
||||
print "ERROR: ",e
|
||||
sys.exit(5)
|
||||
con.close()
|
||||
|
||||
def connectasadmin(serverhost, serverport, db):
|
||||
global adminuser, adminpass
|
||||
notconnected = 1
|
||||
while(notconnected):
|
||||
try:
|
||||
if len(serverport) > 0:
|
||||
con = psycopg2.connect(host=serverhost, port=int(serverport), database=db, user=adminuser, password=adminpass)
|
||||
else:
|
||||
con = psycopg2.connect(host=serverhost, database=db, user=adminuser, password=adminpass)
|
||||
notconnected = 0
|
||||
except psycopg2.OperationalError, e:
|
||||
if 'no password' in e[0]:
|
||||
adminpass = inputStuff('Password')
|
||||
else:
|
||||
print e
|
||||
sys.exit(2)
|
||||
except Exception, e:
|
||||
print e
|
||||
sys.exit(2)
|
||||
return con
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
@ -1,41 +0,0 @@
|
||||
#!/bin/env python
|
||||
|
||||
import sys, os
|
||||
import psycopg2
|
||||
from psycopg2.extensions import ISOLATION_LEVEL_AUTOCOMMIT
|
||||
|
||||
def main():
|
||||
if len(sys.argv) == 5:
|
||||
thiscript, serverhost, serverport, dspamdb, purgescript = sys.argv
|
||||
else:
|
||||
print "Usage: %s server_host server_port dspam_dbname purge_script" %(sys.argv[0])
|
||||
sys.exit(1)
|
||||
try:
|
||||
env = os.environ
|
||||
dspamuser = env['PGUSER']
|
||||
dspampass = env['PGPASSWORD']
|
||||
if len(serverport) > 0:
|
||||
con = psycopg2.connect(host=serverhost, port=int(serverport), database=dspamdb, user=dspamuser, password=dspampass)
|
||||
else:
|
||||
con = psycopg2.connect(host=serverhost, database=dspamdb, user=dspamuser, password=dspampass)
|
||||
con.set_isolation_level(ISOLATION_LEVEL_AUTOCOMMIT) # Needed for plpgsql
|
||||
cur = con.cursor()
|
||||
except Exception, e:
|
||||
print "ERROR: ",e
|
||||
sys.exit(2)
|
||||
try:
|
||||
f = open(purgescript, 'r')
|
||||
script = f.read()
|
||||
f.close()
|
||||
except Exception, e:
|
||||
print "ERROR: ",e
|
||||
sys.exit(3)
|
||||
try:
|
||||
cur.execute(script)
|
||||
except Exception, e:
|
||||
print "ERROR: ",e
|
||||
sys.exit(4)
|
||||
con.close()
|
||||
|
||||
if __name__ == '__main__':
|
||||
main()
|
@ -1 +1,2 @@
|
||||
DIST font-util-1.2.0.tar.bz2 134588 RMD160 1cc25721fe18d86f7e11038a3128b6466a02378d SHA1 011fa9c8fe08d9f6f848df570374ed1cb7488146 SHA256 dbbac617ae6cdf6f459e602361211d217f4bad5ad8bfb6adcede6196693f9712
|
||||
DIST font-util-1.3.0.tar.bz2 142059 RMD160 a096a1b60d5d0e16deea3448465d10708ec4f8df SHA1 a015f4c5a35d98af72835797293697e0eb9cd506 SHA256 dfa9e55625a4e0250f32fabab1fd5c8ffcd2d1ff2720d6fcf0f74bc8a5929195
|
||||
|
@ -0,0 +1,17 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/media-fonts/font-util/font-util-1.3.0.ebuild,v 1.1 2012/03/04 21:01:50 chithanh Exp $
|
||||
|
||||
EAPI=4
|
||||
inherit xorg-2
|
||||
|
||||
EGIT_REPO_URI="git://anongit.freedesktop.org/xorg/font/util"
|
||||
DESCRIPTION="X.Org font utilities"
|
||||
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~ppc-macos ~x64-macos ~x86-macos ~sparc-solaris ~sparc64-solaris ~x64-solaris ~x86-solaris"
|
||||
IUSE=""
|
||||
|
||||
RDEPEND=""
|
||||
DEPEND="${RDEPEND}"
|
||||
|
||||
CONFIGURE_OPTIONS="--with-mapdir=${EPREFIX}/usr/share/fonts/util --with-fontrootdir=${EPREFIX}/usr/share/fonts"
|
@ -0,0 +1,16 @@
|
||||
--- docs/CMakeLists.txt.old 2012-03-04 20:20:05.566881387 +0100
|
||||
+++ docs/CMakeLists.txt 2012-03-04 20:20:50.659714153 +0100
|
||||
@@ -71,11 +71,12 @@
|
||||
string(REGEX MATCH "[^/]*._tx" basename ${page})
|
||||
string(REPLACE "._tx" "" basename ${basename})
|
||||
|
||||
- set(page ${CMAKE_CURRENT_SOURCE_DIR}/${page})
|
||||
if(${page} MATCHES "/build/")
|
||||
+ set(page ${CMAKE_CURRENT_SOURCE_DIR}/${page})
|
||||
set(txt_out ${CMAKE_CURRENT_BINARY_DIR}/build/${basename}.txt)
|
||||
set(html_out ${CMAKE_CURRENT_BINARY_DIR}/build/${basename}.html)
|
||||
else()
|
||||
+ set(page ${CMAKE_CURRENT_SOURCE_DIR}/${page})
|
||||
set(txt_out ${CMAKE_CURRENT_BINARY_DIR}/txt/${basename}.txt)
|
||||
set(html_out ${CMAKE_CURRENT_BINARY_DIR}/html/${basename}.html)
|
||||
endif()
|
@ -0,0 +1,31 @@
|
||||
--- build/make/configure.sh.old 2012-03-04 17:22:12.968222061 +0100
|
||||
+++ build/make/configure.sh 2012-03-04 17:24:36.905216824 +0100
|
||||
@@ -549,6 +549,9 @@
|
||||
*sparc*)
|
||||
tgt_isa=sparc
|
||||
;;
|
||||
+ *armv7*)
|
||||
+ tgt_isa=armv7
|
||||
+ ;;
|
||||
esac
|
||||
|
||||
# detect tgt_os
|
||||
@@ -680,7 +683,6 @@
|
||||
|
||||
case ${tgt_cc} in
|
||||
gcc)
|
||||
- CROSS=${CROSS:-arm-none-linux-gnueabi-}
|
||||
link_with_cc=gcc
|
||||
setup_gnu_toolchain
|
||||
arch_int=${tgt_isa##armv}
|
||||
@@ -689,8 +691,8 @@
|
||||
tune_cflags="-mtune="
|
||||
if enabled armv7
|
||||
then
|
||||
- check_add_cflags -march=armv7-a -mcpu=cortex-a8 -mfpu=neon -mfloat-abi=softfp #-ftree-vectorize
|
||||
- check_add_asflags -mcpu=cortex-a8 -mfpu=neon -mfloat-abi=softfp #-march=armv7-a
|
||||
+ check_add_cflags -mfpu=neon
|
||||
+ check_add_asflags -mfpu=neon
|
||||
else
|
||||
check_add_cflags -march=${tgt_isa}
|
||||
check_add_asflags -march=${tgt_isa}
|
@ -1,398 +0,0 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/media-libs/mesa/mesa-8.0.1-r1.ebuild,v 1.2 2012/03/03 12:33:08 lu_zero Exp $
|
||||
|
||||
EAPI=4
|
||||
|
||||
EGIT_REPO_URI="git://anongit.freedesktop.org/mesa/mesa"
|
||||
|
||||
if [[ ${PV} = 9999* ]]; then
|
||||
GIT_ECLASS="git-2"
|
||||
EXPERIMENTAL="true"
|
||||
fi
|
||||
|
||||
inherit base autotools multilib flag-o-matic toolchain-funcs ${GIT_ECLASS}
|
||||
|
||||
OPENGL_DIR="xorg-x11"
|
||||
|
||||
MY_PN="${PN/m/M}"
|
||||
MY_P="${MY_PN}-${PV/_/-}"
|
||||
MY_SRC_P="${MY_PN}Lib-${PV/_/-}"
|
||||
|
||||
FOLDER="${PV/_rc*/}"
|
||||
|
||||
DESCRIPTION="OpenGL-like graphic library for Linux"
|
||||
HOMEPAGE="http://mesa3d.sourceforge.net/"
|
||||
|
||||
#SRC_PATCHES="mirror://gentoo/${P}-gentoo-patches-01.tar.bz2"
|
||||
if [[ $PV = 9999* ]]; then
|
||||
SRC_URI="${SRC_PATCHES}"
|
||||
else
|
||||
SRC_URI="ftp://ftp.freedesktop.org/pub/mesa/${FOLDER}/${MY_SRC_P}.tar.bz2
|
||||
${SRC_PATCHES}"
|
||||
fi
|
||||
|
||||
# Most of the code is MIT/X11.
|
||||
# ralloc is LGPL-3
|
||||
# GLES[2]/gl[2]{,ext,platform}.h are SGI-B-2.0
|
||||
LICENSE="MIT LGPL-3 SGI-B-2.0"
|
||||
SLOT="0"
|
||||
KEYWORDS="~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~sh ~sparc ~x86 ~x86-fbsd ~x86-freebsd ~amd64-linux ~ia64-linux ~x86-linux ~sparc-solaris ~x64-solaris ~x86-solaris"
|
||||
|
||||
INTEL_CARDS="i915 i965 intel"
|
||||
RADEON_CARDS="r100 r200 r300 r600 radeon"
|
||||
VIDEO_CARDS="${INTEL_CARDS} ${RADEON_CARDS} nouveau vmware"
|
||||
for card in ${VIDEO_CARDS}; do
|
||||
IUSE_VIDEO_CARDS+=" video_cards_${card}"
|
||||
done
|
||||
|
||||
IUSE="${IUSE_VIDEO_CARDS}
|
||||
bindist +classic d3d debug +egl g3dvl +gallium gbm gles1 gles2 +llvm +nptl openvg osmesa pax_kernel pic selinux shared-dricore +shared-glapi vdpau wayland xvmc kernel_FreeBSD"
|
||||
|
||||
REQUIRED_USE="
|
||||
d3d? ( gallium )
|
||||
g3dvl? ( gallium )
|
||||
llvm? ( gallium )
|
||||
openvg? ( egl gallium )
|
||||
gbm? ( shared-glapi )
|
||||
g3dvl? ( || ( vdpau xvmc ) )
|
||||
vdpau? ( g3dvl )
|
||||
xvmc? ( g3dvl )
|
||||
video_cards_intel? ( || ( classic gallium ) )
|
||||
video_cards_i915? ( || ( classic gallium ) )
|
||||
video_cards_i965? ( classic )
|
||||
video_cards_nouveau? ( || ( classic gallium ) )
|
||||
video_cards_radeon? ( || ( classic gallium ) )
|
||||
video_cards_r100? ( classic )
|
||||
video_cards_r200? ( classic )
|
||||
video_cards_r300? ( gallium )
|
||||
video_cards_r600? ( gallium )
|
||||
video_cards_vmware? ( gallium )
|
||||
"
|
||||
|
||||
LIBDRM_DEPSTRING=">=x11-libs/libdrm-2.4.31"
|
||||
# not a runtime dependency of this package, but dependency of packages which
|
||||
# depend on this package, bug #342393
|
||||
EXTERNAL_DEPEND="
|
||||
>=x11-proto/dri2proto-2.6
|
||||
>=x11-proto/glproto-1.4.15
|
||||
"
|
||||
# keep correct libdrm and dri2proto dep
|
||||
# keep blocks in rdepend for binpkg
|
||||
RDEPEND="${EXTERNAL_DEPEND}
|
||||
!<x11-base/xorg-server-1.7
|
||||
!<=x11-proto/xf86driproto-2.0.3
|
||||
classic? ( app-admin/eselect-mesa )
|
||||
gallium? ( app-admin/eselect-mesa )
|
||||
>=app-admin/eselect-opengl-1.2.5
|
||||
dev-libs/expat
|
||||
gbm? ( sys-fs/udev )
|
||||
>=x11-libs/libX11-1.3.99.901
|
||||
x11-libs/libXdamage
|
||||
x11-libs/libXext
|
||||
x11-libs/libXxf86vm
|
||||
>=x11-libs/libxcb-1.8
|
||||
d3d? ( app-emulation/wine )
|
||||
vdpau? ( >=x11-libs/libvdpau-0.4.1 )
|
||||
wayland? ( dev-libs/wayland )
|
||||
xvmc? ( x11-libs/libXvMC )
|
||||
${LIBDRM_DEPSTRING}[video_cards_nouveau?,video_cards_vmware?]
|
||||
"
|
||||
for card in ${INTEL_CARDS}; do
|
||||
RDEPEND="${RDEPEND}
|
||||
video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_intel] )
|
||||
"
|
||||
done
|
||||
|
||||
for card in ${RADEON_CARDS}; do
|
||||
RDEPEND="${RDEPEND}
|
||||
video_cards_${card}? ( ${LIBDRM_DEPSTRING}[video_cards_radeon] )
|
||||
"
|
||||
done
|
||||
|
||||
DEPEND="${RDEPEND}
|
||||
llvm? ( >=sys-devel/llvm-2.9 )
|
||||
=dev-lang/python-2*
|
||||
dev-libs/libxml2[python]
|
||||
dev-util/pkgconfig
|
||||
sys-devel/bison
|
||||
sys-devel/flex
|
||||
x11-misc/makedepend
|
||||
>=x11-proto/xextproto-7.0.99.1
|
||||
x11-proto/xf86driproto
|
||||
x11-proto/xf86vidmodeproto
|
||||
"
|
||||
|
||||
S="${WORKDIR}/${MY_P}"
|
||||
|
||||
# It is slow without texrels, if someone wants slow
|
||||
# mesa without texrels +pic use is worth the shot
|
||||
QA_EXECSTACK="usr/lib*/opengl/xorg-x11/lib/libGL.so*"
|
||||
QA_WX_LOAD="usr/lib*/opengl/xorg-x11/lib/libGL.so*"
|
||||
|
||||
# Think about: ggi, fbcon, no-X configs
|
||||
|
||||
pkg_setup() {
|
||||
# workaround toc-issue wrt #386545
|
||||
use ppc64 && append-flags -mminimal-toc
|
||||
}
|
||||
|
||||
src_unpack() {
|
||||
default
|
||||
[[ $PV = 9999* ]] && git-2_src_unpack
|
||||
}
|
||||
|
||||
src_prepare() {
|
||||
# apply patches
|
||||
if [[ ${PV} != 9999* && -n ${SRC_PATCHES} ]]; then
|
||||
EPATCH_FORCE="yes" \
|
||||
EPATCH_SOURCE="${WORKDIR}/patches" \
|
||||
EPATCH_SUFFIX="patch" \
|
||||
epatch
|
||||
fi
|
||||
|
||||
# relax the requirement that r300 must have llvm, bug 380303
|
||||
epatch "${FILESDIR}"/${PN}-8.0-dont-require-llvm-for-r300.patch
|
||||
|
||||
# fix for hardened pax_kernel, bug 240956
|
||||
[[ ${PV} != 9999* ]] && epatch "${FILESDIR}"/glx_ro_text_segm.patch
|
||||
|
||||
# Solaris needs some recent POSIX stuff in our case
|
||||
if [[ ${CHOST} == *-solaris* ]] ; then
|
||||
sed -i -e "s/-DSVR4/-D_POSIX_C_SOURCE=200112L/" configure.ac || die
|
||||
fi
|
||||
|
||||
base_src_prepare
|
||||
|
||||
eautoreconf
|
||||
}
|
||||
|
||||
src_configure() {
|
||||
local myconf
|
||||
|
||||
if use classic; then
|
||||
# Configurable DRI drivers
|
||||
driver_enable swrast
|
||||
|
||||
# Intel code
|
||||
driver_enable video_cards_i915 i915
|
||||
driver_enable video_cards_i965 i965
|
||||
if ! use video_cards_i915 && \
|
||||
! use video_cards_i965; then
|
||||
driver_enable video_cards_intel i915 i965
|
||||
fi
|
||||
|
||||
# Nouveau code
|
||||
driver_enable video_cards_nouveau nouveau
|
||||
|
||||
# ATI code
|
||||
driver_enable video_cards_r100 radeon
|
||||
driver_enable video_cards_r200 r200
|
||||
if ! use video_cards_r100 && \
|
||||
! use video_cards_r200; then
|
||||
driver_enable video_cards_radeon radeon r200
|
||||
fi
|
||||
fi
|
||||
|
||||
if use egl; then
|
||||
myconf+="
|
||||
--with-egl-platforms=x11$(use wayland && echo ",wayland")$(use gbm && echo ",drm")
|
||||
$(use_enable gallium gallium-egl)
|
||||
"
|
||||
fi
|
||||
|
||||
if use gallium; then
|
||||
myconf+="
|
||||
$(use_enable d3d d3d1x)
|
||||
$(use_enable g3dvl gallium-g3dvl)
|
||||
$(use_enable llvm gallium-llvm)
|
||||
$(use_enable openvg)
|
||||
$(use_enable vdpau)
|
||||
$(use_enable xvmc)
|
||||
"
|
||||
gallium_enable swrast
|
||||
gallium_enable video_cards_vmware svga
|
||||
gallium_enable video_cards_nouveau nouveau
|
||||
gallium_enable video_cards_i915 i915
|
||||
if ! use video_cards_i915; then
|
||||
gallium_enable video_cards_intel i915
|
||||
fi
|
||||
|
||||
gallium_enable video_cards_r300 r300
|
||||
gallium_enable video_cards_r600 r600
|
||||
if ! use video_cards_r300 && \
|
||||
! use video_cards_r600; then
|
||||
gallium_enable video_cards_radeon r300 r600
|
||||
fi
|
||||
fi
|
||||
|
||||
# x86 hardened pax_kernel needs glx-rts, bug 240956
|
||||
if use pax_kernel; then
|
||||
myconf+="
|
||||
$(use_enable x86 glx-rts)
|
||||
"
|
||||
fi
|
||||
|
||||
econf \
|
||||
--enable-dri \
|
||||
--enable-glx \
|
||||
$(use_enable !bindist texture-float) \
|
||||
$(use_enable debug) \
|
||||
$(use_enable egl) \
|
||||
$(use_enable gbm) \
|
||||
$(use_enable gles1) \
|
||||
$(use_enable gles2) \
|
||||
$(use_enable nptl glx-tls) \
|
||||
$(use_enable osmesa) \
|
||||
$(use_enable !pic asm) \
|
||||
$(use_enable shared-dricore) \
|
||||
$(use_enable shared-glapi) \
|
||||
--with-dri-drivers=${DRI_DRIVERS} \
|
||||
--with-gallium-drivers=${GALLIUM_DRIVERS} \
|
||||
${myconf}
|
||||
}
|
||||
|
||||
src_install() {
|
||||
base_src_install
|
||||
|
||||
if use !bindist; then
|
||||
dodoc docs/patents.txt
|
||||
fi
|
||||
|
||||
# Save the glsl-compiler for later use
|
||||
if ! tc-is-cross-compiler; then
|
||||
dobin "${S}"/src/glsl/glsl_compiler
|
||||
fi
|
||||
|
||||
# Install config file for eselect mesa
|
||||
insinto /usr/share/mesa
|
||||
newins "${FILESDIR}/eselect-mesa.conf.8.0.1" eselect-mesa.conf
|
||||
|
||||
# Move libGL and others from /usr/lib to /usr/lib/opengl/blah/lib
|
||||
# because user can eselect desired GL provider.
|
||||
ebegin "Moving libGL and friends for dynamic switching"
|
||||
dodir /usr/$(get_libdir)/opengl/${OPENGL_DIR}/{lib,extensions,include}
|
||||
local x
|
||||
for x in "${ED}"/usr/$(get_libdir)/lib{EGL,GL*,OpenVG}.{la,a,so*}; do
|
||||
if [ -f ${x} -o -L ${x} ]; then
|
||||
mv -f "${x}" "${ED}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/lib \
|
||||
|| die "Failed to move ${x}"
|
||||
fi
|
||||
done
|
||||
for x in "${ED}"/usr/include/GL/{gl.h,glx.h,glext.h,glxext.h}; do
|
||||
if [ -f ${x} -o -L ${x} ]; then
|
||||
mv -f "${x}" "${ED}"/usr/$(get_libdir)/opengl/${OPENGL_DIR}/include \
|
||||
|| die "Failed to move ${x}"
|
||||
fi
|
||||
done
|
||||
eend $?
|
||||
|
||||
if use classic || use gallium; then
|
||||
ebegin "Moving DRI/Gallium drivers for dynamic switching"
|
||||
local gallium_drivers=( i915_dri.so i965_dri.so r300_dri.so r600_dri.so swrast_dri.so )
|
||||
keepdir /usr/$(get_libdir)/dri
|
||||
dodir /usr/$(get_libdir)/mesa
|
||||
for x in ${gallium_drivers[@]}; do
|
||||
if [ -f "${S}/$(get_libdir)/gallium/${x}" ]; then
|
||||
mv -f "${ED}/usr/$(get_libdir)/dri/${x}" "${ED}/usr/$(get_libdir)/dri/${x/_dri.so/g_dri.so}" \
|
||||
|| die "Failed to move ${x}"
|
||||
insinto "/usr/$(get_libdir)/dri/"
|
||||
if [ -f "${S}/$(get_libdir)/${x}" ]; then
|
||||
insopts -m0755
|
||||
doins "${S}/$(get_libdir)/${x}"
|
||||
fi
|
||||
fi
|
||||
done
|
||||
for x in "${ED}"/usr/$(get_libdir)/dri/*.so; do
|
||||
if [ -f ${x} -o -L ${x} ]; then
|
||||
mv -f "${x}" "${x/dri/mesa}" \
|
||||
|| die "Failed to move ${x}"
|
||||
fi
|
||||
done
|
||||
pushd "${ED}"/usr/$(get_libdir)/dri || die "pushd failed"
|
||||
ln -s ../mesa/*.so . || die "Creating symlink failed"
|
||||
# remove symlinks to drivers known to eselect
|
||||
for x in ${gallium_drivers[@]}; do
|
||||
if [ -f ${x} -o -L ${x} ]; then
|
||||
rm "${x}" || die "Failed to remove ${x}"
|
||||
fi
|
||||
done
|
||||
popd
|
||||
eend $?
|
||||
fi
|
||||
}
|
||||
|
||||
pkg_postinst() {
|
||||
# Switch to the xorg implementation.
|
||||
echo
|
||||
eselect opengl set --use-old ${OPENGL_DIR}
|
||||
|
||||
# switch to xorg-x11 and back if necessary, bug #374647 comment 11
|
||||
OLD_IMPLEM="$(eselect opengl show)"
|
||||
if [[ ${OPENGL_DIR}x != ${OLD_IMPLEM}x ]]; then
|
||||
eselect opengl set ${OPENGL_DIR}
|
||||
eselect opengl set ${OLD_IMPLEM}
|
||||
fi
|
||||
|
||||
# Select classic/gallium drivers
|
||||
if use classic || use gallium; then
|
||||
eselect mesa set --auto
|
||||
fi
|
||||
|
||||
# warn about patent encumbered texture-float
|
||||
if use !bindist; then
|
||||
elog "USE=\"bindist\" was not set. Potentially patent encumbered code was"
|
||||
elog "enabled. Please see patents.txt for an explanation."
|
||||
fi
|
||||
|
||||
local using_radeon r_flag
|
||||
for r_flag in ${RADEON_CARDS}; do
|
||||
if use video_cards_${r_flag}; then
|
||||
using_radeon=1
|
||||
break
|
||||
fi
|
||||
done
|
||||
|
||||
if [[ ${using_radeon} = 1 ]] && ! has_version media-libs/libtxc_dxtn; then
|
||||
elog "Note that in order to have full S3TC support, it is necessary to install"
|
||||
elog "media-libs/libtxc_dxtn as well. This may be necessary to get nice"
|
||||
elog "textures in some apps, and some others even require this to run."
|
||||
fi
|
||||
}
|
||||
|
||||
# $1 - VIDEO_CARDS flag
|
||||
# other args - names of DRI drivers to enable
|
||||
# TODO: avoid code duplication for a more elegant implementation
|
||||
driver_enable() {
|
||||
case $# in
|
||||
# for enabling unconditionally
|
||||
1)
|
||||
DRI_DRIVERS+=",$1"
|
||||
;;
|
||||
*)
|
||||
if use $1; then
|
||||
shift
|
||||
for i in $@; do
|
||||
DRI_DRIVERS+=",${i}"
|
||||
done
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
}
|
||||
|
||||
gallium_enable() {
|
||||
case $# in
|
||||
# for enabling unconditionally
|
||||
1)
|
||||
GALLIUM_DRIVERS+=",$1"
|
||||
;;
|
||||
*)
|
||||
if use $1; then
|
||||
shift
|
||||
for i in $@; do
|
||||
GALLIUM_DRIVERS+=",${i}"
|
||||
done
|
||||
fi
|
||||
;;
|
||||
esac
|
||||
}
|
@ -1 +1,2 @@
|
||||
DIST ivtv-utils-1.4.0.tar.gz 192733 RMD160 841b46c64dc57e04e603a1a074a55be1d6ea5ea3 SHA1 ea046eec2511ad00395e9de5ba693c069190d2c4 SHA256 702c365da723ce419bd49f25f88eb3a028f0594699f9c9710c713eba022ac911
|
||||
DIST ivtv-utils-1.4.1.tar.gz 189918 RMD160 8cee872a70b9dc29cfda4fbb4c11408fdd1729d2 SHA1 254ae27aff3f1c8810cf7cebebd85cb195ddf523 SHA256 8eebe8bda62f348779c24522f78fb3c0231e33d303b6381185eeb795fe761ef6
|
||||
|
@ -0,0 +1,71 @@
|
||||
http://bugs.gentoo.org/339405
|
||||
|
||||
--- utils/cx25840ctl/cx25840ctl.c
|
||||
+++ utils/cx25840ctl/cx25840ctl.c
|
||||
@@ -57,7 +57,7 @@
|
||||
return 0;
|
||||
}
|
||||
|
||||
- sprintf(device, "/dev/i2c-%s", opt.inputs[0]);
|
||||
+ snprintf(device, sizeof(device), "/dev/i2c-%s", opt.inputs[0]);
|
||||
|
||||
// open the device
|
||||
if ((fd = open(device, O_RDWR)) < 0)
|
||||
@@ -67,7 +67,7 @@
|
||||
exit(1);
|
||||
}
|
||||
|
||||
- sprintf(sysfile, "/sys/bus/i2c/devices/%s-%04x/name", opt.inputs[0], address);
|
||||
+ snprintf(sysfile, sizeof(sysfile), "/sys/bus/i2c/devices/%s-%04x/name", opt.inputs[0], address);
|
||||
if ((fp = fopen(sysfile, "r")) != NULL)
|
||||
{
|
||||
fgets(name, sizeof(name), fp);
|
||||
--- utils/ivtv-ctl.c
|
||||
+++ utils/ivtv-ctl.c
|
||||
@@ -358,7 +358,7 @@
|
||||
__u32 reset = 0;
|
||||
int new_debug_level, gdebug_level;
|
||||
double timestamp;
|
||||
- char ptsstr[64];
|
||||
+ char ptsstr[256];
|
||||
char short_options[26 * 2 * 2 + 1];
|
||||
|
||||
if (argc == 1) {
|
||||
@@ -420,7 +420,7 @@
|
||||
static char newdev[20];
|
||||
char dev = device[0];
|
||||
|
||||
- sprintf(newdev, "/dev/video%c", dev);
|
||||
+ snprintf(newdev, sizeof(newdev), "/dev/video%c", dev);
|
||||
device = newdev;
|
||||
}
|
||||
break;
|
||||
@@ -600,7 +600,7 @@
|
||||
char buf[20];
|
||||
new_debug_level = debug_level;
|
||||
|
||||
- sprintf(buf, "%d", debug_level);
|
||||
+ snprintf(buf, sizeof(buf), "%d", debug_level);
|
||||
if (dowrite(buf, "/sys/module/ivtv/parameters/debug") == 0) {
|
||||
printf(" set debug level: ");
|
||||
print_debug_mask(new_debug_level);
|
||||
--- utils/v4l2-ctl.cpp
|
||||
+++ utils/v4l2-ctl.cpp
|
||||
@@ -416,7 +416,7 @@
|
||||
{
|
||||
char buf[10];
|
||||
|
||||
- sprintf(buf, "%08x", num);
|
||||
+ snprintf(buf, sizeof(buf), "%08x", num);
|
||||
return buf;
|
||||
}
|
||||
|
||||
@@ -1449,7 +1449,7 @@
|
||||
static char newdev[20];
|
||||
char dev = device[0];
|
||||
|
||||
- sprintf(newdev, "/dev/video%c", dev);
|
||||
+ snprintf(newdev, sizeof(newdev), "/dev/video%c", dev);
|
||||
device = newdev;
|
||||
}
|
||||
break;
|
@ -0,0 +1,47 @@
|
||||
# Copyright 1999-2012 Gentoo Foundation
|
||||
# Distributed under the terms of the GNU General Public License v2
|
||||
# $Header: /var/cvsroot/gentoo-x86/media-tv/ivtv-utils/ivtv-utils-1.4.1.ebuild,v 1.1 2012/03/05 05:47:10 ssuominen Exp $
|
||||
|
||||
EAPI=4
|
||||
inherit eutils toolchain-funcs
|
||||
|
||||
DESCRIPTION="IVTV utilities for Hauppauge PVR PCI cards"
|
||||
HOMEPAGE="http://www.ivtvdriver.org/"
|
||||
SRC_URI="http://dl.ivtvdriver.org/ivtv/archive/1.4.x/${P}.tar.gz"
|
||||
|
||||
LICENSE="GPL-2"
|
||||
SLOT="0"
|
||||
KEYWORDS="~amd64 ~ppc ~x86"
|
||||
IUSE="perl"
|
||||
|
||||
DEPEND="!media-tv/ivtv"
|
||||
RDEPEND="${DEPEND}
|
||||
media-tv/v4l-utils
|
||||
perl? (
|
||||
dev-perl/Video-Frequencies
|
||||
dev-perl/Video-ivtv
|
||||
dev-perl/Config-IniFiles
|
||||
virtual/perl-Getopt-Long
|
||||
dev-perl/perl-tk
|
||||
)"
|
||||
|
||||
src_prepare() {
|
||||
epatch \
|
||||
"${FILESDIR}"/${PN}-1.4.0-gentoo.patch \
|
||||
"${FILESDIR}"/${PN}-1.4.1-overflow.patch
|
||||
}
|
||||
|
||||
src_compile() {
|
||||
tc-export CC CXX
|
||||
emake
|
||||
}
|
||||
|
||||
src_install() {
|
||||
emake DESTDIR="${D}" PREFIX="/usr" install
|
||||
dodoc ChangeLog README doc/*
|
||||
|
||||
if use perl; then
|
||||
dobin utils/perl/*.pl
|
||||
dodoc utils/perl/README.ptune
|
||||
fi
|
||||
}
|
@ -1,22 +0,0 @@
|
||||
all_sfx? ( app-arch/unrar )
|
||||
sys-libs/glibc
|
||||
0
|
||||
x86? ( http://www.rarlab.com/rar/rarlinux-4.1.0.tar.gz ) amd64? ( http://www.rarlab.com/rar/rarlinux-x64-4.1.0.tar.gz ) all_sfx? ( http://www.rarlab.com/rar/rarlinux-4.1.0.tar.gz http://www.rarlab.com/rar/rarlinux-x64-4.1.0.tar.gz http://www.rarlab.com/rar/winrar-x64-410.exe )
|
||||
|
||||
http://www.rarsoft.com/
|
||||
RAR
|
||||
RAR compressor/uncompressor
|
||||
-* ~amd64 ~x86
|
||||
|
||||
all_sfx static
|
||||
|
||||
|
||||
|
||||
4
|
||||
|
||||
compile install unpack
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -0,0 +1,22 @@
|
||||
all_sfx? ( app-arch/unrar )
|
||||
sys-libs/glibc
|
||||
0
|
||||
x86? ( http://www.rarlab.com/rar/rarlinux-4.1.1.tar.gz ) amd64? ( http://www.rarlab.com/rar/rarlinux-x64-4.1.1.tar.gz ) all_sfx? ( http://www.rarlab.com/rar/rarlinux-4.1.1.tar.gz http://www.rarlab.com/rar/rarlinux-x64-4.1.1.tar.gz http://www.rarlab.com/rar/winrar-x64-411.exe )
|
||||
|
||||
http://www.rarsoft.com/
|
||||
RAR
|
||||
RAR compressor/uncompressor
|
||||
-* ~amd64 ~x86
|
||||
|
||||
all_sfx static
|
||||
|
||||
|
||||
|
||||
4
|
||||
|
||||
compile install unpack
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -1,22 +0,0 @@
|
||||
|| ( >=app-editors/vim-7.0 >=app-editors/gvim-7.0 )
|
||||
|| ( >=app-editors/vim-7.0 >=app-editors/gvim-7.0 )
|
||||
0
|
||||
mirror://gentoo/colorschemes-20110506.tar.bz2
|
||||
|
||||
http://www.vim.org/
|
||||
vim GPL-2 public-domain as-is
|
||||
vim plugin: a collection of color schemes from vim.org
|
||||
alpha amd64 hppa ia64 ~mips ppc ppc64 sparc x86 ~x86-fbsd ~amd64-linux ~x86-linux ~x86-macos
|
||||
eutils multilib toolchain-funcs user vim-doc vim-plugin
|
||||
|
||||
|
||||
|
||||
|
||||
4
|
||||
|
||||
install postinst postrm prepare
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -1,22 +0,0 @@
|
||||
|| ( >=app-editors/vim-7.0 >=app-editors/gvim-7.0 )
|
||||
|| ( >=app-editors/vim-7.0 >=app-editors/gvim-7.0 )
|
||||
0
|
||||
mirror://gentoo/gtk-syntax-20091024.tar.bz2
|
||||
|
||||
http://www.vim.org/scripts/script.php?script_id=1000
|
||||
as-is
|
||||
vim plugin: Syntax highlighting for GLib, Gtk+, Xlib, Gimp, Gnome, and more
|
||||
alpha amd64 arm hppa ia64 ~mips ppc ppc64 ~s390 sh sparc x86 ~x86-fbsd ~x86-freebsd ~x86-interix ~amd64-linux ~x86-linux ~x64-macos ~x86-macos ~x86-solaris
|
||||
vim-doc vim-plugin
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
install postinst postrm
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -1,22 +0,0 @@
|
||||
|| ( >=app-editors/vim-7.0 >=app-editors/gvim-7.0 )
|
||||
|| ( >=app-editors/vim-7.0 >=app-editors/gvim-7.0 )
|
||||
0
|
||||
mirror://gentoo/selinux-syntax-20040707.tar.bz2
|
||||
|
||||
http://www.cip.ifi.lmu.de/~bleher/selinux/
|
||||
vim
|
||||
vim plugin: SELinux type enforcement policy syntax
|
||||
alpha amd64 ia64 ~mips ppc ppc64 sparc x86
|
||||
vim-doc vim-plugin
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
install postinst postrm
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -1,22 +0,0 @@
|
||||
|| ( >=app-editors/vim-7.0 >=app-editors/gvim-7.0 )
|
||||
|| ( >=app-editors/vim-7.0 >=app-editors/gvim-7.0 )
|
||||
0
|
||||
mirror://gentoo/wikipedia-syntax-20050212.tar.bz2
|
||||
|
||||
http://en.wikipedia.org/wiki/Wikipedia:Text_editor_support#Vim
|
||||
as-is
|
||||
vim plugin: Wikipedia syntax highlighting
|
||||
amd64 ~hppa ~mips ppc ppc64 x86
|
||||
vim-doc vim-plugin
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
install postinst postrm
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -1,22 +0,0 @@
|
||||
|| ( >=app-editors/vim-7.0 >=app-editors/gvim-7.0 )
|
||||
|| ( >=app-editors/vim-7.0 >=app-editors/gvim-7.0 )
|
||||
0
|
||||
mirror://gentoo/wikipedia-syntax-20071103.tar.bz2
|
||||
|
||||
http://en.wikipedia.org/wiki/Wikipedia:Text_editor_support#Vim
|
||||
as-is
|
||||
vim plugin: Wikipedia syntax highlighting
|
||||
~amd64 ~hppa ~mips ~ppc ~ppc64 ~x86
|
||||
vim-doc vim-plugin
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
install postinst postrm
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -0,0 +1,22 @@
|
||||
readline? ( sys-libs/readline ) sys-devel/libtool || ( =sys-devel/automake-1.11* ) >=sys-devel/autoconf-2.68 sys-devel/libtool
|
||||
readline? ( sys-libs/readline )
|
||||
0
|
||||
http://www.lua.org/ftp/lua-5.2.0.tar.gz
|
||||
|
||||
http://www.lua.org/
|
||||
MIT
|
||||
A powerful light-weight programming language designed for extending applications
|
||||
~alpha ~amd64 ~arm ~hppa ~ia64 ~mips ~ppc ~ppc64 ~s390 ~sh ~sparc ~x86 ~x86-fbsd
|
||||
autotools eutils libtool multilib portability toolchain-funcs user versionator
|
||||
+deprecated emacs readline static
|
||||
|
||||
emacs? ( app-emacs/lua-mode )
|
||||
|
||||
4
|
||||
|
||||
compile install prepare
|
||||
|
||||
|
||||
|
||||
|
||||
|
@ -1,7 +1,7 @@
|
||||
>=sys-kernel/linux-headers-2.6.35 sys-libs/libcap >=sys-libs/glibc-2.11
|
||||
>=sys-kernel/linux-headers-2.6.35 sys-libs/libcap >=sys-libs/glibc-2.11 || ( =sys-devel/automake-1.11* ) >=sys-devel/autoconf-2.68 sys-devel/libtool
|
||||
>=sys-kernel/linux-headers-2.6.35 sys-libs/libcap >=sys-libs/glibc-2.11
|
||||
0
|
||||
http://libexplain.sourceforge.net/libexplain-0.50.D001.tar.gz
|
||||
http://libexplain.sourceforge.net/libexplain-0.52.D001.tar.gz
|
||||
|
||||
http://libexplain.sourceforge.net/
|
||||
GPL-3
|
Some files were not shown because too many files have changed in this diff Show More
Loading…
Reference in new issue