]> git.tdb.fi Git - ext/sigc++-2.0.git/blob - MSVC_NMake/README.txt
Adjust the name of the library to match upstream
[ext/sigc++-2.0.git] / MSVC_NMake / README.txt
1 Instructions for building libsigc++ on Visual Studio
2 ====================================================
3 Building the libsigc++ on Windows is now supported using Visual Studio
4 versions 2013 or later in both 32-bit and 64-bit (x64) flavors,
5 via NMake Makefiles.  Due to C++-11 usage, Visual Studio 2012 or
6 earlier is not supported.
7
8 libsigc++ itself has no external dependencies, but building the
9 benchmark test program will require an installation of the Boost
10 C++ libraries.
11
12 The following describes what items are built with the following
13 targets:
14
15 -all (or no target specified): The libsigc++ DLL and the example programs.
16 -test: The libsigc++ DLL and the test programs.
17 -benchmark: The libsigc++ DLL and the benchmark program.
18 -prep-git-build: Prepare to build directly from a GIT checkout.  You
19                  will at least need PERL for this, and m4 if building from a
20                  GIT checkout or when building after running the 'forceclean'
21                  target.
22
23 The following are instructions for performing such a build.  A 'clean' target is
24 provided-it is recommended that one cleans the build and redo the build if any
25 configuration option changed.  An 'install' target is provided to copy the
26 built items in their appropriate locations under $(PREFIX), which is described below.
27
28 A 'forceclean' target is also provided to cover the actions under the target 'clean',
29 but also to remove any traces of the headers and sources that were generated.  This
30 may be useful if one wants to re-generate the sources and headers from the m4 templates.
31
32 Invoke the build by issuing the command:
33 nmake /f Makefile.vc CFG=[release|debug] [PREFIX=...] <option1=1 option2=1 ...>
34 where:
35
36 CFG: Required.  Choose from a release or debug build.  Note that
37      all builds generate a .pdb file for each .dll and .exe built--this refers
38      to the C/C++ runtime that the build uses.
39
40 PREFIX: Optional.  Base directory of where the third-party headers, libraries
41         and needed tools can be found, i.e. headers in $(PREFIX)\include,
42         libraries in $(PREFIX)\lib and tools in $(PREFIX)\bin.  If not
43         specified, $(PREFIX) is set as $(srcroot)\..\vs$(X)\$(platform), where
44         $(platform) is win32 for 32-bit builds or x64 for 64-bit builds, and
45         $(X) is the short version of the Visual Studio used, as follows:
46         2017: 15
47
48 Explanation of options, set by <option>=1:
49 ------------------------------------------
50 BOOST_DLL: When building the benchmark, link to a DLL build of the Boost
51            libraries.  Required if your installation of the Boost libraries
52            are built as DLLs.  Note that debug builds must link to debug
53            builds of Boost and release builds must link to releease builds
54            of Boost.