Skip to content

Commit 86d1978

Browse files
committed
Merge for 2.22.0 release
2 parents af6f9d6 + c3f5ffa commit 86d1978

File tree

741 files changed

+11520
-4627
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

741 files changed

+11520
-4627
lines changed

.gitmodules

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -21,4 +21,8 @@
2121
[submodule "modules/nestor"]
2222
path = modules/nestor
2323
url = https://github.com/isblab/nestor.git
24-
branch = imp-integration
24+
branch = main
25+
[submodule "modules/bff"]
26+
path = modules/bff
27+
url = https://github.com/salilab/IMP.bff.git
28+
branch = salilab

CITATION.cff

Lines changed: 48 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,48 @@
1+
cff-version: 1.2.0
2+
message: "If you use this software, please cite it as below."
3+
authors:
4+
- family-names: "Russel"
5+
given-names: "Daniel"
6+
- family-names: "Lasker"
7+
given-names: "Keren"
8+
- family-names: "Webb"
9+
given-names: "Ben"
10+
- family-names: "Velázquez-Muriel"
11+
given-names: "Javier"
12+
- family-names: "Tjioe"
13+
given-names: "Elina"
14+
- family-names: "Schneidman-Duhovny"
15+
given-names: "Dina"
16+
- family-names: "Peterson"
17+
given-names: "Bret"
18+
- family-names: "Sali"
19+
given-names: "Andrej"
20+
title: "IMP"
21+
url: "https://github.com/salilab/imp"
22+
preferred-citation:
23+
type: article
24+
authors:
25+
- family-names: "Russel"
26+
given-names: "Daniel"
27+
- family-names: "Lasker"
28+
given-names: "Keren"
29+
- family-names: "Webb"
30+
given-names: "Ben"
31+
- family-names: "Velázquez-Muriel"
32+
given-names: "Javier"
33+
- family-names: "Tjioe"
34+
given-names: "Elina"
35+
- family-names: "Schneidman-Duhovny"
36+
given-names: "Dina"
37+
- family-names: "Peterson"
38+
given-names: "Bret"
39+
- family-names: "Sali"
40+
given-names: "Andrej"
41+
doi: "10.1371/journal.pbio.1001244"
42+
journal: "PLoS Biol"
43+
month: 1
44+
start: "e1001244"
45+
title: "Putting the pieces together: integrative modeling platform software for structure determination of macromolecular assemblies"
46+
volume: 10
47+
issue: 1
48+
year: 2012

CMakeLists.txt

Lines changed: 8 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,4 @@
1-
cmake_minimum_required(VERSION 2.8.12...3.6.0)
1+
cmake_minimum_required(VERSION 3.14.0)
22

33
project(IMP)
44

@@ -21,7 +21,7 @@ endif(POLICY CMP0053)
2121
include(${CMAKE_SOURCE_DIR}/cmake_modules/IMPFindPython.cmake)
2222
imp_find_python()
2323

24-
# Check Python version early so we can use Python >= 2.7 features in other
24+
# Check Python version early so we can use Python >= 3.6 features in other
2525
# build scripts
2626
execute_process(COMMAND ${PYTHON_EXECUTABLE}
2727
"tools/build/check_python_version.py"
@@ -97,6 +97,12 @@ if(POLICY CMP0058)
9797
cmake_policy(SET CMP0058 NEW)
9898
endif(POLICY CMP0058)
9999

100+
# Use FindBoost module rather than BoostConfig.cmake (which requires
101+
# Boost 1.70 or later)
102+
if(POLICY CMP0167)
103+
cmake_policy(SET CMP0167 OLD)
104+
endif(POLICY CMP0167)
105+
100106
set(timeout_factor 1)
101107
set(IMP_SWIG_PATH CACHE STRING "List of places for swig to search")
102108
set(SWIG_EXECUTABLE swig CACHE STRING "Swig program")

ChangeLog.md

Lines changed: 18 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,6 +1,22 @@
11
ChangeLog {#changelog}
22
=========
33

4+
# 2.22.0 - 2024-12-12 # {#changelog_2_22_0}
5+
- IMP now includes the Bayesian Fluorescence Framework, as the IMP::bff module.
6+
- Python 2 is no longer supported; the minimum supported Python version is 3.6.
7+
- CMake 2 is no longer supported; the minimum supported CMake version is 3.14.
8+
- IMP::atom::Chain objects now track the mmCIF asym ID (if any), which often
9+
differs from the author-provided chain ID. This information is also stored
10+
in RMF files if using RMF 1.7 or later.
11+
- FoXS's JSmol output now includes mmCIF files rather than PDB, so can now
12+
support visualization of structures containing multi-character chain IDs
13+
or large numbers of atoms or residues.
14+
- The `rrt_ccd` and `rrt_sample` command line tools can now read structures
15+
in both mmCIF and PDB formats.
16+
- IMP::pmi::mmcif::ProtocolOutput now trims any non-represented C-terminal
17+
or N-terminal residues from each chain when outputting an mmCIF file.
18+
- The Windows .exe installer now supports Python 3.8 through 3.13.
19+
420
# 2.21.0 - 2024-06-13 # {#changelog_2_21_0}
521
- The new IMP::spatiotemporal module can be used to assist in building stepwise
622
spatiotemporal models, such as those we used to compute our model of
@@ -482,7 +498,7 @@ ChangeLog {#changelog}
482498
structures and transport through these structures, respectively, although
483499
may also be useful for other modeling applications.
484500
- IMP's mmCIF support for deposition of models in
485-
[PDB-Dev](https://pdb-dev.wwpdb.org/), in the IMP::pmi and IMP::mmcif modules,
501+
[PDB-IHM](https://pdb-ihm.org/), in the IMP::pmi and IMP::mmcif modules,
486502
now utilizes the [python-ihm](https://github.com/ihmwg/python-ihm) library,
487503
a copy of which is included with IMP.
488504
- RMF files now store additional metadata, such as the primary sequence of
@@ -524,7 +540,7 @@ ChangeLog {#changelog}
524540
- Memory and CPU performance improvements across the code, particularly
525541
in IMP::pmi.
526542
- Preview of mmCIF support for deposition of integrative models in
527-
[PDB-Dev](https://pdb-dev.wwpdb.org/). See the IMP::pmi::mmcif
543+
[PDB-IHM](https://pdb-ihm.org/). See the IMP::pmi::mmcif
528544
module for more details.
529545
- This will be the last release that includes packages for RedHat Enterprise
530546
Linux 5 (and variants, such as CentOS 5), since RHEL 5 has reached end

VERSION

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1 +1 @@
1-
2.21.0
1+
2.22.0

cmake_modules/IMPFindPython.cmake

Lines changed: 17 additions & 110 deletions
Original file line numberDiff line numberDiff line change
@@ -1,115 +1,22 @@
1-
# Like cmake's FindPython but allows the user to override; should also
2-
# work (to some degree) with older cmake
1+
# Like cmake's FindPython but allows the user to override
32
function(imp_find_python)
4-
set(USE_PYTHON2 off CACHE BOOL
5-
"Force use of Python2 (by default Python3 is used if available)")
6-
7-
if (${CMAKE_VERSION} VERSION_LESS "3.14.0")
8-
message(WARNING "Using old Python detection logic. Recommended to upgrade to cmake 3.14.0 or later")
9-
if(NOT DEFINED PYTHON_INCLUDE_DIRS)
10-
if (USE_PYTHON2)
11-
set(_SEARCH_PYTHON_BINARIES python2 python)
12-
else()
13-
set(_SEARCH_PYTHON_BINARIES python3 python2 python)
14-
endif()
15-
16-
foreach(pybinary ${_SEARCH_PYTHON_BINARIES})
17-
execute_process(COMMAND ${pybinary} -c "import sys; print(sys.executable)"
18-
RESULT_VARIABLE retval
19-
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
20-
OUTPUT_VARIABLE python_full_path
21-
OUTPUT_STRIP_TRAILING_WHITESPACE)
22-
if(${retval} EQUAL 0)
23-
break()
24-
endif()
25-
endforeach()
26-
27-
if(NOT ${retval} EQUAL 0)
28-
message(FATAL_ERROR "Could not find a suitable Python binary - looked for ${_SEARCH_PYTHON_BINARIES}")
29-
endif()
30-
set(PYTHON_EXECUTABLE ${python_full_path} CACHE INTERNAL "" FORCE)
31-
set(PYTHON_TEST_EXECUTABLE ${python_full_path} CACHE STRING "")
32-
endif()
33-
execute_process(COMMAND ${PYTHON_EXECUTABLE} -c "import sys; print('%d.%d.%d' % sys.version_info[:3])"
34-
WORKING_DIRECTORY ${PROJECT_BINARY_DIR}
35-
OUTPUT_VARIABLE python_full_version
36-
OUTPUT_STRIP_TRAILING_WHITESPACE)
37-
string(REGEX REPLACE "^([0-9])+\\.[0-9]+.*" "\\1" major
38-
"${python_full_version}")
39-
string(REGEX REPLACE "^[0-9]+\\.([0-9]+).*" "\\1" minor
40-
"${python_full_version}")
41-
string(REGEX REPLACE "^[0-9]+\\.[0-9]+\\.([0-9]+).*" "\\1" patch
42-
"${python_full_version}")
43-
set(PYTHON_VERSION ${python_full_version} CACHE INTERNAL "" FORCE)
44-
set(PYTHON_VERSION_MAJOR ${major} CACHE INTERNAL "" FORCE)
45-
set(PYTHON_VERSION_MINOR ${minor} CACHE INTERNAL "" FORCE)
46-
set(PYTHON_VERSION_PATCH ${patch} CACHE INTERNAL "" FORCE)
47-
message(STATUS "Python binary is " ${PYTHON_EXECUTABLE} " (version " ${python_full_version} ")")
48-
if(NOT DEFINED PYTHON_INCLUDE_DIRS)
49-
find_package(PythonLibs ${python_full_version} EXACT REQUIRED)
50-
# Make sure PYTHON_INCLUDE_DIRS is in the cache so it can be
51-
# used elsewhere
52-
set(PYTHON_INCLUDE_DIRS ${PYTHON_INCLUDE_DIRS} CACHE INTERNAL "")
53-
endif()
54-
if(NOT DEFINED PYTHON_NUMPY_INCLUDE_DIR)
55-
execute_process(COMMAND ${PYTHON_EXECUTABLE} -c
56-
"try: import numpy; print(numpy.get_include());\nexcept: pass"
57-
WORKING_DIRECTORY ${CMAKE_BINARY_DIR}
58-
OUTPUT_VARIABLE __numpy_path
59-
OUTPUT_STRIP_TRAILING_WHITESPACE)
60-
find_path(PYTHON_NUMPY_INCLUDE_DIR numpy/arrayobject.h
61-
HINTS "${__numpy_path}" "${PYTHON_INCLUDE_PATH}"
62-
NO_DEFAULT_PATH)
63-
if(PYTHON_NUMPY_INCLUDE_DIR)
64-
set(PYTHON_NUMPY_FOUND 1 CACHE INTERNAL "Python numpy found")
65-
endif()
66-
include(FindPackageHandleStandardArgs)
67-
find_package_handle_standard_args(NumPy
68-
REQUIRED_VARS PYTHON_NUMPY_INCLUDE_DIR
69-
VERSION_VAR __numpy_version)
70-
endif()
3+
find_package(Python3 COMPONENTS Interpreter Development NumPy)
714

5+
if(Python3_Interpreter_FOUND AND Python3_Development_FOUND)
6+
# Use Python 3 tools
7+
set(PYTHON_EXECUTABLE ${Python3_EXECUTABLE} CACHE STRING "")
8+
set(PYTHON_TEST_EXECUTABLE ${Python3_EXECUTABLE} CACHE STRING "")
9+
set(PYTHON_LIBRARIES ${Python3_LIBRARIES} CACHE STRING "")
10+
set(PYTHON_INCLUDE_DIRS ${Python3_INCLUDE_DIRS} CACHE STRING "")
11+
set(PYTHON_LIBRARY_DIRS ${Python3_LIBRARY_DIRS} CACHE STRING "")
12+
set(PYTHON_NUMPY_FOUND ${Python3_NumPy_FOUND} CACHE STRING "")
13+
set(PYTHON_NUMPY_INCLUDE_DIR ${Python3_NumPy_INCLUDE_DIRS}
14+
CACHE STRING "")
15+
set(PYTHON_VERSION ${Python3_VERSION} CACHE STRING "")
16+
set(PYTHON_VERSION_MAJOR ${Python3_VERSION_MAJOR} CACHE STRING "")
17+
set(PYTHON_VERSION_MINOR ${Python3_VERSION_MINOR} CACHE STRING "")
18+
set(PYTHON_VERSION_PATCH ${Python3_VERSION_PATCH} CACHE STRING "")
7219
else()
73-
if (NOT USE_PYTHON2)
74-
find_package(Python3 COMPONENTS Interpreter Development NumPy)
75-
endif()
76-
77-
if(NOT USE_PYTHON2
78-
AND Python3_Interpreter_FOUND AND Python3_Development_FOUND)
79-
# Use Python 3 tools
80-
set(PYTHON_EXECUTABLE ${Python3_EXECUTABLE} CACHE INTERNAL "" FORCE)
81-
set(PYTHON_TEST_EXECUTABLE ${Python3_EXECUTABLE} CACHE STRING "")
82-
set(PYTHON_LIBRARIES ${Python3_LIBRARIES} CACHE INTERNAL "" FORCE)
83-
set(PYTHON_INCLUDE_DIRS ${Python3_INCLUDE_DIRS} CACHE INTERNAL "" FORCE)
84-
set(PYTHON_LIBRARY_DIRS ${Python3_LIBRARY_DIRS} CACHE INTERNAL "" FORCE)
85-
set(PYTHON_NUMPY_FOUND ${Python3_NumPy_FOUND} CACHE INTERNAL "" FORCE)
86-
set(PYTHON_NUMPY_INCLUDE_DIR ${Python3_NumPy_INCLUDE_DIRS}
87-
CACHE INTERNAL "" FORCE)
88-
set(PYTHON_VERSION ${Python3_VERSION} CACHE INTERNAL "" FORCE)
89-
set(PYTHON_VERSION_MAJOR ${Python3_VERSION_MAJOR} CACHE INTERNAL "" FORCE)
90-
set(PYTHON_VERSION_MINOR ${Python3_VERSION_MINOR} CACHE INTERNAL "" FORCE)
91-
set(PYTHON_VERSION_PATCH ${Python3_VERSION_PATCH} CACHE INTERNAL "" FORCE)
92-
else()
93-
find_package(Python2 COMPONENTS Interpreter Development NumPy)
94-
if(Python2_Interpreter_FOUND AND Python2_Development_FOUND)
95-
set(PYTHON_EXECUTABLE ${Python2_EXECUTABLE} CACHE INTERNAL "" FORCE)
96-
set(PYTHON_TEST_EXECUTABLE ${Python2_EXECUTABLE} CACHE STRING "")
97-
set(PYTHON_LIBRARIES ${Python2_LIBRARIES} CACHE INTERNAL "" FORCE)
98-
set(PYTHON_INCLUDE_DIRS ${Python2_INCLUDE_DIRS} CACHE INTERNAL "" FORCE)
99-
set(PYTHON_LIBRARY_DIRS ${Python2_LIBRARY_DIRS} CACHE INTERNAL "" FORCE)
100-
set(PYTHON_NUMPY_FOUND ${Python2_NumPy_FOUND} CACHE INTERNAL "" FORCE)
101-
set(PYTHON_NUMPY_INCLUDE_DIR ${Python2_NumPy_INCLUDE_DIRS}
102-
CACHE INTERNAL "" FORCE)
103-
set(PYTHON_VERSION ${Python2_VERSION} CACHE INTERNAL "" FORCE)
104-
set(PYTHON_VERSION_MAJOR ${Python2_VERSION_MAJOR}
105-
CACHE INTERNAL "" FORCE)
106-
set(PYTHON_VERSION_MINOR ${Python2_VERSION_MINOR}
107-
CACHE INTERNAL "" FORCE)
108-
set(PYTHON_VERSION_PATCH ${Python2_VERSION_PATCH}
109-
CACHE INTERNAL "" FORCE)
110-
else()
111-
message(FATAL_ERROR "Could not find a Python interpreter and matching headers/libraries. Python is required to build.")
112-
endif()
113-
endif()
20+
message(FATAL_ERROR "Could not find a Python interpreter and matching headers/libraries. Python is required to build.")
11421
endif()
11522
endfunction(imp_find_python)

doc/manual/cmake_config.md

Lines changed: 4 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -21,12 +21,12 @@ To configure and build as simply as possible do
2121
cmake ../imp
2222
make -j8
2323

24-
To make a debug build of %IMP with the `cgal` and `membrane` modules disabled
24+
To make a debug build of %IMP with the `cgal` and `misc` modules disabled
2525
and `core` compiled in per-cpp mode, and to use
2626
[Ninja](https://ninja-build.org/) instead of `make` as your build
2727
command do:
2828

29-
cmake ../imp -DCMAKE_BUILD_TYPE=Debug -G Ninja -DIMP_DISABLED_MODULES=cgal:membrane -DIMP_PER_CPP_COMPILATION=core
29+
cmake ../imp -DCMAKE_BUILD_TYPE=Debug -G Ninja -DIMP_DISABLED_MODULES=cgal:misc -DIMP_PER_CPP_COMPILATION=core
3030
ninja -j8
3131

3232
# Configuring using ccmake {#ccmake_config}
@@ -52,7 +52,6 @@ Various aspects of %IMP build behavior can be controlled via variables. These ca
5252
- `IMP_MAX_LOG`: One of `SILENT`, `PROGRESS`, `TERSE`, `VERBOSE` to control what log levels are supported.
5353
- `IMP_PER_CPP_COMPILATION`: A colon-separated list of modules to build one .cpp at a time, or `ALL` to do this for all modules.
5454
- `IMP_CUDA`: A colon-separated list of modules to build with CUDA (GPU) support, or `ALL` to do this for all modules. This is experimental and is currently in development. See [here](@ref gpu) for more details.
55-
- `USE_PYTHON2`: Set to `on` to have CMake build %IMP with Python 2 (by default it will use Python 3 if available).
5655
- `IMP_USE_SYSTEM_RMF`: Set to `on` to build %IMP using an external (system) copy of the RMF library, instead of that bundled with IMP itself.
5756
- `IMP_USE_SYSTEM_IHM`: Set to `on` to build %IMP using an external (system) copy of the python-ihm library, instead of that bundled with IMP itself.
5857

@@ -74,7 +73,7 @@ which control the build. For example:
7473
## Python binary/header mismatch {#cmake_python}
7574

7675
In order to build %IMP Python extensions, CMake needs to find the Python header
77-
and library files that match the `python3`, `python2` or `python` binary. If using a
76+
and library files that match the `python3` or `python` binary. If using a
7877
recent version of CMake (3.14 or later) it should have no issues in doing so.
7978
However, old versions of CMake might get confused if you have multiple versions
8079
of Python installed (for example on a Mac with [Homebrew](https://brew.sh/)),
@@ -88,7 +87,7 @@ For example, on a Mac with Homebrew, where `python` is Homebrew's
8887
headers. This can be resolved (if you cannot upgrade CMake to 3.14 or later)
8988
by telling CMake where the Homebrew Python headers and library
9089
are, by adding to your CMake invocation something like
91-
`-DPYTHON_LIBRARY=/usr/local/opt/python@2/Frameworks/Python.framework/Versions/Current/lib/libpython2.7.dylib -DPYTHON_INCLUDE_DIR=/usr/local/opt/python@2/Frameworks/Python.framework/Versions/Current/Headers`
90+
`-DPYTHON_LIBRARY=/usr/local/opt/python@3/Frameworks/Python.framework/Versions/Current/lib/libpython3.12.dylib -DPYTHON_INCLUDE_DIR=/usr/local/opt/python@3/Frameworks/Python.framework/Versions/Current/Headers`
9291

9392
## Wrong version of Python found {#cmake_pyver}
9493

doc/manual/cross_platform.md

Lines changed: 6 additions & 14 deletions
Original file line numberDiff line numberDiff line change
@@ -10,22 +10,14 @@ In order to make it more likely that your code works on all the supported platfo
1010
- avoid `friend` declarations involving templates; use the preprocessor,
1111
conditionally on the symbols `SWIG` and `IMP_DOXYGEN` to hide code as
1212
needed instead.
13-
- don't use Python modules or functions that aren't available in Python 2.7
14-
(the oldest version of Python supported by %IMP). For example, don't use
15-
[f strings](https://www.python.org/dev/peps/pep-0498/).
16-
- try to write Python code that also works in Python 3 (%IMP supports both
17-
Python 2 and Python 3 in one codebase). Most
18-
obviously, in Python 3, `print` is a function, not a statement. So write
19-
`print("foo")` rather than `print "foo"` - the former works in Python 2 too.
20-
To catch a lot of Python 3-incompatible code quickly, add
21-
`from __future__ import print_function, division, absolute_import` at the
22-
very top of your Python submodules (top-level modules have this already).
13+
- don't use Python modules or functions that aren't available in Python 3.6
14+
(the oldest version of Python supported by %IMP).
2315
- if you must use an external C++ library, it needs to have a very permissive
2416
open source license (such as BSD or LGPL - not GPL) and note that this
2517
will reduce the number of potential users of your code (since it's another
2618
dependency to find).
2719
- try to avoid Linux- or Mac-centric coding that won't work on Windows.
28-
For example, use `os.path.join` to join paths in Python, rather than
29-
adding the '/' character. Write utility scripts in Python (which is
30-
available on Windows, since the rest of %IMP requires it) not as shell
31-
scripts, Perl scripts, etc.
20+
For example, use `pathlib.Path` or `os.path.join` to join paths in Python,
21+
rather than adding the '/' character. Write utility scripts in Python
22+
(which is available on Windows, since the rest of %IMP requires it) not
23+
as shell scripts, Perl scripts, etc.

doc/manual/extdepends.md

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -29,7 +29,7 @@ macros so that your code works with both old and new versions of a dependency;
2929
for examples, look in the C++ code for `BOOST_VERSION`.) We try to make %IMP
3030
work with the versions of packages available in the oldest supported versions
3131
of RedHat Enterprise Linux (RHEL), Ubuntu LTS, and macOS. For example, RHEL 7
32-
ships with Boost 1.53 and Python 2.7, so %IMP works with both of those.
32+
ships with Boost 1.66 and Python 3.6, so %IMP works with both of those.
3333

3434
# Simple dependencies # {#extdep_simple}
3535

doc/manual/install_windows.md

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,7 +3,7 @@ Building from source code on Windows {#install_windows}
33

44
We build and test %IMP on
55
Windows, built with the Microsoft Visual Studio compilers (we use Visual Studio
6-
2015 for both the 32-bit and 64-bit Windows `.exe` installers; for the
6+
2017 for both the 32-bit and 64-bit Windows `.exe` installers; for the
77
[Anaconda packages](https://integrativemodeling.org/download-anaconda.html),
88
which are built by [conda-forge](https://conda-forge.org/), VS 2019 is used).
99
One complication is that different packages are compiled
@@ -63,7 +63,7 @@ we employed is as follows:
6363
`set INCLUDE=C:\Program Files\GnuWin32\include`
6464
- Run `bjam link=shared runtime-link=shared -sNO_ZLIB=0 -sZLIB_SOURCE=C:\zlib\1.2.3\zlib-1.2.3`
6565
- Get and install [SWIG for Windows](https://www.swig.org)
66-
- Get the [HDF5 source code](https://www.hdfgroup.org/downloads/hdf5/)
66+
- Get the [HDF5 source code](https://www.hdfgroup.org/solutions/hdf5/)
6767
- Make a 'build' subdirectory, then run from a command prompt in
6868
that subdirectory something similar to
6969
`cmake.exe -G "Visual Studio 10" -DHDF5_ENABLE_SZIP_SUPPORT:BOOL=OFF -DHDF5_ENABLE_Z_LIB_SUPPORT:BOOL=ON -DHDF5_BUILD_HL_LIB:BOOL=ON -DZLIB_INCLUDE_DIR="C:\Program Files\GnuWin32\include" -DZLIB_LIBRARY="C:\Program Files\GnuWin32\lib\zlib.lib" -DBUILD_SHARED_LIBS:BOOL=ON ..`

0 commit comments

Comments
 (0)