|
1 | | -# Creating a binary package |
| 1 | +# Creating a binary package/release |
2 | 2 |
|
3 | 3 | The binary package bundles different builds outputs into a single distributable binary package containing the Gpufit dll, |
4 | | -the performance comparison example, the Matlab bindings and the Python bindings. |
| 4 | +the performance comparison example, the Matlab, Python and Java bindings and the documentation. |
5 | 5 |
|
6 | | -## Calling the script |
| 6 | +Follow this step by step recipe to create a Windows binary package. |
7 | 7 |
|
8 | | -create_package.bat %1 %2 %3 |
9 | | - |
10 | | -with |
| 8 | +## Set/Update the version number |
11 | 9 |
|
12 | | -- %1 is the BUILD_BASE_PATH (the path containing the various (see below) CMake generated Visual Studio projects) |
13 | | - |
14 | | -- %2 is the VERSION (e.g. 1.0.0) |
15 | | - |
16 | | -- %3 is the SOURCE_BASE_PATH (the path containing the sources) |
| 10 | +Unfortunately the version has to be updated in various places. |
17 | 11 |
|
18 | | -The output is a folder (BUILD_BASE_PATH/Gpufit-VERSION) which is also zipped if 7-Zip is available. |
| 12 | +- CmakeLists.txt (project( Gpufit VERSION 1.0.0 )) |
| 13 | +- docs/conf.py (release = u'1.0.0') |
| 14 | +- docs/epilog.txt (.. |GF_version| replace:: 1.0.0) |
| 15 | +- Gpufit/matlab/gpufit_version.m |
| 16 | +- Gpufit/python/pygpufit/version.py |
| 17 | +- calling the packaging script (create_package.bat %1 1.0.0 %3) |
| 18 | +- package/sdk_readme.txt, (also specify CUDA version used for build there) |
| 19 | +- Gpufit/java/gpufit/build.gradle (version `1.0.0`) |
| 20 | +- Gpufit/java/gpufit/src/main/java/com/github/gpufit/Gpufit.java (String VERSION = "1.0.0";) |
19 | 21 |
|
20 | | -## Requirements |
| 22 | +Push to Github afterwards (you can add a Git tag). |
21 | 23 |
|
22 | | -Note: The script has no way of checking that the requirements are fulfilled! |
| 24 | +## Convert Documentation from restructured text to html/latex |
23 | 25 |
|
24 | | -See also [Build from sources](http://Gpufit.readthedocs.io/en/latest/installation.html#build-from-sources) for instructions. |
| 26 | +Use documentation_create_latex.bat in this folder or do it manually using sphinx and docs/make.bat. |
25 | 27 |
|
26 | | -CMake |
| 28 | +## Use CMAKE to generate the project |
27 | 29 |
|
28 | 30 | - CUDA_ARCHITECTURE must be set to All (it is by default) |
29 | | - |
30 | 31 | - CUDA toolkit 8.0/9.0 is used for all builds (must be installed before) |
31 | | - |
32 | 32 | - Build directory for MSVC14 Win64 is BUILD_BASE_PATH/VC14x64-8.0 |
33 | | - |
34 | 33 | - Build directory for MSVC14 Win32 is BUILD_BASE_PATH/VC14x32-8.0 |
| 34 | +- Matlab, Python, Java, Latex (e.g. Miktex) must be available |
35 | 35 |
|
36 | | -- Matlab and Python must be available |
| 36 | +See also [Build from sources](http://Gpufit.readthedocs.io/en/latest/installation.html#build-from-sources) for instructions. |
37 | 37 |
|
38 | | -Build |
| 38 | +## Build for Win32 and Win64 |
39 | 39 |
|
40 | | -- Configuration RelWithDebInfo is used for all builds! |
| 40 | +Everything should run through and the tests should execute successfully. Also run the Gpufit_Cpufit_Performance_Comparison. |
41 | 41 |
|
| 42 | +- Configuration RelWithDebInfo is used for all builds! |
42 | 43 | - With MSVC14 Win64 build target PYTHON_WHEEL, MATLAB_GPUFIT_PACKAGE and the Gpufit_Cpufit_Performance_Comparison example |
43 | | - |
44 | 44 | - With MSVC14 Win32 build target PYTHON_WHEEL, MATLAB_GPUFIT_PACKAGE and the Gpufit_Cpufit_Performance_Comparison example |
| 45 | +- SOURCE_BASE_PATH\docs\_build\latex\Gpufit.pdf will be created from Gpufit.tex at the same location |
45 | 46 |
|
46 | | -Documentation |
| 47 | +## Run the examples for the Bindings |
47 | 48 |
|
48 | | -- An up-to-date version of the documentation must exist at SOURCE_BASE_PATH\docs\_build\latex\Gpufit.pdf (must be created before). |
| 49 | +In Matlab, Python and Java. |
49 | 50 |
|
50 | | -## Setting the version number |
| 51 | +## Call the assemble script |
51 | 52 |
|
52 | | -Unfortunately the version has to be updated in various places. |
| 53 | +create_package.bat %1 %2 %3 |
53 | 54 |
|
54 | | -- CmakeLists.txt (project( Gpufit VERSION 1.0.0 )) |
55 | | -- docs/conf.py (release = u'1.0.0') |
56 | | -- docs/epilog.txt (.. |GF_version| replace:: 1.0.0) |
57 | | -- Gpufit/matlab/gpufit_version.m |
58 | | -- Gpufit/python/pygpufit/version.py |
59 | | -- calling the packaging script (create_package.bat %1 1.0.0 %3) |
60 | | -- package/sdk_readme.txt, also CUDA version inside |
| 55 | +with |
| 56 | + |
| 57 | +- %1 is the BUILD_BASE_PATH (the path containing the various (see below) CMake generated Visual Studio projects) |
| 58 | + |
| 59 | +- %2 is the VERSION (e.g. 1.0.0) |
| 60 | + |
| 61 | +- %3 is the SOURCE_BASE_PATH (the path containing the sources) |
| 62 | + |
| 63 | +The output is a folder (BUILD_BASE_PATH/Gpufit-VERSION) which is also zipped if 7-Zip is available. |
61 | 64 |
|
62 | 65 | ## Retrieve the hash for the current commit in GIT |
63 | 66 |
|
|
0 commit comments