mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-02 15:41:48 +00:00
truecrypt: fix build with gcc6 patch
The build was failing with gcc 6.4.0; using the samee gcc6 patch Arch Linux uses fixed the build. This commit also refactors out the builder.sh possibly fixing the NOGUI make flag option.
This commit is contained in:
parent
e6a83ed89c
commit
8b0de80e55
@ -1,15 +0,0 @@
|
||||
source $stdenv/setup
|
||||
|
||||
tar xvfz $src
|
||||
cd truecrypt-*
|
||||
|
||||
cp $pkcs11h pkcs11.h
|
||||
cp $pkcs11th pkcs11t.h
|
||||
cp $pkcs11fh pkcs11f.h
|
||||
|
||||
make PKCS11_INC="`pwd`"
|
||||
|
||||
mkdir -p $out/bin
|
||||
cp Main/truecrypt $out/bin
|
||||
mkdir -p $out/share/$name
|
||||
cp License.txt $out/share/$name/LICENSE
|
@ -46,7 +46,24 @@ library, use the 'NOGUI' parameter:
|
||||
|
||||
stdenv.mkDerivation {
|
||||
name = "truecrypt-7.1a";
|
||||
builder = ./builder.sh;
|
||||
|
||||
patchPhase = "patch -p0 < ${./gcc6.patch}";
|
||||
|
||||
preBuild = ''
|
||||
cp $pkcs11h pkcs11.h
|
||||
cp $pkcs11th pkcs11t.h
|
||||
cp $pkcs11fh pkcs11f.h
|
||||
'';
|
||||
|
||||
makeFlags = [
|
||||
''PKCS11_INC="`pwd`"''
|
||||
(if wxGUI then "" else "NOGUI=1")
|
||||
];
|
||||
|
||||
installPhase = ''
|
||||
install -D -t $out/bin Main/truecrypt
|
||||
install -D License.txt $out/share/$name/LICENSE
|
||||
'';
|
||||
|
||||
src = fetchurl {
|
||||
url = https://fossies.org/linux/misc/old/TrueCrypt-7.1a-Source.tar.gz;
|
||||
@ -68,14 +85,13 @@ stdenv.mkDerivation {
|
||||
sha256 = "5ae6a4f32ca737e02def3bf314c9842fb89be82bf00b6f4022a97d8d565522b8";
|
||||
};
|
||||
|
||||
buildInputs = [ pkgconfig fuse devicemapper wxGTK nasm ];
|
||||
makeFlags = if wxGUI then "" else "NOGUI=1";
|
||||
buildInputs = [ pkgconfig fuse devicemapper wxGTK nasm ];
|
||||
|
||||
meta = {
|
||||
description = "Free Open-Source filesystem on-the-fly encryption";
|
||||
homepage = http://www.truecrypt.org/;
|
||||
license = "TrueCrypt License Version 2.6";
|
||||
maintainers = with stdenv.lib.maintainers; [viric];
|
||||
maintainers = with stdenv.lib.maintainers; [ viric ryantm ];
|
||||
platforms = with stdenv.lib.platforms; linux;
|
||||
};
|
||||
}
|
||||
|
61
pkgs/applications/misc/truecrypt/gcc6.patch
Normal file
61
pkgs/applications/misc/truecrypt/gcc6.patch
Normal file
@ -0,0 +1,61 @@
|
||||
--- Main/Resources.cpp 2016-05-16 16:47:35.846462041 +0200
|
||||
+++ Main/Resources.cpp 2016-05-16 17:12:21.838202520 +0200
|
||||
@@ -45,13 +45,13 @@
|
||||
strBuf.CopyFrom (res);
|
||||
return string (reinterpret_cast <char *> (strBuf.Ptr()));
|
||||
#else
|
||||
- static const char LanguageXml[] =
|
||||
+ static byte LanguageXml[] =
|
||||
{
|
||||
# include "Common/Language.xml.h"
|
||||
, 0
|
||||
};
|
||||
|
||||
- return string (LanguageXml);
|
||||
+ return string ((const char*) LanguageXml);
|
||||
#endif
|
||||
}
|
||||
|
||||
@@ -64,13 +64,13 @@
|
||||
strBuf.CopyFrom (res);
|
||||
return string (reinterpret_cast <char *> (strBuf.Ptr()));
|
||||
#else
|
||||
- static const char License[] =
|
||||
+ static byte License[] =
|
||||
{
|
||||
# include "License.txt.h"
|
||||
, 0
|
||||
};
|
||||
|
||||
- return string (License);
|
||||
+ return string ((const char*) License);
|
||||
#endif
|
||||
}
|
||||
|
||||
--- Main/Forms/PreferencesDialog.cpp 2016-05-16 17:14:47.704707908 +0200
|
||||
+++ Main/Forms/PreferencesDialog.cpp 2016-05-16 17:15:56.927964437 +0200
|
||||
@@ -414,11 +414,11 @@
|
||||
libExtension = wxDynamicLibrary::CanonicalizeName (L"x");
|
||||
|
||||
#ifdef TC_MACOSX
|
||||
- extensions.push_back (make_pair (L"dylib", LangString["DLL_FILES"]));
|
||||
+ extensions.push_back (make_pair (L"dylib", static_cast<const wchar_t*>(LangString["DLL_FILES"].wc_str())));
|
||||
#endif
|
||||
if (!libExtension.empty())
|
||||
{
|
||||
- extensions.push_back (make_pair (libExtension.Mid (libExtension.find (L'.') + 1), LangString["DLL_FILES"]));
|
||||
+ extensions.push_back (make_pair (static_cast<const wchar_t*>(libExtension.Mid (libExtension.find (L'.') + 1).wc_str()), static_cast<const wchar_t*>(LangString["DLL_FILES"].wc_str())));
|
||||
extensions.push_back (make_pair (L"*", L""));
|
||||
}
|
||||
|
||||
--- Main/GraphicUserInterface.cpp 2016-05-16 17:16:38.724591342 +0200
|
||||
+++ Main/GraphicUserInterface.cpp 2016-05-16 17:17:09.854562653 +0200
|
||||
@@ -1445,7 +1445,7 @@
|
||||
FilePath GraphicUserInterface::SelectVolumeFile (wxWindow *parent, bool saveMode, const DirectoryPath &directory) const
|
||||
{
|
||||
list < pair <wstring, wstring> > extensions;
|
||||
- extensions.push_back (make_pair (L"tc", LangString["TC_VOLUMES"]));
|
||||
+ extensions.push_back (make_pair (L"tc", static_cast<const wchar_t*>(LangString["TC_VOLUMES"].wc_str())));
|
||||
|
||||
FilePathList selFiles = Gui->SelectFiles (parent, LangString[saveMode ? "OPEN_NEW_VOLUME" : "OPEN_VOL_TITLE"], saveMode, false, extensions, directory);
|
||||
|
Loading…
Reference in New Issue
Block a user