VeraCrypt
aboutsummaryrefslogtreecommitdiff
path: root/src/Main/Main.make
AgeCommit message (Collapse)AuthorFilesLines
2024-07-05Linux/FreeBSD: Improve build scripts for Linux/FreeBSD to have correct name ↵Mounir IDRASSI1-3/+28
for generic GUI installer
2024-06-26Linux/FreeBSD: Fix GNU Make syntax error in Main.makeMounir IDRASSI1-3/+3
2024-06-26Linux/FreeBSD: use GTK3 flavor for default generic gui installer. create ↵Mounir IDRASSI1-0/+12
GTK2 specific gui installer.
2024-06-22MacOSX: Add for using FUSE-T instead of MacFUSEMounir IDRASSI1-1/+5
The build script build_veracrypt_macosx.h now accepts the argument -f to enable fuse-t support. It is also possible to set the environment variable VC_OSX_FUSET to 1 for FUSE-T support. A change was done in CoreUnix::GetMountedVolumes to add a waiting loop for control file to be accessible because when using FUSE-T there always a delay before control file can be serialized.
2024-06-18fix: Correct missing 'endif' in Main.make for MacOSX sectionMounir IDRASSI1-1/+1
Replaced an incorrect 'end' statement with 'endif' in the MacOSX-specific section of the Main.make file. This resolves the make error caused by an unclosed conditional block.
2024-06-16MacOSX: Fix skipping codesign and productsign for local development buildMounir IDRASSI1-1/+6
2024-06-16Improve and simplify macOS builds (#1276)Deniz Türkoglu1-0/+2
* Add missing macOS requirement for 'make package' We need packages for the last build step on macOS, update docs to reflect the requirement. * Add build instructions using homebrew On macOS, we can use a package manager to easily install dependencies. This simplifies onboarding and building Veracrypt. * Add flag to use homebrew packages When building, we can use prebuilt wxwidgets from homebrew to simplify and speed up local building. We also put the package behind a flag as it's optional during development. * Skip signing for local builds When building with homebrew, skip signing. This can be put behind a flag to enable, if needed. * Use system yasm on macOS if available The binary in the repo is not universal (x86_64) and therefore building fails on arm architecture if Rosetta is not installed. Use local yasm if available. * Build local arch only in development When building via homebrew and locally, build only the local arch which skips ASM for arm(Mx) for MacOS. This removes the need to have rosetta installed for building. * Fix compilation issue when COMPILE_ASM is undefined Use a conditional check for COMPILE_ASM not being false instead of true. This avoids passing the variable to other parts of the build script. * Set SDK 12 as the minimum requirement and target Align the requirement to SDK 12 in both the makefile and script, and update the comment to remove confusion. I chose to leave this on 12 to be on the side of err and support as many building platforms as possible, when we can support. The local script now also sets the target using the local sdk version. This should improve the local development experience. * Fix wrong architecture for macOS in x86 builds We now build only the current arch for local development builds in macOS. This change also fixes the x86 builds failing. * Add instructions brew backed macOS local builds Flags to build a local build using homebrew packages are not default and require parameter -b to build. We also don't build packages directly, which requires -p. * Fix wxwidgets not linking in local x86 macOS development builds * Clarify build location in the document
2023-11-19Linux/FreeBSD/macOS: Implement language selection settings (#1253)Jertzukka1-0/+2
* Implement Language selection into settings Initial commit to create a new tab in PreferencesNotebook for Language selection. By default, if nothing is chosen, it uses the current behaviour of using the language from system environment variables. If another language is chosen from the settings, it is saved into the Configuration.xml and this is used instead. * Fix SetStringSelection() assert issue on macOS * Add header include to fix build * Add current language pack, authors and way to use literal strings * Translations also for FreeBSD * Minimal GTK3 WX build on FreeBSD requires wxGraphicsContext * Get Preferences properly instead of workaround function * Use WrapSizer instead of BoxSizer for author line This forces long author lists to be put on a new line, reducing the need to increase window width. * Update Finnish translation * Borrow translation from IDM_LANGUAGE where it makes sense * Remove colon and thus unneeded function * Simplify Language tab layout * Reintroduce macOS specific fixes to Forms.cpp * cleanup
2023-08-21Allow cross compilation. (#1182)Unit 1931-2/+2
2023-06-29Linux/FreeBSD: Make pcsclite a dependency of the packages and the generic ↵Mounir IDRASSI1-2/+2
installer
2023-06-13Linux: Fix compatibility of generic installers with old Linux distrosMounir IDRASSI1-1/+1
In old Linux distributions, tar command doesn't support "--keep-directory-symlink" so we now dynamically detect if this switch is support and then we use it if it is available
2023-06-05Linux/macOS: Fix error during creation of installation packageMounir IDRASSI1-3/+3
"-R" switch was missing from the "cp" command
2022-01-08MacOSX: remove write permission also from group on application bundleVeraCrypt_1.25.7Mounir IDRASSI1-1/+1
2021-12-24MacOSX: correct permission of VeraCrypt application bundle during packagingMounir IDRASSI1-0/+1
2021-11-21Linux/FreeBSD: Fix calling "make install" without specifying DESTDIR, which ↵Mounir IDRASSI1-0/+4
should work by installing into /usr
2021-08-21Linux: Better Linux desktop integration. Add mount.veracrypt script for ↵Mounir IDRASSI1-0/+7
fstab (proposed by unit193 at https://github.com/veracrypt/VeraCrypt/issues/814)
2021-08-15MacOSX: First native Apple M1 supportMounir IDRASSI1-0/+2
2020-12-20Linux/MacOSX: make LanguageStrings.cpp build depend on Language.xml.h since ↵Mounir IDRASSI1-0/+2
it uses it
2020-12-11new xml Tag for en and de (#708)T-Bonhagen1-0/+2
* new xml Tag for en and de * add linux support for env LANG * precopiled header into TrueCrypt.fdp to substitute '_()' with 'LangString[]' * more LangString in Code * add Language xml's to Linux Setup location * backup language for linux is en * remove Language.en.xml install * rearange new xml lines to end * yes/no dialogs now translated * All OK/Cancel Button now support international Co-authored-by: tb@tbon.de <tb@tbon.de>
2020-11-29MacOSX: always use "pkg-config fuse" for linking since recent versions of ↵Mounir IDRASSI1-4/+0
osxfuse 3.x support this
2020-11-28Fixed macFUSE support for macOS 11 (Big Sur) (#699)Thierry Lelegard1-1/+1
2019-12-20Fix the compilation against WxWidgets when NOGUI=1 (#570)Gokturk Yuksek1-0/+4
* Revert "Linux: Fix failure to run VeraCrypt binary built for console mode on headless machines (fix issue https://github.com/veracrypt/VeraCrypt/issues/531)" The build failure still exists for system wxGTK compiled with '--disable-gui': ``` In file included from TextUserInterface.cpp:27: TextUserInterface.h: In member function ‘virtual bool VeraCrypt::TextUserInterface::Initialize(int&, wxChar**)’: TextUserInterface.h:50:63: error: ‘wxAppBase’ has not been declared 50 | virtual bool Initialize (int &argc, wxChar **argv) { return wxAppBase::Initialize(argc, argv); } ``` This reverts commit 737e1f126b8826ed02418266e590e195aebdd7c0. * Revert "Linux: fix compilation error when building console-only version of VeraCrypt that is statically linked to wxWidgets" The build failure still exists for system wxGTK compiled with '--disable-gui': ``` In file included from TextUserInterface.cpp:27: TextUserInterface.h: In member function ‘virtual bool VeraCrypt::TextUserInterface::Initialize(int&, wxChar**)’: TextUserInterface.h:50:63: error: ‘wxAppBase’ has not been declared 50 | virtual bool Initialize (int &argc, wxChar **argv) { return wxAppBase::Initialize(argc, argv); } ``` This reverts commit 14bee5e6a227701e78c5fec04064c0494f6361f0. * src/Main/Main.make: simplify the WX_CONFIG_LIBS logic Irrespective of whether we are linking against widgets statically or dynamically, pull in only 'base' when GUI is disabled, and 'adv,core,base' when GUI is enabled. When GUI is disabled, the C/CXX flag must include '-DwxUSE_GUI=0' for this to work. * src/Makefile: pass '-DwxUSE_GUI=0' when NOGUI=1 veracrypt with NOGUI=1 fails to properly link against wxGTK compiled with '--disable-gui' only using the 'base' library because the wx's setup.h implicitly defines wxUSE_GUI=1, which then changes the definition of various structures, requiring symbols from the core library as well. For example, wxwidgets include/wx/app.h defines: #if wxUSE_GUI class WXDLLIMPEXP_CORE wxAppBase : public wxAppConsole ... [snip] ... #else // !GUI // wxApp is defined in core and we cannot define another one in wxBase, // so use the preprocessor to allow using wxApp in console programs too #define wxApp wxAppConsole #endif // GUI/!GUI To fix this, pass '-DwxUSE_GUI=0' when compiling veracrypt with NOGUI=1. Closes: https://github.com/veracrypt/VeraCrypt/issues/531
2019-12-11Linux: fix compilation error when building console-only version of VeraCrypt ↵Mounir IDRASSI1-8/+0
that is statically linked to wxWidgets
2019-10-26MacOSX: Update build script and Makefile to correctly build Legacy version ↵Mounir IDRASSI1-0/+10
of VeraCrypt that targets OSX 10.7+.
2019-10-14MacOSX: Add build scripts and modifications to linking against wxWidgets ↵Mounir IDRASSI1-0/+4
3.1.2 for non legacy build targeting OSX 10.9+
2019-10-06Linux/FreeBSD: change location of documentation from ↵Mounir IDRASSI1-3/+3
/usr/share/veracrypt/doc to the standard /usr/share/doc/veracrypt
2019-10-04Linux : Added missing 'mkdir' before installing in case $DESTDIR does not ↵El Mostafa Idrassi1-0/+2
exist (#510)
2019-10-02Utilize $(BASE_DIR) in the install targets rather than $(PWD) and $(CURDIR) ↵Unit 1931-63/+63
(#472) As $(PWD) is not always the expected value and can result in failing the target.
2018-09-01Linux/FreeBSD: Add 32-bit build configuration targetting legacy CPUs that ↵Mounir IDRASSI1-0/+13
don't support SSE2 instructions.
2017-12-06MacOSX: Update reference of code signing certificate in Makefile to use new ↵Mounir IDRASSI1-2/+2
IDRIX certificates.
2017-07-10Add support for building under FreeBSD 11Mounir IDRASSI1-11/+61
2017-07-02Linux: remove existing "Setup/Linux/usr" if any before preparing for packaging.Mounir IDRASSI1-0/+1
2017-07-02Linux: Use $(CURDIR) instead of $(PWD) for the install target, as well as ↵Mounir IDRASSI1-1/+1
$(DESTDIR)/ (which will still install into / if 'DESTDIR' is unset.)
2017-06-23Update IDRIX copyright yearMounir IDRASSI1-1/+1
2017-06-13Linux/MacOSX: Modify Makefile to separate between build and packaging. Add ↵Mounir IDRASSI1-1/+30
install target for local installation.
2017-06-05Linux/MacOSX: Replace User Guide PDF with local HTML documentation. Replace ↵Mounir IDRASSI1-4/+4
UI links to point towards local HTML documentation if it exists
2017-06-01Linux/MacOSX: Update location of User Guide pdf in MakefileMounir IDRASSI1-2/+2
2016-12-26MacOSX: Make VeraCrypt default handler of .hc and .tc files on OSX and add ↵Mounir IDRASSI1-0/+1
custom icon to these files on Finder.
2016-10-17Linux/MacOSX: fix error in Makefile caused by erroneous extra characterMounir IDRASSI1-1/+1
2016-10-17MacOSX: remove MacFUSE dependency and link against OSXFuse library. Now, ↵Mounir IDRASSI1-1/+4
only standard OSXFuse install is needed without MacFUSE compatibility option.
2016-05-10Remove trailing whitespaceDavid Foerster1-6/+6
2016-01-20Copyright: update dates to include 2016.Mounir IDRASSI1-1/+1
2016-01-17MacOSX: Ensure that time-stamping is always activated when performing code ↵Mounir IDRASSI1-2/+2
signing by using --timestamp switch.
2015-12-06MacOSX: Customize dmg file using VeraCrypt new logoMounir IDRASSI1-1/+12
2015-12-04Linux/MacOSX: use new icons contributed by Andreas Becker ↵Mounir IDRASSI1-1/+1
(https://github.com/veracrypt/VeraCrypt/issues/9#issuecomment-118353850)
2015-08-06Update license information to reflect the use of a dual license Apache 2.0 ↵Mounir IDRASSI1-5/+9
and TrueCrypt 3.0.
2015-07-11Linux: Solve error when building against dynamic wxWidgets library, ↵Mounir IDRASSI1-0/+4
especially under Ubuntu.
2015-06-28Linux/MacOSX: Add dedicated PIM page in the volume creation wizard. Correct ↵Mounir IDRASSI1-0/+1
PIM value check logic.
2015-04-19Linux installer: Add support for kdesudo and correct usage of konsole ↵Mounir IDRASSI1-1/+1
external call.
2015-02-11Linux: modify installer script to make it run when the "less" command ↵Mounir IDRASSI1-1/+1
doesn't support the -X argument (Busybox case)