Commit graph

25 commits

Author SHA1 Message Date
Robert Knight
5d2ce7e8c3 Set OS X min version for both C and C++ source files
MD-19720 #time 30m
2013-09-10 15:38:45 +01:00
Robert Knight
ddce2d6e73 Enable PDB generation for release builds
This does increase the size of the binary but enables debugging
of crash dumps from release builds of the updater on Windows.

MD-19678 #time 10m
2013-09-05 11:13:45 +01:00
Robert Knight
7335ee3eac Fix debug build on Windows
Specify static linking to VC runtime libs under both debug and release
builds

MD-19678 #time 10m
2013-09-04 18:58:40 +01:00
Robert Knight
4df97c84e1 On Windows, build the updater with UNICODE and _UNICODE not set
FileUtils and DirIterator currently assume that the Windows
file manipulation calls accept a char*

MD-19678 #time 10m
2013-09-04 16:37:05 +01:00
Robert Knight
e74435e871 Specify the CMake module path using a path relative to the current source dir
This fixes a problem where the module path was not found
when the updater is incorporated into a larger CMake project

MD-19678 #time 10m
2013-09-03 16:39:23 +01:00
Robert Knight
dab236d8de Enable customization of the tool used to sign the updater
Add a BINARY_SIGNING_TOOL CMake var which can be overridden to specify
a custom script/tool to use to sign the updater binary.
2013-08-29 15:59:19 +01:00
Robert Knight
401785786a Enable building the updater with newer SDKs on Mac
* Remove the CMAKE_OSX_DEPLOYMENT_TARGET setting and just
   rely on the -mmacosx-min-version argument.

 * Avoid requiring a specific OS X SDK version - just use the
   default one.
2013-08-29 15:25:04 +01:00
Robert Knight
5cd4484f8b Register unit tests with CMake
Use add_tests() to register the test binaries with CMake
so they can be executed with 'make test'/CTest.

MD-19678 #time 10m
2013-08-29 15:17:58 +01:00
Robert Knight
9823b70c5a Fix build using gcc under OS X 10.8
* Change the default SDK from OS X 10.6 to 10.7.
   The 10.6 SDK is no longer bundled with the current version of XCode

 * Add explicit casts for permissions value

MD-18896
Reviewed-by: Carles Pina
2012-10-26 15:12:29 +01:00
Robert Knight
932cddfb77 Allow the OS X SDK version to be specified separately from the deployment target.
CMAKE_OSX_DEPLOYMENT_TARGET sets the minimum version that we want the app to run on,
CMAKE_OSX_SDK is the name of the SDK which we want to build against.

The OS X 10.5 SDK does not exist when building on OS X 10.7,
so allow this to be set to 10.6 instead.
2012-05-04 09:49:13 +01:00
Robert Knight
f49c147c4f Build with -Os under Linux/Mac
This reduces the size of the generated executable by 20%
2011-10-04 23:06:59 +01:00
Robert Knight
59f8cd753f Link the updater with the static VC++ runtime on Windows
This allows the updater to work on older Windows XP systems
without the VC++ 2008 runtime redistributable installed.

 * Add statically linked pre-built versions of the zlib and
   bzip2 libraries.

This increases the size of the updater executable by 200KB
to ~400KB on Windows.
2011-09-15 18:34:45 +01:00
Robert Knight
31be2336fb Add SIGN_UPDATER build option to automatically sign updater.exe during the build on Windows
This requires a script called sign-updater.bat to be present in PATH
or the build directory for updater.exe to perform the signing.
2011-09-05 16:47:07 +01:00
Robert Knight
d0ca137fb6 Add bzip2 1.0.6 source from bzip.org and a pre-built libbz2 library for the Windows build.
On Linux and Mac, the system bzip2 library can be used.
2011-09-05 15:47:40 +01:00
Robert Knight
e2d3acf850 Add a note about universal builds on Mac OS X 2011-09-02 14:16:47 +01:00
Robert Knight
cb412f4619 Change the documentation in the CMakeLists.txt file to reflect that the available Mac OS SDKs depend on the version of XCode installed as well as the version of Mac OS X
XCode 4 only ships with the 10.6 and 10.7 SDKs, so building for 10.5 requires
XCode 3.2.6, which fortunately is still available from Apple's website.
2011-08-30 18:24:48 +01:00
Robert Knight
b33170c408 Build the updater using the Mac OS X 10.5 SDK
Mendeley Desktop is currently built for Mac OS 10.5 and newer,
so the updater needs to work on the same platforms.

With this change, it will not be possible to build the updater
on Mac OS 10.7 directly.
2011-08-30 12:57:00 +01:00
Robert Knight
761a4c5d3b Move cmake code to generate a C++ source file from a binary data file into a helper module 2011-08-29 17:40:25 +01:00
Robert Knight
4c574bde87 Merge branch 'master' of ssh://gitweb/git/desktop/standalone-updater 2011-08-24 10:46:17 +01:00
Robert Knight
d16da069e9 Add Win++ library to external
This is a thin wrapper around the Win32 API used in the Win32
Updater Dialog implementation.
2011-08-23 19:54:52 +01:00
Robert Knight
fe3fd4e05b Compile the updater as a universal 32/64bit binary on Mac 2011-08-23 16:46:09 +01:00
Robert Knight
6418b44924 Use zlib from external/zlib to build the minizip library on Win32 2011-08-22 16:37:53 +01:00
Robert Knight
5360d05867 Remove dependency on Boost::Thread and use the TinyThread library instead.
This saves the need to install Boost::Thread on each of the build systems.
2011-08-22 14:00:00 +01:00
Robert Knight
71f197deb7 Add minizip library and use it to implement extraction of files from zip archives. 2011-08-20 00:38:05 +01:00
Robert Knight
66ade327db WIP - Standalone update installer with no dependency on Qt 2011-08-19 19:59:21 +01:00