File: CMakeLists.txt

package info (click to toggle)
dune-geometry 2.11.0-1~exp2
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 2,316 kB
  • sloc: cpp: 15,164; python: 262; makefile: 6
file content (26 lines) | stat: -rw-r--r-- 885 bytes parent folder | download | duplicates (2)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
# SPDX-FileCopyrightText: Copyright © DUNE Project contributors, see file LICENSE.md in module root
# SPDX-License-Identifier: LicenseRef-GPL-2.0-only-with-DUNE-exception

add_python_targets(geometry
  __init__
  _referenceelements
  quadpy
)


dune_add_pybind11_module(NAME _geometry SOURCES _geometry.cc)
target_link_libraries(_geometry PUBLIC Dune::Geometry)
if( DUNE_ENABLE_PYTHONMODULE_PRECOMPILE )
  foreach(DIM RANGE 0 4)
    add_library(registerrefelem_${DIM} OBJECT registerrefelem.cc)
    target_compile_definitions(registerrefelem_${DIM} PRIVATE DIM=${DIM})
    target_link_libraries(registerrefelem_${DIM} PRIVATE Dune::Geometry)

    # Register the object in the pybind11 module _geometry
    target_link_libraries(_geometry PRIVATE registerrefelem_${DIM})
  endforeach()
endif()

if(SKBUILD)
  install(TARGETS _geometry LIBRARY DESTINATION python/dune/geometry)
endif()