target_sources(
  mlx
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/abs.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/arccos.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/arccosh.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/arcsin.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/arcsinh.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/arctan.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/arctanh.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/bitwise_invert.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/ceil.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/conjugate.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/cos.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/cosh.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/erf.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/erf_inv.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/exp.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/expm1.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/floor.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/imag.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/log.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/log1p.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/logical_not.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/negative.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/real.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/round.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/sigmoid.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/sign.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/sin.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/sinh.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/sqrt.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/square.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tan.cu
  PRIVATE ${CMAKE_CURRENT_SOURCE_DIR}/tanh.cu)
