MacOSX: Add build scripts and modifications to linking against wxWidgets 3.1.2 for non legacy build targeting OSX 10.9+
This commit is contained in:
parent
f56a8c49f9
commit
b6dcea013e
|
@ -0,0 +1,106 @@
|
|||
<?xml version="1.0" encoding="UTF-8"?>
|
||||
<!DOCTYPE plist SYSTEM "file://localhost/System/Library/DTDs/PropertyList.dtd">
|
||||
<plist version="0.9">
|
||||
<dict>
|
||||
<key>CFBundleInfoDictionaryVersion</key>
|
||||
<string>6.0</string>
|
||||
|
||||
<key>CFBundleIdentifier</key>
|
||||
<string>org.idrix.VeraCrypt</string>
|
||||
|
||||
<key>UTExportedTypeDeclarations</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>UTTypeIdentifier</key>
|
||||
<string>org.idrix.veracrypt.hc</string>
|
||||
|
||||
<key>UTTypeDescription</key>
|
||||
<string>VeraCrypt Container File</string>
|
||||
|
||||
<key>UTTypeConformsTo</key>
|
||||
<array>
|
||||
<string>public.data</string>
|
||||
</array>
|
||||
|
||||
<key>UTTypeTagSpecification</key>
|
||||
<dict>
|
||||
<key>public.filename-extension</key>
|
||||
<array>
|
||||
<string>hc</string>
|
||||
<string>tc</string>
|
||||
</array>
|
||||
|
||||
<key>public.mime-type</key>
|
||||
<string>application/veracrypt</string>
|
||||
</dict>
|
||||
</dict>
|
||||
</array>
|
||||
|
||||
<key>CFBundleDocumentTypes</key>
|
||||
<array>
|
||||
<dict>
|
||||
<key>CFBundleTypeIconFile</key>
|
||||
<string>VeraCrypt_Volume.icns</string>
|
||||
<key>CFBundleTypeName</key>
|
||||
<string>VeraCrypt Container File</string>
|
||||
<key>CFBundleTypeRole</key>
|
||||
<string>Viewer</string>
|
||||
<key>LSHandlerRank</key>
|
||||
<string>Owner</string>
|
||||
<key>LSItemContentTypes</key>
|
||||
<array>
|
||||
<!-- my app supports files with my custom extension (see UTExportedTypeDeclarations) -->
|
||||
<string>org.idrix.veracrypt.hc</string>
|
||||
</array>
|
||||
</dict>
|
||||
</array>
|
||||
|
||||
<key>CFBundleDevelopmentRegion</key>
|
||||
<string>English</string>
|
||||
|
||||
<key>CFBundleExecutable</key>
|
||||
<string>VeraCrypt</string>
|
||||
|
||||
<key>CFBundleIconFile</key>
|
||||
<string>VeraCrypt.icns</string>
|
||||
|
||||
<key>CFBundleName</key>
|
||||
<string>VeraCrypt</string>
|
||||
|
||||
<key>CFBundlePackageType</key>
|
||||
<string>APPL</string>
|
||||
|
||||
<key>CFBundleSignature</key>
|
||||
<string>TRUE</string>
|
||||
|
||||
<key>CFBundleVersion</key>
|
||||
<string>1.24.6</string>
|
||||
|
||||
<key>CFBundleShortVersionString</key>
|
||||
<string>_VERSION_</string>
|
||||
|
||||
<key>CFBundleLongVersionString</key>
|
||||
<string>VeraCrypt _VERSION_</string>
|
||||
|
||||
<key>LSArchitecturePriority</key>
|
||||
<array>
|
||||
<string>x86_64</string>
|
||||
<string>i386</string>
|
||||
</array>
|
||||
|
||||
<key>LSMinimumSystemVersion</key>
|
||||
<string>10.7.0</string>
|
||||
|
||||
<key>LSRequiresCarbon</key>
|
||||
<false/>
|
||||
|
||||
<key>CSResourcesFileMapped</key>
|
||||
<true/>
|
||||
|
||||
<key>NSHighResolutionCapable</key>
|
||||
<true/>
|
||||
|
||||
<key>NSPrincipalClass</key>
|
||||
<string>NSApplication</string>
|
||||
</dict>
|
||||
</plist>
|
|
@ -82,14 +82,8 @@
|
|||
<key>CFBundleLongVersionString</key>
|
||||
<string>VeraCrypt _VERSION_</string>
|
||||
|
||||
<key>LSArchitecturePriority</key>
|
||||
<array>
|
||||
<string>x86_64</string>
|
||||
<string>i386</string>
|
||||
</array>
|
||||
|
||||
<key>LSMinimumSystemVersion</key>
|
||||
<string>10.7.0</string>
|
||||
<string>10.9.0</string>
|
||||
|
||||
<key>LSRequiresCarbon</key>
|
||||
<false/>
|
||||
|
|
|
@ -12,22 +12,22 @@ SOURCEPATH=$(cd "$(dirname "$SCRIPTPATH/../.")"; pwd)
|
|||
# directory where the VeraCrypt project has been checked out
|
||||
PARENTDIR=$(cd "$(dirname "$SCRIPTPATH/../../../.")"; pwd)
|
||||
|
||||
# the sources of wxWidgets 3.0.3 must be extracted to the parent directory
|
||||
export WX_ROOT=$PARENTDIR/wxWidgets-3.0.4
|
||||
# the sources of wxWidgets 3.1.2 must be extracted to the parent directory
|
||||
export WX_ROOT=$PARENTDIR/wxWidgets-3.1.2
|
||||
echo "Using wxWidgets sources in $WX_ROOT"
|
||||
|
||||
# this will be the temporary wxWidgets directory
|
||||
export WX_BUILD_DIR=$PARENTDIR/wxBuild
|
||||
export WX_BUILD_DIR=$PARENTDIR/wxBuild-3.1.2
|
||||
|
||||
# define the SDK version to use. We use 10.7 by default
|
||||
export VC_OSX_TARGET=10.7
|
||||
# define the SDK version to use. We use 10.9 by default
|
||||
export VC_OSX_TARGET=10.9
|
||||
echo "Using MacOSX SDK $VC_OSX_TARGET"
|
||||
|
||||
|
||||
cd $SOURCEPATH
|
||||
|
||||
echo "Building VeraCrypt"
|
||||
make WXSTATIC=1 wxbuild && make WXSTATIC=1 clean && make WXSTATIC=1 && make WXSTATIC=1 package
|
||||
# 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=1 clean && make WXSTATIC=1 && make WXSTATIC=1 package
|
||||
make WXSTATIC=FULL clean && make WXSTATIC=FULL && make WXSTATIC=FULL package
|
|
@ -0,0 +1,32 @@
|
|||
#
|
||||
# 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 this script is in
|
||||
SCRIPTPATH=$(cd "$(dirname "$0")"; pwd)
|
||||
# source directory which contains the Makefile
|
||||
SOURCEPATH=$(cd "$(dirname "$SCRIPTPATH/../.")"; pwd)
|
||||
# directory where the VeraCrypt project has been checked out
|
||||
PARENTDIR=$(cd "$(dirname "$SCRIPTPATH/../../../.")"; pwd)
|
||||
|
||||
# the sources of wxWidgets 3.0.4 must be extracted to the parent directory
|
||||
export WX_ROOT=$PARENTDIR/wxWidgets-3.0.4
|
||||
echo "Using wxWidgets sources in $WX_ROOT"
|
||||
0# this will be the temporary wxWidgets directory
|
||||
export WX_BUILD_DIR=$PARENTDIR/wxBuild
|
||||
|
||||
# define the SDK version to use. We use 10.7 by default
|
||||
export VC_OSX_TARGET=10.7
|
||||
echo "Using MacOSX SDK $VC_OSX_TARGET"
|
||||
|
||||
|
||||
cd $SOURCEPATH
|
||||
|
||||
echo "Building VeraCrypt"
|
||||
make WXSTATIC=1 wxbuild && make WXSTATIC=1 clean && make WXSTATIC=1 && make WXSTATIC=1 package
|
||||
|
||||
# Uncomment below and comment line above to reuse existing wxWidgets build
|
||||
# make WXSTATIC=1 clean && make WXSTATIC=1 && make WXSTATIC=1 package
|
|
@ -210,7 +210,11 @@ endif
|
|||
cp $(BASE_DIR)/../doc/html/* $(APPNAME).app/Contents/Resources/doc/HTML
|
||||
|
||||
echo -n APPLTRUE >$(APPNAME).app/Contents/PkgInfo
|
||||
ifdef VC_LEGACY_BUILD
|
||||
sed -e 's/_VERSION_/$(patsubst %a,%.1,$(patsubst %b,%.2,$(TC_VERSION)))/' ../Build/Resources/MacOSX/Info.plist.legacy.xml >$(APPNAME).app/Contents/Info.plist
|
||||
else
|
||||
sed -e 's/_VERSION_/$(patsubst %a,%.1,$(patsubst %b,%.2,$(TC_VERSION)))/' ../Build/Resources/MacOSX/Info.plist.xml >$(APPNAME).app/Contents/Info.plist
|
||||
endif
|
||||
codesign -s "Developer ID Application: IDRIX (Z933746L2S)" --timestamp $(APPNAME).app
|
||||
|
||||
install: prepare
|
||||
|
|
42
src/Makefile
42
src/Makefile
|
@ -91,6 +91,9 @@ ifeq "$(origin WXSTATIC)" "command line"
|
|||
export VC_WX_STATIC := 1
|
||||
WX_CONFIG = $(WX_BUILD_DIR)/wx-config
|
||||
WX_CONFIG_ARGS += --static
|
||||
ifneq "$(WXSTATIC)" "FULL"
|
||||
export VC_WX_MINIMAL := 1
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
|
@ -224,6 +227,10 @@ ifeq "$(shell uname -s)" "Linux"
|
|||
WXCONFIG_CFLAGS += -mno-sse2
|
||||
WXCONFIG_CXXFLAGS += -mno-sse2
|
||||
endif
|
||||
|
||||
ifeq "$(origin WITHGTK3)" "command line"
|
||||
WX_CONFIGURE_FLAGS += --with-gtk=3
|
||||
endif
|
||||
|
||||
endif
|
||||
|
||||
|
@ -241,6 +248,11 @@ ifeq "$(shell uname -s)" "Darwin"
|
|||
ifeq ($(wildcard $(VC_OSX_SDK)/SDKSettings.plist),)
|
||||
VC_OSX_SDK := /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX$(VC_OSX_TARGET).sdk
|
||||
endif
|
||||
|
||||
#----- Legacy build if OSX <= 10.8: we build both 32-bit and 64-bit ----
|
||||
ifneq (,$(filter 10.6 10.7 10.8,$(VC_OSX_TARGET)))
|
||||
export VC_LEGACY_BUILD := 1
|
||||
endif
|
||||
|
||||
CC := gcc
|
||||
CXX := g++
|
||||
|
@ -277,10 +289,18 @@ ifeq "$(shell uname -s)" "Darwin"
|
|||
S := $(C_CXX_FLAGS)
|
||||
C_CXX_FLAGS = $(subst -MMD,,$(S))
|
||||
|
||||
C_CXX_FLAGS += -gfull -arch i386 -arch x86_64
|
||||
LFLAGS += -Wl,-dead_strip -arch i386 -arch x86_64
|
||||
C_CXX_FLAGS += -gfull -arch x86_64
|
||||
LFLAGS += -Wl,-dead_strip -arch x86_64
|
||||
|
||||
#----- Legacy build: we build both 32-bit and 64-bit ----
|
||||
ifdef VC_LEGACY_BUILD
|
||||
C_CXX_FLAGS += -arch i386
|
||||
LFLAGS += -arch i386
|
||||
WX_CONFIGURE_FLAGS += --enable-universal_binary=i386,x86_64
|
||||
else
|
||||
WX_CONFIGURE_FLAGS += --disable-universal_binary
|
||||
endif
|
||||
|
||||
WX_CONFIGURE_FLAGS += --enable-universal_binary=i386,x86_64
|
||||
WXCONFIG_CFLAGS += -gfull
|
||||
WXCONFIG_CXXFLAGS += -gfull
|
||||
|
||||
|
@ -359,8 +379,10 @@ CFLAGS := $(C_CXX_FLAGS) $(CFLAGS) $(TC_EXTRA_CFLAGS)
|
|||
CXXFLAGS := $(C_CXX_FLAGS) $(CXXFLAGS) $(TC_EXTRA_CXXFLAGS)
|
||||
LFLAGS := $(LFLAGS) $(TC_EXTRA_LFLAGS)
|
||||
|
||||
WX_CONFIGURE_FLAGS += --enable-unicode -disable-shared --disable-dependency-tracking --disable-compat26 --enable-exceptions --enable-std_string --enable-dataobj --enable-mimetype \
|
||||
--disable-protocol --disable-protocols --disable-url --disable-ipc --disable-sockets --disable-fs_inet --disable-ole --disable-docview --disable-clipboard \
|
||||
WX_CONFIGURE_FLAGS += --enable-unicode -disable-shared --disable-dependency-tracking --enable-exceptions --enable-std_string --enable-dataobj --enable-mimetype
|
||||
|
||||
ifdef VC_WX_MINIMAL
|
||||
WX_CONFIGURE_FLAGS += --disable-protocol --disable-protocols --disable-url --disable-ipc --disable-sockets --disable-fs_inet --disable-ole --disable-docview --disable-clipboard \
|
||||
--disable-help --disable-html --disable-mshtmlhelp --disable-htmlhelp --disable-mdi --disable-metafile --disable-webkit --disable-webview \
|
||||
--disable-xrc --disable-aui --disable-postscript --disable-printarch \
|
||||
--disable-arcstream --disable-fs_archive --disable-fs_zip --disable-tarstream --disable-zipstream \
|
||||
|
@ -376,16 +398,18 @@ WX_CONFIGURE_FLAGS += --enable-unicode -disable-shared --disable-dependency-trac
|
|||
--disable-sound --disable-mediactrl --disable-joystick --disable-apple_ieee \
|
||||
--disable-gif --disable-pcx --disable-tga --disable-iff --disable-gif --disable-pnm --disable-svg \
|
||||
--without-expat --without-libtiff --without-libjpeg --without-libpng -without-regex --without-zlib
|
||||
|
||||
|
||||
ifeq "$(PLATFORM)" "Linux"
|
||||
WX_CONFIGURE_FLAGS += --disable-tooltips
|
||||
ifeq "$(origin WITHGTK3)" "command line"
|
||||
WX_CONFIGURE_FLAGS += --with-gtk=3
|
||||
ifneq "$(origin WITHGTK3)" "command line"
|
||||
WX_CONFIGURE_FLAGS += --disable-graphics_ctx
|
||||
endif
|
||||
else
|
||||
WX_CONFIGURE_FLAGS += --disable-graphics_ctx
|
||||
endif
|
||||
endif
|
||||
|
||||
|
||||
#------ Project build ------
|
||||
|
||||
PROJ_DIRS := Platform Volume Driver/Fuse Core Main
|
||||
|
@ -428,4 +452,4 @@ endif
|
|||
cd "$(WX_BUILD_DIR)" && "$(WX_ROOT)/configure" $(WX_CONFIGURE_FLAGS) >/dev/null
|
||||
|
||||
@echo Building wxWidgets library...
|
||||
cd "$(WX_BUILD_DIR)" && $(MAKE)
|
||||
cd "$(WX_BUILD_DIR)" && $(MAKE) -j 4
|
||||
|
|
Loading…
Reference in New Issue