mirror of
https://github.com/veracrypt/VeraCrypt.git
synced 2026-06-15 09:06:08 -05:00
Linux: add support for building against FUSE3
This commit is contained in:
+42
-25
@@ -10,6 +10,8 @@ elseif ( NOT DEFINED NOGUI )
|
||||
MESSAGE(FATAL_ERROR "NOGUI variable MUST BE set to TRUE if building 'Console' version, 'FALSE' otherwise")
|
||||
endif()
|
||||
|
||||
option(VC_WITH_FUSE3 "Link against FUSE3 instead of FUSE2 when packaging" OFF)
|
||||
|
||||
# - Set version of the package
|
||||
set( FULL_VERSION "1.26.27" )
|
||||
set( VERSION "1.26.27" )
|
||||
@@ -268,46 +270,56 @@ if ( ( PLATFORM STREQUAL "Debian" ) OR ( PLATFORM STREQUAL "Ubuntu" ) )
|
||||
set( CPACK_DEBIAN_PACKAGE_RELEASE ${CPACK_PACKAGE_RELEASE} )
|
||||
set( CPACK_DEBIAN_PACKAGE_ARCHITECTURE ${ARCHITECTURE} ) # mandatory
|
||||
|
||||
# Determine the FUSE runtime package name that matches the selected FUSE version
|
||||
set(VC_DEBIAN_USE_T64 FALSE)
|
||||
if ( ( ( PLATFORM STREQUAL "Debian" ) AND ( PLATFORM_VERSION VERSION_GREATER_EQUAL "13" ) )
|
||||
OR ( ( PLATFORM STREQUAL "Ubuntu" ) AND ( PLATFORM_VERSION VERSION_GREATER_EQUAL "24.04" ) ) )
|
||||
set(VC_DEBIAN_USE_T64 TRUE)
|
||||
endif ()
|
||||
if (VC_WITH_FUSE3)
|
||||
set(VC_DEBIAN_FUSE_PACKAGE "libfuse3-3")
|
||||
else ()
|
||||
if (VC_DEBIAN_USE_T64)
|
||||
set(VC_DEBIAN_FUSE_PACKAGE "libfuse2t64")
|
||||
else ()
|
||||
set(VC_DEBIAN_FUSE_PACKAGE "libfuse2")
|
||||
endif ()
|
||||
endif ()
|
||||
|
||||
if (NOGUI)
|
||||
# Link against statically built wxWidgets so that we don't depend on any GTK library
|
||||
# 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" )
|
||||
else ()
|
||||
set( CPACK_DEBIAN_PACKAGE_DEPENDS "libfuse2, dmsetup, sudo" )
|
||||
endif()
|
||||
set( CPACK_DEBIAN_PACKAGE_DEPENDS "${VC_DEBIAN_FUSE_PACKAGE}, dmsetup, sudo" )
|
||||
else ()
|
||||
# Link against gtk3 version of wxWidgets if >= Debian 10 or >= Ubuntu 18.04
|
||||
# Otherwise, link against gtk2 version of wxWidgets
|
||||
if ( ( ( PLATFORM STREQUAL "Debian" ) AND ( PLATFORM_VERSION VERSION_GREATER_EQUAL "13" ) )
|
||||
OR ( ( PLATFORM STREQUAL "Ubuntu" ) AND ( PLATFORM_VERSION VERSION_GREATER_EQUAL "25.04" ) ) )
|
||||
|
||||
set( CPACK_DEBIAN_PACKAGE_DEPENDS "libwxgtk3.2-1t64, libayatana-appindicator3-1, libfuse2t64, dmsetup, sudo" )
|
||||
set( CPACK_DEBIAN_PACKAGE_DEPENDS "libwxgtk3.2-1t64, libayatana-appindicator3-1, ${VC_DEBIAN_FUSE_PACKAGE}, dmsetup, sudo" )
|
||||
|
||||
# In case of Ubuntu 24.04, we depend on libfuse2t64 instead of libfuse2 and we link statically against wxWidgets
|
||||
# In case of Ubuntu 24.04, we depend on the t64 variant of the FUSE package 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
|
||||
elseif ( ( 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" )
|
||||
|
||||
elseif ( ( ( PLATFORM STREQUAL "Debian" ) AND ( PLATFORM_VERSION VERSION_GREATER_EQUAL "12" ) )
|
||||
set( CPACK_DEBIAN_PACKAGE_DEPENDS "libgtk-3-0t64, libayatana-appindicator3-1, ${VC_DEBIAN_FUSE_PACKAGE}, dmsetup, sudo" )
|
||||
|
||||
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" )
|
||||
|
||||
elseif ( ( ( PLATFORM STREQUAL "Debian" ) AND ( PLATFORM_VERSION VERSION_GREATER_EQUAL "10" ) )
|
||||
|
||||
set( CPACK_DEBIAN_PACKAGE_DEPENDS "libwxgtk3.2-1, libayatana-appindicator3-1, ${VC_DEBIAN_FUSE_PACKAGE}, dmsetup, sudo" )
|
||||
|
||||
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, ${VC_DEBIAN_FUSE_PACKAGE}, dmsetup, sudo" )
|
||||
|
||||
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, ${VC_DEBIAN_FUSE_PACKAGE}, dmsetup, sudo" )
|
||||
else ()
|
||||
set( CPACK_DEBIAN_PACKAGE_DEPENDS "libwxgtk3.0-0v5, libfuse2, dmsetup, sudo" )
|
||||
set( CPACK_DEBIAN_PACKAGE_DEPENDS "libwxgtk3.0-0v5, ${VC_DEBIAN_FUSE_PACKAGE}, dmsetup, sudo" )
|
||||
endif ()
|
||||
|
||||
endif()
|
||||
@@ -330,7 +342,7 @@ elseif ( ( PLATFORM STREQUAL "CentOS" ) OR ( PLATFORM STREQUAL "openSUSE" ) OR (
|
||||
set( RPM_PRERM ${CMAKE_CURRENT_BINARY_DIR}/Packaging/rpm-control/prerm.sh)
|
||||
|
||||
set( CPACK_GENERATOR "RPM" ) # mandatory
|
||||
set( CPACK_RPM_PACKAGE_SUMMARY ${CPACK_PACKAGE_SUMMARY} ) # mandatory
|
||||
set( CPACK_RPM_PACKAGE_SUMMARY ${CPACK_PACKAGE_DESCRIPTION_SUMMARY} ) # mandatory
|
||||
set( CPACK_RPM_PACKAGE_DESCRIPTION ${CPACK_PACKAGE_DESCRIPTION} ) # mandatory
|
||||
set( CPACK_RPM_PACKAGE_NAME ${CPACK_PACKAGE_NAME} ) # mandatory
|
||||
set( CPACK_RPM_FILE_NAME ${CPACK_PACKAGE_FILE_NAME}.rpm ) # mandatory
|
||||
@@ -341,17 +353,22 @@ elseif ( ( PLATFORM STREQUAL "CentOS" ) OR ( PLATFORM STREQUAL "openSUSE" ) OR (
|
||||
set( CPACK_RPM_PACKAGE_GROUP "Applications/System" ) # mandatory, https://fedoraproject.org/wiki/RPMGroups
|
||||
set( CPACK_RPM_PACKAGE_VENDOR ${CPACK_PACKAGE_VENDOR} ) # mandatory
|
||||
set( CPACK_RPM_PACKAGE_AUTOREQ "no" ) # disable automatic shared libraries dependency detection (most of the time buggy)
|
||||
if (VC_WITH_FUSE3)
|
||||
set(VC_RPM_FUSE_PACKAGE "fuse3")
|
||||
else ()
|
||||
set(VC_RPM_FUSE_PACKAGE "fuse")
|
||||
endif ()
|
||||
|
||||
if (NOGUI)
|
||||
set( CPACK_RPM_PACKAGE_REQUIRES "fuse, device-mapper, sudo" )
|
||||
set( CPACK_RPM_PACKAGE_REQUIRES "${VC_RPM_FUSE_PACKAGE}, device-mapper, sudo" )
|
||||
else ()
|
||||
find_package(PkgConfig REQUIRED)
|
||||
pkg_check_modules(GTK3 gtk+-3.0)
|
||||
|
||||
if(GTK3_FOUND)
|
||||
set( CPACK_RPM_PACKAGE_REQUIRES "fuse, device-mapper, gtk3, sudo" )
|
||||
set( CPACK_RPM_PACKAGE_REQUIRES "${VC_RPM_FUSE_PACKAGE}, device-mapper, gtk3, sudo" )
|
||||
else()
|
||||
set( CPACK_RPM_PACKAGE_REQUIRES "fuse, device-mapper, gtk2, sudo" )
|
||||
set( CPACK_RPM_PACKAGE_REQUIRES "${VC_RPM_FUSE_PACKAGE}, device-mapper, gtk2, sudo" )
|
||||
endif()
|
||||
endif()
|
||||
|
||||
|
||||
@@ -41,6 +41,52 @@ export WX_ROOT=$PARENTDIR/wxWidgets-3.2.5
|
||||
|
||||
cd $SOURCEPATH
|
||||
|
||||
# Detect requested FUSE version (defaults to FUSE2). Can be set via WITHFUSE3=1 or by passing FUSE3/--with-fuse3.
|
||||
build_with_fuse3=0
|
||||
if [ -n "$WITHFUSE3" ] && [ "$WITHFUSE3" != "0" ]; then
|
||||
build_with_fuse3=1
|
||||
fi
|
||||
|
||||
preserved_args=""
|
||||
while [ $# -gt 0 ]; do
|
||||
case "$1" in
|
||||
FUSE3|WITHFUSE3|--with-fuse3)
|
||||
build_with_fuse3=1
|
||||
;;
|
||||
FUSE2|WITHFUSE2|--with-fuse2)
|
||||
build_with_fuse3=0
|
||||
;;
|
||||
WXSTATIC|INDICATOR)
|
||||
if [ -z "$preserved_args" ]; then
|
||||
preserved_args="$1"
|
||||
else
|
||||
preserved_args="$preserved_args $1"
|
||||
fi
|
||||
;;
|
||||
*)
|
||||
echo "Warning: Unrecognized option '$1' (ignored)" >&2
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
set --
|
||||
if [ -n "$preserved_args" ]; then
|
||||
for arg in $preserved_args; do
|
||||
set -- "$@" "$arg"
|
||||
done
|
||||
fi
|
||||
|
||||
if [ "$build_with_fuse3" = "1" ]; then
|
||||
FUSE3_MAKE_FLAG="WITHFUSE3=1"
|
||||
FUSE3_CMAKE_FLAG="-DVC_WITH_FUSE3=TRUE"
|
||||
echo "Building VeraCrypt packages against FUSE3"
|
||||
else
|
||||
FUSE3_MAKE_FLAG=""
|
||||
FUSE3_CMAKE_FLAG="-DVC_WITH_FUSE3=FALSE"
|
||||
echo "Building VeraCrypt packages against FUSE2"
|
||||
fi
|
||||
|
||||
build_and_install() {
|
||||
target=$1
|
||||
wxstatic=$2
|
||||
@@ -63,7 +109,7 @@ build_and_install() {
|
||||
echo "wx-config already exists in ${WX_BUILD_DIR}. Skipping wxbuild."
|
||||
else
|
||||
echo "Using wxWidgets sources in $WX_ROOT"
|
||||
make $wxstatic_value $nogui wxbuild || exit 1
|
||||
make $wxstatic_value $nogui $FUSE3_MAKE_FLAG wxbuild || exit 1
|
||||
fi
|
||||
fi
|
||||
|
||||
@@ -73,9 +119,9 @@ build_and_install() {
|
||||
fi
|
||||
|
||||
rm -rf "$PARENTDIR/VeraCrypt_Setup/$target"
|
||||
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
|
||||
make $wxstatic_value $indicator_value $nogui $FUSE3_MAKE_FLAG clean || exit 1
|
||||
make $wxstatic_value $indicator_value $nogui $FUSE3_MAKE_FLAG || exit 1
|
||||
make $wxstatic_value $indicator_value $nogui $FUSE3_MAKE_FLAG install DESTDIR="$PARENTDIR/VeraCrypt_Setup/$target" || exit 1
|
||||
}
|
||||
|
||||
# Handle arguments
|
||||
@@ -112,8 +158,8 @@ rm -rf $PARENTDIR/VeraCrypt_Packaging
|
||||
mkdir -p $PARENTDIR/VeraCrypt_Packaging/GUI
|
||||
mkdir -p $PARENTDIR/VeraCrypt_Packaging/Console
|
||||
|
||||
cmake -H$SCRIPTPATH -B$PARENTDIR/VeraCrypt_Packaging/GUI -DVERACRYPT_BUILD_DIR="$PARENTDIR/VeraCrypt_Setup/GUI" -DNOGUI=FALSE || exit 1
|
||||
cmake -H$SCRIPTPATH -B$PARENTDIR/VeraCrypt_Packaging/GUI -DVERACRYPT_BUILD_DIR="$PARENTDIR/VeraCrypt_Setup/GUI" -DNOGUI=FALSE $FUSE3_CMAKE_FLAG || 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
|
||||
cmake -H$SCRIPTPATH -B$PARENTDIR/VeraCrypt_Packaging/Console -DVERACRYPT_BUILD_DIR="$PARENTDIR/VeraCrypt_Setup/Console" -DNOGUI=TRUE $FUSE3_CMAKE_FLAG || exit 1
|
||||
cpack --config $PARENTDIR/VeraCrypt_Packaging/Console/CPackConfig.cmake || exit 1
|
||||
|
||||
@@ -41,6 +41,38 @@ export WX_ROOT=$PARENTDIR/wxWidgets-3.2.5
|
||||
|
||||
cd $SOURCEPATH
|
||||
|
||||
# Detect requested FUSE version (defaults to FUSE2). Can be set via WITHFUSE3=1 or by passing FUSE3/--with-fuse3.
|
||||
build_with_fuse3=0
|
||||
if [ -n "$WITHFUSE3" ] && [ "$WITHFUSE3" != "0" ]; then
|
||||
build_with_fuse3=1
|
||||
fi
|
||||
|
||||
while [ $# -gt 0 ]; do
|
||||
case "$1" in
|
||||
FUSE3|WITHFUSE3|--with-fuse3)
|
||||
build_with_fuse3=1
|
||||
;;
|
||||
FUSE2|WITHFUSE2|--with-fuse2)
|
||||
build_with_fuse3=0
|
||||
;;
|
||||
*)
|
||||
echo "Unknown option: $1" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
if [ "$build_with_fuse3" = "1" ]; then
|
||||
FUSE3_MAKE_FLAG="WITHFUSE3=1"
|
||||
FUSE3_CMAKE_FLAG="-DVC_WITH_FUSE3=TRUE"
|
||||
echo "Building VeraCrypt packages against FUSE3"
|
||||
else
|
||||
FUSE3_MAKE_FLAG=""
|
||||
FUSE3_CMAKE_FLAG="-DVC_WITH_FUSE3=FALSE"
|
||||
echo "Building VeraCrypt packages against FUSE2"
|
||||
fi
|
||||
|
||||
echo "Building GUI version of VeraCrypt for RPM using wxWidgets static libraries"
|
||||
|
||||
# This will be the temporary wxWidgets directory
|
||||
@@ -51,14 +83,14 @@ if [ -L "${WX_BUILD_DIR}/wx-config" ]; then
|
||||
echo "wx-config already exists in ${WX_BUILD_DIR}. Skipping wxbuild."
|
||||
else
|
||||
echo "Using wxWidgets sources in $WX_ROOT"
|
||||
make WXSTATIC=1 wxbuild || exit 1
|
||||
make WXSTATIC=1 $FUSE3_MAKE_FLAG wxbuild || exit 1
|
||||
ln -s $WX_BUILD_DIR/lib $WX_BUILD_DIR/lib64
|
||||
fi
|
||||
|
||||
rm -rf "$PARENTDIR/VeraCrypt_Setup/GUI"
|
||||
make WXSTATIC=1 clean || exit 1
|
||||
make WXSTATIC=1 || exit 1
|
||||
make WXSTATIC=1 install DESTDIR="$PARENTDIR/VeraCrypt_Setup/GUI" || exit 1
|
||||
make WXSTATIC=1 $FUSE3_MAKE_FLAG clean || exit 1
|
||||
make WXSTATIC=1 $FUSE3_MAKE_FLAG || exit 1
|
||||
make WXSTATIC=1 $FUSE3_MAKE_FLAG install DESTDIR="$PARENTDIR/VeraCrypt_Setup/GUI" || exit 1
|
||||
|
||||
echo "Building console version of VeraCrypt for RPM using wxWidgets static libraries"
|
||||
|
||||
@@ -74,14 +106,14 @@ if [ -L "${WX_BUILD_DIR}/wx-config" ]; then
|
||||
echo "wx-config already exists in ${WX_BUILD_DIR}. Skipping wxbuild."
|
||||
else
|
||||
echo "Using wxWidgets sources in $WX_ROOT"
|
||||
make WXSTATIC=1 NOGUI=1 wxbuild || exit 1
|
||||
make WXSTATIC=1 NOGUI=1 $FUSE3_MAKE_FLAG wxbuild || exit 1
|
||||
ln -s $WX_BUILD_DIR/lib $WX_BUILD_DIR/lib64
|
||||
fi
|
||||
|
||||
rm -rf "$PARENTDIR/VeraCrypt_Setup/Console"
|
||||
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
|
||||
make WXSTATIC=1 NOGUI=1 $FUSE3_MAKE_FLAG clean || exit 1
|
||||
make WXSTATIC=1 NOGUI=1 $FUSE3_MAKE_FLAG || exit 1
|
||||
make WXSTATIC=1 NOGUI=1 $FUSE3_MAKE_FLAG install DESTDIR="$PARENTDIR/VeraCrypt_Setup/Console" || exit 1
|
||||
|
||||
echo "Creating VeraCrypt RPM packages "
|
||||
|
||||
@@ -95,7 +127,7 @@ mkdir -p $PARENTDIR/VeraCrypt_Packaging/GUI
|
||||
mkdir -p $PARENTDIR/VeraCrypt_Packaging/Console
|
||||
|
||||
# wxWidgets was built using native GTK version
|
||||
cmake -H$SCRIPTPATH -B$PARENTDIR/VeraCrypt_Packaging/GUI -DVERACRYPT_BUILD_DIR="$PARENTDIR/VeraCrypt_Setup/GUI" -DNOGUI=FALSE || exit 1
|
||||
cmake -H$SCRIPTPATH -B$PARENTDIR/VeraCrypt_Packaging/GUI -DVERACRYPT_BUILD_DIR="$PARENTDIR/VeraCrypt_Setup/GUI" -DNOGUI=FALSE $FUSE3_CMAKE_FLAG || 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
|
||||
cmake -H$SCRIPTPATH -B$PARENTDIR/VeraCrypt_Packaging/Console -DVERACRYPT_BUILD_DIR="$PARENTDIR/VeraCrypt_Setup/Console" -DNOGUI=TRUE $FUSE3_CMAKE_FLAG || exit 1
|
||||
cpack --config $PARENTDIR/VeraCrypt_Packaging/Console/CPackConfig.cmake|| exit 1
|
||||
|
||||
@@ -41,6 +41,38 @@ export WX_ROOT=$PARENTDIR/wxWidgets-3.2.5
|
||||
|
||||
cd $SOURCEPATH
|
||||
|
||||
# Detect requested FUSE version (defaults to FUSE2). Can be set via WITHFUSE3=1 or by passing FUSE3/--with-fuse3.
|
||||
build_with_fuse3=0
|
||||
if [ -n "$WITHFUSE3" ] && [ "$WITHFUSE3" != "0" ]; then
|
||||
build_with_fuse3=1
|
||||
fi
|
||||
|
||||
while [ $# -gt 0 ]; do
|
||||
case "$1" in
|
||||
FUSE3|WITHFUSE3|--with-fuse3)
|
||||
build_with_fuse3=1
|
||||
;;
|
||||
FUSE2|WITHFUSE2|--with-fuse2)
|
||||
build_with_fuse3=0
|
||||
;;
|
||||
*)
|
||||
echo "Unknown option: $1" >&2
|
||||
exit 1
|
||||
;;
|
||||
esac
|
||||
shift
|
||||
done
|
||||
|
||||
if [ "$build_with_fuse3" = "1" ]; then
|
||||
FUSE3_MAKE_FLAG="WITHFUSE3=1"
|
||||
FUSE3_CMAKE_FLAG="-DVC_WITH_FUSE3=TRUE"
|
||||
echo "Building VeraCrypt packages against FUSE3"
|
||||
else
|
||||
FUSE3_MAKE_FLAG=""
|
||||
FUSE3_CMAKE_FLAG="-DVC_WITH_FUSE3=FALSE"
|
||||
echo "Building VeraCrypt packages against FUSE2"
|
||||
fi
|
||||
|
||||
echo "Building GUI version of VeraCrypt for RPM using wxWidgets static libraries"
|
||||
|
||||
# This will be the temporary wxWidgets directory
|
||||
@@ -51,13 +83,16 @@ if [ -L "${WX_BUILD_DIR}/wx-config" ]; then
|
||||
echo "wx-config already exists in ${WX_BUILD_DIR}. Skipping wxbuild."
|
||||
else
|
||||
echo "Using wxWidgets sources in $WX_ROOT"
|
||||
make WXSTATIC=1 wxbuild || exit 1
|
||||
make WXSTATIC=1 $FUSE3_MAKE_FLAG wxbuild || exit 1
|
||||
if [ -d "$WX_BUILD_DIR/lib" ] && [ ! -e "$WX_BUILD_DIR/lib64" ]; then
|
||||
ln -s "$WX_BUILD_DIR/lib" "$WX_BUILD_DIR/lib64"
|
||||
fi
|
||||
fi
|
||||
|
||||
rm -rf "$PARENTDIR/VeraCrypt_Setup/GUI"
|
||||
make WXSTATIC=1 clean || exit 1
|
||||
make WXSTATIC=1 || exit 1
|
||||
make WXSTATIC=1 install DESTDIR="$PARENTDIR/VeraCrypt_Setup/GUI" || exit 1
|
||||
make WXSTATIC=1 $FUSE3_MAKE_FLAG clean || exit 1
|
||||
make WXSTATIC=1 $FUSE3_MAKE_FLAG || exit 1
|
||||
make WXSTATIC=1 $FUSE3_MAKE_FLAG install DESTDIR="$PARENTDIR/VeraCrypt_Setup/GUI" || exit 1
|
||||
|
||||
echo "Building console version of VeraCrypt for RPM using wxWidgets static libraries"
|
||||
|
||||
@@ -73,13 +108,13 @@ if [ -L "${WX_BUILD_DIR}/wx-config" ]; then
|
||||
echo "wx-config already exists in ${WX_BUILD_DIR}. Skipping wxbuild."
|
||||
else
|
||||
echo "Using wxWidgets sources in $WX_ROOT"
|
||||
make WXSTATIC=1 NOGUI=1 wxbuild || exit 1
|
||||
make WXSTATIC=1 NOGUI=1 $FUSE3_MAKE_FLAG wxbuild || exit 1
|
||||
fi
|
||||
|
||||
rm -rf "$PARENTDIR/VeraCrypt_Setup/Console"
|
||||
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
|
||||
make WXSTATIC=1 NOGUI=1 $FUSE3_MAKE_FLAG clean || exit 1
|
||||
make WXSTATIC=1 NOGUI=1 $FUSE3_MAKE_FLAG || exit 1
|
||||
make WXSTATIC=1 NOGUI=1 $FUSE3_MAKE_FLAG install DESTDIR="$PARENTDIR/VeraCrypt_Setup/Console" || exit 1
|
||||
|
||||
echo "Creating VeraCrypt RPM packages "
|
||||
|
||||
@@ -93,7 +128,7 @@ mkdir -p $PARENTDIR/VeraCrypt_Packaging/GUI
|
||||
mkdir -p $PARENTDIR/VeraCrypt_Packaging/Console
|
||||
|
||||
# wxWidgets was built using native GTK version
|
||||
cmake -H$SCRIPTPATH -B$PARENTDIR/VeraCrypt_Packaging/GUI -DVERACRYPT_BUILD_DIR="$PARENTDIR/VeraCrypt_Setup/GUI" -DNOGUI=FALSE || exit 1
|
||||
cmake -H$SCRIPTPATH -B$PARENTDIR/VeraCrypt_Packaging/GUI -DVERACRYPT_BUILD_DIR="$PARENTDIR/VeraCrypt_Setup/GUI" -DNOGUI=FALSE $FUSE3_CMAKE_FLAG || 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
|
||||
cmake -H$SCRIPTPATH -B$PARENTDIR/VeraCrypt_Packaging/Console -DVERACRYPT_BUILD_DIR="$PARENTDIR/VeraCrypt_Setup/Console" -DNOGUI=TRUE $FUSE3_CMAKE_FLAG || exit 1
|
||||
cpack --config $PARENTDIR/VeraCrypt_Packaging/Console/CPackConfig.cmake || exit 1
|
||||
|
||||
Reference in New Issue
Block a user