diff options
Diffstat (limited to 'src/Build')
-rw-r--r-- | src/Build/CMakeLists.txt | 36 | ||||
-rw-r--r-- | src/Build/Resources/MacOSX/Info.plist.legacy.xml | 2 | ||||
-rw-r--r-- | src/Build/Resources/MacOSX/Info.plist.xml | 2 | ||||
-rwxr-xr-x | src/Build/build_cmake_deb.sh | 105 | ||||
-rw-r--r-- | src/Build/build_cmake_opensuse.sh | 4 | ||||
-rw-r--r-- | src/Build/build_cmake_rpm_gtk2.sh | 4 | ||||
-rw-r--r-- | src/Build/build_cmake_rpm_gtk3.sh | 4 | ||||
-rwxr-xr-x | src/Build/build_veracrypt_freebsd.sh | 4 | ||||
-rwxr-xr-x | src/Build/build_veracrypt_linux.sh | 4 | ||||
-rw-r--r-- | src/Build/build_veracrypt_linux_gtk3.sh | 4 | ||||
-rwxr-xr-x | src/Build/build_veracrypt_linux_no_sse2.sh | 4 | ||||
-rwxr-xr-x | src/Build/build_veracrypt_macosx.sh | 11 |
12 files changed, 102 insertions, 82 deletions
diff --git a/src/Build/CMakeLists.txt b/src/Build/CMakeLists.txt index 86e552b5..9da138ab 100644 --- a/src/Build/CMakeLists.txt +++ b/src/Build/CMakeLists.txt @@ -11,8 +11,8 @@ elseif ( NOT DEFINED NOGUI ) endif() # - Set version of the package -set( FULL_VERSION "1.26.2" ) -set( VERSION "1.26.2" ) +set( FULL_VERSION "1.26.10" ) +set( VERSION "1.26.10" ) set( RELEASE "1" ) # - Set PROJECT_NAME and CONFLICT_PACKAGE values @@ -247,26 +247,40 @@ if ( ( PLATFORM STREQUAL "Debian" ) OR ( PLATFORM STREQUAL "Ubuntu" ) ) if (NOGUI) # Link against statically built wxWidgets so that we don't depend on any GTK library - set( CPACK_DEBIAN_PACKAGE_DEPENDS "libfuse2, dmsetup, sudo" ) + # In case of Ubuntu 24.04/ Debian 13 or newer, libfuse2 package was renamed libfuse2t64 + if ( ( ( PLATFORM STREQUAL "Debian" ) AND ( PLATFORM_VERSION VERSION_GREATER_EQUAL "13" ) ) + OR ( ( PLATFORM STREQUAL "Ubuntu" ) AND ( PLATFORM_VERSION VERSION_GREATER_EQUAL "24.04" ) ) ) + set( CPACK_DEBIAN_PACKAGE_DEPENDS "libfuse2t64, dmsetup, sudo, libpcsclite1, pcscd" ) + else () + set( CPACK_DEBIAN_PACKAGE_DEPENDS "libfuse2, dmsetup, sudo, libpcsclite1, pcscd" ) + endif() else () # Link against gtk3 version of wxWidgets if >= Debian 10 or >= Ubuntu 18.04 # Otherwise, link against gtk2 version of wxWidgets - if ( ( ( PLATFORM STREQUAL "Ubuntu" ) AND ( PLATFORM_VERSION VERSION_GREATER_EQUAL "23.04" ) ) ) + # In case of Ubuntu 24.04, we depend on libfuse2t64 instead of libfuse2 and we link statically against wxWidgets + # because there is a bug in wxWidgets that ships with Ubuntu 24.04 and which was fixed in wxWidgets 3.2.5 + if ( ( ( PLATFORM STREQUAL "Debian" ) AND ( PLATFORM_VERSION VERSION_GREATER_EQUAL "13" ) ) + OR ( ( PLATFORM STREQUAL "Ubuntu" ) AND ( PLATFORM_VERSION VERSION_GREATER_EQUAL "24.04" ) ) ) + + set( CPACK_DEBIAN_PACKAGE_DEPENDS "libgtk-3-0t64, libayatana-appindicator3-1, libfuse2t64, dmsetup, sudo, libpcsclite1, pcscd" ) + + elseif ( ( ( PLATFORM STREQUAL "Debian" ) AND ( PLATFORM_VERSION VERSION_GREATER_EQUAL "12" ) ) + OR ( ( PLATFORM STREQUAL "Ubuntu" ) AND ( PLATFORM_VERSION VERSION_GREATER_EQUAL "23.04" ) ) ) - set( CPACK_DEBIAN_PACKAGE_DEPENDS "libwxgtk3.2-1, libayatana-appindicator3-1, libfuse2, dmsetup, sudo" ) + set( CPACK_DEBIAN_PACKAGE_DEPENDS "libwxgtk3.2-1, libayatana-appindicator3-1, libfuse2, dmsetup, sudo, libpcsclite1, pcscd" ) elseif ( ( ( PLATFORM STREQUAL "Debian" ) AND ( PLATFORM_VERSION VERSION_GREATER_EQUAL "10" ) ) OR ( ( PLATFORM STREQUAL "Ubuntu" ) AND ( PLATFORM_VERSION VERSION_GREATER_EQUAL "18.04" ) ) ) - set( CPACK_DEBIAN_PACKAGE_DEPENDS "libwxgtk3.0-gtk3-0v5, libayatana-appindicator3-1, libfuse2, dmsetup, sudo" ) + set( CPACK_DEBIAN_PACKAGE_DEPENDS "libwxgtk3.0-gtk3-0v5, libayatana-appindicator3-1, libfuse2, dmsetup, sudo, libpcsclite1, pcscd" ) else () # Link against statically built wxWidgets on Ubuntu 14.04 and older, and Debian 8 and older if ( ( ( PLATFORM STREQUAL "Debian" ) AND ( PLATFORM_VERSION VERSION_LESS_EQUAL "8" ) ) OR ( ( PLATFORM STREQUAL "Ubuntu" ) AND ( PLATFORM_VERSION VERSION_LESS_EQUAL "14.04" ) ) ) - set( CPACK_DEBIAN_PACKAGE_DEPENDS "libgtk2.0-0, libfuse2, dmsetup, sudo" ) + set( CPACK_DEBIAN_PACKAGE_DEPENDS "libgtk2.0-0, libfuse2, dmsetup, sudo, libpcsclite1, pcscd" ) else () - set( CPACK_DEBIAN_PACKAGE_DEPENDS "libwxgtk3.0-0v5, libfuse2, dmsetup, sudo" ) + set( CPACK_DEBIAN_PACKAGE_DEPENDS "libwxgtk3.0-0v5, libfuse2, dmsetup, sudo, libpcsclite1, pcscd" ) endif () endif() @@ -307,14 +321,14 @@ elseif ( ( PLATFORM STREQUAL "CentOS" ) OR ( PLATFORM STREQUAL "openSUSE" ) ) if ( PLATFORM STREQUAL "CentOS" ) if ( DEFINED WITHGTK3 AND WITHGTK3 ) - set( CPACK_RPM_PACKAGE_REQUIRES "fuse, device-mapper, gtk3, sudo" ) + set( CPACK_RPM_PACKAGE_REQUIRES "fuse, device-mapper, gtk3, sudo, pcsc-lite" ) else () - set( CPACK_RPM_PACKAGE_REQUIRES "fuse, device-mapper, gtk2, sudo" ) + set( CPACK_RPM_PACKAGE_REQUIRES "fuse, device-mapper, gtk2, sudo, pcsc-lite" ) endif() elseif ( PLATFORM STREQUAL "openSUSE" ) - set( CPACK_RPM_PACKAGE_REQUIRES "fuse, device-mapper, gtk2, sudo" ) + set( CPACK_RPM_PACKAGE_REQUIRES "fuse, device-mapper, gtk2, sudo, pcsc-lite" ) endif() endif() diff --git a/src/Build/Resources/MacOSX/Info.plist.legacy.xml b/src/Build/Resources/MacOSX/Info.plist.legacy.xml index 6b04b9d1..6b86f9f5 100644 --- a/src/Build/Resources/MacOSX/Info.plist.legacy.xml +++ b/src/Build/Resources/MacOSX/Info.plist.legacy.xml @@ -74,7 +74,7 @@ <string>TRUE</string> <key>CFBundleVersion</key> - <string>1.26.2</string> + <string>1.26.10</string> <key>CFBundleShortVersionString</key> <string>_VERSION_</string> diff --git a/src/Build/Resources/MacOSX/Info.plist.xml b/src/Build/Resources/MacOSX/Info.plist.xml index 5ecac805..1a12d6bf 100644 --- a/src/Build/Resources/MacOSX/Info.plist.xml +++ b/src/Build/Resources/MacOSX/Info.plist.xml @@ -74,7 +74,7 @@ <string>TRUE</string> <key>CFBundleVersion</key> - <string>1.26.2</string> + <string>1.26.10</string> <key>CFBundleShortVersionString</key> <string>_VERSION_</string> diff --git a/src/Build/build_cmake_deb.sh b/src/Build/build_cmake_deb.sh index e02edf2f..f756cd10 100755 --- a/src/Build/build_cmake_deb.sh +++ b/src/Build/build_cmake_deb.sh @@ -18,69 +18,74 @@ export SOURCEPATH=$(readlink -f "$SCRIPTPATH/..") # Directory where the VeraCrypt has been checked out export PARENTDIR=$(readlink -f "$SCRIPTPATH/../../..") -# The sources of wxWidgets 3.0.5 must be extracted to the parent directory -export WX_ROOT=$PARENTDIR/wxWidgets-3.0.5 +# The sources of wxWidgets 3.2.5 must be extracted to the parent directory +export WX_ROOT=$PARENTDIR/wxWidgets-3.2.5 echo "Using wxWidgets sources in $WX_ROOT" cd $SOURCEPATH -if [ "$#" = "1" ] && [ "$1" = "WXSTATIC" ] -then -echo "Building GUI version of VeraCrypt for DEB using wxWidgets static libraries" - -# This will be the temporary wxWidgets directory -export WX_BUILD_DIR=$PARENTDIR/wxBuildGUI - -# To build wxWidgets without GUI -make WXSTATIC=1 wxbuild || exit 1 -make WXSTATIC=1 clean || exit 1 -make WXSTATIC=1 || exit 1 -make WXSTATIC=1 install DESTDIR="$PARENTDIR/VeraCrypt_Setup/GUI" || exit 1 - -else - -echo "Building GUI version of VeraCrypt for DEB using system wxWidgets" -make clean || exit 1 - -if [ "$#" = "1" ] && [ "$1" = "INDICATOR" ] -then - -make INDICATOR=1 || exit 1 -make INDICATOR=1 install DESTDIR="$PARENTDIR/VeraCrypt_Setup/GUI" || exit 1 - -else - -make || exit 1 -make install DESTDIR="$PARENTDIR/VeraCrypt_Setup/GUI" || exit 1 - -fi - -fi +build_and_install() { + target=$1 + wxstatic=$2 + indicator=$3 + nogui="" + + # Determine wxWidgets build directory based on target + if [ "$target" = "Console" ]; then + export WX_BUILD_DIR="$PARENTDIR/wxBuildConsole" + nogui="NOGUI=1" + else + export WX_BUILD_DIR="$PARENTDIR/wxBuildGUI" + fi + + wxstatic_value="" + if [ "$wxstatic" = "WXSTATIC" ]; then + wxstatic_value="WXSTATIC=1" + make $wxstatic_value $nogui wxbuild || exit 1 + fi + + indicator_value="" + if [ "$indicator" = "INDICATOR" ]; then + indicator_value="INDICATOR=1" + fi + + make $wxstatic_value $indicator_value $nogui clean || exit 1 + make $wxstatic_value $indicator_value $nogui || exit 1 + make $wxstatic_value $indicator_value $nogui install DESTDIR="$PARENTDIR/VeraCrypt_Setup/$target" || exit 1 +} + +# Handle arguments +case "$1$2" in +"WXSTATIC") + echo "Building GUI version of VeraCrypt for DEB using wxWidgets static libraries" + build_and_install "GUI" "WXSTATIC" "" + ;; +"INDICATOR") + echo "Building GUI version of VeraCrypt for DEB using system wxWidgets and indicator" + build_and_install "GUI" "" "INDICATOR" + ;; +"WXSTATICINDICATOR"|"INDICATORWXSTATIC") + echo "Building GUI version of VeraCrypt for DEB using wxWidgets static libraries and indicator" + build_and_install "GUI" "WXSTATIC" "INDICATOR" + ;; +*) + echo "Building GUI version of VeraCrypt for DEB using system wxWidgets" + build_and_install "GUI" "" "" + ;; +esac echo "Building console version of VeraCrypt for DEB using wxWidgets static libraries" - -# This is to avoid " Error: Unable to initialize GTK+, is DISPLAY set properly?" -# when building over SSH without X11 Forwarding -# export DISPLAY=:0.0 - -# This will be the temporary wxWidgets directory -export WX_BUILD_DIR=$PARENTDIR/wxBuildConsole - -# To build wxWidgets without GUI -make WXSTATIC=1 NOGUI=1 wxbuild || exit 1 -make WXSTATIC=1 NOGUI=1 clean || exit 1 -make WXSTATIC=1 NOGUI=1 || exit 1 -make WXSTATIC=1 NOGUI=1 install DESTDIR="$PARENTDIR/VeraCrypt_Setup/Console" || exit 1 +build_and_install "Console" "WXSTATIC" "" echo "Creating VeraCrypt DEB packages" # -DCPACK_RPM_PACKAGE_DEBUG=TRUE for debugging cpack DEB # -DCPACK_RPM_PACKAGE_DEBUG=TRUE for debugging cpack DEB -mkdir -p $PARENTDIR/VeraCrypt_Packaging/GUI -mkdir -p $PARENTDIR/VeraCrypt_Packaging/Console +mkdir -p $PARENTDIR/VeraCrypt_Packaging/{GUI,Console} cmake -H$SCRIPTPATH -B$PARENTDIR/VeraCrypt_Packaging/GUI -DVERACRYPT_BUILD_DIR="$PARENTDIR/VeraCrypt_Setup/GUI" -DNOGUI=FALSE || exit 1 cpack --config $PARENTDIR/VeraCrypt_Packaging/GUI/CPackConfig.cmake || exit 1 + cmake -H$SCRIPTPATH -B$PARENTDIR/VeraCrypt_Packaging/Console -DVERACRYPT_BUILD_DIR="$PARENTDIR/VeraCrypt_Setup/Console" -DNOGUI=TRUE || exit 1 -cpack --config $PARENTDIR/VeraCrypt_Packaging/Console/CPackConfig.cmake || exit 1 +cpack --config $PARENTDIR/VeraCrypt_Packaging/Console/CPackConfig.cmake || exit 1 diff --git a/src/Build/build_cmake_opensuse.sh b/src/Build/build_cmake_opensuse.sh index 81ca47cf..622eb4cd 100644 --- a/src/Build/build_cmake_opensuse.sh +++ b/src/Build/build_cmake_opensuse.sh @@ -18,8 +18,8 @@ export SOURCEPATH=$(readlink -f "$SCRIPTPATH/..") # Directory where the VeraCrypt has been checked out export PARENTDIR=$(readlink -f "$SCRIPTPATH/../../..") -# The sources of wxWidgets 3.0.5 must be extracted to the parent directory -export WX_ROOT=$PARENTDIR/wxWidgets-3.0.5 +# The sources of wxWidgets 3.2.2.1 must be extracted to the parent directory +export WX_ROOT=$PARENTDIR/wxWidgets-3.2.2.1 echo "Using wxWidgets sources in $WX_ROOT" cd $SOURCEPATH diff --git a/src/Build/build_cmake_rpm_gtk2.sh b/src/Build/build_cmake_rpm_gtk2.sh index 23472356..3f33cc1c 100644 --- a/src/Build/build_cmake_rpm_gtk2.sh +++ b/src/Build/build_cmake_rpm_gtk2.sh @@ -18,8 +18,8 @@ export SOURCEPATH=$(readlink -f "$SCRIPTPATH/..") # Directory where the VeraCrypt has been checked out export PARENTDIR=$(readlink -f "$SCRIPTPATH/../../..") -# The sources of wxWidgets 3.0.5 must be extracted to the parent directory -export WX_ROOT=$PARENTDIR/wxWidgets-3.0.5 +# The sources of wxWidgets 3.2.2.1 must be extracted to the parent directory +export WX_ROOT=$PARENTDIR/wxWidgets-3.2.2.1 echo "Using wxWidgets sources in $WX_ROOT" cd $SOURCEPATH diff --git a/src/Build/build_cmake_rpm_gtk3.sh b/src/Build/build_cmake_rpm_gtk3.sh index e13b5d06..72556dcf 100644 --- a/src/Build/build_cmake_rpm_gtk3.sh +++ b/src/Build/build_cmake_rpm_gtk3.sh @@ -18,8 +18,8 @@ export SOURCEPATH=$(readlink -f "$SCRIPTPATH/..") # Directory where the VeraCrypt has been checked out export PARENTDIR=$(readlink -f "$SCRIPTPATH/../../..") -# The sources of wxWidgets 3.0.5 must be extracted to the parent directory -export WX_ROOT=$PARENTDIR/wxWidgets-3.0.5 +# The sources of wxWidgets 3.2.2.1 must be extracted to the parent directory +export WX_ROOT=$PARENTDIR/wxWidgets-3.2.2.1 echo "Using wxWidgets sources in $WX_ROOT" cd $SOURCEPATH diff --git a/src/Build/build_veracrypt_freebsd.sh b/src/Build/build_veracrypt_freebsd.sh index 33f4bf48..176c8499 100755 --- a/src/Build/build_veracrypt_freebsd.sh +++ b/src/Build/build_veracrypt_freebsd.sh @@ -21,8 +21,8 @@ if [ "$(id -u)" != "0" ]; then exit 1 fi -# the sources of wxWidgets 3.0.5 must be extracted to the parent directory -export WX_ROOT=$PARENTDIR/wxWidgets-3.0.5 +# the sources of wxWidgets 3.2.2.1 must be extracted to the parent directory +export WX_ROOT=$PARENTDIR/wxWidgets-3.2.2.1 echo "Using wxWidgets sources in $WX_ROOT" cd $SOURCEPATH diff --git a/src/Build/build_veracrypt_linux.sh b/src/Build/build_veracrypt_linux.sh index 7815e63f..fa928556 100755 --- a/src/Build/build_veracrypt_linux.sh +++ b/src/Build/build_veracrypt_linux.sh @@ -20,8 +20,8 @@ if [ "$(id -u)" != "0" ]; then exit 1 fi -# the sources of wxWidgets 3.0.5 must be extracted to the parent directory -export WX_ROOT=$PARENTDIR/wxWidgets-3.0.5 +# the sources of wxWidgets 3.2.2.1 must be extracted to the parent directory +export WX_ROOT=$PARENTDIR/wxWidgets-3.2.2.1 echo "Using wxWidgets sources in $WX_ROOT" cd $SOURCEPATH diff --git a/src/Build/build_veracrypt_linux_gtk3.sh b/src/Build/build_veracrypt_linux_gtk3.sh index d5a7444a..bae6a856 100644 --- a/src/Build/build_veracrypt_linux_gtk3.sh +++ b/src/Build/build_veracrypt_linux_gtk3.sh @@ -20,8 +20,8 @@ if [ "$(id -u)" != "0" ]; then exit 1 fi -# the sources of wxWidgets 3.0.5 must be extracted to the parent directory -export WX_ROOT=$PARENTDIR/wxWidgets-3.0.5 +# the sources of wxWidgets 3.2.2.1 must be extracted to the parent directory +export WX_ROOT=$PARENTDIR/wxWidgets-3.2.2.1 echo "Using wxWidgets sources in $WX_ROOT" cd $SOURCEPATH diff --git a/src/Build/build_veracrypt_linux_no_sse2.sh b/src/Build/build_veracrypt_linux_no_sse2.sh index 2916f846..f68641b9 100755 --- a/src/Build/build_veracrypt_linux_no_sse2.sh +++ b/src/Build/build_veracrypt_linux_no_sse2.sh @@ -20,8 +20,8 @@ if [ "$(id -u)" != "0" ]; then exit 1 fi -# the sources of wxWidgets 3.0.5 must be extracted to the parent directory -export WX_ROOT=$PARENTDIR/wxWidgets-3.0.5 +# the sources of wxWidgets 3.2.2.1 must be extracted to the parent directory +export WX_ROOT=$PARENTDIR/wxWidgets-3.2.2.1 echo "Using wxWidgets sources in $WX_ROOT" cd $SOURCEPATH diff --git a/src/Build/build_veracrypt_macosx.sh b/src/Build/build_veracrypt_macosx.sh index 4636d27d..12899620 100755 --- a/src/Build/build_veracrypt_macosx.sh +++ b/src/Build/build_veracrypt_macosx.sh @@ -13,15 +13,15 @@ SOURCEPATH=$(cd "$(dirname "$SCRIPTPATH/../.")"; pwd) PARENTDIR=$(cd "$(dirname "$SCRIPTPATH/../../../.")"; pwd) # the sources of wxWidgets 3.1.2 must be extracted to the parent directory (for night mode) -export WX_ROOT=$PARENTDIR/wxWidgets-3.1.2 +export WX_ROOT=$PARENTDIR/wxWidgets-3.2.2.1 echo "Using wxWidgets sources in $WX_ROOT" # this will be the temporary wxWidgets directory -export WX_BUILD_DIR=$PARENTDIR/wxBuild-3.1.2 +export WX_BUILD_DIR=$PARENTDIR/wxBuild-3.2.2.1 # define the SDK version to use and OSX minimum target. We target 10.9 by default -export VC_OSX_TARGET=10.9 -export VC_OSX_SDK=11.3 +export VC_OSX_TARGET=12 +export VC_OSX_SDK=13 echo "Using MacOSX SDK $VC_OSX_SDK with target set to $VC_OSX_TARGET" cd $SOURCEPATH @@ -30,4 +30,5 @@ echo "Building VeraCrypt" make WXSTATIC=FULL wxbuild && make WXSTATIC=FULL clean && make WXSTATIC=FULL && make WXSTATIC=FULL package # Uncomment below and comment line above to reuse existing wxWidgets build -# make WXSTATIC=FULL clean && make WXSTATIC=FULL && make WXSTATIC=FULL package
\ No newline at end of file +# make WXSTATIC=FULL clean && make WXSTATIC=FULL && make WXSTATIC=FULL package + |