set(DTOOLBASE_HEADERS
  dtoolbase.h dtoolbase_cc.h dtoolsymbols.h
  indent.I indent.h
  pdtoa.h
  pstrtod.h
)

set(DTOOLBASE_SOURCES
  dtoolbase.cxx
  indent.cxx
  pdtoa.cxx
  pstrtod.cxx
)

set_source_files_properties(indent.cxx PROPERTIES SKIP_UNITY_BUILD_INCLUSION YES)

composite_sources(dtoolbase DTOOLBASE_SOURCES)
add_library(dtoolbase STATIC
  ${DTOOLBASE_HEADERS} ${DTOOLBASE_SOURCES})
target_compile_definitions(dtoolbase PRIVATE BUILDING_DTOOL_DTOOLBASE)

# Help other libraries find the autogenerated headers
target_include_directories(dtoolbase PUBLIC
  $<BUILD_INTERFACE:${CMAKE_CURRENT_BINARY_DIR}>
  $<BUILD_INTERFACE:${PANDA_OUTPUT_DIR}/include>)

if(LINK_ALL_STATIC)
  target_compile_definitions(dtoolbase PUBLIC "LINK_ALL_STATIC=1")
endif()
