# This software was produced by NIST, an agency of the U.S. government,
# and by statute is not subject to copyright in the United States.
# Recipients of this software assume all responsibilities associated
# with its operation, modification and maintenance. However, to
# facilitate maintenance we ask that before distributing modifed
# versions of this software, you first contact the authors at
# oof_manager@nist.gov. 

target_sources(oof2engine
  PRIVATE
  angle2color.C
  bdyanalysis.C
  boundarycond.C
  cconjugate.C
  celectricfield.C
  cnonlinearsolver.C
  compoundsubproblem.C
  contourcell.C
  corientation.C
  crystalsymmetry.C
  cscpatch.C
  cskeleton.C
  cstrain.C
  csubproblem.C
  dofmap.C
  edge.C
  edgeset.C
  eigenvalues.C
  element.C
  elementnodeiterator.C
  entiremeshsubproblem.C
  equation.C
  femesh.C
  field.C
  fieldeqnlist.C
  fieldindex.C
  flux.C
  fluxnormal.C
  freedom.C
  gausspoint.C
  invariant.C
  linearizedsystem.C
  mastercoord.C
  masterelement.C
  material.C
  materialset.C
  materialsubproblem.C
  meshdatacache.C
  meshiterator.C
  nodalequation.C
  nodalfluxes.C
  nodalscpatches.C
  node.C
  ooferror.C
  orientationimage.C
  outputval.C
  pixelgroupsubproblem.C
  pixelselectioncouriere.C
  pointdata.C
  property.C
  pypropertywrapper.C
  rank3tensor.C
  recoveredflux.C
  shapefunction.C
  shapefunctioncache.C
  smallsystem.C
  sparsemat.C
  steperrorscaling.C
  symeig3.C
  symmmatrix.C
  angle2color.h
  bdyanalysis.h
  boundarycond.h
  cconjugate.h
  celectricfield.h
  cmatrixmethods.h
  cnonlinearsolver.h
  compoundsubproblem.h
  contourcell.h
  corientation.h
  crystalsymmetry.h
  cscpatch.h
  cskeleton.h
  cstrain.h
  csubproblem.h
  dofmap.h
  edge.h
  edgeset.h
  eigenvalues.h
  element.h
  elementnodeiterator.h
  entiremeshsubproblem.h
  equation.h
  femesh.h
  field.h
  fieldeqnlist.h
  fieldindex.h
  flux.h
  fluxnormal.h
  freedom.h
  gausspoint.h
  invariant.h
  linearizedsystem.h
  mastercoord.h
  masterelement.h
  material.h
  materialset.h
  materialsubproblem.h
  meshdatacache.h
  meshiterator.h
  nodalequation.h
  nodalfluxes.h
  nodalscpatches.h
  node.h
  ooferror.h
  orientationimage.h
  outputval.h
  pixelgroupsubproblem.h
  pixelselectioncouriere.h
  pointdata.h
  property.h
  pypropertywrapper.h
  rank3tensor.h
  recoveredflux.h
  shapefunction.h
  shapefunctioncache.h
  smallsystem.h
  sparsemat.h
  steperrorscaling.h
  symeig3.h
  symmmatrix.h
  )

oof_swig_sources(
  SWIGFILES
  angle2color
  bdyanalysis
  boundarycond
  cconjugate
  cmatrixmethods
  cnonlinearsolver
  compoundsubproblem
  contourcell
  corientation
  crystalsymmetry
  cskeleton
  cstrain
  csubproblem
  dofmap
  edge
  edgeset
  element
  elementnodeiterator
  entiremeshsubproblem
  equation
  femesh
  field
  fieldindex
  flux
  freedom
  gausspoint
  invariant
  linearizedsystem
  mastercoord
  masterelement
  material
  materialsubproblem
  meshdatacache
  meshiterator
  nodalequation
  node
  orientationimage
  outputval
  pixelgroupsubproblem
  pixelselectioncouriere
  planarity
  pointdata
  property
  pypropertywrapper
  rank3tensor
  smallsystem
  sparsemat
  steperrorscaling
  symmmatrix
  LIBRARIES
  oof2common
  oof2engine
  )

oof_swig_sources(
  SWIGFILES
  ooferror
  LIBRARIES
  oof2common
  oof2engine
  TARGET_SFX 2 # because ooferror already exists as a cmake target in common
  )


add_subdirectory(IO)
add_subdirectory(properties)
add_subdirectory(elements)

