list( APPEND cdi_src_files async_worker.c async_worker.h basetime.c basetime.h binary.c binary.h calendar.c calendar.h cdf.c cdf.h cdf_config.h cdf_filter.c cdf_filter.h cdf_int.c cdf_int.h cdf_lazy_grid.c cdf_lazy_grid.h cdf_read.c cdf_records.c cdf_util.c cdf_util.h cdf_write.c cdi.h cdi_across.c cdi_across.h cdi_att.c cdi_att.h cdi_cksum.c cdi_cksum.h cdi_datetime.c cdi_datetime.h cdi_error.c cdi_fdb.c cdi_fdb.h cdi_int.c cdi_int.h cdi_key.c cdi_key.h cdi_limits.h cdi_query.c cdi_util.c cdi_uuid.h cgribex.h cgribexlib.c cksum.c cksum.h dmemory.c dmemory.h error.c error.h exse.h extra.h extralib.c file.c file.h gaussian_latitudes.c get_num_missvals.c get_num_missvals.h grb_read.c grb_write.c gribapi.c gribapi.h gribapi_utilities.c gribapi_utilities.h grid.c grid.h ieg.h ieglib.c input_file.c input_file.h institution.c institution.h iterator.c iterator.h iterator_fallback.c iterator_fallback.h iterator_grib.c iterator_grib.h julian_date.c julian_date.h model.c model.h namespace.c namespace.h normalize_month.h referenceCounting.c referenceCounting.h resource_handle.c resource_handle.h serialize.c serialize.h service.h servicelib.c stream.c stream_cdf.h stream_cdf_i.c stream_cdf_o.c stream_cdf_postdef.h stream_cdf_time.c stream_cgribex.c stream_cgribex.h stream_ext.c stream_ext.h stream_grb.c stream_grb.h stream_gribapi.c stream_gribapi.h stream_ieg.c stream_ieg.h stream_read.c stream_record.c stream_scan.c stream_scan.h stream_srv.c stream_srv.h stream_var.c stream_write.c subtype.c subtype.h swap.c swap.h table.c table.h tablepar.h taxis.c taxis.h tsteps.c util.c varscan.c varscan.h version.c vlist.c vlist.h vlist_var.c vlist_var.h vlist_var_key.c vlist_var_pack.c zaxis.c zaxis.h ) list( APPEND cdi_pio_files cdipio.h pio.c pio.h pio_cdf_int.c pio_cdf_int.h pio_client.c pio_client.h pio_comm.c pio_comm.h pio_conf.c pio_conf.h pio_dbuffer.c pio_dbuffer.h pio_dist_grid.c pio_dist_grid.h pio_id_set.h pio_idxlist_cache.c pio_idxlist_cache.h pio_impl.h pio_interface.c pio_interface.h pio_mpi_fw_at_all.c pio_mpi_fw_at_reblock.c pio_mpi_fw_ordered.c pio_mpinonb.c pio_posixasynch.c pio_posixfpguardsendrecv.c pio_posixnonb.c pio_record_send.c pio_roles.c pio_rpc.c pio_rpc.h pio_serialize.c pio_serialize.h pio_server.c pio_server.h pio_util.c pio_util.h pio_xmap_cache.c pio_xmap_cache.h ) list( APPEND cdi_unknown cfortran.h getline.c make_fint.c resource_unpack.c resource_unpack.h ) # Support exporting all symbolds on Windows set(CMAKE_WINDOWS_EXPORT_ALL_SYMBOLS ON) add_library(cdilib ${cdi_src_files} ${cdi_unknown} # INSTALL_HEADERS_LIST cdi.h ) target_include_directories(cdilib PRIVATE "${PROJECT_BINARY_DIR}/src/config.h") target_link_libraries(cdilib ${cdi_linked_libs}) target_compile_definitions(cdilib PRIVATE PACKAGE_NAME="${PROJECT_NAME}" VERSION="${CMAKE_PROJECT_VERSION}" ${cdi_compile_defs}) add_library(cdilib::cdilib ALIAS cdilib)