From 8376ef56580626e9c0f796d5b85b53a0a1c7d5f5 Mon Sep 17 00:00:00 2001 From: V3n3RiX Date: Sat, 14 Jul 2018 21:03:06 +0100 Subject: gentoo resync : 14.07.2018 --- app-crypt/veracrypt/Manifest | 12 +++ .../files/veracrypt-1.19-execstack-fix.patch | 60 +++++++++++++++ .../files/veracrypt-1.19-makefile-archdetect.patch | 26 +++++++ ...crypt-1.19-remove-packaging-from-makefile.patch | 52 +++++++++++++ .../files/veracrypt-1.22-sysmacros-fix.patch | 36 +++++++++ app-crypt/veracrypt/files/veracrypt.init | 17 ++++ app-crypt/veracrypt/metadata.xml | 26 +++++++ app-crypt/veracrypt/veracrypt-1.19.ebuild | 88 +++++++++++++++++++++ app-crypt/veracrypt/veracrypt-1.21.ebuild | 87 +++++++++++++++++++++ app-crypt/veracrypt/veracrypt-1.22.ebuild | 90 ++++++++++++++++++++++ 10 files changed, 494 insertions(+) create mode 100644 app-crypt/veracrypt/Manifest create mode 100644 app-crypt/veracrypt/files/veracrypt-1.19-execstack-fix.patch create mode 100644 app-crypt/veracrypt/files/veracrypt-1.19-makefile-archdetect.patch create mode 100644 app-crypt/veracrypt/files/veracrypt-1.19-remove-packaging-from-makefile.patch create mode 100644 app-crypt/veracrypt/files/veracrypt-1.22-sysmacros-fix.patch create mode 100644 app-crypt/veracrypt/files/veracrypt.init create mode 100644 app-crypt/veracrypt/metadata.xml create mode 100644 app-crypt/veracrypt/veracrypt-1.19.ebuild create mode 100644 app-crypt/veracrypt/veracrypt-1.21.ebuild create mode 100644 app-crypt/veracrypt/veracrypt-1.22.ebuild (limited to 'app-crypt/veracrypt') diff --git a/app-crypt/veracrypt/Manifest b/app-crypt/veracrypt/Manifest new file mode 100644 index 000000000000..ac809c557726 --- /dev/null +++ b/app-crypt/veracrypt/Manifest @@ -0,0 +1,12 @@ +AUX veracrypt-1.19-execstack-fix.patch 1682 BLAKE2B ce050f900ac6504242941322b910c74c79128d132a372b89070cf6939b5b55c6853617a8c2e49019d4cc4bc1eb872b0753c9287b3e500613bef63f74ef5ba48e SHA512 df7e64a7badfdf97447991cba7c7f87c291c89735b1ffc72b2cc882da05b2df2e2c31ee9aef4415c4d0316bc6e0a9c6c10e01406c00bd0f032931e55cd6465bc +AUX veracrypt-1.19-makefile-archdetect.patch 743 BLAKE2B 3eda2de96eb095cf51a806d7a8b06a79edeb03425ad6106a6ec72de0d76da8988dd953e58b4b5b321ee64d3d810ff8d312efddaabea0c8083b858430525a7ae0 SHA512 aa805312c5e3782452ac936a3772a0877e866e1116f2da56747b72a6f585538fd1e45a7c7531c426ff0245b5b3ac4964065e1196874aea4c11e91ac59bd6fffd +AUX veracrypt-1.19-remove-packaging-from-makefile.patch 2098 BLAKE2B 7588a0de42a5e561dea67c04b0056bd483ffdac0e407a640440d0b7d2723a66368c1eeebaf10c95e31a0114acd013e4d24d138a4aebc876fae51b2da0c9bcffe SHA512 e6485ce39ca009cfabe5656b3ed81cd72ca0207d9b1c310738be60705e3c94f2364cacf393b7f1d0d3e79a1ee58794dfda1d01aaa03778597c149a9dfc5634dc +AUX veracrypt-1.22-sysmacros-fix.patch 1190 BLAKE2B 33130133b9bf3708eed0d2fa304850e216db9918c326be1aa78d06fa6ace1566fb03928731b096948a5dd9ee47accd10698496f6b1f1626acf2c6eceeefad9df SHA512 fbb1d411755669849fc343c8dd729cb804ec70f0ff1736faf864850e496628b6697dc3e4a821f31e31462e833391c30ff7c8883d014cb5b4ff3b853c6769fc15 +AUX veracrypt.init 387 BLAKE2B 7f16dee40bceed81ca092a3be6a2cd71f24f5cc8b4e4b143bd6ddde046e1ecce0cd674f52e7adb406893ef57c5b73462157832ff279114a2079c0ff84839e0dc SHA512 986b52c454abd9a64a6e8eb93247983c48d9524c396f253bc16f68894fed0abe87614343ce9c9127f8fb180f12912b21f57063f8f3b43bdca5344c130eb6c72d +DIST VeraCrypt_1.19.tar.gz 23235780 BLAKE2B 0d02b3c6783d233f7cc64956eef58077e8a125fd5db28c1374921d8f2ca6dc9e1cde5402917c1ed4e4a626901e24c566ee834a12e41b6bcd150b8d64851f1ebc SHA512 ebce681099e04d938ff0dc10a1af848c82dafd80b165b2431ec355d64e29be4e60d1d63f0d5c9fd1182394080d00f0f573e3ae90f3e2167533dea2b895bd0164 +DIST VeraCrypt_1.21.tar.gz 24106162 BLAKE2B 5afe48830bde81d91d16f0bdf16010bdbdb885df84b9cd3e48191e468be51a485dfb3fc4f95da71d6d973a2f22dfbb92ee2b912dcf019921b37e1d4479c8c8d8 SHA512 5186d339f8fb0d88acfc35b1e7a916f797e30be93e8f252cca542b6d5c1cd916110111ef7b859d66b1790ce05d7d02bc72def26857eb003ea114a911fcec6c41 +DIST VeraCrypt_1.22.tar.gz 24820384 BLAKE2B 52fb822d07af96a9f47c17f8aacf13a949fb5a7c5d064a720e003e6d1bfbb5f221a5823720527e1f2c82f08547d77349cc90bc839336a622efcf1836dd97bb88 SHA512 83cdaf673bc9cdeadeb70b2beeabf87a2a9a65d3b0b0cc7fdf9c87671714af1e207ddd1db716302919e2d14414f5d4dd9d8f5203847d72834f53544a04c1a62a +EBUILD veracrypt-1.19.ebuild 1988 BLAKE2B 20e3a4725dc5b8d319a11cb44d5865afcdcc6f956ff8c3390ed225f605e01b01537db1af5aa1c82deb7c236b27eea69cbc0c29b2f2f4b770fae4514360c45a2d SHA512 b9829bad13c5ba781d9ec2e8353ed72f30a23459d3e9eaa7384a5718be051f1eeff70c3c097225c8f557c57634d7b14b5db83bb189671630c673568667e67da0 +EBUILD veracrypt-1.21.ebuild 1921 BLAKE2B 1adf1a612afa33dc2cdbed7f0bc971e84e3ec45236ee6d7d7bf317c00a6b03a57eda5b30c85f8aeb4684abbd9879b9dab40b9dc2ceb6cffe36946a74ba1544dd SHA512 1766b6db76015cc6fb6f147a8ba1f75795b7038d402c38129c60cbdb09831dd0aed2241d4ec9d403cffa8dfe38f3481085c64ae653a49362be39c08f462de1dc +EBUILD veracrypt-1.22.ebuild 2065 BLAKE2B 98dcdbe443fae6ad4a4fa0e6086fe4c171ada85fc69f3fc9bb79d61cb512dc5f8ed6339cff5b2705a35ed7d74449bebf04dba626e63d26fb7530dbf4a9566aeb SHA512 169f927f0745dc1e6d0d6c2c6f9c25f93240b09301cb6f318a28decb4f367b35e035f5eff57d2e9902e4e8bd9a496246e580b3c2d5d57380d1aada9cc1c24ada +MISC metadata.xml 726 BLAKE2B f70a62997301172fd3e6928dd694720fe1e7a8a41a2eb842800a220bed3531828423e2b4bcbb6c6d7f2d1d8ec96f74d1a987fac64390323662028efe57fe5d72 SHA512 7898d7a419ba57600609578ae308d558d2aacf6b7dcc625adb6adfadca9b6f580123650d63ed8a618131459f71fc9a1b2b367745e2f07da75cbdf6ef9c1595bb diff --git a/app-crypt/veracrypt/files/veracrypt-1.19-execstack-fix.patch b/app-crypt/veracrypt/files/veracrypt-1.19-execstack-fix.patch new file mode 100644 index 000000000000..9b1e634bd4cc --- /dev/null +++ b/app-crypt/veracrypt/files/veracrypt-1.19-execstack-fix.patch @@ -0,0 +1,60 @@ +--- src/Crypto/Aes_hw_cpu.asm.old ++++ src/Crypto/Aes_hw_cpu.asm +@@ -328,3 +328,12 @@ + + + %endif ; __BITS__ != 16 ++ %ifidn __OUTPUT_FORMAT__,elf ++ section .note.GNU-stack noalloc noexec nowrite progbits ++ %endif ++ %ifidn __OUTPUT_FORMAT__,elf32 ++ section .note.GNU-stack noalloc noexec nowrite progbits ++ %endif ++ %ifidn __OUTPUT_FORMAT__,elf64 ++ section .note.GNU-stack noalloc noexec nowrite progbits ++ %endif +--- src/Crypto/AesSmall_x86.asm.old ++++ src/Crypto/AesSmall_x86.asm +@@ -1442,3 +1442,12 @@ + db v8(0xe1),v8(0x69),v8(0x14),v8(0x63),v8(0x55),v8(0x21),v8(0x0c),v8(0x7d) + + %endif ++ %ifidn __OUTPUT_FORMAT__,elf ++ section .note.GNU-stack noalloc noexec nowrite progbits ++ %endif ++ %ifidn __OUTPUT_FORMAT__,elf32 ++ section .note.GNU-stack noalloc noexec nowrite progbits ++ %endif ++ %ifidn __OUTPUT_FORMAT__,elf64 ++ section .note.GNU-stack noalloc noexec nowrite progbits ++ %endif +--- src/Crypto/Aes_x64.asm.old ++++ src/Crypto/Aes_x64.asm +@@ -905,3 +905,12 @@ + %endif + + %endif ++ %ifidn __OUTPUT_FORMAT__,elf ++ section .note.GNU-stack noalloc noexec nowrite progbits ++ %endif ++ %ifidn __OUTPUT_FORMAT__,elf32 ++ section .note.GNU-stack noalloc noexec nowrite progbits ++ %endif ++ %ifidn __OUTPUT_FORMAT__,elf64 ++ section .note.GNU-stack noalloc noexec nowrite progbits ++ %endif +--- src/Crypto/Aes_x86.asm.old ++++ src/Crypto/Aes_x86.asm +@@ -644,3 +644,12 @@ + do_exit + + %endif ++ %ifidn __OUTPUT_FORMAT__,elf ++ section .note.GNU-stack noalloc noexec nowrite progbits ++ %endif ++ %ifidn __OUTPUT_FORMAT__,elf32 ++ section .note.GNU-stack noalloc noexec nowrite progbits ++ %endif ++ %ifidn __OUTPUT_FORMAT__,elf64 ++ section .note.GNU-stack noalloc noexec nowrite progbits ++ %endif diff --git a/app-crypt/veracrypt/files/veracrypt-1.19-makefile-archdetect.patch b/app-crypt/veracrypt/files/veracrypt-1.19-makefile-archdetect.patch new file mode 100644 index 000000000000..41fc6d521c66 --- /dev/null +++ b/app-crypt/veracrypt/files/veracrypt-1.19-makefile-archdetect.patch @@ -0,0 +1,26 @@ +From 181857089b11045c701e9195275a408430beb580 Mon Sep 17 00:00:00 2001 +From: Mounir IDRASSI +Date: Sat, 5 Nov 2016 23:39:46 +0100 +Subject: [PATCH] Linux: Always use "uname -m" to determine processor type. + This fixes Slackware build issue. + +--- + src/Makefile | 5 +---- + 1 file changed, 1 insertion(+), 4 deletions(-) + +diff --git a/src/Makefile b/src/Makefile +index 7bfc5ad..00e6e5b 100644 +--- src/Makefile ++++ src/Makefile +@@ -131,10 +131,7 @@ export PLATFORM_UNSUPPORTED := 0 + export CPU_ARCH ?= unknown + export SIMD_SUPPORTED := 0 + +-ARCH = $(shell uname -p) +-ifeq "$(ARCH)" "unknown" +- ARCH = $(shell uname -m) +-endif ++ARCH = $(shell uname -m) + + ifneq (,$(filter i386 i486 i586 i686 x86,$(ARCH))) + CPU_ARCH = x86 diff --git a/app-crypt/veracrypt/files/veracrypt-1.19-remove-packaging-from-makefile.patch b/app-crypt/veracrypt/files/veracrypt-1.19-remove-packaging-from-makefile.patch new file mode 100644 index 000000000000..5aad4b9fb74d --- /dev/null +++ b/app-crypt/veracrypt/files/veracrypt-1.19-remove-packaging-from-makefile.patch @@ -0,0 +1,52 @@ +--- src/Main/Main.make.orig ++++ src/Main/Main.make +@@ -190,49 +190,6 @@ + rm -fr "$(PWD)/Setup/MacOSX/VeraCrypt_dmg" + endif + +- +- +-ifeq "$(PLATFORM)" "Linux" +-ifeq "$(TC_BUILD_CONFIG)" "Release" +- mkdir -p $(PWD)/Setup/Linux/usr/bin +- mkdir -p $(PWD)/Setup/Linux/usr/share/$(APPNAME)/doc +- cp $(PWD)/Main/$(APPNAME) $(PWD)/Setup/Linux/usr/bin/$(APPNAME) +- cp $(PWD)/Setup/Linux/$(APPNAME)-uninstall.sh $(PWD)/Setup/Linux/usr/bin/$(APPNAME)-uninstall.sh +- chmod +x $(PWD)/Setup/Linux/usr/bin/$(APPNAME)-uninstall.sh +- cp $(PWD)/License.txt $(PWD)/Setup/Linux/usr/share/$(APPNAME)/doc/License.txt +- cp "$(PWD)/Release/Setup Files/VeraCrypt User Guide.pdf" "$(PWD)/Setup/Linux/usr/share/$(APPNAME)/doc/VeraCrypt User Guide.pdf" +- +-ifndef TC_NO_GUI +- mkdir -p $(PWD)/Setup/Linux/usr/share/applications +- mkdir -p $(PWD)/Setup/Linux/usr/share/pixmaps +- cp $(PWD)/Resources/Icons/VeraCrypt-256x256.xpm $(PWD)/Setup/Linux/usr/share/pixmaps/$(APPNAME).xpm +- cp $(PWD)/Setup/Linux/$(APPNAME).desktop $(PWD)/Setup/Linux/usr/share/applications/$(APPNAME).desktop +-endif +- +- +- tar cfz $(PWD)/Setup/Linux/$(PACKAGE_NAME) --directory $(PWD)/Setup/Linux usr +- +- @rm -fr $(INTERNAL_INSTALLER_NAME) +- @echo "#!/bin/sh" > $(INTERNAL_INSTALLER_NAME) +- @echo "VERSION=$(TC_VERSION)" >> $(INTERNAL_INSTALLER_NAME) +- @echo "PACKAGE_TYPE=tar" >> $(INTERNAL_INSTALLER_NAME) +- @echo "PACKAGE_NAME=$(PACKAGE_NAME)" >> $(INTERNAL_INSTALLER_NAME) +- @echo "PACKAGE_START=1107" >> $(INTERNAL_INSTALLER_NAME) +- @echo "INSTALLER_TYPE=$(INSTALLER_TYPE)" >> $(INTERNAL_INSTALLER_NAME) +- +- @cat $(PWD)/Setup/Linux/veracrypt_install_template.sh >> $(INTERNAL_INSTALLER_NAME) +- @cat $(PWD)/Setup/Linux/$(PACKAGE_NAME) >> $(INTERNAL_INSTALLER_NAME) +- chmod +x $(INTERNAL_INSTALLER_NAME) +- +- rm -fr $(PWD)/Setup/Linux/packaging +- mkdir -p $(PWD)/Setup/Linux/packaging +- cp $(INTERNAL_INSTALLER_NAME) $(PWD)/Setup/Linux/packaging/. +- makeself $(PWD)/Setup/Linux/packaging $(PWD)/Setup/Linux/$(INSTALLER_NAME) "VeraCrypt $(TC_VERSION) Installer" ./$(INTERNAL_INSTALLER_NAME) +- +-endif +- +-endif +- + $(OBJS): $(PCH) + + Resources.o: $(RESOURCES) diff --git a/app-crypt/veracrypt/files/veracrypt-1.22-sysmacros-fix.patch b/app-crypt/veracrypt/files/veracrypt-1.22-sysmacros-fix.patch new file mode 100644 index 000000000000..702e8f702ecd --- /dev/null +++ b/app-crypt/veracrypt/files/veracrypt-1.22-sysmacros-fix.patch @@ -0,0 +1,36 @@ +From 0a50becec3a3cca71e575dfec35d69ab295c85cc Mon Sep 17 00:00:00 2001 +From: =?UTF-8?q?G=C3=B6kt=C3=BCrk=20Y=C3=BCksek?= +Date: Tue, 3 Apr 2018 23:06:20 -0400 +Subject: [PATCH] Platform/Unix: include for major/minor + macros +MIME-Version: 1.0 +Content-Type: text/plain; charset=UTF-8 +Content-Transfer-Encoding: 8bit + +Starting with glibc 2.26, macros "major" and "minor" are only +available from [0]. The build fails with the +following without including this header: + +Unix/FilesystemPath.cpp:84:49: error: ‘major’ was not declared in this scope +Unix/FilesystemPath.cpp:84:113: error: ‘minor’ was not declared in this scope + +[0] https://sourceware.org/ml/libc-alpha/2017-02/msg00079.html +--- + src/Platform/Unix/FilesystemPath.cpp | 1 + + 1 file changed, 1 insertion(+) + +diff --git a/src/Platform/Unix/FilesystemPath.cpp b/src/Platform/Unix/FilesystemPath.cpp +index d6c9cd2..7c28af4 100644 +--- a/Platform/Unix/FilesystemPath.cpp ++++ b/Platform/Unix/FilesystemPath.cpp +@@ -15,6 +15,7 @@ + #include "Platform/StringConverter.h" + #include + #include ++#include + + namespace VeraCrypt + { +-- +2.16.3 + diff --git a/app-crypt/veracrypt/files/veracrypt.init b/app-crypt/veracrypt/files/veracrypt.init new file mode 100644 index 000000000000..972a9daef809 --- /dev/null +++ b/app-crypt/veracrypt/files/veracrypt.init @@ -0,0 +1,17 @@ +#!/sbin/openrc-run +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +depend() { + after localmount + need device-mapper +} + +stop() { + # Try to remove any dm-crypt mappings + if [ -x /usr/bin/veracrypt ]; then + ebegin "Removing veracrypt mappings" + ! /usr/bin/veracrypt -l > /dev/null 2>&1 || /usr/bin/veracrypt -d + eend $? + fi +} diff --git a/app-crypt/veracrypt/metadata.xml b/app-crypt/veracrypt/metadata.xml new file mode 100644 index 000000000000..823abb296b3c --- /dev/null +++ b/app-crypt/veracrypt/metadata.xml @@ -0,0 +1,26 @@ + + + + + Platform independent filesystem or container encryptor + derived from truecrypt + + + Enable assembly for optimization + + + fdsfgs@krutt.org + soredake + + + gokturk@gentoo.org + Göktürk Yüksek + + + proxy-maint@gentoo.org + Proxy Maintainers + + + veracrypt/VeraCrypt + + diff --git a/app-crypt/veracrypt/veracrypt-1.19.ebuild b/app-crypt/veracrypt/veracrypt-1.19.ebuild new file mode 100644 index 000000000000..e2b31e79b342 --- /dev/null +++ b/app-crypt/veracrypt/veracrypt-1.19.ebuild @@ -0,0 +1,88 @@ +# Copyright 1999-2016 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit eutils linux-info pax-utils toolchain-funcs wxwidgets + +DESCRIPTION="Disk encryption with strong security based on TrueCrypt" +HOMEPAGE="https://veracrypt.codeplex.com" +SRC_URI="https://github.com/veracrypt/VeraCrypt/archive/VeraCrypt_${PV}.tar.gz" + +LICENSE="Apache-2.0 truecrypt-3.0" +SLOT="0" +KEYWORDS="~amd64" +IUSE="X +asm" +RESTRICT="mirror bindist" + +WX_GTK_VER="3.0" + +RDEPEND=" + sys-fs/lvm2 + sys-fs/fuse + x11-libs/wxGTK:${WX_GTK_VER}[X?] + app-admin/sudo + dev-libs/pkcs11-helper +" +DEPEND=" + ${RDEPEND} + virtual/pkgconfig + asm? ( dev-lang/nasm ) +" + +S="${WORKDIR}/VeraCrypt-VeraCrypt_${PV}/src" + +pkg_setup() { + local CONFIG_CHECK="~BLK_DEV_DM ~DM_CRYPT ~FUSE_FS ~CRYPTO ~CRYPTO_XTS" + linux-info_pkg_setup + + setup-wxwidgets +} + +PATCHES=( + # TODO: remove in >=1.20 + "${FILESDIR}/${P}-makefile-archdetect.patch" + "${FILESDIR}/${P}-execstack-fix.patch" + "${FILESDIR}/${P}-remove-packaging-from-makefile.patch" +) + +src_compile() { + local myemakeargs=( + 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}" + ) + use X || myemakeargs+=( NOGUI=1 ) + use asm || myemakeargs+=( NOASM=1 ) + + emake "${myemakeargs[@]}" +} + +src_test() { + "${S}/Main/veracrypt" --text --test || die "tests failed" +} + +src_install() { + dobin Main/veracrypt + dodoc Readme.txt "Release/Setup Files/VeraCrypt User Guide.pdf" + newinitd "${FILESDIR}/${PN}.init" ${PN} + + if use X; then + newicon Resources/Icons/VeraCrypt-48x48.xpm veracrypt.xpm + make_desktop_entry ${PN} "VeraCrypt" ${PN} "System" + fi + + pax-mark -m "${D%/}/usr/bin/veracrypt" +} + +pkg_postinst() { + ewarn "VeraCrypt has a very restrictive license. Please be explicitly aware" + ewarn "of the limitations on redistribution of binaries or modified source." +} diff --git a/app-crypt/veracrypt/veracrypt-1.21.ebuild b/app-crypt/veracrypt/veracrypt-1.21.ebuild new file mode 100644 index 000000000000..dd4f4dc2c80e --- /dev/null +++ b/app-crypt/veracrypt/veracrypt-1.21.ebuild @@ -0,0 +1,87 @@ +# Copyright 1999-2017 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit eutils linux-info pax-utils toolchain-funcs wxwidgets + +DESCRIPTION="Disk encryption with strong security based on TrueCrypt" +HOMEPAGE="https://www.veracrypt.fr/en/Home.html" +SRC_URI="https://github.com/${PN}/VeraCrypt/archive/VeraCrypt_${PV}.tar.gz" + +LICENSE="Apache-2.0 truecrypt-3.0" +SLOT="0" +KEYWORDS="~amd64" +IUSE="+asm +doc X" +RESTRICT="bindist mirror" + +WX_GTK_VER="3.0" + +RDEPEND=" + sys-fs/lvm2 + sys-fs/fuse:0 + x11-libs/wxGTK:${WX_GTK_VER}[X?] + app-admin/sudo + dev-libs/pkcs11-helper +" +DEPEND=" + ${RDEPEND} + virtual/pkgconfig + asm? ( dev-lang/yasm ) +" + +S="${WORKDIR}/VeraCrypt-VeraCrypt_${PV}/src" +HTML_DOCS=( "${S}"/../doc/html/. ) +DOCS=( Readme.txt ) + +pkg_setup() { + local CONFIG_CHECK="~BLK_DEV_DM ~CRYPTO ~CRYPTO_XTS ~DM_CRYPT ~FUSE_FS" + linux-info_pkg_setup + + setup-wxwidgets +} + +src_compile() { + local myemakeargs=( + 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}" + ) + use X || myemakeargs+=( NOGUI=1 ) + use asm || myemakeargs+=( NOASM=1 ) + + emake "${myemakeargs[@]}" +} + +src_test() { + "${S}/Main/veracrypt" --text --test || die "tests failed" +} + +src_install() { + dobin Main/veracrypt + use doc && einstalldocs + + newinitd "${FILESDIR}/${PN}.init" ${PN} + + if use X; then + local s + for s in 16 48 128 256; do + newicon -s ${s} Resources/Icons/VeraCrypt-${s}x${s}.xpm veracrypt.xpm + done + make_desktop_entry ${PN} "VeraCrypt" ${PN} "Encryption;Encryption Tools;Utility;" + fi + + pax-mark -m "${D%/}/usr/bin/veracrypt" +} + +pkg_postinst() { + ewarn "VeraCrypt has a very restrictive license. Please be explicitly aware" + ewarn "of the limitations on redistribution of binaries or modified source." +} diff --git a/app-crypt/veracrypt/veracrypt-1.22.ebuild b/app-crypt/veracrypt/veracrypt-1.22.ebuild new file mode 100644 index 000000000000..c1e8355fcbf2 --- /dev/null +++ b/app-crypt/veracrypt/veracrypt-1.22.ebuild @@ -0,0 +1,90 @@ +# Copyright 1999-2018 Gentoo Foundation +# Distributed under the terms of the GNU General Public License v2 + +EAPI=6 +inherit eutils linux-info pax-utils toolchain-funcs wxwidgets + +DESCRIPTION="Disk encryption with strong security based on TrueCrypt" +HOMEPAGE="https://www.veracrypt.fr/en/Home.html" +SRC_URI="https://github.com/${PN}/VeraCrypt/archive/VeraCrypt_${PV}.tar.gz" + +LICENSE="Apache-2.0 truecrypt-3.0" +SLOT="0" +KEYWORDS="amd64" +IUSE="+asm cpu_flags_x86_sse4_1 cpu_flags_x86_ssse3 +doc X" +RESTRICT="bindist mirror" + +WX_GTK_VER="3.0" + +RDEPEND=" + sys-fs/lvm2 + sys-fs/fuse:0 + x11-libs/wxGTK:${WX_GTK_VER}[X?] + app-admin/sudo + dev-libs/pkcs11-helper +" +DEPEND=" + ${RDEPEND} + virtual/pkgconfig + asm? ( dev-lang/yasm ) +" + +S="${WORKDIR}/VeraCrypt-VeraCrypt_${PV}/src" +HTML_DOCS=( "${S}"/../doc/html/. ) +DOCS=( Readme.txt ) +PATCHES=( "${FILESDIR}"/${PN}-1.22-sysmacros-fix.patch ) + +pkg_setup() { + local CONFIG_CHECK="~BLK_DEV_DM ~CRYPTO ~CRYPTO_XTS ~DM_CRYPT ~FUSE_FS" + linux-info_pkg_setup + + setup-wxwidgets +} + +src_compile() { + local myemakeargs=( + 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}" + $(usex X "" "NOGUI=1") + $(usex asm "" "NOASM=1") + $(usex cpu_flags_x86_sse4_1 "SSE41=1" "") + $(usex cpu_flags_x86_ssse3 "SSSE3=1" "") + ) + + emake "${myemakeargs[@]}" +} + +src_test() { + "${S}/Main/veracrypt" --text --test || die "tests failed" +} + +src_install() { + dobin Main/veracrypt + use doc && einstalldocs + + newinitd "${FILESDIR}/${PN}.init" ${PN} + + if use X; then + local s + for s in 16 48 128 256; do + newicon -s ${s} Resources/Icons/VeraCrypt-${s}x${s}.xpm veracrypt.xpm + done + make_desktop_entry ${PN} "VeraCrypt" ${PN} "Utility;Security" + fi + + pax-mark -m "${D%/}/usr/bin/veracrypt" +} + +pkg_postinst() { + ewarn "VeraCrypt has a very restrictive license. Please be explicitly aware" + ewarn "of the limitations on redistribution of binaries or modified source." +} -- cgit v1.2.3