Skip to content
GitLab
Menu
Projects
Groups
Snippets
Loading...
Help
Help
Support
Community forum
Keyboard shortcuts
?
Submit feedback
Contribute to GitLab
Sign in
Toggle navigation
Menu
Open sidebar
gaoqiong
pybind11
Commits
518cf721
Commit
518cf721
authored
Jan 21, 2016
by
Wenzel Jakob
Browse files
improve cmake windows debug configuration (fixes #77)
parent
fa92f679
Changes
2
Show whitespace changes
Inline
Side-by-side
Showing
2 changed files
with
23 additions
and
13 deletions
+23
-13
CMakeLists.txt
CMakeLists.txt
+12
-7
docs/cmake.rst
docs/cmake.rst
+11
-6
No files found.
CMakeLists.txt
View file @
518cf721
...
@@ -129,12 +129,17 @@ endforeach()
...
@@ -129,12 +129,17 @@ endforeach()
if
(
WIN32
)
if
(
WIN32
)
if
(
MSVC
)
if
(
MSVC
)
# Enforce size-based optimization and link time code generation
# /bigobj is needed for bigger binding projects due to the limit to 64k
# on MSVC (~30% smaller binaries in experiments). /bigobj is needed
# addressable sections. /MP enables multithreaded builds (relevant when
# for bigger binding projects due to the limit to 64k addressable sections
# there are many files).
# /MP enables multithreaded builds (relevant when there are many files).
set_target_properties
(
example PROPERTIES COMPILE_FLAGS
"/MP /bigobj "
)
set_target_properties
(
example PROPERTIES COMPILE_FLAGS
"/Os /GL /MP /bigobj"
)
set_target_properties
(
example PROPERTIES LINK_FLAGS
"/LTCG"
)
if
(
NOT
${
U_CMAKE_BUILD_TYPE
}
MATCHES DEBUG
)
# Enforce size-based optimization and link time code generation on MSVC
# (~30% smaller binaries in experiments).
set_target_properties
(
example APPEND_STRING PROPERTY COMPILE_FLAGS
"/Os /GL "
)
set_target_properties
(
example APPEND_STRING PROPERTY LINK_FLAGS
"/LTCG "
)
endif
()
endif
()
endif
()
# .PYD file extension on Windows
# .PYD file extension on Windows
...
...
docs/cmake.rst
View file @
518cf721
...
@@ -84,12 +84,17 @@ and that the pybind11 repository is located in a subdirectory named :file:`pybin
...
@@ -84,12 +84,17 @@ and that the pybind11 repository is located in a subdirectory named :file:`pybin
if (WIN32)
if (WIN32)
if (MSVC)
if (MSVC)
# Enforce size-based optimization and link time code generation
# /bigobj is needed for bigger binding projects due to the limit to 64k
# on MSVC (~30% smaller binaries in experiments). /bigobj is needed
# addressable sections. /MP enables multithreaded builds (relevant when
# for bigger binding projects due to the limit to 64k addressable sections
# there are many files).
# /MP enables multithreaded builds (relevant when there are many files).
set_target_properties(example PROPERTIES COMPILE_FLAGS "/MP /bigobj ")
set_target_properties(example PROPERTIES COMPILE_FLAGS "/Os /GL /MP /bigobj")
set_target_properties(example PROPERTIES LINK_FLAGS "/LTCG")
if (NOT ${U_CMAKE_BUILD_TYPE} MATCHES DEBUG)
# Enforce size-based optimization and link time code generation on MSVC
# (~30% smaller binaries in experiments).
set_target_properties(example APPEND_STRING PROPERTY COMPILE_FLAGS "/Os /GL ")
set_target_properties(example APPEND_STRING PROPERTY LINK_FLAGS "/LTCG ")
endif()
endif()
endif()
# .PYD file extension on Windows
# .PYD file extension on Windows
...
...
Write
Preview
Markdown
is supported
0%
Try again
or
attach a new file
.
Attach a file
Cancel
You are about to add
0
people
to the discussion. Proceed with caution.
Finish editing this message first!
Cancel
Please
register
or
sign in
to comment