Skip to content

Commit b4ab954

Browse files
committed
creating a separed .cmake files for source collection
1 parent ed10d32 commit b4ab954

File tree

10 files changed

+235
-16
lines changed

10 files changed

+235
-16
lines changed

CMakeLists.txt

Lines changed: 9 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -8,6 +8,12 @@ set(Python_FIND_STRATEGY LOCATION)
88

99
find_package(Python REQUIRED COMPONENTS Interpreter Development NumPy)
1010

11+
add_library(${TARGET_NAME} SHARED ${ALL_SRC})
12+
13+
foreach(FOLDER_NAME IN ITEMS layer0 layer1 layer2 layer3 layer4 layer5 ov)
14+
include(${CMAKE_CURRENT_SOURCE_DIR}/${FOLDER_NAME}/sources.cmake)
15+
endforeach()
16+
1117
target_link_options(${TARGET_NAME} PRIVATE
1218
"$<$<PLATFORM_ID:Darwin>:LINKER:-undefined,dynamic_lookup>"
1319
)
@@ -25,6 +31,7 @@ target_compile_options(${TARGET_NAME} PRIVATE
2531
$<$<NOT:$<CONFIG:Debug>>:-O3>
2632
>
2733
$<$<CXX_COMPILER_ID:MSVC>:/MP>
34+
$<$<CXX_COMPILER_ID:MSVC>:/std:c++17>
2835
$<$<AND:$<CONFIG:Debug>,$<CXX_COMPILER_ID:MSVC>>:/Z7>
2936

3037
# optimization currently causes a clang segfault on OS X 10.9 when
@@ -59,8 +66,6 @@ set_output_path(${TARGET_NAME} "${Python_SITEARCH}/pymol")
5966

6067
target_compile_features(${TARGET_NAME} PRIVATE cxx_std_17)
6168

62-
add_library(${TARGET_NAME} SHARED ${ALL_SRC})
63-
6469
target_include_directories(${TARGET_NAME} PUBLIC
6570
${CMAKE_CURRENT_SOURCE_DIR}/include
6671
${CMAKE_CURRENT_SOURCE_DIR}/contrib/pocketfft
@@ -76,6 +81,7 @@ target_link_directories(${TARGET_NAME} PUBLIC
7681
target_link_libraries(${TARGET_NAME}
7782
${ALL_LIB}
7883
${ALL_EXT_LINK}
84+
# pyconfig.py forces linking against pythonXY.lib on MSVC
7985
$<$<CXX_COMPILER_ID:MSVC>:${Python_LIBRARIES}>
8086
$<$<AND:$<CONFIG:Debug>,$<CXX_COMPILER_ID:MSVC>>:/DEBUG>
8187
)
@@ -89,7 +95,7 @@ target_compile_definitions(${TARGET_NAME} PUBLIC
8995
$<$<PLATFORM_ID:Darwin>:PYMOL_CURVE_VALIDATE>
9096

9197
# bounds checking in STL containers
92-
# if DEBUG and not Windows
98+
# if DEBUG and not Windows compiler
9399
$<$<AND:$<CONFIG:Debug>,$<NOT:$<CXX_COMPILER_ID:MSVC>>>:_GLIBCXX_ASSERTIONS>
94100
)
95101

contrib/champ/CMakeLists.txt

Lines changed: 13 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,8 +1,17 @@
11
set(CHEMPY_PROJECT_NAME _champ)
22

3-
file(GLOB_RECURSE SOURCES "${CMAKE_CURRENT_SOURCE_DIR}/*.c")
4-
5-
add_library(${CHEMPY_PROJECT_NAME} MODULE ${SOURCES})
3+
add_library(${CHEMPY_PROJECT_NAME} MODULE
4+
champ.c
5+
champ_module.c
6+
chiral.c
7+
err2.c
8+
feedback2.c
9+
list.c
10+
os_memory.c
11+
sort.c
12+
strblock.c
13+
vla.c
14+
)
615

716
target_link_options(${CHEMPY_PROJECT_NAME} PRIVATE
817
"$<$<PLATFORM_ID:Darwin>:LINKER:-undefined,dynamic_lookup>"
@@ -17,6 +26,7 @@ target_link_directories(${CHEMPY_PROJECT_NAME} PUBLIC
1726
)
1827

1928
target_link_libraries(${CHEMPY_PROJECT_NAME} PUBLIC
29+
# pyconfig.py forces linking against pythonXY.lib on MSVC
2030
$<$<CXX_COMPILER_ID:MSVC>:${Python_LIBRARIES}>
2131
)
2232

layer0/sources.cmake

Lines changed: 45 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,45 @@
1+
target_sources(${TARGET_NAME} PRIVATE
2+
${CMAKE_CURRENT_LIST_DIR}/Bezier.cpp
3+
${CMAKE_CURRENT_LIST_DIR}/Block.cpp
4+
${CMAKE_CURRENT_LIST_DIR}/CarveHelper.cpp
5+
${CMAKE_CURRENT_LIST_DIR}/ccealignmodule.cpp
6+
${CMAKE_CURRENT_LIST_DIR}/ContourSurf.cpp
7+
${CMAKE_CURRENT_LIST_DIR}/Crystal.cpp
8+
${CMAKE_CURRENT_LIST_DIR}/Err.cpp
9+
${CMAKE_CURRENT_LIST_DIR}/Feedback.cpp
10+
${CMAKE_CURRENT_LIST_DIR}/Field.cpp
11+
${CMAKE_CURRENT_LIST_DIR}/File.cpp
12+
${CMAKE_CURRENT_LIST_DIR}/GenericBuffer.cpp
13+
${CMAKE_CURRENT_LIST_DIR}/GFXManager.cpp
14+
${CMAKE_CURRENT_LIST_DIR}/GraphicsUtil.cpp
15+
${CMAKE_CURRENT_LIST_DIR}/Isosurf.cpp
16+
${CMAKE_CURRENT_LIST_DIR}/Map.cpp
17+
${CMAKE_CURRENT_LIST_DIR}/marching_cubes.cpp
18+
${CMAKE_CURRENT_LIST_DIR}/Match.cpp
19+
${CMAKE_CURRENT_LIST_DIR}/Matrix.cpp
20+
${CMAKE_CURRENT_LIST_DIR}/MemoryDebug.cpp
21+
${CMAKE_CURRENT_LIST_DIR}/MemoryUsage.cpp
22+
${CMAKE_CURRENT_LIST_DIR}/MyPNG.cpp
23+
${CMAKE_CURRENT_LIST_DIR}/os_gl.cpp
24+
${CMAKE_CURRENT_LIST_DIR}/Parse.cpp
25+
${CMAKE_CURRENT_LIST_DIR}/Pixmap.cpp
26+
${CMAKE_CURRENT_LIST_DIR}/PostProcess.cpp
27+
${CMAKE_CURRENT_LIST_DIR}/PrintUtils.cpp
28+
${CMAKE_CURRENT_LIST_DIR}/ShaderMgr.cpp
29+
${CMAKE_CURRENT_LIST_DIR}/ShaderPreprocessor.cpp
30+
${CMAKE_CURRENT_LIST_DIR}/ShaderPrg.cpp
31+
${CMAKE_CURRENT_LIST_DIR}/Sphere.cpp
32+
${CMAKE_CURRENT_LIST_DIR}/Tetsurf.cpp
33+
${CMAKE_CURRENT_LIST_DIR}/Texture.cpp
34+
${CMAKE_CURRENT_LIST_DIR}/Tracker.cpp
35+
${CMAKE_CURRENT_LIST_DIR}/Triangle.cpp
36+
${CMAKE_CURRENT_LIST_DIR}/TTT.cpp
37+
${CMAKE_CURRENT_LIST_DIR}/Util.cpp
38+
${CMAKE_CURRENT_LIST_DIR}/Util2.cpp
39+
${CMAKE_CURRENT_LIST_DIR}/Vector.cpp
40+
${CMAKE_CURRENT_LIST_DIR}/Word.cpp
41+
)
42+
43+
target_include_directories(${TARGET_NAME} PUBLIC
44+
${CMAKE_CURRENT_LIST_DIR}
45+
)

layer1/sources.cmake

Lines changed: 53 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,53 @@
1+
target_sources(${TARGET_NAME} PRIVATE
2+
${CMAKE_CURRENT_LIST_DIR}/Basis.cpp
3+
${CMAKE_CURRENT_LIST_DIR}/ButMode.cpp
4+
${CMAKE_CURRENT_LIST_DIR}/Camera.cpp
5+
${CMAKE_CURRENT_LIST_DIR}/CGO.cpp
6+
${CMAKE_CURRENT_LIST_DIR}/CGOGL.cpp
7+
${CMAKE_CURRENT_LIST_DIR}/CGORenderer.cpp
8+
${CMAKE_CURRENT_LIST_DIR}/Character.cpp
9+
${CMAKE_CURRENT_LIST_DIR}/COLLADA.cpp
10+
${CMAKE_CURRENT_LIST_DIR}/Color.cpp
11+
${CMAKE_CURRENT_LIST_DIR}/Control.cpp
12+
${CMAKE_CURRENT_LIST_DIR}/Extrude.cpp
13+
${CMAKE_CURRENT_LIST_DIR}/Font.cpp
14+
${CMAKE_CURRENT_LIST_DIR}/FontGLUT.cpp
15+
${CMAKE_CURRENT_LIST_DIR}/FontGLUT8x13.cpp
16+
${CMAKE_CURRENT_LIST_DIR}/FontGLUT9x15.cpp
17+
${CMAKE_CURRENT_LIST_DIR}/FontGLUTHel10.cpp
18+
${CMAKE_CURRENT_LIST_DIR}/FontGLUTHel12.cpp
19+
${CMAKE_CURRENT_LIST_DIR}/FontGLUTHel18.cpp
20+
${CMAKE_CURRENT_LIST_DIR}/FontType.cpp
21+
${CMAKE_CURRENT_LIST_DIR}/ImageUtils.cpp
22+
${CMAKE_CURRENT_LIST_DIR}/Movie.cpp
23+
${CMAKE_CURRENT_LIST_DIR}/Ortho.cpp
24+
${CMAKE_CURRENT_LIST_DIR}/P.cpp
25+
${CMAKE_CURRENT_LIST_DIR}/PConv.cpp
26+
${CMAKE_CURRENT_LIST_DIR}/Picking.cpp
27+
${CMAKE_CURRENT_LIST_DIR}/Pop.cpp
28+
${CMAKE_CURRENT_LIST_DIR}/PyMOLObject.cpp
29+
${CMAKE_CURRENT_LIST_DIR}/Ray.cpp
30+
${CMAKE_CURRENT_LIST_DIR}/Rep.cpp
31+
${CMAKE_CURRENT_LIST_DIR}/Scene.cpp
32+
${CMAKE_CURRENT_LIST_DIR}/SceneMouse.cpp
33+
${CMAKE_CURRENT_LIST_DIR}/ScenePicking.cpp
34+
${CMAKE_CURRENT_LIST_DIR}/SceneRay.cpp
35+
${CMAKE_CURRENT_LIST_DIR}/SceneRender.cpp
36+
${CMAKE_CURRENT_LIST_DIR}/SceneView.cpp
37+
${CMAKE_CURRENT_LIST_DIR}/ScrollBar.cpp
38+
${CMAKE_CURRENT_LIST_DIR}/Seq.cpp
39+
${CMAKE_CURRENT_LIST_DIR}/Setting.cpp
40+
${CMAKE_CURRENT_LIST_DIR}/Shaker.cpp
41+
${CMAKE_CURRENT_LIST_DIR}/Symmetry.cpp
42+
${CMAKE_CURRENT_LIST_DIR}/SymOp.cpp
43+
${CMAKE_CURRENT_LIST_DIR}/SymOpPConv.cpp
44+
${CMAKE_CURRENT_LIST_DIR}/SymOpTools.cpp
45+
${CMAKE_CURRENT_LIST_DIR}/Text.cpp
46+
${CMAKE_CURRENT_LIST_DIR}/TypeFace.cpp
47+
${CMAKE_CURRENT_LIST_DIR}/View.cpp
48+
${CMAKE_CURRENT_LIST_DIR}/Wizard.cpp
49+
)
50+
51+
target_include_directories(${TARGET_NAME} PUBLIC
52+
${CMAKE_CURRENT_LIST_DIR}
53+
)

layer2/sources.cmake

Lines changed: 58 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,58 @@
1+
target_sources(${TARGET_NAME} PUBLIC
2+
${CMAKE_CURRENT_LIST_DIR}/AssemblyHelpers.cpp
3+
${CMAKE_CURRENT_LIST_DIR}/AtomInfo.cpp
4+
${CMAKE_CURRENT_LIST_DIR}/AtomInfoHistory.cpp
5+
${CMAKE_CURRENT_LIST_DIR}/BondTypeHistory.cpp
6+
${CMAKE_CURRENT_LIST_DIR}/CifFile.cpp
7+
${CMAKE_CURRENT_LIST_DIR}/CifMoleculeReader.cpp
8+
${CMAKE_CURRENT_LIST_DIR}/CoordSet.cpp
9+
${CMAKE_CURRENT_LIST_DIR}/DistSet.cpp
10+
${CMAKE_CURRENT_LIST_DIR}/GadgetSet.cpp
11+
${CMAKE_CURRENT_LIST_DIR}/HydrogenAdder.cpp
12+
${CMAKE_CURRENT_LIST_DIR}/MmodTyping.cpp
13+
${CMAKE_CURRENT_LIST_DIR}/MmtfMoleculeReader.cpp
14+
${CMAKE_CURRENT_LIST_DIR}/Mol2Typing.cpp
15+
${CMAKE_CURRENT_LIST_DIR}/MolV3000.cpp
16+
${CMAKE_CURRENT_LIST_DIR}/ObjectAlignment.cpp
17+
${CMAKE_CURRENT_LIST_DIR}/ObjectCallback.cpp
18+
${CMAKE_CURRENT_LIST_DIR}/ObjectCGO.cpp
19+
${CMAKE_CURRENT_LIST_DIR}/ObjectCurve.cpp
20+
${CMAKE_CURRENT_LIST_DIR}/ObjectDist.cpp
21+
${CMAKE_CURRENT_LIST_DIR}/ObjectGadget.cpp
22+
${CMAKE_CURRENT_LIST_DIR}/ObjectGadgetRamp.cpp
23+
${CMAKE_CURRENT_LIST_DIR}/ObjectGroup.cpp
24+
${CMAKE_CURRENT_LIST_DIR}/ObjectMap.cpp
25+
${CMAKE_CURRENT_LIST_DIR}/ObjectMesh.cpp
26+
${CMAKE_CURRENT_LIST_DIR}/ObjectMolecule.cpp
27+
${CMAKE_CURRENT_LIST_DIR}/ObjectMolecule2.cpp
28+
${CMAKE_CURRENT_LIST_DIR}/ObjectMolecule3.cpp
29+
${CMAKE_CURRENT_LIST_DIR}/ObjectSlice.cpp
30+
${CMAKE_CURRENT_LIST_DIR}/ObjectSurface.cpp
31+
${CMAKE_CURRENT_LIST_DIR}/ObjectVolume.cpp
32+
${CMAKE_CURRENT_LIST_DIR}/RepAngle.cpp
33+
${CMAKE_CURRENT_LIST_DIR}/RepCartoon.cpp
34+
${CMAKE_CURRENT_LIST_DIR}/RepCylBond.cpp
35+
${CMAKE_CURRENT_LIST_DIR}/RepDihedral.cpp
36+
${CMAKE_CURRENT_LIST_DIR}/RepDistDash.cpp
37+
${CMAKE_CURRENT_LIST_DIR}/RepDistLabel.cpp
38+
${CMAKE_CURRENT_LIST_DIR}/RepDot.cpp
39+
${CMAKE_CURRENT_LIST_DIR}/RepEllipsoid.cpp
40+
${CMAKE_CURRENT_LIST_DIR}/RepLabel.cpp
41+
${CMAKE_CURRENT_LIST_DIR}/RepMesh.cpp
42+
${CMAKE_CURRENT_LIST_DIR}/RepNonbonded.cpp
43+
${CMAKE_CURRENT_LIST_DIR}/RepNonbondedSphere.cpp
44+
${CMAKE_CURRENT_LIST_DIR}/RepRibbon.cpp
45+
${CMAKE_CURRENT_LIST_DIR}/RepSphere.cpp
46+
${CMAKE_CURRENT_LIST_DIR}/RepSphereGenerate.cpp
47+
${CMAKE_CURRENT_LIST_DIR}/RepSphereImmediate.cpp
48+
${CMAKE_CURRENT_LIST_DIR}/RepSurface.cpp
49+
${CMAKE_CURRENT_LIST_DIR}/RepWireBond.cpp
50+
${CMAKE_CURRENT_LIST_DIR}/Sculpt.cpp
51+
${CMAKE_CURRENT_LIST_DIR}/SculptCache.cpp
52+
${CMAKE_CURRENT_LIST_DIR}/SideChainHelper.cpp
53+
${CMAKE_CURRENT_LIST_DIR}/VFont.cpp
54+
)
55+
56+
target_include_directories(${TARGET_NAME} PUBLIC
57+
${CMAKE_CURRENT_LIST_DIR}
58+
)

layer3/sources.cmake

Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
target_sources(${TARGET_NAME} PRIVATE
2+
${CMAKE_CURRENT_LIST_DIR}/AtomIterators.cpp
3+
${CMAKE_CURRENT_LIST_DIR}/CifDataValueFormatter.cpp
4+
${CMAKE_CURRENT_LIST_DIR}/Editor.cpp
5+
${CMAKE_CURRENT_LIST_DIR}/Executive.cpp
6+
${CMAKE_CURRENT_LIST_DIR}/ExecutivePython.cpp
7+
${CMAKE_CURRENT_LIST_DIR}/Interactions.cpp
8+
${CMAKE_CURRENT_LIST_DIR}/MaeExportHelpers.cpp
9+
${CMAKE_CURRENT_LIST_DIR}/MoleculeExporter.cpp
10+
${CMAKE_CURRENT_LIST_DIR}/MovieScene.cpp
11+
${CMAKE_CURRENT_LIST_DIR}/PlugIOManager.cpp
12+
${CMAKE_CURRENT_LIST_DIR}/RingFinder.cpp
13+
${CMAKE_CURRENT_LIST_DIR}/Seeker.cpp
14+
${CMAKE_CURRENT_LIST_DIR}/Selector.cpp
15+
${CMAKE_CURRENT_LIST_DIR}/SelectorTmp.cpp
16+
${CMAKE_CURRENT_LIST_DIR}/SpecRec.cpp
17+
${CMAKE_CURRENT_LIST_DIR}/SpecRecSpecial.cpp
18+
)
19+
20+
target_include_directories(${TARGET_NAME} PUBLIC
21+
${CMAKE_CURRENT_LIST_DIR}
22+
)

layer4/sources.cmake

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
target_sources(${TARGET_NAME} PRIVATE
2+
${CMAKE_CURRENT_LIST_DIR}/Cmd.cpp
3+
${CMAKE_CURRENT_LIST_DIR}/Menu.cpp
4+
${CMAKE_CURRENT_LIST_DIR}/PopUp.cpp
5+
)
6+
7+
target_include_directories(${TARGET_NAME} PUBLIC
8+
${CMAKE_CURRENT_LIST_DIR}
9+
)

layer5/sources.cmake

Lines changed: 9 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,9 @@
1+
target_sources(${TARGET_NAME} PRIVATE
2+
${CMAKE_CURRENT_LIST_DIR}/main.cpp
3+
${CMAKE_CURRENT_LIST_DIR}/PyMOL.cpp
4+
${CMAKE_CURRENT_LIST_DIR}/TestPyMOL.cpp
5+
)
6+
7+
target_include_directories(${TARGET_NAME} PUBLIC
8+
${CMAKE_CURRENT_LIST_DIR}
9+
)

ov/sources.cmake

Lines changed: 14 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,14 @@
1+
target_sources(${TARGET_NAME} PRIVATE
2+
${CMAKE_CURRENT_LIST_DIR}/src/OVContext.cpp
3+
${CMAKE_CURRENT_LIST_DIR}/src/OVHeap.cpp
4+
${CMAKE_CURRENT_LIST_DIR}/src/OVHeapArray.cpp
5+
${CMAKE_CURRENT_LIST_DIR}/src/OVLexicon.cpp
6+
${CMAKE_CURRENT_LIST_DIR}/src/OVOneToAny.cpp
7+
${CMAKE_CURRENT_LIST_DIR}/src/OVOneToOne.cpp
8+
${CMAKE_CURRENT_LIST_DIR}/src/OVRandom.cpp
9+
${CMAKE_CURRENT_LIST_DIR}/src/ov_utility.cpp
10+
)
11+
12+
target_include_directories(${TARGET_NAME} PUBLIC
13+
${CMAKE_CURRENT_LIST_DIR}/src
14+
)

setup.py

Lines changed: 3 additions & 10 deletions
Original file line numberDiff line numberDiff line change
@@ -471,16 +471,7 @@ def make_launch_script(self):
471471
prefix_path = get_prefix_path()
472472

473473

474-
pymol_src_dirs = [
475-
"ov/src",
476-
"layer0",
477-
"layer1",
478-
"layer2",
479-
"layer3",
480-
"layer4",
481-
"layer5",
482-
generated_dir,
483-
]
474+
pymol_src_dirs = [generated_dir]
484475
libs = ["png", "freetype"]
485476

486477
inc_dirs = []
@@ -642,6 +633,8 @@ def make_launch_script(self):
642633
"openvr_api",
643634
]
644635

636+
inc_dirs += pymol_src_dirs
637+
645638
for prefix in prefix_path:
646639
for dirs, suffixes in [
647640
[

0 commit comments

Comments
 (0)