mirror of
https://github.com/veracrypt/VeraCrypt.git
synced 2025-11-11 19:08:26 -06:00
Linux/FreeBSD: Add 32-bit build configuration targetting legacy CPUs that don't support SSE2 instructions.
This commit is contained in:
47
src/Build/build_veracrypt_linux_no_sse2.sh
Executable file
47
src/Build/build_veracrypt_linux_no_sse2.sh
Executable file
@@ -0,0 +1,47 @@
|
|||||||
|
#
|
||||||
|
# Copyright (c) 2013-2017 IDRIX
|
||||||
|
# Governed by the Apache License 2.0 the full text of which is contained
|
||||||
|
# in the file License.txt included in VeraCrypt binary and source
|
||||||
|
# code distribution packages.
|
||||||
|
#
|
||||||
|
|
||||||
|
# Absolute path to this script
|
||||||
|
SCRIPT=$(readlink -f "$0")
|
||||||
|
# Absolute path this script is in
|
||||||
|
SCRIPTPATH=$(dirname "$SCRIPT")
|
||||||
|
# source directory which contains the Makefile
|
||||||
|
SOURCEPATH=$(readlink -f "$SCRIPTPATH/..")
|
||||||
|
# directory where the VeraCrypt has been checked out
|
||||||
|
PARENTDIR=$(readlink -f "$SCRIPTPATH/../../..")
|
||||||
|
|
||||||
|
# Make sure only root can run our script
|
||||||
|
if [ "$(id -u)" != "0" ]; then
|
||||||
|
echo "VeraCrypt must be built by root" 1>&2
|
||||||
|
exit 1
|
||||||
|
fi
|
||||||
|
|
||||||
|
# the sources of wxWidgets 3.0.3 must be extracted to the parent directory
|
||||||
|
export WX_ROOT=$PARENTDIR/wxWidgets-3.0.4
|
||||||
|
echo "Using wxWidgets sources in $WX_ROOT"
|
||||||
|
|
||||||
|
cd $SOURCEPATH
|
||||||
|
|
||||||
|
echo "Building GUI version of VeraCrypt"
|
||||||
|
|
||||||
|
# this will be the temporary wxWidgets directory
|
||||||
|
export WX_BUILD_DIR=$PARENTDIR/wxBuildGuiNoSSE2
|
||||||
|
|
||||||
|
make WXSTATIC=1 NOSSE2=1 wxbuild && make WXSTATIC=1 NOSSE2=1 clean && make WXSTATIC=1 NOSSE2=1 && make WXSTATIC=1 NOSSE2=1 package
|
||||||
|
|
||||||
|
# Uncomment below and comment line above to reuse existing wxWidgets build
|
||||||
|
# make WXSTATIC=1 NOSSE2=1 clean && make WXSTATIC=1 NOSSE2=1 && make WXSTATIC=1 NOSSE2=1 package
|
||||||
|
|
||||||
|
echo "Building console version of VeraCrypt"
|
||||||
|
|
||||||
|
# this will be the temporary wxWidgets directory
|
||||||
|
export WX_BUILD_DIR=$PARENTDIR/wxBuildConsoleNoSSE2
|
||||||
|
|
||||||
|
make WXSTATIC=1 NOGUI=1 NOSSE2=1 wxbuild && make WXSTATIC=1 NOGUI=1 NOSSE2=1 clean && make WXSTATIC=1 NOGUI=1 NOSSE2=1 && make WXSTATIC=1 NOGUI=1 NOSSE2=1 package
|
||||||
|
|
||||||
|
# Uncomment below and comment line above to reuse existing wxWidgets build
|
||||||
|
# make WXSTATIC=1 NOGUI=1 NOSSE2=1 clean && make WXSTATIC=1 NOGUI=1 NOSSE2=1 && make WXSTATIC=1 NOGUI=1 NOSSE2=1 package
|
||||||
@@ -121,14 +121,27 @@ ifeq "$(PLATFORM)" "Linux"
|
|||||||
|
|
||||||
ifdef TC_NO_GUI
|
ifdef TC_NO_GUI
|
||||||
INSTALLER_TYPE := console
|
INSTALLER_TYPE := console
|
||||||
|
ifeq "$(origin NOSSE2)" "command line"
|
||||||
|
PACKAGE_NAME := $(APPNAME)_$(TC_VERSION)_console_$(PLATFORM_ARCH)_legacy.tar.gz
|
||||||
|
else
|
||||||
PACKAGE_NAME := $(APPNAME)_$(TC_VERSION)_console_$(PLATFORM_ARCH).tar.gz
|
PACKAGE_NAME := $(APPNAME)_$(TC_VERSION)_console_$(PLATFORM_ARCH).tar.gz
|
||||||
|
endif
|
||||||
else
|
else
|
||||||
INSTALLER_TYPE := gui
|
INSTALLER_TYPE := gui
|
||||||
|
ifeq "$(origin NOSSE2)" "command line"
|
||||||
|
PACKAGE_NAME := $(APPNAME)_$(TC_VERSION)_$(PLATFORM_ARCH)_legacy.tar.gz
|
||||||
|
else
|
||||||
PACKAGE_NAME := $(APPNAME)_$(TC_VERSION)_$(PLATFORM_ARCH).tar.gz
|
PACKAGE_NAME := $(APPNAME)_$(TC_VERSION)_$(PLATFORM_ARCH).tar.gz
|
||||||
endif
|
endif
|
||||||
|
endif
|
||||||
|
|
||||||
|
ifeq "$(origin NOSSE2)" "command line"
|
||||||
|
INTERNAL_INSTALLER_NAME := veracrypt_install_$(INSTALLER_TYPE)_$(CPU_ARCH)_legacy.sh
|
||||||
|
INSTALLER_NAME := veracrypt-$(TC_VERSION)-setup-$(INSTALLER_TYPE)-$(CPU_ARCH)-legacy
|
||||||
|
else
|
||||||
INTERNAL_INSTALLER_NAME := veracrypt_install_$(INSTALLER_TYPE)_$(CPU_ARCH).sh
|
INTERNAL_INSTALLER_NAME := veracrypt_install_$(INSTALLER_TYPE)_$(CPU_ARCH).sh
|
||||||
INSTALLER_NAME := veracrypt-$(TC_VERSION)-setup-$(INSTALLER_TYPE)-$(CPU_ARCH)
|
INSTALLER_NAME := veracrypt-$(TC_VERSION)-setup-$(INSTALLER_TYPE)-$(CPU_ARCH)
|
||||||
|
endif
|
||||||
|
|
||||||
endif
|
endif
|
||||||
#-----------------------------------
|
#-----------------------------------
|
||||||
|
|||||||
19
src/Makefile
19
src/Makefile
@@ -22,6 +22,7 @@
|
|||||||
# WXSTATIC: Use static wxWidgets library
|
# WXSTATIC: Use static wxWidgets library
|
||||||
# SSSE3: Enable SSSE3 support in compiler
|
# SSSE3: Enable SSSE3 support in compiler
|
||||||
# SSE41: Enable SSE4.1 support in compiler
|
# SSE41: Enable SSE4.1 support in compiler
|
||||||
|
# NOSSE2: Disable SEE2 support in compiler
|
||||||
|
|
||||||
#------ Targets ------
|
#------ Targets ------
|
||||||
# all
|
# all
|
||||||
@@ -158,6 +159,10 @@ else ifeq "$(CPU_ARCH)" "x64"
|
|||||||
C_CXX_FLAGS += -D TC_ARCH_X64
|
C_CXX_FLAGS += -D TC_ARCH_X64
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifeq "$(origin NOSSE2)" "command line"
|
||||||
|
SIMD_SUPPORTED := 0
|
||||||
|
endif
|
||||||
|
|
||||||
|
|
||||||
#------ Linux configuration ------
|
#------ Linux configuration ------
|
||||||
|
|
||||||
@@ -212,6 +217,13 @@ ifeq "$(shell uname -s)" "Linux"
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifeq "$(origin NOSSE2)" "command line"
|
||||||
|
CFLAGS += -mno-sse2
|
||||||
|
CXXFLAGS += -mno-sse2
|
||||||
|
WXCONFIG_CFLAGS += -mno-sse2
|
||||||
|
WXCONFIG_CXXFLAGS += -mno-sse2
|
||||||
|
endif
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
#------ Mac OS X configuration ------
|
#------ Mac OS X configuration ------
|
||||||
@@ -318,6 +330,13 @@ ifeq "$(shell uname -s)" "FreeBSD"
|
|||||||
endif
|
endif
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
ifeq "$(origin NOSSE2)" "command line"
|
||||||
|
CFLAGS += -mno-sse2
|
||||||
|
CXXFLAGS += -mno-sse2
|
||||||
|
WXCONFIG_CFLAGS += -mno-sse2
|
||||||
|
WXCONFIG_CXXFLAGS += -mno-sse2
|
||||||
|
endif
|
||||||
|
|
||||||
endif
|
endif
|
||||||
|
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user