summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'app-crypt/truecrypt/truecrypt-7.0a-r6.ebuild')
-rw-r--r--app-crypt/truecrypt/truecrypt-7.0a-r6.ebuild122
1 files changed, 122 insertions, 0 deletions
diff --git a/app-crypt/truecrypt/truecrypt-7.0a-r6.ebuild b/app-crypt/truecrypt/truecrypt-7.0a-r6.ebuild
new file mode 100644
index 000000000000..f991dbd8e7d2
--- /dev/null
+++ b/app-crypt/truecrypt/truecrypt-7.0a-r6.ebuild
@@ -0,0 +1,122 @@
+# Copyright 1999-2011 Gentoo Foundation
+# Distributed under the terms of the GNU General Public License v2
+# $Header: /var/cvsroot/gentoo-x86/app-crypt/truecrypt/truecrypt-7.0a-r6.ebuild,v 1.1 2011/07/15 17:53:07 c1pher Exp $
+
+EAPI="4"
+
+inherit flag-o-matic linux-info multilib toolchain-funcs wxwidgets eutils \
+ pax-utils
+
+DESCRIPTION="Free open-source disk encryption software"
+HOMEPAGE="http://www.truecrypt.org/"
+SRC_URI="${P}.tar.gz\
+ mirror://gentoo/${PN}-pkcs11.h.bz2"
+
+LICENSE="truecrypt-3.0"
+SLOT="0"
+KEYWORDS="-* ~amd64 ~ppc ~x86"
+IUSE="X"
+RESTRICT="mirror fetch bindist"
+
+RDEPEND="|| ( >=sys-fs/lvm2-2.02.45 sys-fs/device-mapper )
+ sys-fs/fuse
+ x11-libs/wxGTK:2.8[X?]
+ app-admin/sudo"
+DEPEND="${RDEPEND}
+ !ppc? ( dev-lang/nasm )"
+
+S="${WORKDIR}/${P}-source"
+
+#See bug 241650.
+pkg_nofetch() {
+ elog "Please download ${P}-linux-{86,64}.tar.gz source from:"
+ elog "http://www.truecrypt.org/downloads2"
+ elog "Then put the file in ${DISTDIR}/${P}.tar.gz"
+}
+
+pkg_setup() {
+ local CONFIG_CHECK="~BLK_DEV_DM ~DM_CRYPT ~FUSE_FS ~CRYPTO ~CRYPTO_XTS"
+ linux-info_pkg_setup
+
+ local WX_GTK_VER="2.8"
+ if use X; then
+ need-wxwidgets unicode
+ else
+ need-wxwidgets base-unicode
+ fi
+}
+
+src_prepare() {
+ if has_version x11-libs/wxGTK[X]; then
+ # Fix linking when NOGUI=1
+ sed -e "s/WX_CONFIG_LIBS := base/&,core/" -i Main/Main.make || die "sed Main/Main.make failed"
+ fi
+
+ epatch "${FILESDIR}/makefile-archdetect.diff"
+ epatch "${FILESDIR}/execstack-fix.diff"
+ mkdir "${T}"/pkcs11 || die
+ ln -s "${WORKDIR}"/truecrypt-pkcs11.h "${T}"/pkcs11/pkcs11.h || die
+}
+
+src_compile() {
+ local EXTRA
+
+ use X || EXTRA+=" NOGUI=1"
+ append-flags -DCKR_NEW_PIN_MODE=0x000001B0 -DCKR_NEXT_OTP=0x000001B1
+
+ emake \
+ ${EXTRA} \
+ NOSTRIP=1 \
+ NOTEST=1 \
+ VERBOSE=1 \
+ CC="$(tc-getCC)" \
+ CXX="$(tc-getCXX)" \
+ AR="$(tc-getAR)" \
+ RANLIB="$(tc-getRANLIB)" \
+ TC_EXTRA_CFLAGS="${CFLAGS}" \
+ TC_EXTRA_CXXFLAGS="${CXXFLAGS}" \
+ TC_EXTRA_LFLAGS="${LDFLAGS}" \
+ WX_CONFIG="${WX_CONFIG}" \
+ PKCS11_INC="${T}/pkcs11/"
+}
+
+src_test() {
+ "${S}/Main/truecrypt" --text --test || die "tests failed"
+}
+
+src_install() {
+ dobin Main/truecrypt
+ dodoc Readme.txt "Release/Setup Files/TrueCrypt User Guide.pdf"
+ exeinto "/$(get_libdir)/rcscripts/addons"
+ newexe "${FILESDIR}/${PN}-stop.sh" "${PN}-stop.sh"
+
+ newinitd "${FILESDIR}/${PN}.init" ${PN}
+
+ if use X; then
+ newicon Resources/Icons/TrueCrypt-48x48.xpm truecrypt.xpm
+ make_desktop_entry ${PN} "TrueCrypt" ${PN} "System"
+ fi
+
+ pax-mark -m "${D}/usr/bin/truecrypt"
+}
+
+pkg_postinst() {
+ elog "There is now an init script for TrueCrypt for Baselayout-2."
+ elog "If you are a baselayout-2 user and you would like the TrueCrypt"
+ elog "mappings removed on shutdown in order to prevent other file systems"
+ elog "from unmounting then run:"
+ elog "rc-update add truecrypt boot"
+ elog ""
+
+ ewarn "If you're getting errors about DISPLAY while using the terminal"
+ ewarn "it's a known upstream bug. To use TrueCrypt from the terminal"
+ ewarn "all that's necessary is to run: unset DISPLAY"
+ ewarn "This will make the display unaccessable from that terminal "
+ ewarn "but at least you will be able to access your volumes."
+ ewarn ""
+
+ ewarn "TrueCrypt has very restrictive license."
+ ewarn "Please read the ${LICENSE} license in ${PORTDIR}/licenses"
+ ewarn "directory before using TrueCrypt. Please be explicitly aware of"
+ ewarn "the limitations on redistribution of binaries or modified source."
+}