mirror of
https://github.com/veracrypt/VeraCrypt
synced 2024-11-24 03:53:29 +01:00
MacOSX: First native Apple M1 support
This commit is contained in:
parent
33baca7261
commit
8ae5a715d6
@ -56,9 +56,13 @@ namespace VeraCrypt
|
||||
#elif defined (TC_MACOSX)
|
||||
# ifdef __x86_64__
|
||||
faultingInstructionAddress = context->uc_mcontext->__ss.__rip;
|
||||
# else
|
||||
# ifdef __aarch64__
|
||||
faultingInstructionAddress = context->uc_mcontext->__ss.__pc;
|
||||
# else
|
||||
faultingInstructionAddress = context->uc_mcontext->__ss.__eip;
|
||||
# endif
|
||||
# endif
|
||||
|
||||
#endif
|
||||
wstringstream vars;
|
||||
|
@ -282,7 +282,7 @@ namespace VeraCrypt
|
||||
VolumeStaticBoxSizer->Detach (VolumeGridBagSizer);
|
||||
VolumeStaticBoxSizer->Add (VolumeGridBagSizer, 1, wxEXPAND, 0);
|
||||
|
||||
ExitButton->SetLabel (LangString["CLOSE"]);
|
||||
ExitButton->SetLabel (LangString["IDCLOSE"]);
|
||||
MountAllDevicesButton->SetLabel (LangString["LINUX_MOUNT_ALL_DEV"]);
|
||||
#endif
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
#ifdef TC_LINUX
|
||||
#ifndef TC_WINDOWS
|
||||
#include "Main/LanguageStrings.h"
|
||||
#undef _
|
||||
#define _(key) LangString[key]
|
||||
|
@ -29,6 +29,9 @@ namespace VeraCrypt
|
||||
{
|
||||
if (Map.count (key) > 0)
|
||||
return wxString (Map.find (key)->second);
|
||||
// return "VeraCrypt" as it is
|
||||
if (key == "VeraCrypt")
|
||||
return L"VeraCrypt";
|
||||
|
||||
return wxString (L"?") + StringConverter::ToWide (key) + L"?";
|
||||
}
|
||||
@ -40,7 +43,6 @@ namespace VeraCrypt
|
||||
|
||||
void LanguageStrings::Init ()
|
||||
{
|
||||
#ifdef TC_LINUX
|
||||
static byte LanguageXml[] =
|
||||
{
|
||||
# include "Common/Language.xml.h"
|
||||
@ -53,7 +55,7 @@ namespace VeraCrypt
|
||||
text.Replace (L"\\n", L"\n");
|
||||
Map[StringConverter::ToSingle (wstring (node.Attributes[L"key"]))] = text;
|
||||
}
|
||||
#endif
|
||||
|
||||
foreach (XmlNode node, XmlParser (Resources::GetLanguageXml()).GetNodes (L"entry"))
|
||||
{
|
||||
wxString text = node.InnerText;
|
||||
|
@ -178,6 +178,7 @@ endif
|
||||
ifeq "$(PLATFORM)" "MacOSX"
|
||||
prepare: $(APPNAME)
|
||||
mkdir -p $(APPNAME).app/Contents/MacOS $(APPNAME).app/Contents/Resources/doc/HTML
|
||||
mkdir -p $(APPNAME).app/Contents/MacOS $(APPNAME).app/Contents/Resources/languages
|
||||
-rm -f $(APPNAME).app/Contents/MacOS/$(APPNAME)
|
||||
-rm -f $(APPNAME).app/Contents/MacOS/$(APPNAME)_console
|
||||
|
||||
@ -200,6 +201,7 @@ endif
|
||||
cp $(BASE_DIR)/Resources/Icons/VeraCrypt.icns $(APPNAME).app/Contents/Resources
|
||||
cp $(BASE_DIR)/Resources/Icons/VeraCrypt_Volume.icns $(APPNAME).app/Contents/Resources
|
||||
cp $(BASE_DIR)/../doc/html/* $(APPNAME).app/Contents/Resources/doc/HTML
|
||||
cp $(BASE_DIR)/../Translations/* $(APPNAME).app/Contents/Resources/languages
|
||||
|
||||
echo -n APPLTRUE >$(APPNAME).app/Contents/PkgInfo
|
||||
ifdef VC_LEGACY_BUILD
|
||||
|
@ -14,16 +14,17 @@
|
||||
#include "Platform/Platform.h"
|
||||
#include "Resources.h"
|
||||
|
||||
#ifdef TC_LINUX
|
||||
#ifdef TC_WINDOWS
|
||||
#include "Main/resource.h"
|
||||
#else
|
||||
#ifdef TC_MACOSX
|
||||
#include "Application.h"
|
||||
#endif
|
||||
#include "Platform/File.h"
|
||||
#include "Platform/StringConverter.h"
|
||||
#include <stdio.h>
|
||||
#endif
|
||||
|
||||
#ifdef TC_WINDOWS
|
||||
#include "Main/resource.h"
|
||||
#endif
|
||||
|
||||
namespace VeraCrypt
|
||||
{
|
||||
|
||||
@ -54,13 +55,17 @@ namespace VeraCrypt
|
||||
strBuf.Zero();
|
||||
strBuf.CopyFrom (res);
|
||||
return string (reinterpret_cast <char *> (strBuf.Ptr()));
|
||||
#elif TC_LINUX
|
||||
#else
|
||||
// get language from env LANG
|
||||
// support: C,POSIX,
|
||||
// support for e.g. german: de_DE.UTF-8, de.UTF8, de_DE, de
|
||||
// not support e.g.: de@Euro
|
||||
string defaultLang("en");
|
||||
#if defined (TC_MACOSX)
|
||||
string filenamePrefix = StringConverter::ToSingle (Application::GetExecutableDirectory()) + "/../Resources/languages/Language.";
|
||||
#else
|
||||
string filenamePrefix("/usr/share/veracrypt/languages/Language.");
|
||||
#endif
|
||||
string filenamePost(".xml");
|
||||
string filename = filenamePrefix + defaultLang + filenamePost;
|
||||
if(const char* env_p = getenv("LANG")){
|
||||
@ -126,14 +131,6 @@ namespace VeraCrypt
|
||||
, 0
|
||||
};
|
||||
|
||||
return string ((const char*) LanguageXml);
|
||||
#else
|
||||
static byte LanguageXml[] =
|
||||
{
|
||||
# include "Common/Language.xml.h"
|
||||
, 0
|
||||
};
|
||||
|
||||
return string ((const char*) LanguageXml);
|
||||
#endif
|
||||
}
|
||||
|
12
src/Makefile
12
src/Makefile
@ -274,6 +274,10 @@ ifeq "$(shell uname -s)" "Darwin"
|
||||
ifeq "$(CPU_ARCH)" "x64"
|
||||
CPU_ARCH = x86
|
||||
endif
|
||||
|
||||
ifeq "$(CPU_ARCH)" "arm64"
|
||||
CPU_ARCH = x86
|
||||
endif
|
||||
|
||||
CFLAGS += -msse2
|
||||
CXXFLAGS += -msse2
|
||||
@ -302,14 +306,18 @@ ifeq "$(shell uname -s)" "Darwin"
|
||||
C_CXX_FLAGS += -gfull -arch x86_64
|
||||
LFLAGS += -Wl,-dead_strip -arch x86_64
|
||||
|
||||
WX_CONFIGURE_FLAGS += --without-libpng --disable-gif --disable-pcx --disable-tga --disable-iff --disable-gif --disable-svg
|
||||
|
||||
#----- Legacy build: we build both 32-bit and 64-bit ----
|
||||
ifdef VC_LEGACY_BUILD
|
||||
C_CXX_FLAGS += -arch i386
|
||||
LFLAGS += -arch i386
|
||||
WX_CONFIGURE_FLAGS += --enable-universal_binary=i386,x86_64
|
||||
else
|
||||
CXXFLAGS += -std=c++11
|
||||
WX_CONFIGURE_FLAGS += --disable-universal_binary
|
||||
CXXFLAGS += -std=c++11
|
||||
C_CXX_FLAGS += -arch arm64
|
||||
LFLAGS += -arch arm64
|
||||
WX_CONFIGURE_FLAGS += --enable-universal_binary=arm64,x86_64
|
||||
endif
|
||||
|
||||
WXCONFIG_CFLAGS += -gfull
|
||||
|
Loading…
Reference in New Issue
Block a user