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
tsoc
openmm
Commits
8e24cfc9
Commit
8e24cfc9
authored
Jan 09, 2014
by
peastman
Browse files
Merge pull request #280 from peastman/master
Fixed additional errors on Windows
parents
5c983283
e14ab7b9
Changes
10
Show whitespace changes
Inline
Side-by-side
Showing
10 changed files
with
77 additions
and
67 deletions
+77
-67
CMakeLists.txt
CMakeLists.txt
+4
-6
openmmapi/include/openmm/internal/vectorize8.h
openmmapi/include/openmm/internal/vectorize8.h
+48
-46
platforms/cpu/sharedTarget/CMakeLists.txt
platforms/cpu/sharedTarget/CMakeLists.txt
+10
-2
platforms/opencl/sharedTarget/CMakeLists.txt
platforms/opencl/sharedTarget/CMakeLists.txt
+1
-1
plugins/cpupme/CMakeLists.txt
plugins/cpupme/CMakeLists.txt
+3
-2
plugins/drude/platforms/opencl/CMakeLists.txt
plugins/drude/platforms/opencl/CMakeLists.txt
+1
-1
plugins/drude/platforms/reference/CMakeLists.txt
plugins/drude/platforms/reference/CMakeLists.txt
+1
-1
plugins/rpmd/platforms/opencl/CMakeLists.txt
plugins/rpmd/platforms/opencl/CMakeLists.txt
+1
-1
plugins/rpmd/platforms/reference/CMakeLists.txt
plugins/rpmd/platforms/reference/CMakeLists.txt
+1
-1
wrappers/python/filterPythonFiles.py
wrappers/python/filterPythonFiles.py
+7
-6
No files found.
CMakeLists.txt
View file @
8e24cfc9
...
...
@@ -118,11 +118,11 @@ IF (APPLE)
SET
(
CMAKE_INSTALL_NAME_DIR
"@rpath"
)
SET
(
EXTRA_COMPILE_FLAGS
"-msse2 -stdlib=libc++"
)
ELSE
(
APPLE
)
IF
(
WIN32
)
IF
(
MSVC
)
SET
(
EXTRA_COMPILE_FLAGS
)
ELSE
(
WIN32
)
ELSE
(
MSVC
)
SET
(
EXTRA_COMPILE_FLAGS
"-msse2"
)
ENDIF
(
WIN32
)
ENDIF
(
MSVC
)
ENDIF
(
APPLE
)
IF
(
UNIX AND NOT CMAKE_BUILD_TYPE
)
...
...
@@ -299,12 +299,10 @@ IF(DL_LIBRARY)
IF
(
OPENMM_BUILD_STATIC_LIB
)
TARGET_LINK_LIBRARIES
(
${
STATIC_TARGET
}
${
DL_LIBRARY
}
${
PTHREADS_LIB
}
)
ENDIF
(
OPENMM_BUILD_STATIC_LIB
)
MARK_AS_ADVANCED
(
DL_LIBRARY
)
ELSE
(
DL_LIBRARY
)
TARGET_LINK_LIBRARIES
(
${
SHARED_TARGET
}
${
PTHREADS_LIB
}
)
ENDIF
(
DL_LIBRARY
)
IF
(
WIN32
)
MARK_AS_ADVANCED
(
DL_LIBRARY
)
ENDIF
(
WIN32
)
ADD_SUBDIRECTORY
(
platforms/reference/tests
)
...
...
openmmapi/include/openmm/internal/vectorize8.h
View file @
8e24cfc9
...
...
@@ -63,55 +63,55 @@ public:
void
store
(
float
*
v
)
const
{
_mm256_storeu_ps
(
v
,
val
);
}
fvec8
operator
+
(
fvec8
other
)
const
{
fvec8
operator
+
(
const
fvec8
&
other
)
const
{
return
_mm256_add_ps
(
val
,
other
);
}
fvec8
operator
-
(
fvec8
other
)
const
{
fvec8
operator
-
(
const
fvec8
&
other
)
const
{
return
_mm256_sub_ps
(
val
,
other
);
}
fvec8
operator
*
(
fvec8
other
)
const
{
fvec8
operator
*
(
const
fvec8
&
other
)
const
{
return
_mm256_mul_ps
(
val
,
other
);
}
fvec8
operator
/
(
fvec8
other
)
const
{
fvec8
operator
/
(
const
fvec8
&
other
)
const
{
return
_mm256_div_ps
(
val
,
other
);
}
void
operator
+=
(
fvec8
other
)
{
void
operator
+=
(
const
fvec8
&
other
)
{
val
=
_mm256_add_ps
(
val
,
other
);
}
void
operator
-=
(
fvec8
other
)
{
void
operator
-=
(
const
fvec8
&
other
)
{
val
=
_mm256_sub_ps
(
val
,
other
);
}
void
operator
*=
(
fvec8
other
)
{
void
operator
*=
(
const
fvec8
&
other
)
{
val
=
_mm256_mul_ps
(
val
,
other
);
}
void
operator
/=
(
fvec8
other
)
{
void
operator
/=
(
const
fvec8
&
other
)
{
val
=
_mm256_div_ps
(
val
,
other
);
}
fvec8
operator
-
()
const
{
return
_mm256_sub_ps
(
_mm256_set1_ps
(
0.0
f
),
val
);
}
fvec8
operator
&
(
fvec8
other
)
const
{
fvec8
operator
&
(
const
fvec8
&
other
)
const
{
return
_mm256_and_ps
(
val
,
other
);
}
fvec8
operator
|
(
fvec8
other
)
const
{
fvec8
operator
|
(
const
fvec8
&
other
)
const
{
return
_mm256_or_ps
(
val
,
other
);
}
fvec8
operator
==
(
fvec8
other
)
const
{
fvec8
operator
==
(
const
fvec8
&
other
)
const
{
return
_mm256_cmp_ps
(
val
,
other
,
_CMP_EQ_OQ
);
}
fvec8
operator
!=
(
fvec8
other
)
const
{
fvec8
operator
!=
(
const
fvec8
&
other
)
const
{
return
_mm256_cmp_ps
(
val
,
other
,
_CMP_NEQ_OQ
);
}
fvec8
operator
>
(
fvec8
other
)
const
{
fvec8
operator
>
(
const
fvec8
&
other
)
const
{
return
_mm256_cmp_ps
(
val
,
other
,
_CMP_GT_OQ
);
}
fvec8
operator
<
(
fvec8
other
)
const
{
fvec8
operator
<
(
const
fvec8
&
other
)
const
{
return
_mm256_cmp_ps
(
val
,
other
,
_CMP_LT_OQ
);
}
fvec8
operator
>=
(
fvec8
other
)
const
{
fvec8
operator
>=
(
const
fvec8
&
other
)
const
{
return
_mm256_cmp_ps
(
val
,
other
,
_CMP_GE_OQ
);
}
fvec8
operator
<=
(
fvec8
other
)
const
{
fvec8
operator
<=
(
const
fvec8
&
other
)
const
{
return
_mm256_cmp_ps
(
val
,
other
,
_CMP_LE_OQ
);
}
operator
ivec8
()
const
;
...
...
@@ -141,10 +141,10 @@ public:
void
store
(
int
*
v
)
const
{
_mm256_storeu_si256
((
__m256i
*
)
v
,
val
);
}
ivec8
operator
&
(
ivec8
other
)
const
{
ivec8
operator
&
(
const
ivec8
&
other
)
const
{
return
_mm256_castps_si256
(
_mm256_and_ps
(
_mm256_castsi256_ps
(
val
),
_mm256_castsi256_ps
(
other
.
val
)));
}
ivec8
operator
|
(
ivec8
other
)
const
{
ivec8
operator
|
(
const
ivec8
&
other
)
const
{
return
_mm256_castps_si256
(
_mm256_or_ps
(
_mm256_castsi256_ps
(
val
),
_mm256_castsi256_ps
(
other
.
val
)));
}
operator
fvec8
()
const
;
...
...
@@ -162,54 +162,56 @@ inline ivec8::operator fvec8() const {
// Functions that operate on fvec8s.
static
inline
fvec8
floor
(
fvec8
v
)
{
return
fvec8
(
_mm256_
floor
_ps
(
v
.
val
));
static
inline
fvec8
floor
(
const
fvec8
&
v
)
{
return
fvec8
(
_mm256_
round
_ps
(
v
.
val
,
0x09
));
}
static
inline
fvec8
ceil
(
fvec8
v
)
{
return
fvec8
(
_mm256_
ceil
_ps
(
v
.
val
));
static
inline
fvec8
ceil
(
const
fvec8
&
v
)
{
return
fvec8
(
_mm256_
round
_ps
(
v
.
val
,
0x0A
));
}
static
inline
fvec8
round
(
fvec8
v
)
{
static
inline
fvec8
round
(
const
fvec8
&
v
)
{
return
fvec8
(
_mm256_round_ps
(
v
.
val
,
_MM_FROUND_TO_NEAREST_INT
));
}
static
inline
fvec8
min
(
fvec8
v1
,
fvec8
v2
)
{
static
inline
fvec8
min
(
const
fvec8
&
v1
,
const
fvec8
&
v2
)
{
return
fvec8
(
_mm256_min_ps
(
v1
.
val
,
v2
.
val
));
}
static
inline
fvec8
max
(
fvec8
v1
,
fvec8
v2
)
{
static
inline
fvec8
max
(
const
fvec8
&
v1
,
const
fvec8
&
v2
)
{
return
fvec8
(
_mm256_max_ps
(
v1
.
val
,
v2
.
val
));
}
static
inline
fvec8
abs
(
fvec8
v
)
{
static
inline
fvec8
abs
(
const
fvec8
&
v
)
{
static
const
__m256
mask
=
_mm256_castsi256_ps
(
_mm256_set1_epi32
(
0x7FFFFFFF
));
return
fvec8
(
_mm256_and_ps
(
v
.
val
,
mask
));
}
static
inline
fvec8
sqrt
(
fvec8
v
)
{
static
inline
fvec8
sqrt
(
const
fvec8
&
v
)
{
return
fvec8
(
_mm256_sqrt_ps
(
v
.
val
));
}
static
inline
float
dot8
(
fvec8
v1
,
fvec8
v2
)
{
static
inline
float
dot8
(
const
fvec8
&
v1
,
const
fvec8
&
v2
)
{
fvec8
result
=
_mm256_dp_ps
(
v1
,
v2
,
0xF1
);
return
_mm_cvtss_f32
(
result
.
lowerVec
())
+
_mm_cvtss_f32
(
result
.
upperVec
());
}
static
inline
void
transpose
(
fvec4
in1
,
fvec4
in2
,
fvec4
in3
,
fvec4
in4
,
fvec4
in5
,
fvec4
in6
,
fvec4
in7
,
fvec4
in8
,
fvec8
&
out1
,
fvec8
&
out2
,
fvec8
&
out3
,
fvec8
&
out4
)
{
_MM_TRANSPOSE4_PS
(
in1
,
in2
,
in3
,
in4
);
_MM_TRANSPOSE4_PS
(
in5
,
in6
,
in7
,
in8
);
out1
=
_mm256_castps128_ps256
(
in1
);
out1
=
_mm256_insertf128_ps
(
out1
,
in5
,
1
);
out2
=
_mm256_castps128_ps256
(
in2
);
out2
=
_mm256_insertf128_ps
(
out2
,
in6
,
1
);
out3
=
_mm256_castps128_ps256
(
in3
);
out3
=
_mm256_insertf128_ps
(
out3
,
in7
,
1
);
out4
=
_mm256_castps128_ps256
(
in4
);
out4
=
_mm256_insertf128_ps
(
out4
,
in8
,
1
);
static
inline
void
transpose
(
const
fvec4
&
in1
,
const
fvec4
&
in2
,
const
fvec4
&
in3
,
const
fvec4
&
in4
,
const
fvec4
&
in5
,
const
fvec4
&
in6
,
const
fvec4
&
in7
,
const
fvec4
&
in8
,
fvec8
&
out1
,
fvec8
&
out2
,
fvec8
&
out3
,
fvec8
&
out4
)
{
fvec4
i1
=
in1
,
i2
=
in2
,
i3
=
in3
,
i4
=
in4
;
fvec4
i5
=
in5
,
i6
=
in6
,
i7
=
in7
,
i8
=
in8
;
_MM_TRANSPOSE4_PS
(
i1
,
i2
,
i3
,
i4
);
_MM_TRANSPOSE4_PS
(
i5
,
i6
,
i7
,
i8
);
out1
=
_mm256_castps128_ps256
(
i1
);
out1
=
_mm256_insertf128_ps
(
out1
,
i5
,
1
);
out2
=
_mm256_castps128_ps256
(
i2
);
out2
=
_mm256_insertf128_ps
(
out2
,
i6
,
1
);
out3
=
_mm256_castps128_ps256
(
i3
);
out3
=
_mm256_insertf128_ps
(
out3
,
i7
,
1
);
out4
=
_mm256_castps128_ps256
(
i4
);
out4
=
_mm256_insertf128_ps
(
out4
,
i8
,
1
);
}
static
inline
void
transpose
(
fvec8
in1
,
fvec8
in2
,
fvec8
in3
,
fvec8
in4
,
fvec4
&
out1
,
fvec4
&
out2
,
fvec4
&
out3
,
fvec4
&
out4
,
fvec4
&
out5
,
fvec4
&
out6
,
fvec4
&
out7
,
fvec4
&
out8
)
{
static
inline
void
transpose
(
const
fvec8
&
in1
,
const
fvec8
&
in2
,
const
fvec8
&
in3
,
const
fvec8
&
in4
,
fvec4
&
out1
,
fvec4
&
out2
,
fvec4
&
out3
,
fvec4
&
out4
,
fvec4
&
out5
,
fvec4
&
out6
,
fvec4
&
out7
,
fvec4
&
out8
)
{
out1
=
in1
.
lowerVec
();
out2
=
in2
.
lowerVec
();
out3
=
in3
.
lowerVec
();
...
...
@@ -224,31 +226,31 @@ static inline void transpose(fvec8 in1, fvec8 in2, fvec8 in3, fvec8 in4, fvec4&
// Functions that operate on ivec8s.
static
inline
bool
any
(
ivec8
v
)
{
static
inline
bool
any
(
const
ivec8
&
v
)
{
return
!
_mm256_testz_si256
(
v
,
_mm256_set1_epi32
(
0xFFFFFFFF
));
}
// Mathematical operators involving a scalar and a vector.
static
inline
fvec8
operator
+
(
float
v1
,
fvec8
v2
)
{
static
inline
fvec8
operator
+
(
float
v1
,
const
fvec8
&
v2
)
{
return
fvec8
(
v1
)
+
v2
;
}
static
inline
fvec8
operator
-
(
float
v1
,
fvec8
v2
)
{
static
inline
fvec8
operator
-
(
float
v1
,
const
fvec8
&
v2
)
{
return
fvec8
(
v1
)
-
v2
;
}
static
inline
fvec8
operator
*
(
float
v1
,
fvec8
v2
)
{
static
inline
fvec8
operator
*
(
float
v1
,
const
fvec8
&
v2
)
{
return
fvec8
(
v1
)
*
v2
;
}
static
inline
fvec8
operator
/
(
float
v1
,
fvec8
v2
)
{
static
inline
fvec8
operator
/
(
float
v1
,
const
fvec8
&
v2
)
{
return
fvec8
(
v1
)
/
v2
;
}
// Operations for blending fvec8s based on an ivec8.
static
inline
fvec8
blend
(
fvec8
v1
,
fvec8
v2
,
ivec8
mask
)
{
static
inline
fvec8
blend
(
const
fvec8
&
v1
,
const
fvec8
&
v2
,
const
ivec8
&
mask
)
{
return
fvec8
(
_mm256_blendv_ps
(
v1
.
val
,
v2
.
val
,
_mm256_castsi256_ps
(
mask
.
val
)));
}
...
...
platforms/cpu/sharedTarget/CMakeLists.txt
View file @
8e24cfc9
FOREACH
(
file
${
SOURCE_FILES
}
)
IF
(
file MATCHES
".*Vec8.*"
)
IF
(
MSVC
)
SET_SOURCE_FILES_PROPERTIES
(
${
file
}
PROPERTIES COMPILE_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
/arch:AVX /D__AVX__"
)
ELSE
(
MSVC
)
SET_SOURCE_FILES_PROPERTIES
(
${
file
}
PROPERTIES COMPILE_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
-msse4.1 -mavx"
)
ENDIF
(
MSVC
)
ELSE
(
file MATCHES
".*Vec8.*"
)
IF
(
NOT MSVC
)
SET_SOURCE_FILES_PROPERTIES
(
${
file
}
PROPERTIES COMPILE_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
-msse4.1"
)
ENDIF
(
NOT MSVC
)
ENDIF
(
file MATCHES
".*Vec8.*"
)
ENDFOREACH
(
file
)
ADD_LIBRARY
(
${
SHARED_TARGET
}
SHARED
${
SOURCE_FILES
}
${
SOURCE_INCLUDE_FILES
}
${
API_ABS_INCLUDE_FILES
}
)
...
...
@@ -11,6 +19,6 @@ ELSE (UNIX AND CMAKE_BUILD_TYPE MATCHES Debug)
SET
(
MAIN_OPENMM_LIB
${
OPENMM_LIBRARY_NAME
}
)
ENDIF
(
UNIX AND CMAKE_BUILD_TYPE MATCHES Debug
)
TARGET_LINK_LIBRARIES
(
${
SHARED_TARGET
}
${
MAIN_OPENMM_LIB
}
${
PTHREADS_LIB
}
)
SET_TARGET_PROPERTIES
(
${
SHARED_TARGET
}
PROPERTIES LINK_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
"
COMPILE_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
-msse4.1
-DOPENMM_CPU_BUILDING_SHARED_LIBRARY"
)
SET_TARGET_PROPERTIES
(
${
SHARED_TARGET
}
PROPERTIES LINK_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
"
COMPILE_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
-DOPENMM_CPU_BUILDING_SHARED_LIBRARY"
)
INSTALL_TARGETS
(
/lib/plugins RUNTIME_DIRECTORY /lib/plugins
${
SHARED_TARGET
}
)
platforms/opencl/sharedTarget/CMakeLists.txt
View file @
8e24cfc9
...
...
@@ -19,6 +19,6 @@ ELSE (UNIX AND CMAKE_BUILD_TYPE MATCHES Debug)
SET
(
MAIN_OPENMM_LIB
${
OPENMM_LIBRARY_NAME
}
)
ENDIF
(
UNIX AND CMAKE_BUILD_TYPE MATCHES Debug
)
TARGET_LINK_LIBRARIES
(
${
SHARED_TARGET
}
${
MAIN_OPENMM_LIB
}
${
OPENCL_LIBRARIES
}
${
PTHREADS_LIB
}
)
SET_TARGET_PROPERTIES
(
${
SHARED_TARGET
}
PROPERTIES LINK_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
"
COMPILE_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
-msse2
-DOPENMM_OPENCL_BUILDING_SHARED_LIBRARY"
)
SET_TARGET_PROPERTIES
(
${
SHARED_TARGET
}
PROPERTIES LINK_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
"
COMPILE_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
-DOPENMM_OPENCL_BUILDING_SHARED_LIBRARY"
)
INSTALL_TARGETS
(
/lib/plugins RUNTIME_DIRECTORY /lib/plugins
${
SHARED_TARGET
}
)
plugins/cpupme/CMakeLists.txt
View file @
8e24cfc9
...
...
@@ -67,8 +67,9 @@ FOREACH(subdir ${OPENMM_SOURCE_SUBDIRS})
ENDFOREACH
(
subdir
)
INCLUDE_DIRECTORIES
(
BEFORE
${
CMAKE_CURRENT_SOURCE_DIR
}
/src
)
SET_SOURCE_FILES_PROPERTIES
(
${
SOURCE_FILES
}
PROPERTIES COMPILE_FLAGS
"-msse4.1"
)
IF
(
NOT MSVC
)
SET_SOURCE_FILES_PROPERTIES
(
${
SOURCE_FILES
}
PROPERTIES COMPILE_FLAGS
"-msse4.1"
)
ENDIF
(
NOT MSVC
)
# Include FFTW related files.
INCLUDE_DIRECTORIES
(
${
FFTW_INCLUDES
}
)
...
...
plugins/drude/platforms/opencl/CMakeLists.txt
View file @
8e24cfc9
...
...
@@ -109,7 +109,7 @@ ENDIF (UNIX AND CMAKE_BUILD_TYPE MATCHES Debug)
TARGET_LINK_LIBRARIES
(
${
SHARED_TARGET
}
${
MAIN_OPENMM_LIB
}
${
OPENCL_LIBRARIES
}
${
PTHREADS_LIB
}
)
TARGET_LINK_LIBRARIES
(
${
SHARED_TARGET
}
debug
${
OPENMM_LIBRARY_NAME
}
OpenCL_d optimized
${
OPENMM_LIBRARY_NAME
}
OpenCL
)
TARGET_LINK_LIBRARIES
(
${
SHARED_TARGET
}
debug
${
SHARED_DRUDE_TARGET
}
optimized
${
SHARED_DRUDE_TARGET
}
)
SET_TARGET_PROPERTIES
(
${
SHARED_TARGET
}
PROPERTIES LINK_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
"
COMPILE_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
-msse2
-DOPENMM_BUILDING_SHARED_LIBRARY"
)
SET_TARGET_PROPERTIES
(
${
SHARED_TARGET
}
PROPERTIES LINK_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
"
COMPILE_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
-DOPENMM_BUILDING_SHARED_LIBRARY"
)
INSTALL
(
TARGETS
${
SHARED_TARGET
}
DESTINATION
${
CMAKE_INSTALL_PREFIX
}
/lib/plugins
)
# Ensure that links to the main OpenCL library will be resolved.
...
...
plugins/drude/platforms/reference/CMakeLists.txt
View file @
8e24cfc9
...
...
@@ -91,7 +91,7 @@ ELSE (UNIX AND CMAKE_BUILD_TYPE MATCHES Debug)
ENDIF
(
UNIX AND CMAKE_BUILD_TYPE MATCHES Debug
)
TARGET_LINK_LIBRARIES
(
${
SHARED_TARGET
}
${
MAIN_OPENMM_LIB
}
)
TARGET_LINK_LIBRARIES
(
${
SHARED_TARGET
}
debug
${
SHARED_DRUDE_TARGET
}
optimized
${
SHARED_DRUDE_TARGET
}
)
SET_TARGET_PROPERTIES
(
${
SHARED_TARGET
}
PROPERTIES LINK_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
"
COMPILE_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
-msse2
-DOPENMM_BUILDING_SHARED_LIBRARY"
)
SET_TARGET_PROPERTIES
(
${
SHARED_TARGET
}
PROPERTIES LINK_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
"
COMPILE_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
-DOPENMM_BUILDING_SHARED_LIBRARY"
)
INSTALL
(
TARGETS
${
SHARED_TARGET
}
DESTINATION
${
CMAKE_INSTALL_PREFIX
}
/lib/plugins
)
SUBDIRS
(
tests
)
plugins/rpmd/platforms/opencl/CMakeLists.txt
View file @
8e24cfc9
...
...
@@ -108,7 +108,7 @@ ENDIF (UNIX AND CMAKE_BUILD_TYPE MATCHES Debug)
TARGET_LINK_LIBRARIES
(
${
SHARED_TARGET
}
${
MAIN_OPENMM_LIB
}
${
OPENCL_LIBRARIES
}
${
PTHREADS_LIB
}
)
TARGET_LINK_LIBRARIES
(
${
SHARED_TARGET
}
debug
${
OPENMM_LIBRARY_NAME
}
OpenCL_d optimized
${
OPENMM_LIBRARY_NAME
}
OpenCL
)
TARGET_LINK_LIBRARIES
(
${
SHARED_TARGET
}
debug
${
SHARED_RPMD_TARGET
}
optimized
${
SHARED_RPMD_TARGET
}
)
SET_TARGET_PROPERTIES
(
${
SHARED_TARGET
}
PROPERTIES LINK_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
"
COMPILE_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
-msse2
-DOPENMM_BUILDING_SHARED_LIBRARY"
)
SET_TARGET_PROPERTIES
(
${
SHARED_TARGET
}
PROPERTIES LINK_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
"
COMPILE_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
-DOPENMM_BUILDING_SHARED_LIBRARY"
)
INSTALL
(
TARGETS
${
SHARED_TARGET
}
DESTINATION
${
CMAKE_INSTALL_PREFIX
}
/lib/plugins
)
# Ensure that links to the main OpenCL library will be resolved.
...
...
plugins/rpmd/platforms/reference/CMakeLists.txt
View file @
8e24cfc9
...
...
@@ -91,7 +91,7 @@ ELSE (UNIX AND CMAKE_BUILD_TYPE MATCHES Debug)
ENDIF
(
UNIX AND CMAKE_BUILD_TYPE MATCHES Debug
)
TARGET_LINK_LIBRARIES
(
${
SHARED_TARGET
}
${
MAIN_OPENMM_LIB
}
)
TARGET_LINK_LIBRARIES
(
${
SHARED_TARGET
}
debug
${
SHARED_RPMD_TARGET
}
optimized
${
SHARED_RPMD_TARGET
}
)
SET_TARGET_PROPERTIES
(
${
SHARED_TARGET
}
PROPERTIES LINK_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
"
COMPILE_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
-msse2
-DOPENMM_BUILDING_SHARED_LIBRARY"
)
SET_TARGET_PROPERTIES
(
${
SHARED_TARGET
}
PROPERTIES LINK_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
"
COMPILE_FLAGS
"
${
EXTRA_COMPILE_FLAGS
}
-DOPENMM_BUILDING_SHARED_LIBRARY"
)
INSTALL
(
TARGETS
${
SHARED_TARGET
}
DESTINATION
${
CMAKE_INSTALL_PREFIX
}
/lib/plugins
)
SUBDIRS
(
tests
)
wrappers/python/filterPythonFiles.py
View file @
8e24cfc9
from
__future__
import
print_function
import
sys
# Doxygen does a bad job of generating documentation based on docstrings. This script is run as a filter
...
...
@@ -14,10 +15,10 @@ while True:
split
=
stripped
.
split
()
if
split
[
0
]
==
'class'
and
split
[
1
][
0
].
islower
():
# Classes that start with a lowercase letter were defined by SWIG. We want to hide them.
print
"%s## @private"
%
prefix
print
(
"%s## @private"
%
prefix
)
if
split
[
1
][
0
]
==
'_'
and
split
[
1
][
1
]
!=
'_'
:
# Names starting with a single _ are assumed to be private.
print
"%s## @private"
%
prefix
print
(
"%s## @private"
%
prefix
)
# We're at the start of a class or function definition. Find all lines that contain the declaration.
...
...
@@ -51,9 +52,9 @@ while True:
# Print out the docstring in Doxygen syntax, followed by the declaration.
for
s
in
docstrings
:
print
"%s##%s"
%
(
prefix
,
s
.
strip
())
print
declaration
print
(
"%s##%s"
%
(
prefix
,
s
.
strip
())
)
print
(
declaration
)
if
len
(
docstrings
)
==
0
:
print
line
print
(
line
)
else
:
print
line
\ No newline at end of file
print
(
line
)
\ No newline at end of file
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