Linux/FreeBSD: Add 32-bit build configuration targetting legacy CPUs that don't support SSE2 instructions.
This commit is contained in:
parent
09afb91c89
commit
5455c89a50
|
@ -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
|
||||
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
|
||||
endif
|
||||
else
|
||||
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
|
||||
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
|
||||
INSTALLER_NAME := veracrypt-$(TC_VERSION)-setup-$(INSTALLER_TYPE)-$(CPU_ARCH)
|
||||
endif
|
||||
|
||||
endif
|
||||
#-----------------------------------
|
||||
|
|
19
src/Makefile
19
src/Makefile
|
@ -22,6 +22,7 @@
|
|||
# WXSTATIC: Use static wxWidgets library
|
||||
# SSSE3: Enable SSSE3 support in compiler
|
||||
# SSE41: Enable SSE4.1 support in compiler
|
||||
# NOSSE2: Disable SEE2 support in compiler
|
||||
|
||||
#------ Targets ------
|
||||
# all
|
||||
|
@ -158,6 +159,10 @@ else ifeq "$(CPU_ARCH)" "x64"
|
|||
C_CXX_FLAGS += -D TC_ARCH_X64
|
||||
endif
|
||||
|
||||
ifeq "$(origin NOSSE2)" "command line"
|
||||
SIMD_SUPPORTED := 0
|
||||
endif
|
||||
|
||||
|
||||
#------ Linux configuration ------
|
||||
|
||||
|
@ -211,6 +216,13 @@ ifeq "$(shell uname -s)" "Linux"
|
|||
WXCONFIG_CXXFLAGS += -D_GLIBCXX_USE_CXX11_ABI=0
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq "$(origin NOSSE2)" "command line"
|
||||
CFLAGS += -mno-sse2
|
||||
CXXFLAGS += -mno-sse2
|
||||
WXCONFIG_CFLAGS += -mno-sse2
|
||||
WXCONFIG_CXXFLAGS += -mno-sse2
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
|
@ -317,6 +329,13 @@ ifeq "$(shell uname -s)" "FreeBSD"
|
|||
CXXFLAGS += -mssse3 -msse4.1
|
||||
endif
|
||||
endif
|
||||
|
||||
ifeq "$(origin NOSSE2)" "command line"
|
||||
CFLAGS += -mno-sse2
|
||||
CXXFLAGS += -mno-sse2
|
||||
WXCONFIG_CFLAGS += -mno-sse2
|
||||
WXCONFIG_CXXFLAGS += -mno-sse2
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
|
|
Loading…
Reference in New Issue